diff --git a/INSTALL-headless.txt b/INSTALL-headless.txt index 6f545758081bc7667ab5ee02f853e771fc2ff0b5..3ae8a14f07066d5ce95e485617b2bff2327ebf86 100644 --- a/INSTALL-headless.txt +++ b/INSTALL-headless.txt @@ -25,21 +25,22 @@ where there are comments labeled "PORTABLE". Do this before you run I2P for the first time. To start I2P: - (*nix): sh i2prouter start + (*nix, BSD, Mac): sh i2prouter start (win*): I2P.exe - (non-x86 platforms PPC, ARM, etc): sh runplain.sh + (platforms without wrapper support): sh runplain.sh To stop I2P (gracefully): lynx http://localhost:7657/summaryframe (click "Shutdown") + or (*nix, BSD, Mac) sh i2prouter graceful To stop I2P immediately: - sh i2prouter stop + (*nix, BSD, Mac) sh i2prouter stop To uninstall I2P: rm -rf $I2PInstallDir ~/.i2p Supported JVMs: - All platforms: Java 1.6 or higher required; 1.7 or higher recommended + All platforms: Java 1.7 or higher required Windows: OpenJDK or Oracle from http://java.com/download Linux: OpenJDK or Oracle from http://java.com/download FreeBSD: OpenJDK or Oracle from http://java.com/download diff --git a/INSTALL.txt b/INSTALL.txt index 23701b0411fadd13db7390d39e4c90b86ef60135..d9960fc3a0e90b414b61dae102ee68265d6b7ba9 100644 --- a/INSTALL.txt +++ b/INSTALL.txt @@ -1,8 +1,9 @@ I2P source installation instructions Prerequisites to build from source: - Java SDK (preferably Oracle/Sun or OpenJDK) 1.6.0 or higher + Java SDK (preferably Oracle/Sun or OpenJDK) 1.7.0 or higher Non-linux operating systems and JVMs: See https://trac.i2p2.de/wiki/java + Certain subsystems for embedded (core, router, mstreaming, streaming, i2ptunnel) require only Java 1.6 Apache Ant 1.7.0 or higher The xgettext, msgfmt, and msgmerge tools installed from the GNU gettext package http://www.gnu.org/software/gettext/ @@ -40,29 +41,30 @@ or on Windows, just double-click on i2pinstall.exe. Or move the i2pupdate.zip file into an existing installation directory and restart. To start I2P: - (*nix): sh i2prouter start + (*nix, BSD, Mac): sh i2prouter start (win*): I2P.exe or i2prouter.bat - (non-x86 platforms PPC, ARM, etc): sh runplain.sh + (platforms without wrapper support): sh runplain.sh To install I2P as a system service: - (*nix) sh i2prouter install + (*nix, BSD, Mac) sh i2prouter install (win*) install_i2p_service_winnt.bat To uninstall I2P as a system service: - (*nix) sh i2prouter remove + (*nix, BSD, Mac) sh i2prouter remove (win*) uninstall_i2p-service_winnt.bat To stop I2P (gracefully): lynx http://localhost:7657/summaryframe (click "Shutdown") + or (*nix, BSD, Mac) sh i2prouter graceful To stop I2P immediately: - sh i2prouter stop + (*nix, BSD, Mac) sh i2prouter stop To uninstall I2P: rm -rf $I2PInstallDir ~/.i2p Supported JVMs: - Windows: Latest available from http://java.com/download (1.5+ supported) - Linux: Latest available from http://java.com/download (1.5+ supported) - FreeBSD: 1.5-compatible (NIO required) + Windows: Latest available from http://java.com/download (1.7+ supported) + Linux: Latest available from http://java.com/download (1.7+ supported) + FreeBSD: 1.7-compatible (NIO required) Other operating systems and JVMs: See http://trac.i2p2.de/wiki/java diff --git a/README.txt b/README.txt index d115a6dbf25b07382c04fd2eae31d726570fba56..b7a4b8e4053e2d8a1b6e1046a083e8e6bdc8b169 100644 --- a/README.txt +++ b/README.txt @@ -1,6 +1,7 @@ Prerequisites to build from source: - Java SDK (preferably Oracle/Sun or OpenJDK) 1.6.0 or higher + Java SDK (preferably Oracle/Sun or OpenJDK) 1.7.0 or higher Non-linux operating systems and JVMs: See https://trac.i2p2.de/wiki/java + Certain subsystems for embedded (core, router, mstreaming, streaming, i2ptunnel) require only Java 1.6 Apache Ant 1.7.0 or higher The xgettext, msgfmt, and msgmerge tools installed from the GNU gettext package http://www.gnu.org/software/gettext/ @@ -19,7 +20,8 @@ To build: Documentation: https://geti2p.net/how - API: run 'ant javadoc' then start at build/javadoc/index.html + API: http://docs.i2p-projekt.de/javadoc/ + or run 'ant javadoc' then start at build/javadoc/index.html Latest release: https://geti2p.net/download @@ -34,6 +36,15 @@ Need help? IRC irc.freenode.net #i2p http://forum.i2p/ +Bug reports: + https://trac.i2p2.de/report/1 + +Contact information, security issues, press inquiries: + https://geti2p.net/en/contact + +Twitter: + @i2p, @geti2p + Licenses: See LICENSE.txt diff --git a/apps/BOB/src/net/i2p/BOB/BOB.java b/apps/BOB/src/net/i2p/BOB/BOB.java index c4ef3b23a297ee3e547d3c83fa4c5ac6dac638e2..c8b06b5e954489409da6fcc9b21dcd18c6d68f58 100644 --- a/apps/BOB/src/net/i2p/BOB/BOB.java +++ b/apps/BOB/src/net/i2p/BOB/BOB.java @@ -247,11 +247,11 @@ public class BOB implements Runnable, ClientApp { save = true; } if (!props.containsKey("inbound.length")) { - props.setProperty("inbound.length", "1"); + props.setProperty("inbound.length", "3"); save = true; } if (!props.containsKey("outbound.length")) { - props.setProperty("outbound.length", "1"); + props.setProperty("outbound.length", "3"); save = true; } if (!props.containsKey("inbound.lengthVariance")) { @@ -338,7 +338,7 @@ public class BOB implements Runnable, ClientApp { if (g) { DoCMDS conn_c = new DoCMDS(spin, lock, server, props, database, _log); - Thread t = new Thread(conn_c); + Thread t = new I2PAppThread(conn_c); t.setName("BOB.DoCMDS " + i); t.start(); i++; diff --git a/apps/BOB/src/net/i2p/BOB/DoCMDS.java b/apps/BOB/src/net/i2p/BOB/DoCMDS.java index 957f0ea3f1e4aa85ab4fa48388bd607058b4bfe5..7e5bd101478c13e8dae5fe1f29605ef320f17073 100644 --- a/apps/BOB/src/net/i2p/BOB/DoCMDS.java +++ b/apps/BOB/src/net/i2p/BOB/DoCMDS.java @@ -25,12 +25,13 @@ import java.util.Locale; import java.util.Properties; import java.util.StringTokenizer; import java.util.concurrent.atomic.AtomicBoolean; + import net.i2p.I2PAppContext; import net.i2p.I2PException; import net.i2p.client.I2PClientFactory; -//import net.i2p.data.DataFormatException; import net.i2p.data.Destination; -//import net.i2p.i2ptunnel.I2PTunnel; +import net.i2p.util.I2PAppThread; + // needed only for debugging. // import java.util.logging.Level; // import java.util.logging.Logger; @@ -1307,7 +1308,7 @@ public class DoCMDS implements Runnable { // wait } tunnel = new MUXlisten(lock, database, nickinfo, _log); - Thread t = new Thread(tunnel); + Thread t = new I2PAppThread(tunnel); t.start(); // try { // Thread.sleep(1000 * 10); // Slow down the startup. diff --git a/apps/BOB/src/net/i2p/BOB/I2Plistener.java b/apps/BOB/src/net/i2p/BOB/I2Plistener.java index f862c7caefe4da322f8a2ee5d4d6211f6c6155b3..ebe4888602c6cb26f7f320429b487733c9b58ae5 100644 --- a/apps/BOB/src/net/i2p/BOB/I2Plistener.java +++ b/apps/BOB/src/net/i2p/BOB/I2Plistener.java @@ -18,10 +18,12 @@ package net.i2p.BOB; import java.net.ConnectException; import java.net.SocketTimeoutException; import java.util.concurrent.atomic.AtomicBoolean; + import net.i2p.I2PException; import net.i2p.client.streaming.I2PServerSocket; import net.i2p.client.streaming.I2PSocket; import net.i2p.client.streaming.I2PSocketManager; +import net.i2p.util.I2PAppThread; /** * Listen on I2P and connect to TCP @@ -77,7 +79,7 @@ public class I2Plistener implements Runnable { conn++; // toss the connection to a new thread. I2PtoTCP conn_c = new I2PtoTCP(sessSocket, info, database, lives); - Thread t = new Thread(conn_c, Thread.currentThread().getName() + " I2PtoTCP " + conn); + Thread t = new I2PAppThread(conn_c, Thread.currentThread().getName() + " I2PtoTCP " + conn); t.start(); } diff --git a/apps/BOB/src/net/i2p/BOB/I2PtoTCP.java b/apps/BOB/src/net/i2p/BOB/I2PtoTCP.java index bf699db60e62587e84c8878474a3c788e45c3dbf..8e1cebb735b701060ae4b5814c0a5b0e8eb923dc 100644 --- a/apps/BOB/src/net/i2p/BOB/I2PtoTCP.java +++ b/apps/BOB/src/net/i2p/BOB/I2PtoTCP.java @@ -19,7 +19,9 @@ import java.io.InputStream; import java.io.OutputStream; import java.net.Socket; import java.util.concurrent.atomic.AtomicBoolean; + import net.i2p.client.streaming.I2PSocket; +import net.i2p.util.I2PAppThread; /** * Process I2P->TCP @@ -111,8 +113,8 @@ public class I2PtoTCP implements Runnable { // setup to cross the streams TCPio conn_c = new TCPio(in, Iout, lives); // app -> I2P TCPio conn_a = new TCPio(Iin, out, lives); // I2P -> app - t = new Thread(conn_c, Thread.currentThread().getName() + " TCPioA"); - q = new Thread(conn_a, Thread.currentThread().getName() + " TCPioB"); + t = new I2PAppThread(conn_c, Thread.currentThread().getName() + " TCPioA"); + q = new I2PAppThread(conn_a, Thread.currentThread().getName() + " TCPioB"); // Fire! t.start(); q.start(); diff --git a/apps/BOB/src/net/i2p/BOB/MUXlisten.java b/apps/BOB/src/net/i2p/BOB/MUXlisten.java index f330be971d88dbe23dc5030f97846bc406ba0bc1..81dbe0845100af617546f17631cf58dc55b2debe 100644 --- a/apps/BOB/src/net/i2p/BOB/MUXlisten.java +++ b/apps/BOB/src/net/i2p/BOB/MUXlisten.java @@ -21,11 +21,13 @@ import java.net.InetAddress; import java.net.ServerSocket; import java.util.Properties; import java.util.concurrent.atomic.AtomicBoolean; + import net.i2p.I2PException; import net.i2p.client.I2PClient; import net.i2p.client.streaming.I2PServerSocket; import net.i2p.client.streaming.I2PSocketManager; import net.i2p.client.streaming.I2PSocketManagerFactory; +import net.i2p.util.I2PAppThread; import net.i2p.util.Log; /** @@ -201,14 +203,14 @@ public class MUXlisten implements Runnable { // I2P -> TCP SS = socketManager.getServerSocket(); I2Plistener conn = new I2Plistener(SS, socketManager, info, database, _log, lives); - t = new Thread(tg, conn, "BOBI2Plistener " + N); + t = new I2PAppThread(tg, conn, "BOBI2Plistener " + N); t.start(); } if (come_in) { // TCP -> I2P TCPlistener conn = new TCPlistener(listener, socketManager, info, database, _log, lives); - q = new Thread(tg, conn, "BOBTCPlistener " + N); + q = new I2PAppThread(tg, conn, "BOBTCPlistener " + N); q.start(); } diff --git a/apps/BOB/src/net/i2p/BOB/TCPlistener.java b/apps/BOB/src/net/i2p/BOB/TCPlistener.java index 70ff52b14895a9bcca8cdb49190d5d725b916c4a..2ad1b5af616457b7d0d3e066f41b4e454d40b1ea 100644 --- a/apps/BOB/src/net/i2p/BOB/TCPlistener.java +++ b/apps/BOB/src/net/i2p/BOB/TCPlistener.java @@ -20,8 +20,10 @@ import java.net.ServerSocket; import java.net.Socket; import java.net.SocketTimeoutException; import java.util.concurrent.atomic.AtomicBoolean; + import net.i2p.client.streaming.I2PServerSocket; import net.i2p.client.streaming.I2PSocketManager; +import net.i2p.util.I2PAppThread; /** * Listen on TCP port and connect to I2P @@ -75,7 +77,7 @@ public class TCPlistener implements Runnable { conn++; // toss the connection to a new thread. TCPtoI2P conn_c = new TCPtoI2P(socketManager, server, info, database, lives); - Thread t = new Thread(conn_c, Thread.currentThread().getName() + " TCPtoI2P " + conn); + Thread t = new I2PAppThread(conn_c, Thread.currentThread().getName() + " TCPtoI2P " + conn); t.start(); g = false; } diff --git a/apps/BOB/src/net/i2p/BOB/TCPtoI2P.java b/apps/BOB/src/net/i2p/BOB/TCPtoI2P.java index 0ce587257d2c2ac6440560d7987f0c5b7bfeb942..3f196af28dad6441fa874ab8710b82a5676be294 100644 --- a/apps/BOB/src/net/i2p/BOB/TCPtoI2P.java +++ b/apps/BOB/src/net/i2p/BOB/TCPtoI2P.java @@ -24,13 +24,14 @@ import java.net.NoRouteToHostException; import java.net.Socket; import java.util.Locale; import java.util.concurrent.atomic.AtomicBoolean; + +import net.i2p.I2PAppContext; import net.i2p.I2PException; import net.i2p.client.streaming.I2PSocket; import net.i2p.client.streaming.I2PSocketManager; import net.i2p.data.DataFormatException; import net.i2p.data.Destination; -//import net.i2p.i2ptunnel.I2PTunnel; -import net.i2p.I2PAppContext; +import net.i2p.util.I2PAppThread; /** * @@ -158,8 +159,8 @@ public class TCPtoI2P implements Runnable { // setup to cross the streams TCPio conn_c = new TCPio(in, Iout, lives); // app -> I2P TCPio conn_a = new TCPio(Iin, out, lives); // I2P -> app - t = new Thread(conn_c, Thread.currentThread().getName() + " TCPioA"); - q = new Thread(conn_a, Thread.currentThread().getName() + " TCPioB"); + t = new I2PAppThread(conn_c, Thread.currentThread().getName() + " TCPioA"); + q = new I2PAppThread(conn_a, Thread.currentThread().getName() + " TCPioB"); // Fire! t.start(); q.start(); diff --git a/apps/addressbook/java/src/net/i2p/addressbook/ConfigIterator.java b/apps/addressbook/java/src/net/i2p/addressbook/ConfigIterator.java index 30c21d19bf269592b3e522066f2b0652e615b060..10119d844e5bac72ecc918740a68e52bac31a35e 100644 --- a/apps/addressbook/java/src/net/i2p/addressbook/ConfigIterator.java +++ b/apps/addressbook/java/src/net/i2p/addressbook/ConfigIterator.java @@ -32,6 +32,8 @@ import java.util.Locale; import java.util.Map; import java.util.NoSuchElementException; +import net.i2p.data.DataHelper; + /** * A class to iterate through a hosts.txt or config file without * reading the whole thing into memory. @@ -69,7 +71,7 @@ class ConfigIterator implements Iterator<Map.Entry<String, String>>, Closeable { String inputLine = input.readLine(); while (inputLine != null) { inputLine = ConfigParser.stripComments(inputLine); - String[] splitLine = inputLine.split("="); + String[] splitLine = DataHelper.split(inputLine, "="); if (splitLine.length == 2) { next = new ConfigEntry(splitLine[0].trim().toLowerCase(Locale.US), splitLine[1].trim()); return true; diff --git a/apps/addressbook/java/src/net/i2p/addressbook/ConfigParser.java b/apps/addressbook/java/src/net/i2p/addressbook/ConfigParser.java index e2cd8ab2a0abaaff9575170ec41d149465303362..625b6e3d042e958a5219418c06a63610abe82ed2 100644 --- a/apps/addressbook/java/src/net/i2p/addressbook/ConfigParser.java +++ b/apps/addressbook/java/src/net/i2p/addressbook/ConfigParser.java @@ -35,6 +35,7 @@ import java.util.List; import java.util.Locale; import java.util.Map; +import net.i2p.data.DataHelper; import net.i2p.util.SecureFile; import net.i2p.util.SecureFileOutputStream; import net.i2p.util.SystemVersion; @@ -93,7 +94,7 @@ class ConfigParser { inputLine = input.readLine(); while (inputLine != null) { inputLine = stripComments(inputLine); - String[] splitLine = inputLine.split("="); + String[] splitLine = DataHelper.split(inputLine, "="); if (splitLine.length == 2) { result.put(splitLine[0].trim().toLowerCase(Locale.US), splitLine[1].trim()); } diff --git a/apps/addressbook/java/src/net/i2p/addressbook/DaemonThread.java b/apps/addressbook/java/src/net/i2p/addressbook/DaemonThread.java index fe74c7a83a6412088cc4c4ba20099146765112b3..b0689a208112ddd2bd2fa68d40f0f0563bff0e12 100644 --- a/apps/addressbook/java/src/net/i2p/addressbook/DaemonThread.java +++ b/apps/addressbook/java/src/net/i2p/addressbook/DaemonThread.java @@ -25,6 +25,7 @@ import java.util.Properties; import net.i2p.I2PAppContext; import net.i2p.client.naming.NamingServiceUpdater; +import net.i2p.util.I2PAppThread; /** * A thread that waits five minutes, then runs the addressbook daemon. @@ -32,7 +33,7 @@ import net.i2p.client.naming.NamingServiceUpdater; * @author Ragnarok * */ -public class DaemonThread extends Thread implements NamingServiceUpdater { +public class DaemonThread extends I2PAppThread implements NamingServiceUpdater { private String[] args; diff --git a/apps/apparmor/home.i2p.i2prouter b/apps/apparmor/home.i2p.i2prouter index b31f3adbaa6b19c4def1370278090db9c67f13d3..7f7dcb7ef8f539d6193f7e3d97d2bef7c9d06677 100644 --- a/apps/apparmor/home.i2p.i2prouter +++ b/apps/apparmor/home.i2p.i2prouter @@ -1,4 +1,4 @@ -# Last Modified: Sun Apr 12 22:08:32 2015 +#Last Modified: Sun Dec 06 12:30:32 2015 # vim:syntax=apparmor et ts=8 sw=4 #include <tunables/global> @@ -15,7 +15,7 @@ $INSTALL_PATH/{i2prouter,runplain.sh} flags=(complain) { $INSTALL_PATH/ r, $INSTALL_PATH/{i2psvc,wrapper} rmix, - owner $INSTALL_PATH/** rwklm, + owner $INSTALL_PATH/** rwkm, # Needed for Java owner @{PROC} r, @@ -57,7 +57,7 @@ $INSTALL_PATH/{i2prouter,runplain.sh} flags=(complain) { /usr/share/java/eclipse-ecj-*.jar r, /{,var/}tmp/ rwm, - owner /{,var/}tmp/** rwklm, + owner /{,var/}tmp/** rwkm, /{,usr/}bin/{,b,d}ash rix, /{,usr/}bin/cat rix, diff --git a/apps/i2psnark/COPYING b/apps/i2psnark/COPYING index d60c31a97a544b53039088d14fe9114583c0efc3..a0d98f2a621417ad2ae09eea97b10b21f8c9d660 100644 --- a/apps/i2psnark/COPYING +++ b/apps/i2psnark/COPYING @@ -1,340 +1 @@ - GNU GENERAL PUBLIC LICENSE - Version 2, June 1991 - - Copyright (C) 1989, 1991 Free Software Foundation, Inc. - 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -License is intended to guarantee your freedom to share and change free -software--to make sure the software is free for all its users. This -General Public License applies to most of the Free Software -Foundation's software and to any other program whose authors commit to -using it. (Some other Free Software Foundation software is covered by -the GNU Library General Public License instead.) You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -this service if you wish), that you receive source code or can get it -if you want it, that you can change the software or use pieces of it -in new free programs; and that you know you can do these things. - - To protect your rights, we need to make restrictions that forbid -anyone to deny you these rights or to ask you to surrender the rights. -These restrictions translate to certain responsibilities for you if you -distribute copies of the software, or if you modify it. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must give the recipients all the rights that -you have. You must make sure that they, too, receive or can get the -source code. And you must show them these terms so they know their -rights. - - We protect your rights with two steps: (1) copyright the software, and -(2) offer you this license which gives you legal permission to copy, -distribute and/or modify the software. - - Also, for each author's protection and ours, we want to make certain -that everyone understands that there is no warranty for this free -software. If the software is modified by someone else and passed on, we -want its recipients to know that what they have is not the original, so -that any problems introduced by others will not reflect on the original -authors' reputations. - - Finally, any free program is threatened constantly by software -patents. We wish to avoid the danger that redistributors of a free -program will individually obtain patent licenses, in effect making the -program proprietary. To prevent this, we have made it clear that any -patent must be licensed for everyone's free use or not licensed at all. - - The precise terms and conditions for copying, distribution and -modification follow. - - GNU GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License applies to any program or other work which contains -a notice placed by the copyright holder saying it may be distributed -under the terms of this General Public License. The "Program", below, -refers to any such program or work, and a "work based on the Program" -means either the Program or any derivative work under copyright law: -that is to say, a work containing the Program or a portion of it, -either verbatim or with modifications and/or translated into another -language. (Hereinafter, translation is included without limitation in -the term "modification".) Each licensee is addressed as "you". - -Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running the Program is not restricted, and the output from the Program -is covered only if its contents constitute a work based on the -Program (independent of having been made by running the Program). -Whether that is true depends on what the Program does. - - 1. You may copy and distribute verbatim copies of the Program's -source code as you receive it, in any medium, provided that you -conspicuously and appropriately publish on each copy an appropriate -copyright notice and disclaimer of warranty; keep intact all the -notices that refer to this License and to the absence of any warranty; -and give any other recipients of the Program a copy of this License -along with the Program. - -You may charge a fee for the physical act of transferring a copy, and -you may at your option offer warranty protection in exchange for a fee. - - 2. You may modify your copy or copies of the Program or any portion -of it, thus forming a work based on the Program, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) You must cause the modified files to carry prominent notices - stating that you changed the files and the date of any change. - - b) You must cause any work that you distribute or publish, that in - whole or in part contains or is derived from the Program or any - part thereof, to be licensed as a whole at no charge to all third - parties under the terms of this License. - - c) If the modified program normally reads commands interactively - when run, you must cause it, when started running for such - interactive use in the most ordinary way, to print or display an - announcement including an appropriate copyright notice and a - notice that there is no warranty (or else, saying that you provide - a warranty) and that users may redistribute the program under - these conditions, and telling the user how to view a copy of this - License. (Exception: if the Program itself is interactive but - does not normally print such an announcement, your work based on - the Program is not required to print an announcement.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Program, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Program, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Program. - -In addition, mere aggregation of another work not based on the Program -with the Program (or with a work based on the Program) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may copy and distribute the Program (or a work based on it, -under Section 2) in object code or executable form under the terms of -Sections 1 and 2 above provided that you also do one of the following: - - a) Accompany it with the complete corresponding machine-readable - source code, which must be distributed under the terms of Sections - 1 and 2 above on a medium customarily used for software interchange; or, - - b) Accompany it with a written offer, valid for at least three - years, to give any third party, for a charge no more than your - cost of physically performing source distribution, a complete - machine-readable copy of the corresponding source code, to be - distributed under the terms of Sections 1 and 2 above on a medium - customarily used for software interchange; or, - - c) Accompany it with the information you received as to the offer - to distribute corresponding source code. (This alternative is - allowed only for noncommercial distribution and only if you - received the program in object code or executable form with such - an offer, in accord with Subsection b above.) - -The source code for a work means the preferred form of the work for -making modifications to it. For an executable work, complete source -code means all the source code for all modules it contains, plus any -associated interface definition files, plus the scripts used to -control compilation and installation of the executable. However, as a -special exception, the source code distributed need not include -anything that is normally distributed (in either source or binary -form) with the major components (compiler, kernel, and so on) of the -operating system on which the executable runs, unless that component -itself accompanies the executable. - -If distribution of executable or object code is made by offering -access to copy from a designated place, then offering equivalent -access to copy the source code from the same place counts as -distribution of the source code, even though third parties are not -compelled to copy the source along with the object code. - - 4. You may not copy, modify, sublicense, or distribute the Program -except as expressly provided under this License. Any attempt -otherwise to copy, modify, sublicense or distribute the Program is -void, and will automatically terminate your rights under this License. -However, parties who have received copies, or rights, from you under -this License will not have their licenses terminated so long as such -parties remain in full compliance. - - 5. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Program or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Program (or any work based on the -Program), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Program or works based on it. - - 6. Each time you redistribute the Program (or any work based on the -Program), the recipient automatically receives a license from the -original licensor to copy, distribute or modify the Program subject to -these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties to -this License. - - 7. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Program at all. For example, if a patent -license would not permit royalty-free redistribution of the Program by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Program. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system, which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 8. If the distribution and/or use of the Program is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Program under this License -may add an explicit geographical distribution limitation excluding -those countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 9. The Free Software Foundation may publish revised and/or new versions -of the General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - -Each version is given a distinguishing version number. If the Program -specifies a version number of this License which applies to it and "any -later version", you have the option of following the terms and conditions -either of that version or of any later version published by the Free -Software Foundation. If the Program does not specify a version number of -this License, you may choose any version ever published by the Free Software -Foundation. - - 10. If you wish to incorporate parts of the Program into other free -programs whose distribution conditions are different, write to the author -to ask for permission. For software which is copyrighted by the Free -Software Foundation, write to the Free Software Foundation; we sometimes -make exceptions for this. Our decision will be guided by the two goals -of preserving the free status of all derivatives of our free software and -of promoting the sharing and reuse of software generally. - - NO WARRANTY - - 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY -FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN -OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES -PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS -TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE -PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, -REPAIR OR CORRECTION. - - 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR -REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING -OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED -TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY -YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER -PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE -POSSIBILITY OF SUCH DAMAGES. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - <one line to give the program's name and a brief idea of what it does.> - Copyright (C) <year> <name of author> - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - -Also add information on how to contact you by electronic and paper mail. - -If the program is interactive, make it output a short notice like this -when it starts in an interactive mode: - - Gnomovision version 69, Copyright (C) year name of author - Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, the commands you use may -be called something other than `show w' and `show c'; they could even be -mouse-clicks or menu items--whatever suits your program. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the program, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the program - `Gnomovision' (which makes passes at compilers) written by James Hacker. - - <signature of Ty Coon>, 1 April 1989 - Ty Coon, President of Vice - -This General Public License does not permit incorporating your program into -proprietary programs. If your program is a subroutine library, you may -consider it more useful to permit linking proprietary applications with the -library. If this is what you want to do, use the GNU Library General -Public License instead of this License. +See ../../licenses/LICENSE-GPLv2.txt diff --git a/apps/i2psnark/TODO b/apps/i2psnark/TODO deleted file mode 100644 index 6f89c0f50749b1a8d3d6ab80fd419d2613448c69..0000000000000000000000000000000000000000 --- a/apps/i2psnark/TODO +++ /dev/null @@ -1,24 +0,0 @@ -- I2PSnark: - - add multitorrent support by checking the metainfo hash in the - PeerAcceptor and feeding it off to the appropriate coordinator - - add a web interface - -- BEncode - - Byte array length indicator can overflow. - - Support really big BigNums (only 256 chars allowed now) - - Better BEValue toString(). Uses stupid heuristic now for debugging. - - Implemented bencoding. - - Remove application level hack to calculate sha1 hash for metainfo - (But can it be done as efficiently?) - -- Storage - - Check file name filter. - -- TrackerClient - - Support undocumented &numwant= request. - -- PeerCoordinator - - Disconnect from other seeds as soon as you are a seed yourself. - -- Text UI - - Make it completely silent. diff --git a/apps/i2psnark/authors.snark b/apps/i2psnark/authors-snark.txt similarity index 100% rename from apps/i2psnark/authors.snark rename to apps/i2psnark/authors-snark.txt diff --git a/apps/i2psnark/changelog.snark b/apps/i2psnark/changelog-snark.txt similarity index 100% rename from apps/i2psnark/changelog.snark rename to apps/i2psnark/changelog-snark.txt diff --git a/apps/i2psnark/java/src/org/klomp/snark/ConnectionAcceptor.java b/apps/i2psnark/java/src/org/klomp/snark/ConnectionAcceptor.java index 057e0780fbc4477ea07552b785276d5494809a1a..18493854d6f92218b2a8b84d62e96da762d3cbb6 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/ConnectionAcceptor.java +++ b/apps/i2psnark/java/src/org/klomp/snark/ConnectionAcceptor.java @@ -24,6 +24,7 @@ import java.io.BufferedInputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; +import java.net.ConnectException; import net.i2p.I2PAppContext; import net.i2p.I2PException; @@ -213,6 +214,20 @@ class ConnectionAcceptor implements Runnable } } } + catch (ConnectException ioe) + { + // This is presumed to be due to socket closing by I2PSnarkUtil.disconnect(), + // which does not currently call our halt(), although it should + if (_log.shouldWarn()) + _log.warn("Error while accepting", ioe); + synchronized(this) { + if (!stop) { + locked_halt(); + thread = null; + stop = true; + } + } + } catch (IOException ioe) { int level = stop ? Log.WARN : Log.ERROR; diff --git a/apps/i2psnark/java/src/org/klomp/snark/ExtensionHandler.java b/apps/i2psnark/java/src/org/klomp/snark/ExtensionHandler.java index 53247a69914ba7b43592d2d333763e70cfb0c7ad..a711d9a052f0e996ee9d3cb6d39e85ab85d640b6 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/ExtensionHandler.java +++ b/apps/i2psnark/java/src/org/klomp/snark/ExtensionHandler.java @@ -42,7 +42,7 @@ abstract class ExtensionHandler { * @param dht advertise DHT capability * @return bencoded outgoing handshake message */ - public static byte[] getHandshake(int metasize, boolean pexAndMetadata, boolean dht) { + public static byte[] getHandshake(int metasize, boolean pexAndMetadata, boolean dht, boolean uploadOnly) { Map<String, Object> handshake = new HashMap<String, Object>(); Map<String, Integer> m = new HashMap<String, Integer>(); if (pexAndMetadata) { @@ -59,6 +59,9 @@ abstract class ExtensionHandler { handshake.put("p", Integer.valueOf(TrackerClient.PORT)); handshake.put("v", "I2PSnark"); handshake.put("reqq", Integer.valueOf(5)); + // BEP 21 + if (uploadOnly) + handshake.put("upload_only", Integer.valueOf(1)); return BEncoder.bencode(handshake); } diff --git a/apps/i2psnark/java/src/org/klomp/snark/I2PSnarkUtil.java b/apps/i2psnark/java/src/org/klomp/snark/I2PSnarkUtil.java index e75ef301e40ee35dc2b38cf308215782c342a439..1bff1a74b741dbdad0e035390f0a302f9468c8cf 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/I2PSnarkUtil.java +++ b/apps/i2psnark/java/src/org/klomp/snark/I2PSnarkUtil.java @@ -3,8 +3,8 @@ package org.klomp.snark; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; +import java.net.URI; +import java.net.URISyntaxException; import java.util.Collections; import java.util.HashMap; import java.util.List; @@ -75,7 +75,7 @@ public class I2PSnarkUtil { private static final int EEPGET_CONNECT_TIMEOUT_SHORT = 5*1000; public static final int DEFAULT_STARTUP_DELAY = 3; public static final boolean DEFAULT_USE_OPENTRACKERS = true; - public static final int MAX_CONNECTIONS = 16; // per torrent + public static final int MAX_CONNECTIONS = 24; // per torrent public static final String PROP_MAX_BW = "i2cp.outboundBytesPerSecond"; public static final boolean DEFAULT_USE_DHT = true; public static final String EEPGET_USER_AGENT = "I2PSnark"; @@ -136,6 +136,7 @@ public class I2PSnarkUtil { public boolean configured() { return _configured; } + @SuppressWarnings({"unchecked", "rawtypes"}) public void setI2CPConfig(String i2cpHost, int i2cpPort, Map opts) { if (i2cpHost != null) _i2cpHost = i2cpHost; @@ -589,10 +590,10 @@ public class I2PSnarkUtil { */ public boolean isKnownOpenTracker(String url) { try { - URL u = new URL(url); + URI u = new URI(url); String host = u.getHost(); return host != null && SnarkManager.KNOWN_OPENTRACKERS.contains(host); - } catch (MalformedURLException mue) { + } catch (URISyntaxException use) { return false; } } @@ -660,7 +661,7 @@ public class I2PSnarkUtil { * The {0} will be replaced by the parameter. * Single quotes must be doubled, i.e. ' -> '' in the string. * @param o parameter, not translated. - * To tranlslate parameter also, use _t("foo {0} bar", _t("baz")) + * To translate parameter also, use _t("foo {0} bar", _t("baz")) * Do not double the single quotes in the parameter. * Use autoboxing to call with ints, longs, floats, etc. */ diff --git a/apps/i2psnark/java/src/org/klomp/snark/IdleChecker.java b/apps/i2psnark/java/src/org/klomp/snark/IdleChecker.java index d046a7a0c7e2a9202e8609d2b67c7a30c0506eea..1a109654af5c5b683aa769dbbe6784963dbb1d73 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/IdleChecker.java +++ b/apps/i2psnark/java/src/org/klomp/snark/IdleChecker.java @@ -120,10 +120,10 @@ class IdleChecker extends SimpleTimer2.TimedEvent { Map<String, String> opts = _util.getI2CPOptions(); String i = opts.get("inbound.quantity"); if (i == null) - i = "3"; + i = Integer.toString(SnarkManager.DEFAULT_TUNNEL_QUANTITY); String o = opts.get("outbound.quantity"); if (o == null) - o = "3"; + o = Integer.toString(SnarkManager.DEFAULT_TUNNEL_QUANTITY); String ib = opts.get("inbound.backupQuantity"); if (ib == null) ib = "0"; diff --git a/apps/i2psnark/java/src/org/klomp/snark/Peer.java b/apps/i2psnark/java/src/org/klomp/snark/Peer.java index cba955f691da30bf5f7721485a9488651f1911bf..68258022e2c39e208e44d5588d8b0e5d4f2e489d 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/Peer.java +++ b/apps/i2psnark/java/src/org/klomp/snark/Peer.java @@ -62,7 +62,7 @@ public class Peer implements Comparable<Peer> // Keeps state for in/out connections. Non-null when the handshake // was successful, the connection setup and runs - PeerState state; + volatile PeerState state; /** shared across all peers on this torrent */ MagnetState magnetState; @@ -217,9 +217,11 @@ public class Peer implements Comparable<Peer> * * If the given BitField is non-null it is send to the peer as first * message. + * + * @param uploadOnly if we are complete with skipped files, i.e. a partial seed */ - public void runConnection(I2PSnarkUtil util, PeerListener listener, BitField bitfield, MagnetState mState) - { + public void runConnection(I2PSnarkUtil util, PeerListener listener, BitField bitfield, + MagnetState mState, boolean uploadOnly) { if (state != null) throw new IllegalStateException("Peer already started"); @@ -275,17 +277,9 @@ public class Peer implements Comparable<Peer> int metasize = metainfo != null ? metainfo.getInfoBytes().length : -1; boolean pexAndMetadata = metainfo == null || !metainfo.isPrivate(); boolean dht = util.getDHT() != null; - out.sendExtension(0, ExtensionHandler.getHandshake(metasize, pexAndMetadata, dht)); + out.sendExtension(0, ExtensionHandler.getHandshake(metasize, pexAndMetadata, dht, uploadOnly)); } - // Old DHT PORT message - //if ((options & OPTION_I2P_DHT) != 0 && util.getDHT() != null) { - // if (_log.shouldLog(Log.DEBUG)) - // _log.debug("Peer supports DHT, sending PORT message"); - // int port = util.getDHT().getPort(); - // out.sendPort(port); - //} - // Send our bitmap if (bitfield != null) s.out.sendBitfield(bitfield); diff --git a/apps/i2psnark/java/src/org/klomp/snark/PeerCheckerTask.java b/apps/i2psnark/java/src/org/klomp/snark/PeerCheckerTask.java index 430f6c7ae6e6fcaf89b03ae211f30327cc446b0f..c2abf66609a7b9eb778e482a1d8c09fdf4421348 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/PeerCheckerTask.java +++ b/apps/i2psnark/java/src/org/klomp/snark/PeerCheckerTask.java @@ -267,7 +267,23 @@ class PeerCheckerTask implements Runnable // close out unused files, but we don't need to do it every time Storage storage = coordinator.getStorage(); - if (storage != null && (_runCount % 4) == 0) { + if (storage != null) { + // The more files a torrent has, the more often we call the cleaner, + // to keep from running out of FDs + int files = storage.getFileCount(); + int skip; + if (files == 1) + skip = 6; + else if (files <= 4) + skip = 4; + else if (files <= 20) + skip = 3; + else if (files <= 50) + skip = 2; + else + skip = 1; + + if ((_runCount % skip) == 0) storage.cleanRAFs(); } diff --git a/apps/i2psnark/java/src/org/klomp/snark/PeerConnectionIn.java b/apps/i2psnark/java/src/org/klomp/snark/PeerConnectionIn.java index 1f47b59b6056c00addf57a7d435e5dfef3fd923f..da1b943332f8e4c38664c9fd9dbe393deee89b85 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/PeerConnectionIn.java +++ b/apps/i2psnark/java/src/org/klomp/snark/PeerConnectionIn.java @@ -39,7 +39,7 @@ class PeerConnectionIn implements Runnable private static final int MAX_MSG_SIZE = Math.max(PeerState.PARTSIZE + 9, MagnetState.CHUNK_SIZE + 100); // 100 for the ext msg dictionary - private Thread thread; + private volatile Thread thread; private volatile boolean quit; long lastRcvd; @@ -75,9 +75,12 @@ class PeerConnectionIn implements Runnable thread = Thread.currentThread(); try { - PeerState ps = peer.state; - while (!quit && ps != null) + while (!quit) { + final PeerState ps = peer.state; + if (ps == null) + break; + // Common variables used for some messages. int piece; int begin; @@ -91,9 +94,9 @@ class PeerConnectionIn implements Runnable if (i == 0) { - ps.keepAliveMessage(); if (_log.shouldLog(Log.DEBUG)) _log.debug("Received keepalive from " + peer); + ps.keepAliveMessage(); continue; } @@ -101,51 +104,51 @@ class PeerConnectionIn implements Runnable switch (b) { case Message.CHOKE: - ps.chokeMessage(true); if (_log.shouldLog(Log.DEBUG)) _log.debug("Received choke from " + peer); + ps.chokeMessage(true); break; case Message.UNCHOKE: - ps.chokeMessage(false); if (_log.shouldLog(Log.DEBUG)) _log.debug("Received unchoke from " + peer); + ps.chokeMessage(false); break; case Message.INTERESTED: - ps.interestedMessage(true); if (_log.shouldLog(Log.DEBUG)) _log.debug("Received interested from " + peer); + ps.interestedMessage(true); break; case Message.UNINTERESTED: - ps.interestedMessage(false); if (_log.shouldLog(Log.DEBUG)) _log.debug("Received not interested from " + peer); + ps.interestedMessage(false); break; case Message.HAVE: piece = din.readInt(); - ps.haveMessage(piece); if (_log.shouldLog(Log.DEBUG)) _log.debug("Received havePiece(" + piece + ") from " + peer); + ps.haveMessage(piece); break; case Message.BITFIELD: byte[] bitmap = new byte[i-1]; din.readFully(bitmap); - ps.bitfieldMessage(bitmap); if (_log.shouldLog(Log.DEBUG)) _log.debug("Received bitmap from " + peer + ": size=" + (i-1) /* + ": " + ps.bitfield */ ); + ps.bitfieldMessage(bitmap); break; case Message.REQUEST: piece = din.readInt(); begin = din.readInt(); len = din.readInt(); - ps.requestMessage(piece, begin, len); if (_log.shouldLog(Log.DEBUG)) _log.debug("Received request(" + piece + "," + begin + ") from " + peer); + ps.requestMessage(piece, begin, len); break; case Message.PIECE: @@ -156,9 +159,9 @@ class PeerConnectionIn implements Runnable if (req != null) { req.read(din); - ps.pieceMessage(req); if (_log.shouldLog(Log.DEBUG)) _log.debug("Received data(" + piece + "," + begin + ") from " + peer); + ps.pieceMessage(req); } else { @@ -175,16 +178,16 @@ class PeerConnectionIn implements Runnable piece = din.readInt(); begin = din.readInt(); len = din.readInt(); - ps.cancelMessage(piece, begin, len); if (_log.shouldLog(Log.DEBUG)) _log.debug("Received cancel(" + piece + "," + begin + ") from " + peer); + ps.cancelMessage(piece, begin, len); break; case Message.PORT: int port = din.readUnsignedShort(); - ps.portMessage(port); if (_log.shouldLog(Log.DEBUG)) _log.debug("Received port message from " + peer); + ps.portMessage(port); break; case Message.EXTENSION: @@ -247,11 +250,9 @@ class PeerConnectionIn implements Runnable if (_log.shouldLog(Log.INFO)) _log.info("IOError talking with " + peer, ioe); } - catch (Throwable t) + catch (RuntimeException t) { _log.error("Error talking with " + peer, t); - if (t instanceof OutOfMemoryError) - throw (OutOfMemoryError)t; } finally { diff --git a/apps/i2psnark/java/src/org/klomp/snark/PeerCoordinator.java b/apps/i2psnark/java/src/org/klomp/snark/PeerCoordinator.java index b347b54488d565fd300581f75a02b6568ca2d6d1..2542f8aa8ce99b0294eb8c4fabd7cebfa5c5bae4 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/PeerCoordinator.java +++ b/apps/i2psnark/java/src/org/klomp/snark/PeerCoordinator.java @@ -70,7 +70,7 @@ class PeerCoordinator implements PeerListener // package local for access by CheckDownLoadersTask final static long CHECK_PERIOD = 40*1000; // 40 seconds - final static int MAX_UPLOADERS = 6; + final static int MAX_UPLOADERS = 8; public static final long MAX_INACTIVE = 8*60*1000; /** @@ -403,7 +403,7 @@ class PeerCoordinator implements PeerListener * Formerly used to * reduce max if huge pieces to keep from ooming when leeching * but now we don't - * @return usually 16 + * @return usually I2PSnarkUtil.MAX_CONNECTIONS */ private int getMaxConnections() { if (metainfo == null) @@ -604,11 +604,13 @@ class PeerCoordinator implements PeerListener bitfield = storage.getBitField(); else bitfield = null; + // if we aren't a seed but we don't want any more + final boolean partialComplete = wantedBytes == 0 && bitfield != null && !bitfield.complete(); Runnable r = new Runnable() { public void run() { - peer.runConnection(_util, listener, bitfield, magnetState); + peer.runConnection(_util, listener, bitfield, magnetState, partialComplete); } }; String threadName = "Snark peer " + peer.toString(); @@ -984,8 +986,9 @@ class PeerCoordinator implements PeerListener } int piece = pp.getPiece(); - synchronized(wantedPieces) - { + // try/catch outside the synch to avoid deadlock in the catch + try { + synchronized(wantedPieces) { Piece p = new Piece(piece); if (!wantedPieces.contains(p)) { @@ -1001,8 +1004,7 @@ class PeerCoordinator implements PeerListener } } - try - { + // try/catch moved outside of synch // this takes forever if complete, as it rechecks if (storage.putPiece(pp)) { @@ -1028,21 +1030,21 @@ class PeerCoordinator implements PeerListener _log.warn("Got BAD piece " + piece + "/" + metainfo.getPieces() + " from " + peer + " for " + metainfo.getName()); return false; // No need to announce BAD piece to peers. } - } - catch (IOException ioe) - { + + wantedPieces.remove(p); + wantedBytes -= metainfo.getPieceLength(p.getId()); + } // synch + } catch (IOException ioe) { String msg = "Error writing storage (piece " + piece + ") for " + metainfo.getName() + ": " + ioe; _log.error(msg, ioe); if (listener != null) { listener.addMessage(msg); listener.addMessage("Fatal storage error: Stopping torrent " + metainfo.getName()); } + // deadlock was here snark.stopTorrent(); throw new RuntimeException(msg, ioe); - } - wantedPieces.remove(p); - wantedBytes -= metainfo.getPieceLength(p.getId()); - } + } // just in case removePartialPiece(piece); diff --git a/apps/i2psnark/java/src/org/klomp/snark/Snark.java b/apps/i2psnark/java/src/org/klomp/snark/Snark.java index f8dadb627fd51730a8ff3a71504b5f36bc21b707..78e3b33e90cbf76b81e9d3e10efcf6f1c6787b44 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/Snark.java +++ b/apps/i2psnark/java/src/org/klomp/snark/Snark.java @@ -911,6 +911,30 @@ public class Snark return -1; } + /** + * Bytes not received and set to skipped. + * This is not the same as the total of all skipped files, + * since pieces may span multiple files. + * + * @return exact value. or 0 if no storage yet. + * @since 0.9.24 + */ + public long getSkippedLength() { + PeerCoordinator coord = coordinator; + if (coord != null) { + // fast way + long r = getRemainingLength(); + if (r <= 0) + return 0; + long n = coord.getNeededLength(); + return r - n; + } else if (storage != null) { + // slow way + return storage.getSkippedLength(); + } + return 0; + } + /** * Does not account (i.e. includes) for skipped files. * @return number of pieces still needed (magnet mode or not), or -1 if unknown @@ -1305,7 +1329,7 @@ public class Snark * coordinatorListener */ final static int MIN_TOTAL_UPLOADERS = 4; - final static int MAX_TOTAL_UPLOADERS = 10; + final static int MAX_TOTAL_UPLOADERS = 20; public boolean overUploadLimit(int uploaders) { if (_peerCoordinatorSet == null || uploaders <= 0) diff --git a/apps/i2psnark/java/src/org/klomp/snark/SnarkManager.java b/apps/i2psnark/java/src/org/klomp/snark/SnarkManager.java index bcb4fa34c203e3e8b2b410a7da2681902f3b4a20..aa463d94d38970bd1cb62cdab2766c16f572724e 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/SnarkManager.java +++ b/apps/i2psnark/java/src/org/klomp/snark/SnarkManager.java @@ -126,12 +126,14 @@ public class SnarkManager implements CompleteListener { public static final String PROP_OPENTRACKERS = "i2psnark.opentrackers"; public static final String PROP_PRIVATETRACKERS = "i2psnark.privatetrackers"; private static final String PROP_USE_DHT = "i2psnark.enableDHT"; + private static final String PROP_SMART_SORT = "i2psnark.smartSort"; public static final int MIN_UP_BW = 10; public static final int DEFAULT_MAX_UP_BW = 25; public static final int DEFAULT_STARTUP_DELAY = 3; public static final int DEFAULT_REFRESH_DELAY_SECS = 60; private static final int DEFAULT_PAGE_SIZE = 50; + public static final int DEFAULT_TUNNEL_QUANTITY = 3; public static final String CONFIG_DIR_SUFFIX = ".d"; private static final String SUBDIR_PREFIX = "s"; private static final String B64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-~"; @@ -188,7 +190,7 @@ public class SnarkManager implements CompleteListener { for (int i = 1; i < DEFAULT_TRACKERS.length; i += 2) { if (DEFAULT_TRACKERS[i-1].equals("TheBland") && !SigType.ECDSA_SHA256_P256.isAvailable()) continue; - String urls[] = DEFAULT_TRACKERS[i].split("=", 2); + String urls[] = DataHelper.split(DEFAULT_TRACKERS[i], "=", 2); ann.add(urls[0]); } DEFAULT_TRACKER_ANNOUNCES = Collections.unmodifiableSet(ann); @@ -340,6 +342,17 @@ public class SnarkManager implements CompleteListener { public boolean shouldAutoStart() { return Boolean.parseBoolean(_config.getProperty(PROP_AUTO_START, DEFAULT_AUTO_START)); } + + /** + * @return default true + * @since 0.9.23 + */ + public boolean isSmartSortEnabled() { + String val = _config.getProperty(PROP_SMART_SORT); + if (val == null) + return true; + return Boolean.parseBoolean(val); + } /**** public String linkPrefix() { @@ -598,7 +611,9 @@ public class SnarkManager implements CompleteListener { if (!_config.containsKey(PROP_I2CP_PORT)) _config.setProperty(PROP_I2CP_PORT, "7654"); if (!_config.containsKey(PROP_I2CP_OPTS)) - _config.setProperty(PROP_I2CP_OPTS, "inbound.length=3 outbound.length=3 inbound.quantity=3 outbound.quantity=3"); + _config.setProperty(PROP_I2CP_OPTS, "inbound.length=3 outbound.length=3" + + " inbound.quantity=" + DEFAULT_TUNNEL_QUANTITY + + " outbound.quantity=" + DEFAULT_TUNNEL_QUANTITY); //if (!_config.containsKey(PROP_EEP_HOST)) // _config.setProperty(PROP_EEP_HOST, "127.0.0.1"); //if (!_config.containsKey(PROP_EEP_PORT)) @@ -736,19 +751,19 @@ public class SnarkManager implements CompleteListener { /** * all params may be null or need trimming */ - public void updateConfig(String dataDir, boolean filesPublic, boolean autoStart, String refreshDelay, + public void updateConfig(String dataDir, boolean filesPublic, boolean autoStart, boolean smartSort, String refreshDelay, String startDelay, String pageSize, String seedPct, String eepHost, String eepPort, String i2cpHost, String i2cpPort, String i2cpOpts, String upLimit, String upBW, boolean useOpenTrackers, boolean useDHT, String theme) { synchronized(_configLock) { - locked_updateConfig(dataDir, filesPublic, autoStart, refreshDelay, + locked_updateConfig(dataDir, filesPublic, autoStart, smartSort,refreshDelay, startDelay, pageSize, seedPct, eepHost, eepPort, i2cpHost, i2cpPort, i2cpOpts, upLimit, upBW, useOpenTrackers, useDHT, theme); } } - private void locked_updateConfig(String dataDir, boolean filesPublic, boolean autoStart, String refreshDelay, + private void locked_updateConfig(String dataDir, boolean filesPublic, boolean autoStart, boolean smartSort, String refreshDelay, String startDelay, String pageSize, String seedPct, String eepHost, String eepPort, String i2cpHost, String i2cpPort, String i2cpOpts, String upLimit, String upBW, boolean useOpenTrackers, boolean useDHT, String theme) { @@ -966,6 +981,16 @@ public class SnarkManager implements CompleteListener { addMessage(_t("Disabled autostart")); changed = true; } + + if (isSmartSortEnabled() != smartSort) { + _config.setProperty(PROP_SMART_SORT, Boolean.toString(smartSort)); + if (smartSort) + addMessage(_t("Enabled smart sort")); + else + addMessage(_t("Disabled smart sort")); + changed = true; + } + if (_util.shouldUseOpenTrackers() != useOpenTrackers) { _config.setProperty(PROP_USE_OPENTRACKERS, useOpenTrackers + ""); if (useOpenTrackers) @@ -1056,7 +1081,7 @@ public class SnarkManager implements CompleteListener { val = dflt; if (val == null) return Collections.emptyList(); - return Arrays.asList(val.split(",")); + return Arrays.asList(DataHelper.split(val, ",")); } /** @@ -1092,7 +1117,7 @@ public class SnarkManager implements CompleteListener { } /** hardcoded for sanity. perhaps this should be customizable, for people who increase their ulimit, etc. */ - public static final int MAX_FILES_PER_TORRENT = 512; + public static final int MAX_FILES_PER_TORRENT = 999; /** * Set of canonical .torrent filenames that we are dealing with. @@ -1293,11 +1318,12 @@ public class SnarkManager implements CompleteListener { running = false; } // Were we running last time? + String link = linkify(torrent); if (!dontAutoStart && shouldAutoStart() && running) { torrent.startTorrent(); - addMessage(_t("Torrent added and started: \"{0}\"", torrent.getBaseName())); + addMessageNoEscape(_t("Torrent added and started: {0}", link)); } else { - addMessage(_t("Torrent added: \"{0}\"", torrent.getBaseName())); + addMessageNoEscape(_t("Torrent added: {0}", link)); } } @@ -1588,7 +1614,7 @@ public class SnarkManager implements CompleteListener { return; int filecount = metainfo.getFiles().size(); int[] rv = new int[filecount]; - String[] arr = pri.split(","); + String[] arr = DataHelper.split(pri, ","); for (int i = 0; i < filecount && i < arr.length; i++) { if (arr[i].length() > 0) { try { @@ -1960,7 +1986,7 @@ public class SnarkManager implements CompleteListener { if (shouldRemove) removeTorrentStatus(torrent); if (!wasStopped) - addMessage(_t("Torrent stopped: \"{0}\"", torrent.getBaseName())); + addMessageNoEscape(_t("Torrent stopped: {0}", linkify(torrent))); } return torrent; } @@ -1979,7 +2005,7 @@ public class SnarkManager implements CompleteListener { boolean wasStopped = torrent.isStopped(); torrent.stopTorrent(); if (!wasStopped) - addMessage(_t("Torrent stopped: \"{0}\"", torrent.getBaseName())); + addMessageNoEscape(_t("Torrent stopped: {0}", linkify(torrent))); if (shouldRemove) removeTorrentStatus(torrent); } @@ -2028,7 +2054,7 @@ public class SnarkManager implements CompleteListener { synchronized (_snarks) { ok = monitorTorrents(dir); } - } catch (Exception e) { + } catch (RuntimeException e) { _log.error("Error in the DirectoryMonitor", e); ok = false; } @@ -2037,7 +2063,7 @@ public class SnarkManager implements CompleteListener { try { addMagnets(); doMagnets = false; - } catch (Exception e) { + } catch (RuntimeException e) { _log.error("Error in the DirectoryMonitor", e); } if (!_snarks.isEmpty()) @@ -2065,14 +2091,8 @@ public class SnarkManager implements CompleteListener { Storage storage = snark.getStorage(); if (meta == null || storage == null) return; - StringBuilder buf = new StringBuilder(256); - String base = DataHelper.escapeHTML(storage.getBaseName()); - buf.append("<a href=\"").append(_contextPath).append('/').append(base); - if (meta.getFiles() != null) - buf.append('/'); - buf.append("\">").append(base).append("</a>"); if (snark.getDownloaded() > 0) - addMessageNoEscape(_t("Download finished: {0}", buf.toString())); // + " (" + _t("size: {0}B", DataHelper.formatSize2(len)) + ')'); + addMessageNoEscape(_t("Download finished: {0}", linkify(snark))); updateStatus(snark); } @@ -2128,7 +2148,7 @@ public class SnarkManager implements CompleteListener { _magnets.remove(snark.getName()); removeMagnetStatus(snark.getInfoHash()); addMessage(_t("Metainfo received for {0}", snark.getName())); - addMessage(_t("Starting up torrent {0}", storage.getBaseName())); + addMessageNoEscape(_t("Starting up torrent {0}", linkify(snark))); return name; } catch (IOException ioe) { addMessage(_t("Failed to copy torrent file to {0}", name)); @@ -2162,6 +2182,27 @@ public class SnarkManager implements CompleteListener { // End Snark.CompleteListeners + /** + * An HTML link to the file if complete and a single file, + * to the directory if not complete or not a single file, + * or simply the unlinkified name of the snark if a magnet + * + * @since 0.9.23 + */ + private String linkify(Snark snark) { + MetaInfo meta = snark.getMetaInfo(); + Storage storage = snark.getStorage(); + if (meta == null || storage == null) + return DataHelper.escapeHTML(snark.getBaseName()); + StringBuilder buf = new StringBuilder(256); + String base = DataHelper.escapeHTML(storage.getBaseName()); + buf.append("<a href=\"").append(_contextPath).append('/').append(base); + if (meta.getFiles() != null || !storage.complete()) + buf.append('/'); + buf.append("\">").append(base).append("</a>"); + return buf.toString(); + } + /** * Add all magnets from the config file * @@ -2169,7 +2210,7 @@ public class SnarkManager implements CompleteListener { */ private void addMagnets() { boolean changed = false; - for (Iterator iter = _config.keySet().iterator(); iter.hasNext(); ) { + for (Iterator<?> iter = _config.keySet().iterator(); iter.hasNext(); ) { String k = (String) iter.next(); if (k.startsWith(PROP_META_MAGNET_PREFIX)) { String b64 = k.substring(PROP_META_MAGNET_PREFIX.length()); @@ -2228,7 +2269,7 @@ public class SnarkManager implements CompleteListener { // Snark.fatal() throws a RuntimeException // don't let one bad torrent kill the whole loop addTorrent(name, null, !shouldAutoStart()); - } catch (Exception e) { + } catch (RuntimeException e) { addMessage(_t("Error: Could not add the torrent {0}", name) + ": " + e); _log.error("Unable to add the torrent " + name, e); rv = false; @@ -2247,7 +2288,7 @@ public class SnarkManager implements CompleteListener { // Snark.fatal() throws a RuntimeException // don't let one bad torrent kill the whole loop stopTorrent(name, true); - } catch (Exception e) { + } catch (RuntimeException e) { // don't bother with message } } @@ -2304,12 +2345,12 @@ public class SnarkManager implements CompleteListener { if ( (trackers == null) || (trackers.trim().length() <= 0) ) { setDefaultTrackerMap(true); } else { - String[] toks = trackers.split(","); + String[] toks = DataHelper.split(trackers, ","); for (int i = 0; i < toks.length; i += 2) { String name = toks[i].trim().replace(",", ","); String url = toks[i+1].trim().replace(",", ","); if ( (name.length() > 0) && (url.length() > 0) ) { - String urls[] = url.split("=", 2); + String urls[] = DataHelper.split(url, "=", 2); String url2 = urls.length > 1 ? urls[1] : ""; _trackerMap.put(name, new Tracker(name, urls[0], url2)); } @@ -2329,7 +2370,7 @@ public class SnarkManager implements CompleteListener { String name = DEFAULT_TRACKERS[i]; if (name.equals("TheBland") && !SigType.ECDSA_SHA256_P256.isAvailable()) continue; - String urls[] = DEFAULT_TRACKERS[i+1].split("=", 2); + String urls[] = DataHelper.split(DEFAULT_TRACKERS[i+1], "=", 2); String url2 = urls.length > 1 ? urls[1] : null; _trackerMap.put(name, new Tracker(name, urls[0], url2)); } @@ -2390,7 +2431,7 @@ public class SnarkManager implements CompleteListener { boolean connected = _util.connected(); if ((!connected) && !_util.isConnecting()) addMessage(_t("Opening the I2P tunnel")); - addMessage(_t("Starting up torrent {0}", snark.getBaseName())); + addMessageNoEscape(_t("Starting up torrent {0}", linkify(snark))); if (connected) { snark.startTorrent(); } else { @@ -2429,7 +2470,7 @@ public class SnarkManager implements CompleteListener { public void run() { try { run2(); - } catch (Exception e) { + } catch (RuntimeException e) { _log.error("Error starting", e); } } @@ -2548,15 +2589,16 @@ public class SnarkManager implements CompleteListener { updateStatus(snark); if (_log.shouldWarn()) _log.warn("Finished recheck of " + snark.getBaseName() + " changed? " + changed); + String link = linkify(snark); if (changed) { int pieces = snark.getPieces(); double completion = (pieces - snark.getNeeded()) / (double) pieces; String complete = (new DecimalFormat("0.00%")).format(completion); - addMessage(_t("Finished recheck of torrent {0}, now {1} complete", snark.getBaseName(), complete)); + addMessageNoEscape(_t("Finished recheck of torrent {0}, now {1} complete", link, complete)); } else { - addMessage(_t("Finished recheck of torrent {0}, unchanged", snark.getBaseName())); + addMessageNoEscape(_t("Finished recheck of torrent {0}, unchanged", link)); } - } catch (Exception e) { + } catch (IOException e) { _log.error("Error rechecking " + snark.getBaseName(), e); addMessage(_t("Error checking the torrent {0}", snark.getBaseName()) + ": " + e); } diff --git a/apps/i2psnark/java/src/org/klomp/snark/Storage.java b/apps/i2psnark/java/src/org/klomp/snark/Storage.java index 62cb1aa45d13836bd83961a9ae74222366877ca5..1a8349f5f7d87b3927dd8337b30be2b2f46c4efd 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/Storage.java +++ b/apps/i2psnark/java/src/org/klomp/snark/Storage.java @@ -78,14 +78,15 @@ public class Storage implements Closeable /** The default piece size. */ private static final int DEFAULT_PIECE_SIZE = 256*1024; /** bigger than this will be rejected */ - public static final int MAX_PIECE_SIZE = 8*1024*1024; + public static final int MAX_PIECE_SIZE = 16*1024*1024; /** The maximum number of pieces in a torrent. */ - public static final int MAX_PIECES = 10*1024; + public static final int MAX_PIECES = 32*1024; public static final long MAX_TOTAL_SIZE = MAX_PIECE_SIZE * (long) MAX_PIECES; private static final Map<String, String> _filterNameCache = new ConcurrentHashMap<String, String>(); private static final boolean _isWindows = SystemVersion.isWindows(); + private static final boolean _isARM = SystemVersion.isARM(); private static final int BUFSIZE = PeerState.PARTSIZE; private static final ByteCache _cache = ByteCache.getInstance(16, BUFSIZE); @@ -165,7 +166,7 @@ public class Storage implements Closeable else pc_size = DEFAULT_PIECE_SIZE; int pcs = (int) ((total - 1)/pc_size) + 1; - while (pcs > (MAX_PIECES * 2 / 3) && pc_size < MAX_PIECE_SIZE) + while (pcs > (MAX_PIECES / 3) && pc_size < MAX_PIECE_SIZE) { pc_size *= 2; pcs = (int) ((total - 1)/pc_size) +1; @@ -517,6 +518,31 @@ public class Storage implements Closeable return rv; } + /** + * Call setPriority() for all changed files first, + * then call this. + * The length of all the pieces that are not yet downloaded, + * and are set to skipped. + * This is not the same as the total of all skipped files, + * since pieces may span multiple files. + * + * @return 0 on error, if complete, or if only one file + * @since 0.9.24 + */ + public long getSkippedLength() { + int[] pri = getPiecePriorities(); + if (pri == null) + return 0; + long rv = 0; + final int end = pri.length - 1; + for (int i = 0; i <= end; i++) { + if (pri[i] <= -9 && !bitfield.get(i)) { + rv += (i != end) ? piece_size : metainfo.getPieceLength(i); + } + } + return rv; + } + /** * The BitField that tells which pieces this storage contains. * Do not change this since this is the current state of the storage. @@ -747,7 +773,7 @@ public class Storage implements Closeable } rv = repl; } - } catch (Exception ex) { + } catch (RuntimeException ex) { ex.printStackTrace(); } } @@ -819,6 +845,14 @@ public class Storage implements Closeable return rv; } + /** + * Does not include directories. + * @since 0.9.23 + */ + public int getFileCount() { + return _torrentFiles.size(); + } + /** * Includes the base for a multi-file torrent. * Sorted bottom-up for easy deletion. @@ -958,11 +992,9 @@ public class Storage implements Closeable pieceEnd += length; while (fileEnd <= pieceEnd) { TorrentFile tf = _torrentFiles.get(file); - synchronized(tf) { - try { - tf.closeRAF(); - } catch (IOException ioe) {} - } + try { + tf.closeRAF(); + } catch (IOException ioe) {} if (++file >= _torrentFiles.size()) break; fileEnd += _torrentFiles.get(file).length; @@ -1035,9 +1067,7 @@ public class Storage implements Closeable for (TorrentFile tf : _torrentFiles) { try { - synchronized(tf) { tf.closeRAF(); - } } catch (IOException ioe) { _log.error("Error closing " + tf, ioe); // gobble gobble @@ -1262,17 +1292,15 @@ public class Storage implements Closeable return length; } - private static final long RAFCloseDelay = 4*60*1000; + private static final long RAF_CLOSE_DELAY = 4*60*1000; /** * Close unused RAFs - call periodically */ public void cleanRAFs() { - long cutoff = System.currentTimeMillis() - RAFCloseDelay; + long cutoff = System.currentTimeMillis() - RAF_CLOSE_DELAY; for (TorrentFile tf : _torrentFiles) { - synchronized(tf) { tf.closeRAF(cutoff); - } } } @@ -1398,7 +1426,9 @@ public class Storage implements Closeable // Windows will zero-fill up to the point of the write, which // will make the file fairly unfragmented, on average, at least until // near the end where it will get exponentially more fragmented. - if (!_isWindows) + // Also don't ballon on ARM, as a proxy for solid state disk, where fragmentation doesn't matter too much. + // Actual detection of SSD is almost impossible. + if (!_isWindows && !_isARM) isSparse = true; } @@ -1478,7 +1508,7 @@ public class Storage implements Closeable break; } // switch } // while - } catch (Exception e) { + } catch (RuntimeException e) { e.printStackTrace(); error = true; } diff --git a/apps/i2psnark/java/src/org/klomp/snark/TrackerClient.java b/apps/i2psnark/java/src/org/klomp/snark/TrackerClient.java index ab1116722b6c7319712d7c2514cf4c673c4bde79..5397cd757bfa48982e3ef9e217c347c7fd1bc592 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/TrackerClient.java +++ b/apps/i2psnark/java/src/org/klomp/snark/TrackerClient.java @@ -23,8 +23,8 @@ package org.klomp.snark; import java.io.ByteArrayInputStream; import java.io.IOException; import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; +import java.net.URI; +import java.net.URISyntaxException; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; @@ -875,18 +875,20 @@ public class TrackerClient implements Runnable { } /** - * @param ann an announce URL + * @param ann an announce URL, may be null, returns false if null * @return true for i2p hosts only * @since 0.7.12 */ public static boolean isValidAnnounce(String ann) { - URL url; + if (ann == null) + return false; + URI url; try { - url = new URL(ann); - } catch (MalformedURLException mue) { - return false; + url = new URI(ann); + } catch (URISyntaxException use) { + return false; } - return url.getProtocol().equals("http") && + return "http".equals(url.getScheme()) && url.getHost() != null && (url.getHost().endsWith(".i2p") || url.getHost().equals("i2p")); } @@ -896,15 +898,17 @@ public class TrackerClient implements Runnable { * @since 0.9.5 */ private static Hash getHostHash(String ann) { - URL url; + URI url; try { - url = new URL(ann); - } catch (MalformedURLException mue) { + url = new URI(ann); + } catch (URISyntaxException use) { return null; } - if (!url.getProtocol().equals("http")) + if (!"http".equals(url.getScheme())) return null; String host = url.getHost(); + if (host == null) + return null; if (host.endsWith(".i2p")) return ConvertToHash.getHash(host); if (host.equals("i2p")) { @@ -912,7 +916,7 @@ public class TrackerClient implements Runnable { if (path == null || path.length() < 517 || !path.startsWith("/")) return null; - String[] parts = path.substring(1).split("[/\\?&;]", 2); + String[] parts = DataHelper.split(path.substring(1), "[/\\?&;]", 2); return ConvertToHash.getHash(parts[0]); } return null; diff --git a/apps/i2psnark/java/src/org/klomp/snark/dht/DHTTracker.java b/apps/i2psnark/java/src/org/klomp/snark/dht/DHTTracker.java index 3b7b1d99c1f4a5b1a69eeab39870e3ddc902864e..784d8e6bff24fea169c8ea02de67ecfabf1a0fc6 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/dht/DHTTracker.java +++ b/apps/i2psnark/java/src/org/klomp/snark/dht/DHTTracker.java @@ -106,6 +106,7 @@ class DHTTracker { * @param noSeeds true if we do not want seeds in the result * @return list or empty list (never null) */ + @SuppressWarnings({"unchecked", "rawtypes"}) List<Hash> getPeers(InfoHash ih, int max, boolean noSeeds) { Peers peers = _torrents.get(ih); if (peers == null || max <= 0) diff --git a/apps/i2psnark/java/src/org/klomp/snark/dht/KRPC.java b/apps/i2psnark/java/src/org/klomp/snark/dht/KRPC.java index 58e0f39fca73397ccf946974ea77e82f697d011e..27325ee6fbad9e4d0039df3f8c6b86673d998976 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/dht/KRPC.java +++ b/apps/i2psnark/java/src/org/klomp/snark/dht/KRPC.java @@ -40,6 +40,7 @@ import net.i2p.util.I2PAppThread; import net.i2p.util.Log; import net.i2p.util.SimpleTimer2; +import org.klomp.snark.I2PSnarkUtil; import org.klomp.snark.SnarkManager; import org.klomp.snark.TrackerClient; import org.klomp.snark.bencode.BDecoder; @@ -128,8 +129,10 @@ public class KRPC implements I2PSessionMuxedListener, DHT { /** Max number of nodes to return. BEP 5 says 8 */ private static final int K = 8; - /** Max number of peers to return. BEP 5 doesn't say. We'll use the same as I2PSnarkUtil.MAX_CONNECTIONS */ - private static final int MAX_WANT = 16; + /** Max number of peers to return. BEP 5 doesn't say. + * We'll use more than I2PSnarkUtil.MAX_CONNECTIONS since lots could be old. + */ + private static final int MAX_WANT = I2PSnarkUtil.MAX_CONNECTIONS * 3 / 2; /** overloads error codes which start with 201 */ private static final int REPLY_NONE = 0; @@ -243,6 +246,7 @@ public class KRPC implements I2PSessionMuxedListener, DHT { * @param maxWait how long to wait for each to reply (not total) must be > 0 * @param parallel how many outstanding at once (unimplemented, always 1) */ + @SuppressWarnings("unchecked") private void explore(NID target, int maxNodes, long maxWait, int parallel) { List<NodeInfo> nodes = _knownNodes.findClosest(target, maxNodes); if (nodes.isEmpty()) { @@ -327,6 +331,7 @@ public class KRPC implements I2PSessionMuxedListener, DHT { * @param noSeeds true if we do not want seeds in the result * @return possibly empty (never null) */ + @SuppressWarnings("unchecked") public Collection<Hash> getPeersAndAnnounce(byte[] ih, int max, long maxWait, int annMax, long annMaxWait, boolean isSeed, boolean noSeeds) { @@ -858,6 +863,7 @@ public class KRPC implements I2PSessionMuxedListener, DHT { * @param repliable true for all but announce * @return null on error */ + @SuppressWarnings("unchecked") private ReplyWaiter sendQuery(NodeInfo nInfo, Map<String, Object> map, boolean repliable) { if (nInfo.equals(_myNodeInfo)) throw new IllegalArgumentException("wtf don't send to ourselves"); @@ -907,6 +913,7 @@ public class KRPC implements I2PSessionMuxedListener, DHT { * @param toPort the query port, we will increment here * @return success */ + @SuppressWarnings("unchecked") private boolean sendResponse(NodeInfo nInfo, MsgID msgID, Map<String, Object> map) { if (nInfo.equals(_myNodeInfo)) throw new IllegalArgumentException("wtf don't send to ourselves"); @@ -1408,7 +1415,7 @@ public class KRPC implements I2PSessionMuxedListener, DHT { private List<Hash> receivePeers(NodeInfo nInfo, List<BEValue> peers) throws InvalidBEncodingException { if (_log.shouldLog(Log.INFO)) _log.info("Rcvd peers from: " + nInfo); - int max = Math.min(MAX_WANT, peers.size()); + int max = Math.min(MAX_WANT * 2, peers.size()); List<Hash> rv = new ArrayList<Hash>(max); for (BEValue bev : peers) { byte[] b = bev.getBytes(); diff --git a/apps/i2psnark/java/src/org/klomp/snark/dht/NodeInfo.java b/apps/i2psnark/java/src/org/klomp/snark/dht/NodeInfo.java index c6fce8f14461259a6b52739af3574e09cf9db27a..708d2d27661272c69d5050d626d4e4e1bab9e6c0 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/dht/NodeInfo.java +++ b/apps/i2psnark/java/src/org/klomp/snark/dht/NodeInfo.java @@ -102,7 +102,7 @@ class NodeInfo extends SimpleDataStructure { */ public NodeInfo(String s) throws DataFormatException { super(); - String[] parts = s.split(":", 4); + String[] parts = DataHelper.split(s, ":", 4); if (parts.length != 4) throw new DataFormatException("Bad format"); byte[] nid = Base64.decode(parts[0]); @@ -225,7 +225,7 @@ class NodeInfo extends SimpleDataStructure { NodeInfo ni = (NodeInfo) o; // assume dest matches, ignore it return this.hash.equals(ni.hash) && nID.equals(ni.nID) && port == ni.port; - } catch (Exception e) { + } catch (RuntimeException e) { return false; } } diff --git a/apps/i2psnark/java/src/org/klomp/snark/web/I2PSnarkServlet.java b/apps/i2psnark/java/src/org/klomp/snark/web/I2PSnarkServlet.java index fdd70c0d9d4b83375cd1d6559b26ea6881d702f0..754ea81487b0fd14b23e47e91b30b77e0acad5b7 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/web/I2PSnarkServlet.java +++ b/apps/i2psnark/java/src/org/klomp/snark/web/I2PSnarkServlet.java @@ -18,7 +18,6 @@ import java.util.List; import java.util.Locale; import java.util.Map; import java.util.Set; -import java.util.TimeZone; import java.util.TreeMap; import javax.servlet.ServletConfig; @@ -32,6 +31,8 @@ import net.i2p.data.DataHelper; import net.i2p.data.Hash; import net.i2p.util.Log; import net.i2p.util.SecureFile; +import net.i2p.util.SystemVersion; +import net.i2p.util.Translate; import org.klomp.snark.I2PSnarkUtil; import org.klomp.snark.MagnetURI; @@ -1118,6 +1119,7 @@ public class I2PSnarkServlet extends BasicServlet { String dataDir = req.getParameter("nofilter_dataDir"); boolean filesPublic = req.getParameter("filesPublic") != null; boolean autoStart = req.getParameter("autoStart") != null; + boolean smartSort = req.getParameter("smartSort") != null; String seedPct = req.getParameter("seedPct"); String eepHost = req.getParameter("eepHost"); String eepPort = req.getParameter("eepPort"); @@ -1133,7 +1135,7 @@ public class I2PSnarkServlet extends BasicServlet { boolean useDHT = req.getParameter("useDHT") != null; //String openTrackers = req.getParameter("openTrackers"); String theme = req.getParameter("theme"); - _manager.updateConfig(dataDir, filesPublic, autoStart, refreshDel, startupDel, pageSize, + _manager.updateConfig(dataDir, filesPublic, autoStart, smartSort, refreshDel, startupDel, pageSize, seedPct, eepHost, eepPort, i2cpHost, i2cpPort, i2cpOpts, upLimit, upBW, useOpenTrackers, useDHT, theme); // update servlet @@ -1401,6 +1403,10 @@ public class I2PSnarkServlet extends BasicServlet { sort = Integer.parseInt(ssort); } catch (NumberFormatException nfe) {} } + if (_manager.isSmartSortEnabled()) + Sorters.setPattern(Translate.getLanguage(_manager.util().getContext())); + else + Sorters.setPattern(null); try { Collections.sort(rv, Sorters.getComparator(sort, this)); } catch (IllegalArgumentException iae) { @@ -2144,6 +2150,7 @@ public class I2PSnarkServlet extends BasicServlet { String dataDir = _manager.getDataDir().getAbsolutePath(); boolean filesPublic = _manager.areFilesPublic(); boolean autoStart = _manager.shouldAutoStart(); + boolean smartSort = _manager.isSmartSortEnabled(); boolean useOpenTrackers = _manager.util().shouldUseOpenTrackers(); //String openTrackers = _manager.util().getOpenTrackerString(); boolean useDHT = _manager.util().shouldUseDHT(); @@ -2177,6 +2184,14 @@ public class I2PSnarkServlet extends BasicServlet { + (autoStart ? "checked " : "") + "title=\""); out.write(_t("If checked, automatically start torrents that are added")); + out.write("\" >" + + + "<tr><td>"); + out.write(_t("Smart torrent sorting")); + out.write(": <td><input type=\"checkbox\" class=\"optbox\" name=\"smartSort\" value=\"true\" " + + (smartSort ? "checked " : "") + + "title=\""); + out.write(_t("If checked, ignore words such as 'the' when sorting")); out.write("\" >" + "<tr><td>"); @@ -2291,13 +2306,15 @@ public class I2PSnarkServlet extends BasicServlet { out.write("<tr><td>"); out.write(_t("Inbound Settings")); out.write(":<td>"); - out.write(renderOptions(1, 10, 3, options.remove("inbound.quantity"), "inbound.quantity", TUNNEL)); + out.write(renderOptions(1, 10, SnarkManager.DEFAULT_TUNNEL_QUANTITY, + options.remove("inbound.quantity"), "inbound.quantity", TUNNEL)); out.write(" "); out.write(renderOptions(0, 4, 3, options.remove("inbound.length"), "inbound.length", HOP)); out.write("<tr><td>"); out.write(_t("Outbound Settings")); out.write(":<td>"); - out.write(renderOptions(1, 10, 3, options.remove("outbound.quantity"), "outbound.quantity", TUNNEL)); + out.write(renderOptions(1, 10, SnarkManager.DEFAULT_TUNNEL_QUANTITY, + options.remove("outbound.quantity"), "outbound.quantity", TUNNEL)); out.write(" "); out.write(renderOptions(0, 4, 3, options.remove("outbound.length"), "outbound.length", HOP)); @@ -2699,7 +2716,7 @@ public class I2PSnarkServlet extends BasicServlet { if (snark != null) { // first table - torrent info buf.append("<table class=\"snarkTorrentInfo\">\n"); - buf.append("<tr><th><b>") + buf.append("<tr><th></th><th><b>") .append(_t("Torrent")) .append(":</b> ") .append(DataHelper.escapeHTML(snark.getBaseName())) @@ -2709,7 +2726,7 @@ public class I2PSnarkServlet extends BasicServlet { String baseName = encodePath((new File(fullPath)).getName()); buf.append("<tr><td>"); toThemeImg(buf, "file"); - buf.append(" <b>") + buf.append("</td><td><b>") .append(_t("Torrent file")) .append(":</b> <a href=\"").append(_contextPath).append('/').append(baseName).append("\">") .append(DataHelper.escapeHTML(fullPath)) @@ -2717,7 +2734,7 @@ public class I2PSnarkServlet extends BasicServlet { if (snark.getStorage() != null) { buf.append("<tr><td>"); toThemeImg(buf, "file"); - buf.append(" <b>") + buf.append("</td><td><b>") .append(_t("Data location")) .append(":</b> ") .append(DataHelper.escapeHTML(snark.getStorage().getBase().getPath())) @@ -2726,7 +2743,7 @@ public class I2PSnarkServlet extends BasicServlet { String hex = I2PSnarkUtil.toHex(snark.getInfoHash()); buf.append("<tr><td>"); toThemeImg(buf, "details"); - buf.append(" <b>") + buf.append("</td><td><b>") .append(_t("Info hash")) .append(":</b> ") .append(hex.toUpperCase(Locale.US)) @@ -2746,15 +2763,15 @@ public class I2PSnarkServlet extends BasicServlet { buf.append(trackerLink); else toThemeImg(buf, "details"); - buf.append(" <b>").append(_t("Primary Tracker")).append(":</b> "); + buf.append("</td><td><b>").append(_t("Primary Tracker")).append(":</b> "); buf.append(getShortTrackerLink(announce, snark.getInfoHash())); buf.append("</td></tr>"); } List<List<String>> alist = meta.getAnnounceList(); - if (alist != null) { + if (alist != null && !alist.isEmpty()) { buf.append("<tr><td>"); toThemeImg(buf, "details"); - buf.append(" <b>") + buf.append("</td><td valign=\"top\"><b>") .append(_t("Tracker List")).append(":</b> "); for (List<String> alist2 : alist) { buf.append('['); @@ -2768,43 +2785,41 @@ public class I2PSnarkServlet extends BasicServlet { } buf.append("] "); } - buf.append("</td></tr>"); + buf.append("</td></tr>\n"); } } if (meta != null) { String com = meta.getComment(); - if (com != null) { + if (com != null && com.length() > 0) { if (com.length() > 1024) com = com.substring(0, 1024); buf.append("<tr><td>"); toThemeImg(buf, "details"); - buf.append(" <b>") + buf.append("</td><td><b>") .append(_t("Comment")).append(":</b> ") .append(DataHelper.stripHTML(com)) .append("</td></tr>\n"); } long dat = meta.getCreationDate(); SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd HH:mm"); - String systemTimeZone = _context.getProperty("i2p.systemTimeZone"); - if (systemTimeZone != null) - fmt.setTimeZone(TimeZone.getTimeZone(systemTimeZone)); + fmt.setTimeZone(SystemVersion.getSystemTimeZone(_context)); if (dat > 0) { String date = fmt.format(new Date(dat)); buf.append("<tr><td>"); toThemeImg(buf, "details"); - buf.append(" <b>") + buf.append("</td><td><b>") .append(_t("Created")).append(":</b> ") .append(date) .append("</td></tr>\n"); } String cby = meta.getCreatedBy(); - if (cby != null) { + if (cby != null && cby.length() > 0) { if (cby.length() > 128) cby = com.substring(0, 128); buf.append("<tr><td>"); toThemeImg(buf, "details"); - buf.append(" <b>") + buf.append("</td><td><b>") .append(_t("Created By")).append(":</b> ") .append(DataHelper.stripHTML(cby)) .append("</td></tr>\n"); @@ -2814,7 +2829,7 @@ public class I2PSnarkServlet extends BasicServlet { String date = fmt.format(new Date(dates[0])); buf.append("<tr><td>"); toThemeImg(buf, "details"); - buf.append(" <b>") + buf.append("</td><td><b>") .append(_t("Added")).append(":</b> ") .append(date) .append("</td></tr>\n"); @@ -2823,7 +2838,7 @@ public class I2PSnarkServlet extends BasicServlet { String date = fmt.format(new Date(dates[1])); buf.append("<tr><td>"); toThemeImg(buf, "details"); - buf.append(" <b>") + buf.append("</td><td><b>") .append(_t("Completed")).append(":</b> ") .append(date) .append("</td></tr>\n"); @@ -2837,7 +2852,7 @@ public class I2PSnarkServlet extends BasicServlet { buf.append("&tr=").append(announce); buf.append("\">") .append(toImg("magnet", _t("Magnet link"))) - .append("</a> <b>Magnet:</b> <a href=\"") + .append("</a></td><td><b>Magnet:</b> <a href=\"") .append(MagnetURI.MAGNET_FULL).append(hex); if (announce != null) buf.append("&tr=").append(announce); @@ -2848,7 +2863,9 @@ public class I2PSnarkServlet extends BasicServlet { buf.append("</a>") .append("</td></tr>\n"); } else { - buf.append("<tr><td>") + buf.append("<tr><td>"); + toThemeImg(buf, "details"); + buf.append("</td><td><b>") .append(_t("Private torrent")) .append("</td></tr>\n"); } @@ -2859,7 +2876,7 @@ public class I2PSnarkServlet extends BasicServlet { buf.append("<tr><td>"); toThemeImg(buf, "size"); - buf.append(" <b>") + buf.append("</td><td><b>") .append(_t("Size")) .append(":</b> ") .append(formatSize(snark.getTotalLength())); @@ -2902,6 +2919,15 @@ public class I2PSnarkServlet extends BasicServlet { .append(":</b> ") .append(formatSize(needed)); } + long skipped = snark.getSkippedLength(); + if (skipped > 0) { + buf.append(" "); + toThemeImg(buf, "head_rx"); + buf.append(" <b>") + .append(_t("Skipped")) + .append(":</b> ") + .append(formatSize(skipped)); + } if (meta != null) { List<List<String>> files = meta.getFiles(); int fileCount = files != null ? files.size() : 1; @@ -2928,20 +2954,19 @@ public class I2PSnarkServlet extends BasicServlet { // buttons if (showStopStart) { - buf.append("<tr><td>"); - toThemeImg(buf, "file"); + buf.append("<tr><td></td><td>"); if (snark.isChecking()) { - buf.append(" <b>").append(_t("Checking")).append("… ") + buf.append("<b>").append(_t("Checking")).append("… ") .append((new DecimalFormat("0.00%")).format(snark.getCheckingProgress())) .append(" <a href=\"").append(base).append("\">") .append(_t("Refresh page for results")).append("</a>"); } else if (snark.isStarting()) { - buf.append(" <b>").append(_t("Starting")).append("…</b>"); + buf.append("<b>").append(_t("Starting")).append("…</b>"); } else if (snark.isAllocating()) { - buf.append(" <b>").append(_t("Allocating")).append("…</b>"); + buf.append("<b>").append(_t("Allocating")).append("…</b>"); } else { boolean isRunning = !snark.isStopped(); - buf.append(" <input type=\"submit\" value=\""); + buf.append("<input type=\"submit\" value=\""); if (isRunning) buf.append(_t("Stop")).append("\" name=\"stop\" class=\"stoptorrent\">\n"); else diff --git a/apps/i2psnark/java/src/org/klomp/snark/web/Sorters.java b/apps/i2psnark/java/src/org/klomp/snark/web/Sorters.java index 39120d6cced88ced58f2792232faf61479c0bb99..964e6d80d2d33820a8576d6c3d3840515b833845 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/web/Sorters.java +++ b/apps/i2psnark/java/src/org/klomp/snark/web/Sorters.java @@ -6,6 +6,8 @@ import java.text.Collator; import java.util.Collections; import java.util.Comparator; import java.util.Locale; +import java.util.regex.Matcher; +import java.util.regex.Pattern; import org.klomp.snark.MetaInfo; import org.klomp.snark.Snark; @@ -18,6 +20,13 @@ import org.klomp.snark.Storage; */ class Sorters { + /** + * See below + */ + private static final Pattern PATTERN_DE, PATTERN_EN, PATTERN_ES, PATTERN_FR, + PATTERN_IT, PATTERN_NL, PATTERN_PT; + private static Pattern _pattern; + /** * Negative is reverse * @@ -113,8 +122,8 @@ class Sorters { /** - * Sort alphabetically in current locale, ignore case, ignore leading "the " - * (I guess this is worth it, a lot of torrents start with "The " + * Sort alphabetically in current locale, ignore case, ignore leading + * articles such as "the" if the pattern is set by setPattern() * @since 0.7.14 */ private static class TorrentNameComparator implements Comparator<Snark>, Serializable { @@ -130,13 +139,16 @@ class Sorters { if (l.getStorage() != null && r.getStorage() == null) return 1; String ls = l.getBaseName(); - String llc = ls.toLowerCase(Locale.US); - if (llc.startsWith("the ") || llc.startsWith("the.") || llc.startsWith("the_")) - ls = ls.substring(4); String rs = r.getBaseName(); - String rlc = rs.toLowerCase(Locale.US); - if (rlc.startsWith("the ") || rlc.startsWith("the.") || rlc.startsWith("the_")) - rs = rs.substring(4); + Pattern p = _pattern; + if (p != null) { + Matcher m = p.matcher(ls); + if (m.matches()) + ls = ls.substring(m.group(1).length()); + m = p.matcher(rs); + if (m.matches()) + rs = rs.substring(m.group(1).length()); + } return Collator.getInstance().compare(ls, rs); } } @@ -528,4 +540,104 @@ class Sorters { return r.priority - l.priority; } } + + /* + * Match an indefinite or definite article in the language, + * followed by one or more whitespace, '.', or '_'. + * Does not match "partitive" articles. + * + * https://en.wikipedia.org/wiki/Article_%28grammar%29 + * http://www.loc.gov/marc/bibliographic/bdapndxf.html + */ + static { + PATTERN_DE = Pattern.compile( + // can't make the non-capturing innner group work + //"^((?:" + + "^((" + + "der|die|das|des|dem|den|ein|eine|einer|eines|einem|einen" + + ")[\\s\\._]+).*", + Pattern.CASE_INSENSITIVE); + PATTERN_EN = Pattern.compile( + "^((" + + "a|an|the" + + ")[\\s\\._]+).*", + Pattern.CASE_INSENSITIVE); + PATTERN_ES = Pattern.compile( + "^((" + + "el|la|lo|los|las|un|una|unos|unas" + + ")[\\s\\._]+).*", + Pattern.CASE_INSENSITIVE); + PATTERN_FR = Pattern.compile( + // note l' doesn't require whitespace after + "^(l'|((" + + "le|la|les|un|une|des" + + ")[\\s\\._]+)).*", + Pattern.CASE_INSENSITIVE); + PATTERN_IT = Pattern.compile( + // note l' and un' don't require whitespace after + "^(l'|un'|((" + + "il|lo|la|i|gli|le|uno|una|un" + + ")[\\s\\._]+)).*", + Pattern.CASE_INSENSITIVE); + PATTERN_NL = Pattern.compile( + "^((" + + "de|het|het'n|een|een'n" + + ")[\\s\\._]+).*", + Pattern.CASE_INSENSITIVE); + PATTERN_PT = Pattern.compile( + "^((" + + "o|a|os|as|um|uma|uns|umas" + + ")[\\s\\._]+).*", + Pattern.CASE_INSENSITIVE); + } + + /** + * Sets static field, oh well + * @param lang null for none + * @since 0.9.23 + */ + public static void setPattern(String lang) { + Pattern p; + if (lang == null) + p = null; + else if (lang.equals("de")) + p = PATTERN_DE; + else if (lang.equals("en")) + p = PATTERN_EN; + else if (lang.equals("es")) + p = PATTERN_ES; + else if (lang.equals("fr")) + p = PATTERN_FR; + else if (lang.equals("it")) + p = PATTERN_IT; + else if (lang.equals("nl")) + p = PATTERN_NL; + else if (lang.equals("pt")) + p = PATTERN_PT; + else + p = null; + _pattern = p; + } + +/**** + public static final void main(String[] args) { + if (args.length != 2) { + System.out.println("Usage: Sorters lang 'string'"); + System.exit(1); + } + String lang = args[0]; + setPattern(lang); + if (_pattern == null) { + System.out.println("Unsupported " + lang); + System.exit(1); + } + String s = args[1]; + Matcher m = _pattern.matcher(s); + if (m.matches()) { + System.out.println("Match is \"" + m.group(1) + '"'); + } else { + System.out.println("No match for \"" + s + '"'); + } + } +****/ } diff --git a/apps/i2psnark/locale/messages_ar.po b/apps/i2psnark/locale/messages_ar.po index 502c69b90fd807dd1052dd5502b44ffb209228f3..48d1b1c4a634301cbb9d0d82dfc7d27775d62e42 100644 --- a/apps/i2psnark/locale/messages_ar.po +++ b/apps/i2psnark/locale/messages_ar.po @@ -10,10 +10,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:09+0000\n" -"PO-Revision-Date: 2015-07-17 01:32+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-05 17:17+0000\n" "Last-Translator: kytv <killyourtv@i2pmail.org>\n" -"Language-Team: Arabic (http://www.transifex.com/projects/p/I2P/language/ar/)\n" +"Language-Team: Arabic (http://www.transifex.com/otf/I2P/language/ar/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -25,222 +25,230 @@ msgid "No more torrents running." msgstr "" #: ../java/src/org/klomp/snark/IdleChecker.java:76 -#: ../java/src/org/klomp/snark/SnarkManager.java:2392 -#: ../java/src/org/klomp/snark/SnarkManager.java:2403 +#: ../java/src/org/klomp/snark/SnarkManager.java:2539 +#: ../java/src/org/klomp/snark/SnarkManager.java:2550 msgid "I2P tunnel closed." msgstr "تم Ù‚ÙÙ„ النÙÙ‚" #: ../java/src/org/klomp/snark/MagnetURI.java:42 #: ../java/src/org/klomp/snark/MagnetURI.java:52 -#: ../java/src/org/klomp/snark/SnarkManager.java:2096 +#: ../java/src/org/klomp/snark/SnarkManager.java:2221 msgid "Magnet" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:772 +#: ../java/src/org/klomp/snark/SnarkManager.java:791 #, java-format msgid "Total uploaders limit changed to {0}" msgstr "تم تغببر مجموع ØØ¯ Ø§Ù„Ø±ÙØ¹ الى {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:774 +#: ../java/src/org/klomp/snark/SnarkManager.java:793 #, java-format msgid "Minimum total uploaders limit is {0}" msgstr "اقل ØØ¯ Ø§Ù„Ø±ÙØ¹ الى {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:786 +#: ../java/src/org/klomp/snark/SnarkManager.java:805 #, java-format msgid "Up BW limit changed to {0}KBps" msgstr "ØÙˆÙ„ت سرعة Ø§Ù„Ø±ÙØ¹ الى {0}KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:788 +#: ../java/src/org/klomp/snark/SnarkManager.java:807 #, java-format msgid "Minimum up bandwidth limit is {0}KBps" msgstr "اقل سرعة Ø±ÙØ¹ هي{0}KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:800 +#: ../java/src/org/klomp/snark/SnarkManager.java:819 #, java-format msgid "Startup delay changed to {0}" msgstr "تغير تأخير البداية الى {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:811 +#: ../java/src/org/klomp/snark/SnarkManager.java:830 #, java-format msgid "Refresh time changed to {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:813 +#: ../java/src/org/klomp/snark/SnarkManager.java:832 msgid "Refresh disabled" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:829 +#: ../java/src/org/klomp/snark/SnarkManager.java:848 #, java-format msgid "Page size changed to {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:838 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:956 +#: ../java/src/org/klomp/snark/SnarkManager.java:857 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:958 msgid "Data directory must be an absolute path" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:840 +#: ../java/src/org/klomp/snark/SnarkManager.java:859 msgid "Data directory does not exist" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:842 +#: ../java/src/org/klomp/snark/SnarkManager.java:861 msgid "Not a directory" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:844 +#: ../java/src/org/klomp/snark/SnarkManager.java:863 msgid "Unreadable" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:849 +#: ../java/src/org/klomp/snark/SnarkManager.java:868 #, java-format msgid "Data directory changed to {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:904 +#: ../java/src/org/klomp/snark/SnarkManager.java:923 msgid "I2CP and tunnel changes will take effect after stopping all torrents" msgstr "سيتم ØªÙØ¹ÙŠÙ„ التغيير بعد اعادة التشغيل" -#: ../java/src/org/klomp/snark/SnarkManager.java:908 +#: ../java/src/org/klomp/snark/SnarkManager.java:927 #, java-format msgid "I2CP options changed to {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:914 +#: ../java/src/org/klomp/snark/SnarkManager.java:933 msgid "Disconnecting old I2CP destination" msgstr "ÙÙƒ الاتصال" -#: ../java/src/org/klomp/snark/SnarkManager.java:916 +#: ../java/src/org/klomp/snark/SnarkManager.java:935 #, java-format msgid "I2CP settings changed to {0}" msgstr " تغيرت الاعدادات الى {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:921 +#: ../java/src/org/klomp/snark/SnarkManager.java:940 msgid "" "Unable to connect with the new settings, reverting to the old I2CP settings" msgstr "ÙØ´Ù„ ÙÙŠ الاتصال بالاعدادات الجديدة، سيتم الرجوع الى الاعدادات القديمة" -#: ../java/src/org/klomp/snark/SnarkManager.java:925 +#: ../java/src/org/klomp/snark/SnarkManager.java:944 msgid "Unable to reconnect with the old settings!" msgstr "ÙØ´Ù„ ÙÙŠ اعادة الاتصال بالاعدادات القديمة!" -#: ../java/src/org/klomp/snark/SnarkManager.java:927 +#: ../java/src/org/klomp/snark/SnarkManager.java:946 msgid "Reconnected on the new I2CP destination" msgstr "اتصال بوجهة جديدة" -#: ../java/src/org/klomp/snark/SnarkManager.java:934 +#: ../java/src/org/klomp/snark/SnarkManager.java:953 #, java-format msgid "I2CP listener restarted for \"{0}\"" msgstr "اعادة التشغيل \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:948 +#: ../java/src/org/klomp/snark/SnarkManager.java:967 msgid "New files will be publicly readable" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:950 +#: ../java/src/org/klomp/snark/SnarkManager.java:969 msgid "New files will not be publicly readable" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:957 +#: ../java/src/org/klomp/snark/SnarkManager.java:976 msgid "Enabled autostart" msgstr "تشغيل عند البداية" -#: ../java/src/org/klomp/snark/SnarkManager.java:959 +#: ../java/src/org/klomp/snark/SnarkManager.java:978 msgid "Disabled autostart" msgstr "الغاء التشغيل عند البداية" -#: ../java/src/org/klomp/snark/SnarkManager.java:965 +#: ../java/src/org/klomp/snark/SnarkManager.java:985 +msgid "Enabled smart sort" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:987 +msgid "Disabled smart sort" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:994 msgid "Enabled open trackers - torrent restart required to take effect." msgstr "ØªÙØ¹ÙŠÙ„ open trackers - يجب اعادة تشغيل التورنت Ù„ØªÙØ¹ÙŠÙ„ التغيير." -#: ../java/src/org/klomp/snark/SnarkManager.java:967 +#: ../java/src/org/klomp/snark/SnarkManager.java:996 msgid "Disabled open trackers - torrent restart required to take effect." msgstr "الغاء ØªÙØ¹ÙŠÙ„ open trackers - يجب اعادة تشغيل التورنت Ù„ØªÙØ¹ÙŠÙ„ التغيير." -#: ../java/src/org/klomp/snark/SnarkManager.java:974 +#: ../java/src/org/klomp/snark/SnarkManager.java:1003 msgid "Enabled DHT." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:976 +#: ../java/src/org/klomp/snark/SnarkManager.java:1005 msgid "Disabled DHT." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:978 +#: ../java/src/org/klomp/snark/SnarkManager.java:1007 msgid "DHT change requires tunnel shutdown and reopen" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:985 +#: ../java/src/org/klomp/snark/SnarkManager.java:1014 #, java-format msgid "{0} theme loaded, return to main i2psnark page to view." msgstr "{0} تم تØÙ…يل التيمة ارجع الى ØµÙØØ© للمشاهدة i2psnark." -#: ../java/src/org/klomp/snark/SnarkManager.java:995 +#: ../java/src/org/klomp/snark/SnarkManager.java:1024 msgid "Configuration unchanged." msgstr "لم تتغير الاعدادات" -#: ../java/src/org/klomp/snark/SnarkManager.java:1027 +#: ../java/src/org/klomp/snark/SnarkManager.java:1056 msgid "Open Tracker list changed - torrent restart required to take effect." msgstr "تغيير open trackers - يجب اعادة تشغيل التورنت Ù„ØªÙØ¹ÙŠÙ„ التغيير." -#: ../java/src/org/klomp/snark/SnarkManager.java:1037 +#: ../java/src/org/klomp/snark/SnarkManager.java:1066 msgid "Private tracker list changed - affects newly created torrents only." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1083 +#: ../java/src/org/klomp/snark/SnarkManager.java:1112 #, java-format msgid "Unable to save the config to {0}" msgstr "ÙØ´Ù„ ÙÙŠ ØÙظ الاعدادات {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1164 +#: ../java/src/org/klomp/snark/SnarkManager.java:1193 msgid "Connecting to I2P" msgstr "جاري الاتصال بشبكة I2P" -#: ../java/src/org/klomp/snark/SnarkManager.java:1167 +#: ../java/src/org/klomp/snark/SnarkManager.java:1196 msgid "Error connecting to I2P - check your I2CP settings!" msgstr "ÙØ´Ù„ ÙÙŠ الاتصال ب I2P - تخقق من اعدادات I2CP !" -#: ../java/src/org/klomp/snark/SnarkManager.java:1176 -#: ../java/src/org/klomp/snark/SnarkManager.java:2133 +#: ../java/src/org/klomp/snark/SnarkManager.java:1205 +#: ../java/src/org/klomp/snark/SnarkManager.java:2270 #, java-format msgid "Error: Could not add the torrent {0}" msgstr "خطأ: ÙØ´Ù„ ÙÙŠ Ø§Ø¶Ø§ÙØ© التورنت {0}" #. catch this here so we don't try do delete it below -#: ../java/src/org/klomp/snark/SnarkManager.java:1199 +#: ../java/src/org/klomp/snark/SnarkManager.java:1228 #, java-format msgid "Cannot open \"{0}\"" msgstr "ÙØ´Ù„ ÙÙŠ ÙØªØ \"{0}\"" #. TODO - if the existing one is a magnet, delete it and add the metainfo #. instead? -#: ../java/src/org/klomp/snark/SnarkManager.java:1218 -#: ../java/src/org/klomp/snark/SnarkManager.java:1352 -#: ../java/src/org/klomp/snark/SnarkManager.java:1440 +#: ../java/src/org/klomp/snark/SnarkManager.java:1247 +#: ../java/src/org/klomp/snark/SnarkManager.java:1388 +#: ../java/src/org/klomp/snark/SnarkManager.java:1476 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:166 #, java-format msgid "Torrent with this info hash is already running: {0}" msgstr "تورنت بهذه المعلومات مشغل: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1224 +#: ../java/src/org/klomp/snark/SnarkManager.java:1253 #, java-format msgid "ERROR - No I2P trackers in private torrent \"{0}\"" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1226 +#: ../java/src/org/klomp/snark/SnarkManager.java:1255 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", will announce to I2P open trackers and" " DHT only." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1229 +#: ../java/src/org/klomp/snark/SnarkManager.java:1258 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and open trackers are disabled, will " "announce to DHT only." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1231 +#: ../java/src/org/klomp/snark/SnarkManager.java:1260 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and DHT and open trackers are " @@ -248,34 +256,46 @@ msgid "" "torrent." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1257 +#: ../java/src/org/klomp/snark/SnarkManager.java:1286 #, java-format msgid "Torrent in \"{0}\" is invalid" msgstr "تورنت ÙÙŠ \"{0}\"غير صØÙŠØ" -#: ../java/src/org/klomp/snark/SnarkManager.java:1264 +#: ../java/src/org/klomp/snark/SnarkManager.java:1292 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1042 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1069 +#, java-format +msgid "Torrent file deleted: {0}" +msgstr "تم خذ٠مل٠التورنت: {0}" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1295 +#, java-format +msgid "Torrent file moved from {0} to {1}" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1299 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:193 #, java-format msgid "ERROR - Out of memory, cannot create torrent from {0}" msgstr "خطأ - لا توجد ذاكرة كاÙية، لا يمكن انشاء تورنت {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1285 +#: ../java/src/org/klomp/snark/SnarkManager.java:1321 #, java-format -msgid "Torrent added and started: \"{0}\"" -msgstr "تم Ø§Ø¶Ø§ÙØ© وتشغيل التورنت: \"{0}\"" +msgid "Torrent added and started: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1287 +#: ../java/src/org/klomp/snark/SnarkManager.java:1323 #, java-format -msgid "Torrent added: \"{0}\"" -msgstr "تمت Ø§Ø¶Ø§ÙØ©: \"{0}\"" +msgid "Torrent added: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1363 +#: ../java/src/org/klomp/snark/SnarkManager.java:1399 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:93 #, java-format msgid "Fetching {0}" msgstr "ÙŠØÙ…Ù„ {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1369 +#: ../java/src/org/klomp/snark/SnarkManager.java:1405 #, java-format msgid "" "Open trackers are disabled and we have no DHT peers. Fetch of {0} may not " @@ -283,131 +303,146 @@ msgid "" "DHT." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1373 +#: ../java/src/org/klomp/snark/SnarkManager.java:1409 #, java-format msgid "Adding {0}" msgstr "Ø§Ø¶Ø§ÙØ© {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1406 +#: ../java/src/org/klomp/snark/SnarkManager.java:1442 #, java-format msgid "Download already running: {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1451 -#: ../java/src/org/klomp/snark/SnarkManager.java:1477 -#: ../java/src/org/klomp/snark/SnarkManager.java:2052 +#: ../java/src/org/klomp/snark/SnarkManager.java:1487 +#: ../java/src/org/klomp/snark/SnarkManager.java:1513 +#: ../java/src/org/klomp/snark/SnarkManager.java:2151 #, java-format msgid "Failed to copy torrent file to {0}" msgstr "ÙØ´Ù„ ÙÙŠ نسخ التورنت الى {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1828 +#: ../java/src/org/klomp/snark/SnarkManager.java:1927 #, java-format -msgid "Too many files in \"{0}\" ({1}), deleting it!" -msgstr "Ù…Ù„ÙØ§Øª كثيرة ÙÙŠ \"{0}\" ({1}) تم ØØ°Ù" +msgid "Too many files in \"{0}\" ({1})!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1830 +#: ../java/src/org/klomp/snark/SnarkManager.java:1929 #, java-format -msgid "Torrent file \"{0}\" cannot end in \".torrent\", deleting it!" -msgstr "مل٠التورنت \"{0}\" لا يمكنه الانتهاء ب \".torrent\", سيتم ØØ°ÙÙ‡!" +msgid "Torrent file \"{0}\" cannot end in \".torrent\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1832 +#: ../java/src/org/klomp/snark/SnarkManager.java:1931 #, java-format -msgid "No pieces in \"{0}\", deleting it!" -msgstr "ï»» أجزاء ÙÙŠ \"{0}\", ØØ°Ù!" +msgid "No pieces in \"{0}\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1834 +#: ../java/src/org/klomp/snark/SnarkManager.java:1933 #, java-format -msgid "Too many pieces in \"{0}\", limit is {1}, deleting it!" +msgid "Too many pieces in \"{0}\", limit is {1}!" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1836 +#: ../java/src/org/klomp/snark/SnarkManager.java:1935 #, java-format -msgid "Pieces are too large in \"{0}\" ({1}B), deleting it." -msgstr "الأجزاء كبيرة ÙÙŠ \"{0}\" ({1}B), ØØ°Ù." +msgid "Pieces are too large in \"{0}\" ({1}B)!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1837 +#: ../java/src/org/klomp/snark/SnarkManager.java:1936 #, java-format msgid "Limit is {0}B" msgstr "ØØ¯ÙˆØ¯ {0}B" -#: ../java/src/org/klomp/snark/SnarkManager.java:1839 +#: ../java/src/org/klomp/snark/SnarkManager.java:1938 #, java-format -msgid "Torrent \"{0}\" has no data, deleting it!" +msgid "Torrent \"{0}\" has no data!" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1847 +#: ../java/src/org/klomp/snark/SnarkManager.java:1946 #, java-format -msgid "Torrents larger than {0}B are not supported yet, deleting \"{1}\"" -msgstr "تورنت أكبر من {0}B غير مدعومة Ø³ÙŠØØ°Ù \"{1}\"" +msgid "Torrents larger than {0}B are not supported yet \"{1}\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1864 +#: ../java/src/org/klomp/snark/SnarkManager.java:1963 #, java-format msgid "Error: Could not remove the torrent {0}" msgstr "خطأ: ﻻيمكن ØØ°Ù التورنت {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1887 -#: ../java/src/org/klomp/snark/SnarkManager.java:1906 +#: ../java/src/org/klomp/snark/SnarkManager.java:1986 +#: ../java/src/org/klomp/snark/SnarkManager.java:2005 #, java-format -msgid "Torrent stopped: \"{0}\"" -msgstr "تورنت متوقÙ: \"{0}\"" +msgid "Torrent stopped: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1926 +#: ../java/src/org/klomp/snark/SnarkManager.java:2025 #, java-format msgid "Torrent removed: \"{0}\"" msgstr "تورنت Ù…ØØ°ÙˆÙ: \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:1934 +#: ../java/src/org/klomp/snark/SnarkManager.java:2033 #, java-format msgid "Adding torrents in {0}" msgstr "اض٠تورنت ÙÙŠ {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1966 +#: ../java/src/org/klomp/snark/SnarkManager.java:2067 #, java-format msgid "Up bandwidth limit is {0} KBps" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1993 +#: ../java/src/org/klomp/snark/SnarkManager.java:2092 #, java-format msgid "Download finished: {0}" msgstr "انتهى التØÙ…يل: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2048 +#: ../java/src/org/klomp/snark/SnarkManager.java:2147 #, java-format msgid "Metainfo received for {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:2049 -#: ../java/src/org/klomp/snark/SnarkManager.java:2280 +#: ../java/src/org/klomp/snark/SnarkManager.java:2148 +#: ../java/src/org/klomp/snark/SnarkManager.java:2431 #, java-format msgid "Starting up torrent {0}" msgstr "بداية التورنت {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2064 +#: ../java/src/org/klomp/snark/SnarkManager.java:2163 #, java-format msgid "Error on torrent {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:2127 +#: ../java/src/org/klomp/snark/SnarkManager.java:2264 msgid "Unable to connect to I2P!" msgstr "ÙØ´Ù„ ÙÙŠ Ø§Ø¶Ø§ÙØ© I2P!" -#: ../java/src/org/klomp/snark/SnarkManager.java:2279 +#: ../java/src/org/klomp/snark/SnarkManager.java:2430 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:130 msgid "Opening the I2P tunnel" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:2303 +#: ../java/src/org/klomp/snark/SnarkManager.java:2450 msgid "Opening the I2P tunnel and starting all torrents." msgstr "ÙØªØ النÙÙ‚ واطلاق جميع التورنت" -#: ../java/src/org/klomp/snark/SnarkManager.java:2366 +#: ../java/src/org/klomp/snark/SnarkManager.java:2513 msgid "Stopping all torrents and closing the I2P tunnel." msgstr "توقي٠جميع التورنت Ùˆ Ù‚ÙÙ„ النÙÙ‚ I2P" -#: ../java/src/org/klomp/snark/SnarkManager.java:2385 +#: ../java/src/org/klomp/snark/SnarkManager.java:2532 msgid "Closing I2P tunnel after notifying trackers." msgstr "" +#: ../java/src/org/klomp/snark/SnarkManager.java:2594 +#, java-format +msgid "Finished recheck of torrent {0}, now {1} complete" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2596 +#, java-format +msgid "Finished recheck of torrent {0}, unchanged" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2600 +#, java-format +msgid "Error checking the torrent {0}" +msgstr "" + #: ../java/src/org/klomp/snark/TrackerClient.java:245 #, java-format msgid "No valid trackers for {0} - enable opentrackers or DHT?" @@ -453,178 +488,178 @@ msgstr "تورنت ÙÙŠ قائمة الانتظار: {0}" msgid "Torrent at {0} was not valid" msgstr "تورنت غير صØÙŠØ {0} " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:268 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:311 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:322 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1763 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2662 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:270 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:313 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:324 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1778 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2698 msgid "I2PSnark" msgstr "I2PSnark برنامج تورنت" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:273 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2149 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2422 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2165 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2446 msgid "Configuration" msgstr "اعدادات" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:277 msgid "Anonymous BitTorrent Client" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:291 msgid "Router is down" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:306 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:308 msgid "Torrents" msgstr "تورنت" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:319 msgid "Refresh page" msgstr "أنعش Ø§Ù„ØµÙØØ©" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:326 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:328 msgid "Forum" msgstr "منتدى" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:341 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:343 msgid "Click \"Add torrent\" button to fetch torrent" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:394 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:396 msgid "clear messages" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:449 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2980 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3072 msgid "Status" msgstr "Ø§Ù„ØØ§Ù„Ø©" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2994 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:453 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3086 #, java-format msgid "Sort by {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:462 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:464 msgid "Hide Peers" msgstr "Ø§Ø®ÙØ§Ø¡ النظائر" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:468 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:470 msgid "Show Peers" msgstr "أظهر النظائر" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:491 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2648 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2718 msgid "Torrent" msgstr "تورنت" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "File type" msgstr "" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:509 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 msgid "ETA" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:512 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:514 msgid "Estimated time remaining" msgstr "تقدير للوقت الباقي" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:535 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 msgid "RX" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:538 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:540 msgid "Downloaded" msgstr "Ù…ØÙ…Ù„" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2818 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2968 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2878 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3060 msgid "Size" msgstr "Ø§Ù„ØØ¬Ù…" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 msgid "TX" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2896 msgid "Upload ratio" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:569 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:571 msgid "Uploaded" msgstr "Ø±ÙØ¹" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:581 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 msgid "RX Rate" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:584 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:586 msgid "Down Rate" msgstr "معدل التØÙ…يل" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:596 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 msgid "TX Rate" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:599 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:601 msgid "Up Rate" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:615 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 msgid "Stop all torrents and the I2P tunnel" msgstr "توقي٠جمبع التورنت Ùˆ النÙÙ‚ I2P" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:619 msgid "Stop All" msgstr "توقي٠الجمبع" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:629 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 msgid "Start all stopped torrents" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:633 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:647 msgid "Start All" msgstr "شغل الجمبع" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:643 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 msgid "Start all torrents and the I2P tunnel" msgstr "شغل جمبع التورنت Ùˆ النÙÙ‚ I2P" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:668 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:670 msgid "No torrents loaded." msgstr "لم ÙŠØÙ…Ù„ تورنت" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:674 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 msgid "Totals" msgstr "مجموع" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:678 #, java-format msgid "1 torrent" msgid_plural "{0} torrents" @@ -635,7 +670,7 @@ msgstr[3] "" msgstr[4] "" msgstr[5] "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:683 #, java-format msgid "1 connected peer" msgid_plural "{0} connected peers" @@ -646,7 +681,7 @@ msgstr[3] "" msgstr[4] "" msgstr[5] "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:688 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:690 #, java-format msgid "1 DHT peer" msgid_plural "{0} DHT peers" @@ -657,207 +692,202 @@ msgstr[3] "" msgstr[4] "" msgstr[5] "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:695 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:697 msgid "Dest" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First page" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Prev" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Previous page" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next page" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last page" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:960 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:962 msgid "Data directory cannot be created" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1176 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:972 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1185 #, java-format msgid "Cannot add torrent {0} inside another torrent: {1}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:985 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:993 #, java-format msgid "Invalid URL: Must start with \"http://\", \"{0}\", or \"{1}\"" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1026 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1063 #, java-format msgid "Magnet deleted: {0}" msgstr "تم ØØ°Ù مل٠مغناطيس: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1061 #, java-format -msgid "Torrent file deleted: {0}" -msgstr "تم خذ٠مل٠التورنت: {0}" - -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1053 -#, java-format msgid "Download deleted: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1070 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1078 #, java-format msgid "Data file deleted: {0}" msgstr "خذ٠مل٠البيانات: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1072 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1089 #, java-format msgid "Data file could not be deleted: {0}" msgstr "ÙØ´Ù„ ÙÙŠ ØØ°Ù الملÙ: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1097 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1105 #, java-format msgid "Directory could not be deleted: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1112 #, java-format msgid "Directory deleted: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1155 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1164 #, java-format msgid "Cannot add a torrent ending in \".torrent\": {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1160 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1169 #, java-format msgid "Torrent with this name is already running: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1175 #, java-format msgid "Cannot add a torrent including an I2P directory: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1181 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1190 #, java-format msgid "Cannot add torrent {0} including another torrent: {1}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1216 msgid "Error - Cannot include alternate trackers without a primary tracker" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1220 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1229 msgid "Error - Cannot mix private and public trackers in a torrent" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1251 #, java-format msgid "Torrent created for \"{0}\"" msgstr "تم انشاء تورنت لـ \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1244 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 #, java-format msgid "" "Many I2P trackers require you to register new torrents before seeding - " "please do so before starting \"{0}\"" msgstr "العديد من trackers يطلبون تسجيل التورنت قبل مشاركتها، قم بذلك قبل البداية {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1255 #, java-format msgid "Error creating a torrent for \"{0}\"" msgstr "ÙØ´Ù„ ÙÙŠ انشاء تورنت لـ \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1250 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1259 #, java-format msgid "Cannot create a torrent for the nonexistent data: {0}" msgstr "لا يمكن انشاء تورنت لبيانات غير موجودة: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1262 msgid "Error creating torrent - you must enter a file or directory" msgstr "ÙØ´Ù„ ÙÙŠ انشاء تورنت - عليك اختيار مل٠أو مجلد" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2406 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2430 msgid "Delete selected" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2408 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2432 msgid "Save tracker configuration" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1301 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1310 msgid "Removed" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1333 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2405 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2407 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1342 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2429 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2431 msgid "Add tracker" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1356 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1359 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1365 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1368 msgid "Enter valid tracker name and URLs" msgstr "" #. "<input type=\"reset\" class=\"cancel\" #. value=\"").append(_t("Cancel")).append("\">\n" + -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1361 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2410 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1370 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2434 msgid "Restore defaults" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1373 msgid "Restored default trackers" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1472 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1473 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1485 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1486 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2949 msgid "Checking" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1475 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1476 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1489 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2956 msgid "Allocating" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1499 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1505 msgid "Tracker Error" msgstr "Tracker خطأ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1492 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1522 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1527 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1538 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1543 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1554 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1507 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1537 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1542 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1553 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1558 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1569 #, java-format msgid "1 peer" msgid_plural "{0} peers" @@ -868,366 +898,377 @@ msgstr[3] "" msgstr[4] "" msgstr[5] "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1502 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1503 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1517 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1518 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2954 msgid "Starting" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1511 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1526 msgid "Seeding" msgstr "بشارك" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1515 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1529 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1530 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2831 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1544 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2891 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3139 msgid "Complete" msgstr "اكتمل" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1534 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1535 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1540 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1541 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1550 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1555 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 msgid "OK" msgstr "مواÙÙ‚" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1546 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1551 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1552 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1567 msgid "Stalled" msgstr "متوقÙ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1557 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1571 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1572 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1575 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1576 msgid "No Peers" msgstr "لا بوجد نظائر" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1563 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1578 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1579 msgid "Stopped" msgstr "متوقÙ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1593 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1608 msgid "Torrent details" msgstr "ØªÙØ§ØµÙŠÙ„ التورنت" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1628 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1643 msgid "View files" msgstr "أظهر Ø§Ù„Ù…Ù„ÙØ§Øª" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1630 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1645 msgid "Open file" msgstr "ÙØªØ ملÙ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1682 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 msgid "Stop the torrent" msgstr "ق٠التورنت" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2961 msgid "Stop" msgstr "Ù‚Ù" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 msgid "Start the torrent" msgstr "ابدأ التورنت" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1714 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2963 msgid "Start" msgstr "ابدأ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1727 msgid "Remove the torrent from the active list, deleting the .torrent file" msgstr "ØØ°Ù التورنت من القائمة، ØØ°Ù مل٠.torrent" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1717 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1732 #, java-format msgid "" "Are you sure you want to delete the file \\''{0}\\'' (downloaded data will " "not be deleted) ?" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1721 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1736 msgid "Remove" msgstr "ØØ°Ù" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1734 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1749 msgid "Delete the .torrent file and the associated data file(s)" msgstr "خذ٠مل٠التورنت Ùˆ Ø§Ù„Ù…Ù„ÙØ§Øª المرتبطة به" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1739 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1754 #, java-format msgid "" "Are you sure you want to delete the torrent \\''{0}\\'' and all downloaded " "data?" msgstr "هل أنت متأكد من ØØ°Ù التورنت \\''{0}\\'' وجمبع البيانات المØÙ…لة؟" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1743 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1758 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2388 msgid "Delete" msgstr "ØØ°Ù" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1779 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1794 msgid "Unknown" msgstr "غير معروÙ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1791 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1806 msgid "Seed" msgstr "شارك" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1814 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1829 msgid "Uninteresting (The peer has no pieces we need)" msgstr "غير مهم (النظير لا ÙŠØØªÙˆÙŠ Ø¹Ù„Ù‰ اجزاء Ù†ØØªØ§Ø¬Ù‡Ø§)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1816 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1831 msgid "Choked (The peer is not allowing us to request pieces)" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1851 msgid "Uninterested (We have no pieces the peer needs)" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1838 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1853 msgid "Choking (We are not allowing the peer to request pieces)" msgstr "مشكلة (لا يمكن Ø§Ù„ØØµÙˆÙ„ على اجزاء المل٠من النظائر)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1954 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1969 #, java-format msgid "Details at {0} tracker" msgstr "ØªÙØ§ØµÙŠÙ„ ØÙˆÙ„ {0} tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1971 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1986 msgid "Info" msgstr "معلومات" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 msgid "Add Torrent" msgstr "أض٠تورنت" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 msgid "From URL" msgstr "من عنوان" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2050 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2065 msgid "" "Enter the torrent file download URL (I2P only), magnet link, maggot link, or" " info hash" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2070 msgid "Add torrent" msgstr "أض٠تورنت" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2074 msgid "Data dir" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2077 #, java-format msgid "Enter the directory to save the data in (default {0})" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2066 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 #, java-format msgid "You can also copy .torrent files to: {0}." msgstr "يمكن ايضا .نقل Ù…Ù„ÙØ§Øª تورنت الى: {0}." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2068 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2083 msgid "Removing a .torrent will cause it to stop." msgstr "سيتم القا٠التورنت عند ØØ°Ù المل٠torrent." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2096 msgid "Create Torrent" msgstr "أنشئ تورنت" #. out.write("From file: <input type=\"file\" name=\"newFile\" size=\"50\" #. value=\"" + newFile + "\" /><br>\n"); -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2084 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2099 msgid "Data to seed" msgstr "البيانات المشاركة" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2088 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2103 #, java-format msgid "File or directory to seed (full path or within the directory {0} )" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2091 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2337 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2106 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2361 msgid "Trackers" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2093 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2108 msgid "Primary" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2095 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2110 msgid "Alternates" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2098 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2113 msgid "Create torrent" msgstr "أنشئ تورنت" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2116 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2131 msgid "none" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2153 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2169 msgid "Data directory" msgstr "مجلد البيانات" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2158 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 msgid "Files readable by all" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2162 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2178 msgid "If checked, other users may access the downloaded files" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2182 msgid "Auto start torrents" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2170 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2186 msgid "If checked, automatically start torrents that are added" msgstr "اذا تم ØªÙØ¹ÙŠÙ„ØŒ يقوم بتشغيل التورنت تلقائيا عند Ø§Ø¶Ø§ÙØªÙ‡" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2190 +msgid "Smart torrent sorting" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2194 +msgid "If checked, ignore words such as 'the' when sorting" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2198 msgid "Theme" msgstr "تيمة" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2188 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2212 msgid "Refresh time" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2201 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2225 msgid "Never" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2231 msgid "Startup delay" msgstr "تأخر البداية" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2209 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2233 msgid "minutes" msgstr "دقائق" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2213 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2237 msgid "Page size" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2215 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 msgid "torrents" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 msgid "Total uploader limit" msgstr "اقصى ØØ¯ Ù„Ù„Ø±ÙØ¹" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2266 msgid "peers" msgstr "النظائر" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2270 msgid "Up bandwidth limit" msgstr "اقصى ØØ¯ لسرعة الاتصال" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2249 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2273 msgid "Half available bandwidth recommended." msgstr "ÙŠÙ†ØµØ Ø¨Ø§Ø³ØªØ¹Ù…Ø§Ù„ نص٠سرعة الشبكة" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2251 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2275 msgid "View or change router bandwidth" msgstr "أظهر أو غير سرعة الموجه" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2255 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2279 msgid "Use open trackers also" msgstr "استعمال open trackers ايضا" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2259 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 msgid "" "If checked, announce torrents to open trackers as well as the tracker listed" " in the torrent file" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2287 msgid "Enable DHT" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2267 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2291 msgid "If checked, use DHT" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2307 msgid "Inbound Settings" msgstr "اعدادت الاتصال الداخلي" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2313 msgid "Outbound Settings" msgstr "اعدادت الاتصال الخارجي" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2297 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2321 msgid "I2CP host" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2302 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2326 msgid "I2CP port" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2341 msgid "I2CP options" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2322 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 msgid "Save configuration" msgstr "ØÙظ الاعدادات" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2342 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2366 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "Name" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2344 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2368 msgid "Website URL" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2370 msgid "Standard" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2348 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2372 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3172 msgid "Open" msgstr "ÙØªØ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2350 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2374 msgid "Private" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2352 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2376 msgid "Announce URL" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2396 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2420 msgid "Add" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2439 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2463 #, java-format msgid "Invalid magnet URL {0}" msgstr "غنوان مغناطيس غير صØÙŠØ {0}" #. * dummies for translation -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2447 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2471 #, java-format msgid "1 hop" msgid_plural "{0} hops" @@ -1238,7 +1279,7 @@ msgstr[3] "" msgstr[4] "" msgstr[5] "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2448 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2472 #, java-format msgid "1 tunnel" msgid_plural "{0} tunnels" @@ -1249,119 +1290,135 @@ msgstr[3] "" msgstr[4] "" msgstr[5] "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2691 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2728 msgid "Torrent file" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 msgid "Data location" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2708 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2745 msgid "Info hash" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2727 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2764 msgid "Primary Tracker" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2773 msgid "Tracker List" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2761 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2798 msgid "Comment" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2771 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2812 msgid "Created" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2782 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2823 msgid "Created By" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2794 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2833 +msgid "Added" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2842 +msgid "Completed" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2854 msgid "Magnet link" msgstr "وصلة مغناطيس" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2807 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2867 msgid "Private torrent" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2827 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2887 msgid "Completion" msgstr "انتهاء" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2856 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2916 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 msgid "Remaining" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2926 msgid "Files" msgstr "Ø§Ù„Ù…Ù„ÙØ§Øª" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2873 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 msgid "Pieces" msgstr "القطع" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2879 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2939 msgid "Piece size" msgstr "ØØ¬Ù… القطعة" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2952 +msgid "Refresh page for results" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2964 +msgid "Force Recheck" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3025 msgid "Directory" msgstr "المجلد" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2992 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3084 msgid "Priority" msgstr "الأولوية" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3004 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3096 msgid "Up to higher level directory" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3038 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3130 msgid "Torrent not found?" msgstr "تورنت غير موجود؟" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3136 msgid "File not found in torrent?" msgstr "المل٠غير موجود ÙÙŠ التورنت؟" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3057 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3149 msgid "complete" msgstr "اكتمل" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3058 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3150 msgid "remaining" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3196 msgid "High" msgstr "عالي" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3109 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3201 msgid "Normal" msgstr "عادي" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3114 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3206 msgid "Skip" msgstr "تجاوز" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3124 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3216 msgid "Set all high" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3126 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3218 msgid "Set all normal" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3128 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3220 msgid "Skip all" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3129 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3221 msgid "Save priorities" msgstr "ØÙظ الأولويات" diff --git a/apps/i2psnark/locale/messages_cs.po b/apps/i2psnark/locale/messages_cs.po index c2690f07f9448cdaa6b366e2857a12a3af38905b..a727d9cf79622106bc5a4b2069aae27a4c0b6412 100644 --- a/apps/i2psnark/locale/messages_cs.po +++ b/apps/i2psnark/locale/messages_cs.po @@ -10,10 +10,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:09+0000\n" -"PO-Revision-Date: 2015-07-17 01:32+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-05 17:17+0000\n" "Last-Translator: kytv <killyourtv@i2pmail.org>\n" -"Language-Team: Czech (http://www.transifex.com/projects/p/I2P/language/cs/)\n" +"Language-Team: Czech (http://www.transifex.com/otf/I2P/language/cs/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -25,222 +25,230 @@ msgid "No more torrents running." msgstr "Neběžà žádné dalšà torrenty." #: ../java/src/org/klomp/snark/IdleChecker.java:76 -#: ../java/src/org/klomp/snark/SnarkManager.java:2392 -#: ../java/src/org/klomp/snark/SnarkManager.java:2403 +#: ../java/src/org/klomp/snark/SnarkManager.java:2539 +#: ../java/src/org/klomp/snark/SnarkManager.java:2550 msgid "I2P tunnel closed." msgstr "I2P tunel uzavÅ™en." #: ../java/src/org/klomp/snark/MagnetURI.java:42 #: ../java/src/org/klomp/snark/MagnetURI.java:52 -#: ../java/src/org/klomp/snark/SnarkManager.java:2096 +#: ../java/src/org/klomp/snark/SnarkManager.java:2221 msgid "Magnet" msgstr "Magnet" -#: ../java/src/org/klomp/snark/SnarkManager.java:772 +#: ../java/src/org/klomp/snark/SnarkManager.java:791 #, java-format msgid "Total uploaders limit changed to {0}" msgstr "Celkový limit sdÃleÄů zmÄ›nÄ›n na {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:774 +#: ../java/src/org/klomp/snark/SnarkManager.java:793 #, java-format msgid "Minimum total uploaders limit is {0}" msgstr "Nejmenšà celkový limit sdÃleÄů je {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:786 +#: ../java/src/org/klomp/snark/SnarkManager.java:805 #, java-format msgid "Up BW limit changed to {0}KBps" msgstr "Hornà BW limit zmÄ›nÄ›n na {0}KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:788 +#: ../java/src/org/klomp/snark/SnarkManager.java:807 #, java-format msgid "Minimum up bandwidth limit is {0}KBps" msgstr "Nejmenšà hornà limit pÅ™enosové rychlist je {0}KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:800 +#: ../java/src/org/klomp/snark/SnarkManager.java:819 #, java-format msgid "Startup delay changed to {0}" msgstr "Prodleva pÅ™i startu zmÄ›nÄ›na na {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:811 +#: ../java/src/org/klomp/snark/SnarkManager.java:830 #, java-format msgid "Refresh time changed to {0}" msgstr "Doba aktualizace stavu (refresh time) zmÄ›nÄ›na na {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:813 +#: ../java/src/org/klomp/snark/SnarkManager.java:832 msgid "Refresh disabled" msgstr "Aktualizace stavu vypnuta" -#: ../java/src/org/klomp/snark/SnarkManager.java:829 +#: ../java/src/org/klomp/snark/SnarkManager.java:848 #, java-format msgid "Page size changed to {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:838 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:956 +#: ../java/src/org/klomp/snark/SnarkManager.java:857 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:958 msgid "Data directory must be an absolute path" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:840 +#: ../java/src/org/klomp/snark/SnarkManager.java:859 msgid "Data directory does not exist" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:842 +#: ../java/src/org/klomp/snark/SnarkManager.java:861 msgid "Not a directory" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:844 +#: ../java/src/org/klomp/snark/SnarkManager.java:863 msgid "Unreadable" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:849 +#: ../java/src/org/klomp/snark/SnarkManager.java:868 #, java-format msgid "Data directory changed to {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:904 +#: ../java/src/org/klomp/snark/SnarkManager.java:923 msgid "I2CP and tunnel changes will take effect after stopping all torrents" msgstr "ZmÄ›ny I2CP a tunelu se projevà až po zastavenà vÅ¡ech torrentů" -#: ../java/src/org/klomp/snark/SnarkManager.java:908 +#: ../java/src/org/klomp/snark/SnarkManager.java:927 #, java-format msgid "I2CP options changed to {0}" msgstr "Nastavenà (options) I2CP zmÄ›nÄ›no na {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:914 +#: ../java/src/org/klomp/snark/SnarkManager.java:933 msgid "Disconnecting old I2CP destination" msgstr "Odpojuji se od starého I2CP cÃle" -#: ../java/src/org/klomp/snark/SnarkManager.java:916 +#: ../java/src/org/klomp/snark/SnarkManager.java:935 #, java-format msgid "I2CP settings changed to {0}" msgstr "Nastavenà (settings) I2CP zmÄ›nÄ›no na {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:921 +#: ../java/src/org/klomp/snark/SnarkManager.java:940 msgid "" "Unable to connect with the new settings, reverting to the old I2CP settings" msgstr "Nemůžu se pÅ™ipojit s novým nastavenÃm I2CP, vracÃm se k pÅ™edhozÃmu." -#: ../java/src/org/klomp/snark/SnarkManager.java:925 +#: ../java/src/org/klomp/snark/SnarkManager.java:944 msgid "Unable to reconnect with the old settings!" msgstr "Nemohu se opÄ›tovnÄ› pÅ™ipojit ani s pÅ™edchozÃm nastavenÃm!" -#: ../java/src/org/klomp/snark/SnarkManager.java:927 +#: ../java/src/org/klomp/snark/SnarkManager.java:946 msgid "Reconnected on the new I2CP destination" msgstr "OpÄ›tovnÄ› pÅ™ipojeno k novému I2CP cÃli" -#: ../java/src/org/klomp/snark/SnarkManager.java:934 +#: ../java/src/org/klomp/snark/SnarkManager.java:953 #, java-format msgid "I2CP listener restarted for \"{0}\"" msgstr "I2CP listener restartován pro \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:948 +#: ../java/src/org/klomp/snark/SnarkManager.java:967 msgid "New files will be publicly readable" msgstr "Nové soubory budou veÅ™ejnÄ› pÅ™Ãstupné" -#: ../java/src/org/klomp/snark/SnarkManager.java:950 +#: ../java/src/org/klomp/snark/SnarkManager.java:969 msgid "New files will not be publicly readable" msgstr "Nové soubory nebudou veÅ™ejnÄ› pÅ™Ãstupné" -#: ../java/src/org/klomp/snark/SnarkManager.java:957 +#: ../java/src/org/klomp/snark/SnarkManager.java:976 msgid "Enabled autostart" msgstr "Automatické spuÅ¡tÄ›nà zapnuto" -#: ../java/src/org/klomp/snark/SnarkManager.java:959 +#: ../java/src/org/klomp/snark/SnarkManager.java:978 msgid "Disabled autostart" msgstr "Automatické spuÅ¡tÄ›nà vypnuto" -#: ../java/src/org/klomp/snark/SnarkManager.java:965 +#: ../java/src/org/klomp/snark/SnarkManager.java:985 +msgid "Enabled smart sort" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:987 +msgid "Disabled smart sort" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:994 msgid "Enabled open trackers - torrent restart required to take effect." msgstr "Zapnuto automatické spuÅ¡tÄ›nÃ" -#: ../java/src/org/klomp/snark/SnarkManager.java:967 +#: ../java/src/org/klomp/snark/SnarkManager.java:996 msgid "Disabled open trackers - torrent restart required to take effect." msgstr "OtevÅ™ené trackery vypnuty - aby se zmÄ›na projevila je nutné restartovat vÅ¡echny torrenty" -#: ../java/src/org/klomp/snark/SnarkManager.java:974 +#: ../java/src/org/klomp/snark/SnarkManager.java:1003 msgid "Enabled DHT." msgstr "DHT povoleno." -#: ../java/src/org/klomp/snark/SnarkManager.java:976 +#: ../java/src/org/klomp/snark/SnarkManager.java:1005 msgid "Disabled DHT." msgstr "DHT zakázáno." -#: ../java/src/org/klomp/snark/SnarkManager.java:978 +#: ../java/src/org/klomp/snark/SnarkManager.java:1007 msgid "DHT change requires tunnel shutdown and reopen" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:985 +#: ../java/src/org/klomp/snark/SnarkManager.java:1014 #, java-format msgid "{0} theme loaded, return to main i2psnark page to view." msgstr "Téma {0} bylo nahráno, pÅ™ejdÄ›te prosÃm na hlavnà stránku i2snark" -#: ../java/src/org/klomp/snark/SnarkManager.java:995 +#: ../java/src/org/klomp/snark/SnarkManager.java:1024 msgid "Configuration unchanged." msgstr "Nastavenà nebylo zmÄ›nÄ›no." -#: ../java/src/org/klomp/snark/SnarkManager.java:1027 +#: ../java/src/org/klomp/snark/SnarkManager.java:1056 msgid "Open Tracker list changed - torrent restart required to take effect." msgstr "Seznam otevÅ™ených trackerů zmÄ›nÄ›n - aby se zmÄ›na projevila je nutné restartovat vÅ¡echny torrenty" -#: ../java/src/org/klomp/snark/SnarkManager.java:1037 +#: ../java/src/org/klomp/snark/SnarkManager.java:1066 msgid "Private tracker list changed - affects newly created torrents only." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1083 +#: ../java/src/org/klomp/snark/SnarkManager.java:1112 #, java-format msgid "Unable to save the config to {0}" msgstr "Nemůžu uložit soubor s nastavenÃm do souboru {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1164 +#: ../java/src/org/klomp/snark/SnarkManager.java:1193 msgid "Connecting to I2P" msgstr "PÅ™ipojuji se k I2P" -#: ../java/src/org/klomp/snark/SnarkManager.java:1167 +#: ../java/src/org/klomp/snark/SnarkManager.java:1196 msgid "Error connecting to I2P - check your I2CP settings!" msgstr "PÅ™i pÅ™ipojovánà k I2P nastala chyba, zkontrolujte prosÃm nastavenà I2CP!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1176 -#: ../java/src/org/klomp/snark/SnarkManager.java:2133 +#: ../java/src/org/klomp/snark/SnarkManager.java:1205 +#: ../java/src/org/klomp/snark/SnarkManager.java:2270 #, java-format msgid "Error: Could not add the torrent {0}" msgstr "Chyba: nepodaÅ™ilo se pÅ™idat torrent {0}" #. catch this here so we don't try do delete it below -#: ../java/src/org/klomp/snark/SnarkManager.java:1199 +#: ../java/src/org/klomp/snark/SnarkManager.java:1228 #, java-format msgid "Cannot open \"{0}\"" msgstr "Nejde otevÅ™Ãt \"{0}\"" #. TODO - if the existing one is a magnet, delete it and add the metainfo #. instead? -#: ../java/src/org/klomp/snark/SnarkManager.java:1218 -#: ../java/src/org/klomp/snark/SnarkManager.java:1352 -#: ../java/src/org/klomp/snark/SnarkManager.java:1440 +#: ../java/src/org/klomp/snark/SnarkManager.java:1247 +#: ../java/src/org/klomp/snark/SnarkManager.java:1388 +#: ../java/src/org/klomp/snark/SnarkManager.java:1476 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:166 #, java-format msgid "Torrent with this info hash is already running: {0}" msgstr "Torrent s tÃmto infohaÅ¡iÅ¡em již běžÃ: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1224 +#: ../java/src/org/klomp/snark/SnarkManager.java:1253 #, java-format msgid "ERROR - No I2P trackers in private torrent \"{0}\"" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1226 +#: ../java/src/org/klomp/snark/SnarkManager.java:1255 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", will announce to I2P open trackers and" " DHT only." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1229 +#: ../java/src/org/klomp/snark/SnarkManager.java:1258 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and open trackers are disabled, will " "announce to DHT only." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1231 +#: ../java/src/org/klomp/snark/SnarkManager.java:1260 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and DHT and open trackers are " @@ -248,34 +256,46 @@ msgid "" "torrent." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1257 +#: ../java/src/org/klomp/snark/SnarkManager.java:1286 #, java-format msgid "Torrent in \"{0}\" is invalid" msgstr "Torrent v \"{0}\" je chybný" -#: ../java/src/org/klomp/snark/SnarkManager.java:1264 +#: ../java/src/org/klomp/snark/SnarkManager.java:1292 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1042 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1069 +#, java-format +msgid "Torrent file deleted: {0}" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1295 +#, java-format +msgid "Torrent file moved from {0} to {1}" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1299 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:193 #, java-format msgid "ERROR - Out of memory, cannot create torrent from {0}" msgstr "CHYBA - nedostatek pamÄ›ti, nemohu vytvoÅ™it torrent z {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1285 +#: ../java/src/org/klomp/snark/SnarkManager.java:1321 #, java-format -msgid "Torrent added and started: \"{0}\"" -msgstr "Torrent pÅ™idán a spuÅ¡tÄ›n: \"{0}\"" +msgid "Torrent added and started: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1287 +#: ../java/src/org/klomp/snark/SnarkManager.java:1323 #, java-format -msgid "Torrent added: \"{0}\"" -msgstr "Torrent pÅ™idán: \"{0}\"" +msgid "Torrent added: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1363 +#: ../java/src/org/klomp/snark/SnarkManager.java:1399 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:93 #, java-format msgid "Fetching {0}" msgstr "ZÃskávám {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1369 +#: ../java/src/org/klomp/snark/SnarkManager.java:1405 #, java-format msgid "" "Open trackers are disabled and we have no DHT peers. Fetch of {0} may not " @@ -283,131 +303,146 @@ msgid "" "DHT." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1373 +#: ../java/src/org/klomp/snark/SnarkManager.java:1409 #, java-format msgid "Adding {0}" msgstr "PÅ™Ãdávám {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1406 +#: ../java/src/org/klomp/snark/SnarkManager.java:1442 #, java-format msgid "Download already running: {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1451 -#: ../java/src/org/klomp/snark/SnarkManager.java:1477 -#: ../java/src/org/klomp/snark/SnarkManager.java:2052 +#: ../java/src/org/klomp/snark/SnarkManager.java:1487 +#: ../java/src/org/klomp/snark/SnarkManager.java:1513 +#: ../java/src/org/klomp/snark/SnarkManager.java:2151 #, java-format msgid "Failed to copy torrent file to {0}" msgstr "Chyba: nepodaÅ™ilo se zkopÃrovat soubor torrentu do {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1828 +#: ../java/src/org/klomp/snark/SnarkManager.java:1927 #, java-format -msgid "Too many files in \"{0}\" ({1}), deleting it!" -msgstr "V \"{0}\" ({1}) je pÅ™ÃliÅ¡ mnoho souborů, mažu je!" +msgid "Too many files in \"{0}\" ({1})!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1830 +#: ../java/src/org/klomp/snark/SnarkManager.java:1929 #, java-format -msgid "Torrent file \"{0}\" cannot end in \".torrent\", deleting it!" -msgstr "Jméno souboru torrentu \"{0}\" nemůže konÄit na \".torrent\", mažu ho!" +msgid "Torrent file \"{0}\" cannot end in \".torrent\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1832 +#: ../java/src/org/klomp/snark/SnarkManager.java:1931 #, java-format -msgid "No pieces in \"{0}\", deleting it!" -msgstr "\"{0}\" neobsahuje žádné Äásti, mažu to!" +msgid "No pieces in \"{0}\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1834 +#: ../java/src/org/klomp/snark/SnarkManager.java:1933 #, java-format -msgid "Too many pieces in \"{0}\", limit is {1}, deleting it!" -msgstr "PÅ™ÃliÅ¡ mnoho Äástà v \"{0}\", maximum je {1}, mažu to!" +msgid "Too many pieces in \"{0}\", limit is {1}!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1836 +#: ../java/src/org/klomp/snark/SnarkManager.java:1935 #, java-format -msgid "Pieces are too large in \"{0}\" ({1}B), deleting it." +msgid "Pieces are too large in \"{0}\" ({1}B)!" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1837 +#: ../java/src/org/klomp/snark/SnarkManager.java:1936 #, java-format msgid "Limit is {0}B" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1839 +#: ../java/src/org/klomp/snark/SnarkManager.java:1938 #, java-format -msgid "Torrent \"{0}\" has no data, deleting it!" +msgid "Torrent \"{0}\" has no data!" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1847 +#: ../java/src/org/klomp/snark/SnarkManager.java:1946 #, java-format -msgid "Torrents larger than {0}B are not supported yet, deleting \"{1}\"" +msgid "Torrents larger than {0}B are not supported yet \"{1}\"!" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1864 +#: ../java/src/org/klomp/snark/SnarkManager.java:1963 #, java-format msgid "Error: Could not remove the torrent {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1887 -#: ../java/src/org/klomp/snark/SnarkManager.java:1906 +#: ../java/src/org/klomp/snark/SnarkManager.java:1986 +#: ../java/src/org/klomp/snark/SnarkManager.java:2005 #, java-format -msgid "Torrent stopped: \"{0}\"" -msgstr "Torrent zastaven: \"{0}\"" +msgid "Torrent stopped: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1926 +#: ../java/src/org/klomp/snark/SnarkManager.java:2025 #, java-format msgid "Torrent removed: \"{0}\"" msgstr "Torrent smazán: \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:1934 +#: ../java/src/org/klomp/snark/SnarkManager.java:2033 #, java-format msgid "Adding torrents in {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1966 +#: ../java/src/org/klomp/snark/SnarkManager.java:2067 #, java-format msgid "Up bandwidth limit is {0} KBps" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1993 +#: ../java/src/org/klomp/snark/SnarkManager.java:2092 #, java-format msgid "Download finished: {0}" msgstr "Stahovánà dokonÄeno: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2048 +#: ../java/src/org/klomp/snark/SnarkManager.java:2147 #, java-format msgid "Metainfo received for {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:2049 -#: ../java/src/org/klomp/snark/SnarkManager.java:2280 +#: ../java/src/org/klomp/snark/SnarkManager.java:2148 +#: ../java/src/org/klomp/snark/SnarkManager.java:2431 #, java-format msgid "Starting up torrent {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:2064 +#: ../java/src/org/klomp/snark/SnarkManager.java:2163 #, java-format msgid "Error on torrent {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:2127 +#: ../java/src/org/klomp/snark/SnarkManager.java:2264 msgid "Unable to connect to I2P!" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:2279 +#: ../java/src/org/klomp/snark/SnarkManager.java:2430 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:130 msgid "Opening the I2P tunnel" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:2303 +#: ../java/src/org/klomp/snark/SnarkManager.java:2450 msgid "Opening the I2P tunnel and starting all torrents." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:2366 +#: ../java/src/org/klomp/snark/SnarkManager.java:2513 msgid "Stopping all torrents and closing the I2P tunnel." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:2385 +#: ../java/src/org/klomp/snark/SnarkManager.java:2532 msgid "Closing I2P tunnel after notifying trackers." msgstr "" +#: ../java/src/org/klomp/snark/SnarkManager.java:2594 +#, java-format +msgid "Finished recheck of torrent {0}, now {1} complete" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2596 +#, java-format +msgid "Finished recheck of torrent {0}, unchanged" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2600 +#, java-format +msgid "Error checking the torrent {0}" +msgstr "" + #: ../java/src/org/klomp/snark/TrackerClient.java:245 #, java-format msgid "No valid trackers for {0} - enable opentrackers or DHT?" @@ -453,178 +488,178 @@ msgstr "" msgid "Torrent at {0} was not valid" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:268 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:311 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:322 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1763 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2662 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:270 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:313 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:324 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1778 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2698 msgid "I2PSnark" msgstr "I2PSnark" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:273 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2149 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2422 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2165 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2446 msgid "Configuration" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:277 msgid "Anonymous BitTorrent Client" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:291 msgid "Router is down" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:306 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:308 msgid "Torrents" msgstr "Torrenty" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:319 msgid "Refresh page" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:326 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:328 msgid "Forum" msgstr "Fórum" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:341 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:343 msgid "Click \"Add torrent\" button to fetch torrent" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:394 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:396 msgid "clear messages" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:449 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2980 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3072 msgid "Status" msgstr "Status" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2994 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:453 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3086 #, java-format msgid "Sort by {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:462 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:464 msgid "Hide Peers" msgstr "Skrýt peery" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:468 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:470 msgid "Show Peers" msgstr "Ukázat peery" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:491 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2648 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2718 msgid "Torrent" msgstr "Torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "File type" msgstr "" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:509 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 msgid "ETA" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:512 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:514 msgid "Estimated time remaining" msgstr "" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:535 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 msgid "RX" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:538 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:540 msgid "Downloaded" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2818 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2968 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2878 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3060 msgid "Size" msgstr "" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 msgid "TX" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2896 msgid "Upload ratio" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:569 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:571 msgid "Uploaded" msgstr "" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:581 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 msgid "RX Rate" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:584 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:586 msgid "Down Rate" msgstr "" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:596 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 msgid "TX Rate" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:599 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:601 msgid "Up Rate" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:615 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 msgid "Stop all torrents and the I2P tunnel" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:619 msgid "Stop All" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:629 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 msgid "Start all stopped torrents" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:633 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:647 msgid "Start All" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:643 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 msgid "Start all torrents and the I2P tunnel" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:668 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:670 msgid "No torrents loaded." msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:674 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 msgid "Totals" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:678 #, java-format msgid "1 torrent" msgid_plural "{0} torrents" @@ -632,7 +667,7 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:683 #, java-format msgid "1 connected peer" msgid_plural "{0} connected peers" @@ -640,7 +675,7 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:688 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:690 #, java-format msgid "1 DHT peer" msgid_plural "{0} DHT peers" @@ -648,207 +683,202 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:695 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:697 msgid "Dest" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First page" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Prev" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Previous page" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next page" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last page" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:960 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:962 msgid "Data directory cannot be created" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1176 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:972 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1185 #, java-format msgid "Cannot add torrent {0} inside another torrent: {1}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:985 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:993 #, java-format msgid "Invalid URL: Must start with \"http://\", \"{0}\", or \"{1}\"" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1026 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1063 #, java-format msgid "Magnet deleted: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1061 #, java-format -msgid "Torrent file deleted: {0}" -msgstr "" - -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1053 -#, java-format msgid "Download deleted: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1070 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1078 #, java-format msgid "Data file deleted: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1072 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1089 #, java-format msgid "Data file could not be deleted: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1097 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1105 #, java-format msgid "Directory could not be deleted: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1112 #, java-format msgid "Directory deleted: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1155 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1164 #, java-format msgid "Cannot add a torrent ending in \".torrent\": {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1160 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1169 #, java-format msgid "Torrent with this name is already running: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1175 #, java-format msgid "Cannot add a torrent including an I2P directory: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1181 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1190 #, java-format msgid "Cannot add torrent {0} including another torrent: {1}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1216 msgid "Error - Cannot include alternate trackers without a primary tracker" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1220 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1229 msgid "Error - Cannot mix private and public trackers in a torrent" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1251 #, java-format msgid "Torrent created for \"{0}\"" msgstr "Torrent vytvoÅ™en pro \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1244 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 #, java-format msgid "" "Many I2P trackers require you to register new torrents before seeding - " "please do so before starting \"{0}\"" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1255 #, java-format msgid "Error creating a torrent for \"{0}\"" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1250 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1259 #, java-format msgid "Cannot create a torrent for the nonexistent data: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1262 msgid "Error creating torrent - you must enter a file or directory" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2406 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2430 msgid "Delete selected" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2408 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2432 msgid "Save tracker configuration" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1301 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1310 msgid "Removed" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1333 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2405 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2407 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1342 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2429 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2431 msgid "Add tracker" msgstr "PÅ™idat tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1356 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1359 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1365 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1368 msgid "Enter valid tracker name and URLs" msgstr "" #. "<input type=\"reset\" class=\"cancel\" #. value=\"").append(_t("Cancel")).append("\">\n" + -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1361 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2410 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1370 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2434 msgid "Restore defaults" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1373 msgid "Restored default trackers" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1472 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1473 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1485 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1486 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2949 msgid "Checking" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1475 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1476 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1489 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2956 msgid "Allocating" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1499 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1505 msgid "Tracker Error" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1492 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1522 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1527 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1538 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1543 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1554 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1507 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1537 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1542 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1553 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1558 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1569 #, java-format msgid "1 peer" msgid_plural "{0} peers" @@ -856,366 +886,377 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1502 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1503 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1517 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1518 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2954 msgid "Starting" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1511 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1526 msgid "Seeding" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1515 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1529 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1530 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2831 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1544 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2891 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3139 msgid "Complete" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1534 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1535 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1540 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1541 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1550 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1555 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 msgid "OK" msgstr "OK" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1546 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1551 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1552 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1567 msgid "Stalled" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1557 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1571 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1572 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1575 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1576 msgid "No Peers" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1563 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1578 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1579 msgid "Stopped" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1593 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1608 msgid "Torrent details" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1628 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1643 msgid "View files" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1630 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1645 msgid "Open file" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1682 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 msgid "Stop the torrent" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2961 msgid "Stop" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 msgid "Start the torrent" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1714 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2963 msgid "Start" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1727 msgid "Remove the torrent from the active list, deleting the .torrent file" msgstr "" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1717 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1732 #, java-format msgid "" "Are you sure you want to delete the file \\''{0}\\'' (downloaded data will " "not be deleted) ?" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1721 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1736 msgid "Remove" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1734 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1749 msgid "Delete the .torrent file and the associated data file(s)" msgstr "" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1739 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1754 #, java-format msgid "" "Are you sure you want to delete the torrent \\''{0}\\'' and all downloaded " "data?" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1743 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1758 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2388 msgid "Delete" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1779 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1794 msgid "Unknown" msgstr "Neznámý" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1791 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1806 msgid "Seed" msgstr "Seed" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1814 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1829 msgid "Uninteresting (The peer has no pieces we need)" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1816 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1831 msgid "Choked (The peer is not allowing us to request pieces)" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1851 msgid "Uninterested (We have no pieces the peer needs)" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1838 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1853 msgid "Choking (We are not allowing the peer to request pieces)" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1954 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1969 #, java-format msgid "Details at {0} tracker" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1971 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1986 msgid "Info" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 msgid "Add Torrent" msgstr "PÅ™idat torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 msgid "From URL" msgstr "Z URL" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2050 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2065 msgid "" "Enter the torrent file download URL (I2P only), magnet link, maggot link, or" " info hash" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2070 msgid "Add torrent" msgstr "PÅ™idat torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2074 msgid "Data dir" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2077 #, java-format msgid "Enter the directory to save the data in (default {0})" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2066 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 #, java-format msgid "You can also copy .torrent files to: {0}." msgstr "Můžete také zkopÃrovat .torrent soubory do: {0}." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2068 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2083 msgid "Removing a .torrent will cause it to stop." msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2096 msgid "Create Torrent" msgstr "VytvoÅ™it torrent" #. out.write("From file: <input type=\"file\" name=\"newFile\" size=\"50\" #. value=\"" + newFile + "\" /><br>\n"); -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2084 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2099 msgid "Data to seed" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2088 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2103 #, java-format msgid "File or directory to seed (full path or within the directory {0} )" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2091 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2337 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2106 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2361 msgid "Trackers" msgstr "Trackery" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2093 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2108 msgid "Primary" msgstr "HlavnÃ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2095 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2110 msgid "Alternates" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2098 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2113 msgid "Create torrent" msgstr "VytvoÅ™it torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2116 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2131 msgid "none" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2153 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2169 msgid "Data directory" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2158 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 msgid "Files readable by all" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2162 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2178 msgid "If checked, other users may access the downloaded files" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2182 msgid "Auto start torrents" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2170 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2186 msgid "If checked, automatically start torrents that are added" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2190 +msgid "Smart torrent sorting" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2194 +msgid "If checked, ignore words such as 'the' when sorting" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2198 msgid "Theme" msgstr "Vzhled" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2188 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2212 msgid "Refresh time" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2201 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2225 msgid "Never" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2231 msgid "Startup delay" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2209 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2233 msgid "minutes" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2213 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2237 msgid "Page size" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2215 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 msgid "torrents" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 msgid "Total uploader limit" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2266 msgid "peers" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2270 msgid "Up bandwidth limit" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2249 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2273 msgid "Half available bandwidth recommended." msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2251 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2275 msgid "View or change router bandwidth" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2255 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2279 msgid "Use open trackers also" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2259 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 msgid "" "If checked, announce torrents to open trackers as well as the tracker listed" " in the torrent file" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2287 msgid "Enable DHT" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2267 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2291 msgid "If checked, use DHT" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2307 msgid "Inbound Settings" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2313 msgid "Outbound Settings" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2297 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2321 msgid "I2CP host" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2302 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2326 msgid "I2CP port" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2341 msgid "I2CP options" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2322 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 msgid "Save configuration" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2342 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2366 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "Name" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2344 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2368 msgid "Website URL" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2370 msgid "Standard" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2348 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2372 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3172 msgid "Open" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2350 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2374 msgid "Private" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2352 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2376 msgid "Announce URL" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2396 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2420 msgid "Add" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2439 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2463 #, java-format msgid "Invalid magnet URL {0}" msgstr "" #. * dummies for translation -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2447 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2471 #, java-format msgid "1 hop" msgid_plural "{0} hops" @@ -1223,7 +1264,7 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2448 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2472 #, java-format msgid "1 tunnel" msgid_plural "{0} tunnels" @@ -1231,119 +1272,135 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2691 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2728 msgid "Torrent file" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 msgid "Data location" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2708 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2745 msgid "Info hash" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2727 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2764 msgid "Primary Tracker" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2773 msgid "Tracker List" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2761 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2798 msgid "Comment" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2771 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2812 msgid "Created" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2782 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2823 msgid "Created By" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2794 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2833 +msgid "Added" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2842 +msgid "Completed" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2854 msgid "Magnet link" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2807 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2867 msgid "Private torrent" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2827 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2887 msgid "Completion" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2856 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2916 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 msgid "Remaining" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2926 msgid "Files" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2873 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 msgid "Pieces" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2879 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2939 msgid "Piece size" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2952 +msgid "Refresh page for results" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2964 +msgid "Force Recheck" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3025 msgid "Directory" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2992 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3084 msgid "Priority" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3004 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3096 msgid "Up to higher level directory" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3038 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3130 msgid "Torrent not found?" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3136 msgid "File not found in torrent?" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3057 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3149 msgid "complete" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3058 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3150 msgid "remaining" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3196 msgid "High" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3109 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3201 msgid "Normal" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3114 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3206 msgid "Skip" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3124 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3216 msgid "Set all high" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3126 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3218 msgid "Set all normal" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3128 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3220 msgid "Skip all" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3129 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3221 msgid "Save priorities" msgstr "" diff --git a/apps/i2psnark/locale/messages_de.po b/apps/i2psnark/locale/messages_de.po index dcdd0cb115b2755991278be422c08cf0660ac15c..38e34cec5d5806ada37f5df8b9b4111201fd2ab2 100644 --- a/apps/i2psnark/locale/messages_de.po +++ b/apps/i2psnark/locale/messages_de.po @@ -22,8 +22,8 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:09+0000\n" -"PO-Revision-Date: 2015-08-21 21:02+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-06 08:21+0000\n" "Last-Translator: Lars Schimmer <echelon@i2pmail.org>\n" "Language-Team: German (http://www.transifex.com/otf/I2P/language/de/)\n" "MIME-Version: 1.0\n" @@ -37,222 +37,230 @@ msgid "No more torrents running." msgstr "Keine weiteren Torrents laufen." #: ../java/src/org/klomp/snark/IdleChecker.java:76 -#: ../java/src/org/klomp/snark/SnarkManager.java:2392 -#: ../java/src/org/klomp/snark/SnarkManager.java:2403 +#: ../java/src/org/klomp/snark/SnarkManager.java:2539 +#: ../java/src/org/klomp/snark/SnarkManager.java:2550 msgid "I2P tunnel closed." msgstr "I2P-Tunnel geschlossen." #: ../java/src/org/klomp/snark/MagnetURI.java:42 #: ../java/src/org/klomp/snark/MagnetURI.java:52 -#: ../java/src/org/klomp/snark/SnarkManager.java:2096 +#: ../java/src/org/klomp/snark/SnarkManager.java:2221 msgid "Magnet" msgstr "Magnet" -#: ../java/src/org/klomp/snark/SnarkManager.java:772 +#: ../java/src/org/klomp/snark/SnarkManager.java:791 #, java-format msgid "Total uploaders limit changed to {0}" msgstr "Gesamthochladerbegrenzung geändert auf {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:774 +#: ../java/src/org/klomp/snark/SnarkManager.java:793 #, java-format msgid "Minimum total uploaders limit is {0}" msgstr "Minimale Gesamthochladerbegrenzung ist {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:786 +#: ../java/src/org/klomp/snark/SnarkManager.java:805 #, java-format msgid "Up BW limit changed to {0}KBps" msgstr "Hochladebandbreitenbegrenzung geändert auf {0}kbyte/s." -#: ../java/src/org/klomp/snark/SnarkManager.java:788 +#: ../java/src/org/klomp/snark/SnarkManager.java:807 #, java-format msgid "Minimum up bandwidth limit is {0}KBps" msgstr "Minimale Hochladebandbreitenbegrenzung ist {0} kbyte/s." -#: ../java/src/org/klomp/snark/SnarkManager.java:800 +#: ../java/src/org/klomp/snark/SnarkManager.java:819 #, java-format msgid "Startup delay changed to {0}" msgstr "Startverzögerung geändert auf {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:811 +#: ../java/src/org/klomp/snark/SnarkManager.java:830 #, java-format msgid "Refresh time changed to {0}" msgstr "Aktualisierungsrate geändert auf {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:813 +#: ../java/src/org/klomp/snark/SnarkManager.java:832 msgid "Refresh disabled" msgstr "Aktualisierung deaktiviert" -#: ../java/src/org/klomp/snark/SnarkManager.java:829 +#: ../java/src/org/klomp/snark/SnarkManager.java:848 #, java-format msgid "Page size changed to {0}" msgstr "Seitengröße geändert auf {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:838 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:956 +#: ../java/src/org/klomp/snark/SnarkManager.java:857 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:958 msgid "Data directory must be an absolute path" msgstr "Datenverzeichnis muss ein absoluter Pfad sein" -#: ../java/src/org/klomp/snark/SnarkManager.java:840 +#: ../java/src/org/klomp/snark/SnarkManager.java:859 msgid "Data directory does not exist" msgstr "Datenverzeichnis nicht vorhanden" -#: ../java/src/org/klomp/snark/SnarkManager.java:842 +#: ../java/src/org/klomp/snark/SnarkManager.java:861 msgid "Not a directory" msgstr "Kein Verzeichnis" -#: ../java/src/org/klomp/snark/SnarkManager.java:844 +#: ../java/src/org/klomp/snark/SnarkManager.java:863 msgid "Unreadable" msgstr "Unlesbar" -#: ../java/src/org/klomp/snark/SnarkManager.java:849 +#: ../java/src/org/klomp/snark/SnarkManager.java:868 #, java-format msgid "Data directory changed to {0}" msgstr "Datenverzeichnis geändert auf {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:904 +#: ../java/src/org/klomp/snark/SnarkManager.java:923 msgid "I2CP and tunnel changes will take effect after stopping all torrents" msgstr "Änderungen an I2CP und am Tunnel werden nach dem Stoppen aller Torrents wirksam" -#: ../java/src/org/klomp/snark/SnarkManager.java:908 +#: ../java/src/org/klomp/snark/SnarkManager.java:927 #, java-format msgid "I2CP options changed to {0}" msgstr "I2CP-Optionen geändert auf {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:914 +#: ../java/src/org/klomp/snark/SnarkManager.java:933 msgid "Disconnecting old I2CP destination" msgstr "Altes I2CP-Ziel wird getrennt" -#: ../java/src/org/klomp/snark/SnarkManager.java:916 +#: ../java/src/org/klomp/snark/SnarkManager.java:935 #, java-format msgid "I2CP settings changed to {0}" msgstr "I2CP-Einstellungen geändert auf {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:921 +#: ../java/src/org/klomp/snark/SnarkManager.java:940 msgid "" "Unable to connect with the new settings, reverting to the old I2CP settings" msgstr "Verbinden mit den neuen Einstellungen nicht möglich, benutze wieder die alten I2CP-Einstellungen" -#: ../java/src/org/klomp/snark/SnarkManager.java:925 +#: ../java/src/org/klomp/snark/SnarkManager.java:944 msgid "Unable to reconnect with the old settings!" msgstr "Verbinden mit den alten Einstellungen nicht möglich!" -#: ../java/src/org/klomp/snark/SnarkManager.java:927 +#: ../java/src/org/klomp/snark/SnarkManager.java:946 msgid "Reconnected on the new I2CP destination" msgstr "Verbunden auf dem neuem I2CP-Ziel" -#: ../java/src/org/klomp/snark/SnarkManager.java:934 +#: ../java/src/org/klomp/snark/SnarkManager.java:953 #, java-format msgid "I2CP listener restarted for \"{0}\"" msgstr "I2CP-Lauscher neu gestartet für \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:948 +#: ../java/src/org/klomp/snark/SnarkManager.java:967 msgid "New files will be publicly readable" msgstr "Neu Dateien werden allgemein lesbar sein." -#: ../java/src/org/klomp/snark/SnarkManager.java:950 +#: ../java/src/org/klomp/snark/SnarkManager.java:969 msgid "New files will not be publicly readable" msgstr "Neue Dateien werden nicht allgemein lesbar sein." -#: ../java/src/org/klomp/snark/SnarkManager.java:957 +#: ../java/src/org/klomp/snark/SnarkManager.java:976 msgid "Enabled autostart" msgstr "Autostart wird aktiviert" -#: ../java/src/org/klomp/snark/SnarkManager.java:959 +#: ../java/src/org/klomp/snark/SnarkManager.java:978 msgid "Disabled autostart" msgstr "Autostart wird deaktiviert" -#: ../java/src/org/klomp/snark/SnarkManager.java:965 +#: ../java/src/org/klomp/snark/SnarkManager.java:985 +msgid "Enabled smart sort" +msgstr "Smarte Sortierung aktivieren" + +#: ../java/src/org/klomp/snark/SnarkManager.java:987 +msgid "Disabled smart sort" +msgstr "Smarte Sortierung deaktivieren" + +#: ../java/src/org/klomp/snark/SnarkManager.java:994 msgid "Enabled open trackers - torrent restart required to take effect." msgstr "OpenTracker aktiviert - Um dies anzuwenden, müssen die Torrents neu gestartet werden." -#: ../java/src/org/klomp/snark/SnarkManager.java:967 +#: ../java/src/org/klomp/snark/SnarkManager.java:996 msgid "Disabled open trackers - torrent restart required to take effect." msgstr "OpenTracker deaktiviert - Um dies anzuwenden, müssen die Torrents neu gestartet werden." -#: ../java/src/org/klomp/snark/SnarkManager.java:974 +#: ../java/src/org/klomp/snark/SnarkManager.java:1003 msgid "Enabled DHT." msgstr "DHT aktiviert." -#: ../java/src/org/klomp/snark/SnarkManager.java:976 +#: ../java/src/org/klomp/snark/SnarkManager.java:1005 msgid "Disabled DHT." msgstr "DHT deaktiviert." -#: ../java/src/org/klomp/snark/SnarkManager.java:978 +#: ../java/src/org/klomp/snark/SnarkManager.java:1007 msgid "DHT change requires tunnel shutdown and reopen" msgstr "DHT-Änderungen erfordern das Anhalten und erneutes Öffnen des Tunnels" -#: ../java/src/org/klomp/snark/SnarkManager.java:985 +#: ../java/src/org/klomp/snark/SnarkManager.java:1014 #, java-format msgid "{0} theme loaded, return to main i2psnark page to view." msgstr "{0} Theme geladen. Gehen Sie zurück zur Hauptseite von i2psnark, um die Änderungen zu sehen!" -#: ../java/src/org/klomp/snark/SnarkManager.java:995 +#: ../java/src/org/klomp/snark/SnarkManager.java:1024 msgid "Configuration unchanged." msgstr "Konfiguration nicht geändert." -#: ../java/src/org/klomp/snark/SnarkManager.java:1027 +#: ../java/src/org/klomp/snark/SnarkManager.java:1056 msgid "Open Tracker list changed - torrent restart required to take effect." msgstr "OpenTracker-Liste geändert - Um dies anzuwenden, müssen die Torrents neu gestartet werden" -#: ../java/src/org/klomp/snark/SnarkManager.java:1037 +#: ../java/src/org/klomp/snark/SnarkManager.java:1066 msgid "Private tracker list changed - affects newly created torrents only." msgstr "Liste privater Tracker geändert - betrifft nur neu erstellte Torrents." -#: ../java/src/org/klomp/snark/SnarkManager.java:1083 +#: ../java/src/org/klomp/snark/SnarkManager.java:1112 #, java-format msgid "Unable to save the config to {0}" msgstr "Konnte Konfiguration nicht in {0} speichern" -#: ../java/src/org/klomp/snark/SnarkManager.java:1164 +#: ../java/src/org/klomp/snark/SnarkManager.java:1193 msgid "Connecting to I2P" msgstr "Verbinde mit I2P" -#: ../java/src/org/klomp/snark/SnarkManager.java:1167 +#: ../java/src/org/klomp/snark/SnarkManager.java:1196 msgid "Error connecting to I2P - check your I2CP settings!" msgstr "Fehler beim Verbinden mit I2P - Überprüfen Sie Ihre I2CP-Einstellungen!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1176 -#: ../java/src/org/klomp/snark/SnarkManager.java:2133 +#: ../java/src/org/klomp/snark/SnarkManager.java:1205 +#: ../java/src/org/klomp/snark/SnarkManager.java:2270 #, java-format msgid "Error: Could not add the torrent {0}" msgstr "Fehler: Konnte den Torrent \"{0}\" nicht hinzufügen" #. catch this here so we don't try do delete it below -#: ../java/src/org/klomp/snark/SnarkManager.java:1199 +#: ../java/src/org/klomp/snark/SnarkManager.java:1228 #, java-format msgid "Cannot open \"{0}\"" msgstr "Kann \"{0}\" nicht öffnen" #. TODO - if the existing one is a magnet, delete it and add the metainfo #. instead? -#: ../java/src/org/klomp/snark/SnarkManager.java:1218 -#: ../java/src/org/klomp/snark/SnarkManager.java:1352 -#: ../java/src/org/klomp/snark/SnarkManager.java:1440 +#: ../java/src/org/klomp/snark/SnarkManager.java:1247 +#: ../java/src/org/klomp/snark/SnarkManager.java:1388 +#: ../java/src/org/klomp/snark/SnarkManager.java:1476 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:166 #, java-format msgid "Torrent with this info hash is already running: {0}" msgstr "Torrent mit diesem Infohash läuft schon: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1224 +#: ../java/src/org/klomp/snark/SnarkManager.java:1253 #, java-format msgid "ERROR - No I2P trackers in private torrent \"{0}\"" msgstr "FEHLER - Keine I2P-Tracker im privaten Torrent {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1226 +#: ../java/src/org/klomp/snark/SnarkManager.java:1255 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", will announce to I2P open trackers and" " DHT only." msgstr "Warnung - Keine I2P-Tracker in \"{0}\", es wird nur bei I2P-OpenTrackern und mittels DHT bekanntgeben" -#: ../java/src/org/klomp/snark/SnarkManager.java:1229 +#: ../java/src/org/klomp/snark/SnarkManager.java:1258 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and open trackers are disabled, will " "announce to DHT only." msgstr "Warnung - Keine I2P-Tracker in \"{0}\" und OpenTrackers sind deaktiviert. Bekanntgabe erfolgt nur mittels DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:1231 +#: ../java/src/org/klomp/snark/SnarkManager.java:1260 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and DHT and open trackers are " @@ -260,34 +268,46 @@ msgid "" "torrent." msgstr "Warnung - Keine I2P-Tracker in \"{0}\", und DHT und OpenTrackers sind deaktiviert. Sie sollten DHT oder OpenTrackers vor dem Starten des Torrents aktivieren." -#: ../java/src/org/klomp/snark/SnarkManager.java:1257 +#: ../java/src/org/klomp/snark/SnarkManager.java:1286 #, java-format msgid "Torrent in \"{0}\" is invalid" msgstr "Torrent in \"{0}\" ist nicht gültig" -#: ../java/src/org/klomp/snark/SnarkManager.java:1264 +#: ../java/src/org/klomp/snark/SnarkManager.java:1292 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1042 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1069 +#, java-format +msgid "Torrent file deleted: {0}" +msgstr "Torrentdatei gelöscht: {0}" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1295 +#, java-format +msgid "Torrent file moved from {0} to {1}" +msgstr "Torrent Datei von {0} nach {1} verschoben" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1299 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:193 #, java-format msgid "ERROR - Out of memory, cannot create torrent from {0}" msgstr "FEHLER - Unzureichender Arbeitsspeicher, kann keinen Torrent von {0} erstellen." -#: ../java/src/org/klomp/snark/SnarkManager.java:1285 +#: ../java/src/org/klomp/snark/SnarkManager.java:1321 #, java-format -msgid "Torrent added and started: \"{0}\"" -msgstr "Torrent hinzugefügt und gestartet: \"{0}\"" +msgid "Torrent added and started: {0}" +msgstr "Torrent hinzugefügt und gestartet: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1287 +#: ../java/src/org/klomp/snark/SnarkManager.java:1323 #, java-format -msgid "Torrent added: \"{0}\"" -msgstr "Torrent hinzugefügt: \"{0}\"" +msgid "Torrent added: {0}" +msgstr "Torrent hinzugefügt: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1363 +#: ../java/src/org/klomp/snark/SnarkManager.java:1399 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:93 #, java-format msgid "Fetching {0}" msgstr "{0} wird abgerufen" -#: ../java/src/org/klomp/snark/SnarkManager.java:1369 +#: ../java/src/org/klomp/snark/SnarkManager.java:1405 #, java-format msgid "" "Open trackers are disabled and we have no DHT peers. Fetch of {0} may not " @@ -295,131 +315,146 @@ msgid "" "DHT." msgstr "Das Verwenden von OpenTrackern ist deaktiviert und wir haben keine DHT-Gegenstellen. Das Abrufen von {0} könnte scheitern, sofern Sie keinen anderen Torrent starten. Aktivieren Sie OpenTracker oder DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:1373 +#: ../java/src/org/klomp/snark/SnarkManager.java:1409 #, java-format msgid "Adding {0}" msgstr "{0} wird hinzugefügt" -#: ../java/src/org/klomp/snark/SnarkManager.java:1406 +#: ../java/src/org/klomp/snark/SnarkManager.java:1442 #, java-format msgid "Download already running: {0}" msgstr "Herunterladen läuft bereits: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1451 -#: ../java/src/org/klomp/snark/SnarkManager.java:1477 -#: ../java/src/org/klomp/snark/SnarkManager.java:2052 +#: ../java/src/org/klomp/snark/SnarkManager.java:1487 +#: ../java/src/org/klomp/snark/SnarkManager.java:1513 +#: ../java/src/org/klomp/snark/SnarkManager.java:2151 #, java-format msgid "Failed to copy torrent file to {0}" msgstr "Fehler beim Kopieren der Torrentdatei nach {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1828 +#: ../java/src/org/klomp/snark/SnarkManager.java:1927 #, java-format -msgid "Too many files in \"{0}\" ({1}), deleting it!" -msgstr "Zu viele Dateien in \"{0}\" ({1}), wird gelöscht! " +msgid "Too many files in \"{0}\" ({1})!" +msgstr "Zu viele Dateien in \"{0}\" ({1})!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1830 +#: ../java/src/org/klomp/snark/SnarkManager.java:1929 #, java-format -msgid "Torrent file \"{0}\" cannot end in \".torrent\", deleting it!" -msgstr "Torrentdatei \"{0}\" darf nicht auf '.torrent' enden, wird gelöscht!" +msgid "Torrent file \"{0}\" cannot end in \".torrent\"!" +msgstr "Torrent Datei \"{0}\" kann nicht mit \".torrent\" enden!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1832 +#: ../java/src/org/klomp/snark/SnarkManager.java:1931 #, java-format -msgid "No pieces in \"{0}\", deleting it!" -msgstr "Keine Teile in \"{0}\", wird gelöscht!" +msgid "No pieces in \"{0}\"!" +msgstr "Keine Teile in \"{0}\"!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1834 +#: ../java/src/org/klomp/snark/SnarkManager.java:1933 #, java-format -msgid "Too many pieces in \"{0}\", limit is {1}, deleting it!" -msgstr "Zu viele Teile in \"{0}\", das Limit sind {1}, werden gelöscht!" +msgid "Too many pieces in \"{0}\", limit is {1}!" +msgstr "Zu viele Teile in \"{0}\", das Limit ist {1}!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1836 +#: ../java/src/org/klomp/snark/SnarkManager.java:1935 #, java-format -msgid "Pieces are too large in \"{0}\" ({1}B), deleting it." -msgstr "Teile in \"{0}\" sind zu groß ({1}B), werden gelöscht!" +msgid "Pieces are too large in \"{0}\" ({1}B)!" +msgstr "Teile sind zu groß in \"{0}\" ({1}B)!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1837 +#: ../java/src/org/klomp/snark/SnarkManager.java:1936 #, java-format msgid "Limit is {0}B" msgstr "Limit ist \"{0}\"Bytes" -#: ../java/src/org/klomp/snark/SnarkManager.java:1839 +#: ../java/src/org/klomp/snark/SnarkManager.java:1938 #, java-format -msgid "Torrent \"{0}\" has no data, deleting it!" -msgstr "Torrent \"{0}\" enthält keine Daten und wird gelöscht!" +msgid "Torrent \"{0}\" has no data!" +msgstr "Torrent \"{0}\" hat keine Daten!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1847 +#: ../java/src/org/klomp/snark/SnarkManager.java:1946 #, java-format -msgid "Torrents larger than {0}B are not supported yet, deleting \"{1}\"" -msgstr "Torrents größer als \"{0}\"Bytes werden nicht unterstützt, \"{1}\" wird gelöscht." +msgid "Torrents larger than {0}B are not supported yet \"{1}\"!" +msgstr "Torrents größer als {0}B sind noch nicht unterstützt \"{1}\"!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1864 +#: ../java/src/org/klomp/snark/SnarkManager.java:1963 #, java-format msgid "Error: Could not remove the torrent {0}" msgstr "Fehler: Konnte den Torrent \"{0}\" nicht entfernen" -#: ../java/src/org/klomp/snark/SnarkManager.java:1887 -#: ../java/src/org/klomp/snark/SnarkManager.java:1906 +#: ../java/src/org/klomp/snark/SnarkManager.java:1986 +#: ../java/src/org/klomp/snark/SnarkManager.java:2005 #, java-format -msgid "Torrent stopped: \"{0}\"" -msgstr "Torrent gestoppt: \"{0}\"" +msgid "Torrent stopped: {0}" +msgstr "Torrent gestoppt: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1926 +#: ../java/src/org/klomp/snark/SnarkManager.java:2025 #, java-format msgid "Torrent removed: \"{0}\"" msgstr "Torrent entfernt: \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:1934 +#: ../java/src/org/klomp/snark/SnarkManager.java:2033 #, java-format msgid "Adding torrents in {0}" msgstr "Torrents in {0} werden hinzugefügt" -#: ../java/src/org/klomp/snark/SnarkManager.java:1966 +#: ../java/src/org/klomp/snark/SnarkManager.java:2067 #, java-format msgid "Up bandwidth limit is {0} KBps" msgstr "Hochladebandbreitenbegrenzung ist {0} KByte/s." -#: ../java/src/org/klomp/snark/SnarkManager.java:1993 +#: ../java/src/org/klomp/snark/SnarkManager.java:2092 #, java-format msgid "Download finished: {0}" msgstr "Herunterladen abgeschlossen: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2048 +#: ../java/src/org/klomp/snark/SnarkManager.java:2147 #, java-format msgid "Metainfo received for {0}" msgstr "Metainfo für {0} erhalten" -#: ../java/src/org/klomp/snark/SnarkManager.java:2049 -#: ../java/src/org/klomp/snark/SnarkManager.java:2280 +#: ../java/src/org/klomp/snark/SnarkManager.java:2148 +#: ../java/src/org/klomp/snark/SnarkManager.java:2431 #, java-format msgid "Starting up torrent {0}" msgstr "Torrent {0} wird gestartet" -#: ../java/src/org/klomp/snark/SnarkManager.java:2064 +#: ../java/src/org/klomp/snark/SnarkManager.java:2163 #, java-format msgid "Error on torrent {0}" msgstr "Fehler bei Torrent {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2127 +#: ../java/src/org/klomp/snark/SnarkManager.java:2264 msgid "Unable to connect to I2P!" msgstr "Konnte keine Verbindung zu I2P herstellen!" -#: ../java/src/org/klomp/snark/SnarkManager.java:2279 +#: ../java/src/org/klomp/snark/SnarkManager.java:2430 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:130 msgid "Opening the I2P tunnel" msgstr "I2P-Tunnel wird geöffnet" -#: ../java/src/org/klomp/snark/SnarkManager.java:2303 +#: ../java/src/org/klomp/snark/SnarkManager.java:2450 msgid "Opening the I2P tunnel and starting all torrents." msgstr "Den I2P-Tunnel öffnen und alle Torrents starten." -#: ../java/src/org/klomp/snark/SnarkManager.java:2366 +#: ../java/src/org/klomp/snark/SnarkManager.java:2513 msgid "Stopping all torrents and closing the I2P tunnel." msgstr "Alle Torrents stoppen und den I2P-Tunnel schließen." -#: ../java/src/org/klomp/snark/SnarkManager.java:2385 +#: ../java/src/org/klomp/snark/SnarkManager.java:2532 msgid "Closing I2P tunnel after notifying trackers." msgstr "Der I2P-Tunnel wird nach Benachrichtigung der Tracker geschlossen." +#: ../java/src/org/klomp/snark/SnarkManager.java:2594 +#, java-format +msgid "Finished recheck of torrent {0}, now {1} complete" +msgstr "Überprüfung von Torrent {0} beendet, nun {1} vollständig" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2596 +#, java-format +msgid "Finished recheck of torrent {0}, unchanged" +msgstr "Überprüfung von Torrent {0} beendet, keine Änderung" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2600 +#, java-format +msgid "Error checking the torrent {0}" +msgstr "Fehler bei der Überprüfung von Torrent {0}" + #: ../java/src/org/klomp/snark/TrackerClient.java:245 #, java-format msgid "No valid trackers for {0} - enable opentrackers or DHT?" @@ -465,891 +500,913 @@ msgstr "Torrent ist schon in der Warteschlange: {0}" msgid "Torrent at {0} was not valid" msgstr "Torrent in {0} war nicht gültig" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:268 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:311 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:322 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1763 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2662 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:270 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:313 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:324 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1778 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2698 msgid "I2PSnark" msgstr "I2PSnark" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:273 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2149 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2422 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2165 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2446 msgid "Configuration" msgstr "Konfiguration" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:277 msgid "Anonymous BitTorrent Client" msgstr "Anonymer BitTorrent-Client" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:291 msgid "Router is down" msgstr "Router ist Offline" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:306 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:308 msgid "Torrents" msgstr "Torrents" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:319 msgid "Refresh page" msgstr "Seite aktualisieren" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:326 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:328 msgid "Forum" msgstr "Forum" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:341 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:343 msgid "Click \"Add torrent\" button to fetch torrent" msgstr "Klicken Sie die \"Torrent Hinzufügen\"-Schaltfläche, um den Torrent abzurufen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:394 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:396 msgid "clear messages" msgstr "Nachrichten löschen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:449 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2980 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3072 msgid "Status" msgstr "Status" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2994 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:453 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3086 #, java-format msgid "Sort by {0}" msgstr "Sortieren nach {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:462 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:464 msgid "Hide Peers" msgstr "Teilnehmer ausblenden" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:468 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:470 msgid "Show Peers" msgstr "Teilnehmer einblenden" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:491 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2648 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2718 msgid "Torrent" msgstr "Torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "File type" msgstr "Dateityp" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:509 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 msgid "ETA" msgstr "ETA" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:512 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:514 msgid "Estimated time remaining" msgstr "Geschätzte verbleibende Zeit" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:535 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 msgid "RX" msgstr " Empf." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:538 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:540 msgid "Downloaded" msgstr "Heruntergeladen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2818 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2968 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2878 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3060 msgid "Size" msgstr "Größe" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 msgid "TX" msgstr " Send." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2896 msgid "Upload ratio" msgstr "Hochladeverhältnis" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:569 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:571 msgid "Uploaded" msgstr "Hochgeladen" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:581 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 msgid "RX Rate" msgstr "Übertragungsrate für den Empfang" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:584 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:586 msgid "Down Rate" msgstr "Herunterladegeschwindigkeit" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:596 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 msgid "TX Rate" msgstr "Übertragungsrate fürs Senden" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:599 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:601 msgid "Up Rate" msgstr "Hochladegeschwindigkeit" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:615 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 msgid "Stop all torrents and the I2P tunnel" msgstr "Alle Torrents und den I2P-Tunnel stoppen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:619 msgid "Stop All" msgstr "Alle stoppen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:629 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 msgid "Start all stopped torrents" msgstr "Alle gestoppten Torrents fortsetzen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:633 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:647 msgid "Start All" msgstr "Alle starten" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:643 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 msgid "Start all torrents and the I2P tunnel" msgstr "Alle Torrents und den I2P-Tunnel starten" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:668 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:670 msgid "No torrents loaded." msgstr "Keine Torrents geladen." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:674 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 msgid "Totals" msgstr "Gesamt" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:678 #, java-format msgid "1 torrent" msgid_plural "{0} torrents" msgstr[0] "1 Torrent" msgstr[1] "{0} Torrents" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:683 #, java-format msgid "1 connected peer" msgid_plural "{0} connected peers" msgstr[0] "1 verbundener Teilnehmer" msgstr[1] "{0} verbundene Teilnehmer" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:688 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:690 #, java-format msgid "1 DHT peer" msgid_plural "{0} DHT peers" msgstr[0] "1 DHT-Gegenstelle" msgstr[1] "{0} DHT-Gegenstellen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:695 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:697 msgid "Dest" msgstr "Ziel" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First" msgstr "Erste" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First page" msgstr "Erste Seite" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Prev" msgstr "Vorherige" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Previous page" msgstr "Vorherige Seite" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next" msgstr "Nächste" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next page" msgstr "Nächste Seite" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last" msgstr "Letzte" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last page" msgstr "Letzte Seite" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:960 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:962 msgid "Data directory cannot be created" msgstr "Datenverzeichnis kann nicht erstellt werden" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1176 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:972 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1185 #, java-format msgid "Cannot add torrent {0} inside another torrent: {1}" msgstr "Kann den Torrent {0} nicht hinzufügen, da dieser in einem anderen Torrent ist: {1}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:985 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:993 #, java-format msgid "Invalid URL: Must start with \"http://\", \"{0}\", or \"{1}\"" msgstr "Ungültige URL - muss mit \"http://\", \"{0}\" oder \"{1}\" anfangen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1026 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1063 #, java-format msgid "Magnet deleted: {0}" msgstr "Magnetlink gelöscht: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1061 #, java-format -msgid "Torrent file deleted: {0}" -msgstr "Torrentdatei gelöscht: {0}" - -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1053 -#, java-format msgid "Download deleted: {0}" msgstr "Download gelöscht: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1070 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1078 #, java-format msgid "Data file deleted: {0}" msgstr "Datendatei gelöscht: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1072 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1089 #, java-format msgid "Data file could not be deleted: {0}" msgstr "Daten konnten nicht gelöscht werden: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1097 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1105 #, java-format msgid "Directory could not be deleted: {0}" msgstr "Das Verzeichnis {0} konnte nicht gelöscht werden." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1112 #, java-format msgid "Directory deleted: {0}" msgstr "Verzeichnis gelöscht: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1155 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1164 #, java-format msgid "Cannot add a torrent ending in \".torrent\": {0}" msgstr "Kann keinen Torrent mit der Endung \".torrent\" hinzufügen: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1160 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1169 #, java-format msgid "Torrent with this name is already running: {0}" msgstr "Torrent mit diesem Namen ist schon aktiv: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1175 #, java-format msgid "Cannot add a torrent including an I2P directory: {0}" msgstr "Kann keinen Torrent hinzufügen, der das I2P Verzeichnis beinhaltet: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1181 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1190 #, java-format msgid "Cannot add torrent {0} including another torrent: {1}" msgstr "Kann den Torrent {0} nicht hinzufügen, da dieser den Torrent {1} enthält." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1216 msgid "Error - Cannot include alternate trackers without a primary tracker" msgstr "Fehler - Einfügen alternativer Tracker ohne primären Tracker nicht möglich" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1220 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1229 msgid "Error - Cannot mix private and public trackers in a torrent" msgstr "Fehler - Mischen von privaten und öffentlichen Trackern in einem Torrent nicht möglich" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1251 #, java-format msgid "Torrent created for \"{0}\"" msgstr "Torrent erstellt für \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1244 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 #, java-format msgid "" "Many I2P trackers require you to register new torrents before seeding - " "please do so before starting \"{0}\"" msgstr "Viele I2P-Tracker erfordern eine Registrierung, bevor der Torrent verteilt wird. Bitte tun Sie dies vor dem Start von \"{0}\"!" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1255 #, java-format msgid "Error creating a torrent for \"{0}\"" msgstr "Fehler beim Erstellen eines Torrents für \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1250 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1259 #, java-format msgid "Cannot create a torrent for the nonexistent data: {0}" msgstr "Kann keinen Torrent für nicht existente vorhandene erstellen: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1262 msgid "Error creating torrent - you must enter a file or directory" msgstr "Fehler beim Erstellen des Torrents - Sie müssen eine Datei oder ein Verzeichnis angeben." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2406 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2430 msgid "Delete selected" msgstr "Ausgewählte löschen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2408 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2432 msgid "Save tracker configuration" msgstr "Trackerkonfiguration speichern" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1301 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1310 msgid "Removed" msgstr "Entfernt" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1333 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2405 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2407 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1342 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2429 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2431 msgid "Add tracker" msgstr "Tracker hinzufügen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1356 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1359 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1365 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1368 msgid "Enter valid tracker name and URLs" msgstr "Geben Sie einen gültigen Tracker-Namen und die URLs ein" #. "<input type=\"reset\" class=\"cancel\" #. value=\"").append(_t("Cancel")).append("\">\n" + -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1361 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2410 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1370 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2434 msgid "Restore defaults" msgstr "Auf Standardeinstellungen zurücksetzen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1373 msgid "Restored default trackers" msgstr "Auf Standard-Tracker zurückgesetzt" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1472 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1473 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1485 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1486 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2949 msgid "Checking" msgstr "Überprüfe" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1475 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1476 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1489 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2956 msgid "Allocating" msgstr "Reserviere" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1499 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1505 msgid "Tracker Error" msgstr "Trackerfehler" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1492 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1522 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1527 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1538 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1543 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1554 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1507 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1537 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1542 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1553 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1558 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1569 #, java-format msgid "1 peer" msgid_plural "{0} peers" msgstr[0] "1 Teilnehmer" msgstr[1] "{0} Teilnehmern" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1502 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1503 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1517 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1518 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2954 msgid "Starting" msgstr "Starten" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1511 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1526 msgid "Seeding" msgstr "Verteile" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1515 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1529 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1530 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2831 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1544 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2891 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3139 msgid "Complete" msgstr "Vollständig" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1534 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1535 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1540 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1541 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1550 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1555 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 msgid "OK" msgstr "OK" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1546 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1551 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1552 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1567 msgid "Stalled" msgstr "Stillstand" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1557 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1571 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1572 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1575 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1576 msgid "No Peers" msgstr "Keine Teilnehmer" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1563 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1578 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1579 msgid "Stopped" msgstr "Gestoppt" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1593 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1608 msgid "Torrent details" msgstr "Details" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1628 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1643 msgid "View files" msgstr "Dateien ansehen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1630 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1645 msgid "Open file" msgstr "Datei öffnen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1682 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 msgid "Stop the torrent" msgstr "Torrent stoppen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2961 msgid "Stop" msgstr "Stopp" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 msgid "Start the torrent" msgstr "Torrent starten" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1714 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2963 msgid "Start" msgstr "Start" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1727 msgid "Remove the torrent from the active list, deleting the .torrent file" msgstr "Entfernt den Torrent von der aktiven Liste und löscht die .torrent-Datei" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1717 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1732 #, java-format msgid "" "Are you sure you want to delete the file \\''{0}\\'' (downloaded data will " "not be deleted) ?" msgstr "Sind Sie sicher, dass Sie die Datei \\''{0}\\'' löschen möchten (Heruntergeladene Daten werden nicht gelöscht)?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1721 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1736 msgid "Remove" msgstr "Entfernen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1734 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1749 msgid "Delete the .torrent file and the associated data file(s)" msgstr "Löscht die .torrent-Datei und (die) dazugehörige Datendatei(en)" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1739 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1754 #, java-format msgid "" "Are you sure you want to delete the torrent \\''{0}\\'' and all downloaded " "data?" msgstr "Sind Sie sicher, dass Sie die Torrentdatei \\''{0}\\'' und alle heruntergeladenen Daten löschen wollen?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1743 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1758 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2388 msgid "Delete" msgstr "Löschen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1779 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1794 msgid "Unknown" msgstr "Unbekannt" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1791 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1806 msgid "Seed" msgstr "Quelle" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1814 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1829 msgid "Uninteresting (The peer has no pieces we need)" msgstr "Uninteressant (Der Teilnehmer hat keine Teile, die wir benötigen)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1816 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1831 msgid "Choked (The peer is not allowing us to request pieces)" msgstr "Gedrosselt (Der Teilnehmer hat uns nicht erlaubt, Teile anzufordern)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1851 msgid "Uninterested (We have no pieces the peer needs)" msgstr "Uninteressiert (Wir haben keine Teile, die der Teilnehmer benötigt)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1838 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1853 msgid "Choking (We are not allowing the peer to request pieces)" msgstr "Gedrosselt (Wir erlauben dem Teilnehmer nicht, Teile anzufordern)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1954 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1969 #, java-format msgid "Details at {0} tracker" msgstr "Details beim Tracker {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1971 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1986 msgid "Info" msgstr "Info" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 msgid "Add Torrent" msgstr "Torrent hinzufügen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 msgid "From URL" msgstr "Von URL" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2050 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2065 msgid "" "Enter the torrent file download URL (I2P only), magnet link, maggot link, or" " info hash" msgstr "Geben Sie die URL zum Herunterladen einer Torrentdatei (I2P-Link), einen Magnet-Link, einen Maggot-Link oder einen Info-Hash ein!" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2070 msgid "Add torrent" msgstr "Füge Torrent hinzu" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2074 msgid "Data dir" msgstr "Datenverzeichnis" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2077 #, java-format msgid "Enter the directory to save the data in (default {0})" msgstr "Geben Sie das Verzeichnis zum Speichern der Daten ein (Standardeinstellung {0})" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2066 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 #, java-format msgid "You can also copy .torrent files to: {0}." msgstr "Alternativ können Sie die .torrent-Dateien auch nach {0} kopieren." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2068 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2083 msgid "Removing a .torrent will cause it to stop." msgstr "Das Entfernen der .torrent-Datei stoppt den jeweiligen Torrent." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2096 msgid "Create Torrent" msgstr "Torrent erstellen" #. out.write("From file: <input type=\"file\" name=\"newFile\" size=\"50\" #. value=\"" + newFile + "\" /><br>\n"); -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2084 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2099 msgid "Data to seed" msgstr "Daten zum Verteilen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2088 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2103 #, java-format msgid "File or directory to seed (full path or within the directory {0} )" msgstr "Datei oder Verzeichnis zum Verteilen (Gesamter Pfad oder aus dem Verzeichnis {0} )" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2091 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2337 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2106 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2361 msgid "Trackers" msgstr "Trackers" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2093 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2108 msgid "Primary" msgstr "Primär" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2095 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2110 msgid "Alternates" msgstr "Alternativen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2098 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2113 msgid "Create torrent" msgstr "Torrent erstellen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2116 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2131 msgid "none" msgstr "keiner" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2153 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2169 msgid "Data directory" msgstr "Datenverzeichnis" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2158 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 msgid "Files readable by all" msgstr "Dateien von allen lesbar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2162 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2178 msgid "If checked, other users may access the downloaded files" msgstr "Wenn abgehakt, können andere Benutzer auf die heruntergeladenen Dateien zugreifen." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2182 msgid "Auto start torrents" msgstr "Torrents automatisch starten" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2170 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2186 msgid "If checked, automatically start torrents that are added" msgstr "Wenn abgehakt, werden hinzugefügte Torrents automatisch gestartet." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2190 +msgid "Smart torrent sorting" +msgstr "Smarte Torrent Sortierung" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2194 +msgid "If checked, ignore words such as 'the' when sorting" +msgstr "Ignoriert Wörter wie 'the' bei der Sortierung, falls Aktiv" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2198 msgid "Theme" msgstr "Aufmachung" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2188 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2212 msgid "Refresh time" msgstr "Aktualisierungsintervall" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2201 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2225 msgid "Never" msgstr "Nie" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2231 msgid "Startup delay" msgstr "Startverzögerung" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2209 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2233 msgid "minutes" msgstr "Minuten" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2213 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2237 msgid "Page size" msgstr "Seitengröße" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2215 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 msgid "torrents" msgstr "Torrents" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 msgid "Total uploader limit" msgstr "Gesamtlimit an Hochladern" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2266 msgid "peers" msgstr "Teilnehmer" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2270 msgid "Up bandwidth limit" msgstr "Bandbreitenbegrenzung beim Hochladen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2249 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2273 msgid "Half available bandwidth recommended." msgstr "Halbe verfügbare Bandbreite wird empfohlen." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2251 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2275 msgid "View or change router bandwidth" msgstr "Routerbandbreite ansehen oder ändern" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2255 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2279 msgid "Use open trackers also" msgstr "Auch OpenTracker verwenden" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2259 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 msgid "" "If checked, announce torrents to open trackers as well as the tracker listed" " in the torrent file" msgstr "Wenn abgehakt, wird der Torrent neben dem in der Torrentdatei angegebenen Tracker auch bei den OpenTrackern bekanntgegeben." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2287 msgid "Enable DHT" msgstr "DHT aktivieren" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2267 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2291 msgid "If checked, use DHT" msgstr "Wenn abgehakt, wird DHT verwendet" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2307 msgid "Inbound Settings" msgstr "Einstellungen eingehend" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2313 msgid "Outbound Settings" msgstr "Einstellungen ausgehend" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2297 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2321 msgid "I2CP host" msgstr "I2CP-Host" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2302 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2326 msgid "I2CP port" msgstr "I2CP-Port" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2341 msgid "I2CP options" msgstr "I2CP-Optionen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2322 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 msgid "Save configuration" msgstr "Einstellungen speichern" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2342 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2366 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "Name" -msgstr "Name" +msgstr "Namen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2344 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2368 msgid "Website URL" msgstr "Webseiten-URL" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2370 msgid "Standard" msgstr "Standard" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2348 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2372 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3172 msgid "Open" msgstr "Offen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2350 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2374 msgid "Private" msgstr "Privat" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2352 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2376 msgid "Announce URL" msgstr "Ankündigungs-URL" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2396 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2420 msgid "Add" msgstr "Hinzufügen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2439 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2463 #, java-format msgid "Invalid magnet URL {0}" msgstr "Ungültige Magnet-URL {0}" #. * dummies for translation -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2447 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2471 #, java-format msgid "1 hop" msgid_plural "{0} hops" msgstr[0] "1 Zwischenstation" msgstr[1] "{0} Zwischenstationen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2448 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2472 #, java-format msgid "1 tunnel" msgid_plural "{0} tunnels" msgstr[0] "1 Tunnel" msgstr[1] "{0} Tunnel" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2691 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2728 msgid "Torrent file" msgstr "Torrentdatei" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 msgid "Data location" msgstr "Datenadresse" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2708 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2745 msgid "Info hash" msgstr "Info-Hash" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2727 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2764 msgid "Primary Tracker" msgstr "Primärer Tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2773 msgid "Tracker List" msgstr "Tracker-Liste" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2761 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2798 msgid "Comment" msgstr "Kommentar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2771 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2812 msgid "Created" msgstr "Erstellt" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2782 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2823 msgid "Created By" msgstr "Erstellt von" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2794 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2833 +msgid "Added" +msgstr "Hinzugefügt" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2842 +msgid "Completed" +msgstr "Fertig" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2854 msgid "Magnet link" msgstr "Magnetlink" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2807 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2867 msgid "Private torrent" msgstr "Privater Torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2827 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2887 msgid "Completion" msgstr "Fortschritt" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2856 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2916 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 msgid "Remaining" msgstr "Verbleibend" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2926 msgid "Files" msgstr "Dateien" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2873 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 msgid "Pieces" -msgstr "Stücke" +msgstr "Teile" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2879 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2939 msgid "Piece size" msgstr "Stückgröße" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2952 +msgid "Refresh page for results" +msgstr "Für Resultate Seite aktualisieren" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2964 +msgid "Force Recheck" +msgstr "Überprüfung forcieren" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3025 msgid "Directory" msgstr "Verzeichnis" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2992 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3084 msgid "Priority" msgstr "Priorität" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3004 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3096 msgid "Up to higher level directory" msgstr "Eine Hierarchie nach oben" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3038 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3130 msgid "Torrent not found?" msgstr "Torrentdatei nicht gefunden?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3136 msgid "File not found in torrent?" msgstr "Datei nicht gefunden im Torrent?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3057 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3149 msgid "complete" msgstr "vollständig" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3058 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3150 msgid "remaining" msgstr "verbleibend" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3196 msgid "High" msgstr "Hoch" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3109 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3201 msgid "Normal" msgstr "Normal" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3114 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3206 msgid "Skip" msgstr "Überspringen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3124 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3216 msgid "Set all high" msgstr "Alle auf hoch festlegen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3126 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3218 msgid "Set all normal" msgstr "Alle auf normal festlegen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3128 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3220 msgid "Skip all" msgstr "Alle überspringen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3129 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3221 msgid "Save priorities" msgstr "Prioritäten speichern" diff --git a/apps/i2psnark/locale/messages_en.po b/apps/i2psnark/locale/messages_en.po index e34056fedef3307a953d898cbdef13a0acabc26b..601b06e4cc4173b20ef4a142d0489ec6a3bdfdc0 100644 --- a/apps/i2psnark/locale/messages_en.po +++ b/apps/i2psnark/locale/messages_en.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: I2P i2psnark\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:33+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" "PO-Revision-Date: 2010-06-15 14:09+0100\n" "Last-Translator: duck <duck@mail.i2p>\n" "Language-Team: duck <duck@mail.i2p>\n" @@ -23,386 +23,421 @@ msgid "No more torrents running." msgstr "" #: ../java/src/org/klomp/snark/IdleChecker.java:76 -#: ../java/src/org/klomp/snark/SnarkManager.java:2392 -#: ../java/src/org/klomp/snark/SnarkManager.java:2403 +#: ../java/src/org/klomp/snark/SnarkManager.java:2539 +#: ../java/src/org/klomp/snark/SnarkManager.java:2550 msgid "I2P tunnel closed." msgstr "" #: ../java/src/org/klomp/snark/MagnetURI.java:42 #: ../java/src/org/klomp/snark/MagnetURI.java:52 -#: ../java/src/org/klomp/snark/SnarkManager.java:2096 +#: ../java/src/org/klomp/snark/SnarkManager.java:2221 msgid "Magnet" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:772 +#: ../java/src/org/klomp/snark/SnarkManager.java:791 #, java-format msgid "Total uploaders limit changed to {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:774 +#: ../java/src/org/klomp/snark/SnarkManager.java:793 #, java-format msgid "Minimum total uploaders limit is {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:786 +#: ../java/src/org/klomp/snark/SnarkManager.java:805 #, java-format msgid "Up BW limit changed to {0}KBps" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:788 +#: ../java/src/org/klomp/snark/SnarkManager.java:807 #, java-format msgid "Minimum up bandwidth limit is {0}KBps" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:800 +#: ../java/src/org/klomp/snark/SnarkManager.java:819 #, java-format msgid "Startup delay changed to {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:811 +#: ../java/src/org/klomp/snark/SnarkManager.java:830 #, java-format msgid "Refresh time changed to {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:813 +#: ../java/src/org/klomp/snark/SnarkManager.java:832 msgid "Refresh disabled" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:829 +#: ../java/src/org/klomp/snark/SnarkManager.java:848 #, java-format msgid "Page size changed to {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:838 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:956 +#: ../java/src/org/klomp/snark/SnarkManager.java:857 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:958 msgid "Data directory must be an absolute path" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:840 +#: ../java/src/org/klomp/snark/SnarkManager.java:859 msgid "Data directory does not exist" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:842 +#: ../java/src/org/klomp/snark/SnarkManager.java:861 msgid "Not a directory" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:844 +#: ../java/src/org/klomp/snark/SnarkManager.java:863 msgid "Unreadable" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:849 +#: ../java/src/org/klomp/snark/SnarkManager.java:868 #, java-format msgid "Data directory changed to {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:904 +#: ../java/src/org/klomp/snark/SnarkManager.java:923 msgid "I2CP and tunnel changes will take effect after stopping all torrents" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:908 +#: ../java/src/org/klomp/snark/SnarkManager.java:927 #, java-format msgid "I2CP options changed to {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:914 +#: ../java/src/org/klomp/snark/SnarkManager.java:933 msgid "Disconnecting old I2CP destination" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:916 +#: ../java/src/org/klomp/snark/SnarkManager.java:935 #, java-format msgid "I2CP settings changed to {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:921 +#: ../java/src/org/klomp/snark/SnarkManager.java:940 msgid "" "Unable to connect with the new settings, reverting to the old I2CP settings" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:925 +#: ../java/src/org/klomp/snark/SnarkManager.java:944 msgid "Unable to reconnect with the old settings!" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:927 +#: ../java/src/org/klomp/snark/SnarkManager.java:946 msgid "Reconnected on the new I2CP destination" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:934 +#: ../java/src/org/klomp/snark/SnarkManager.java:953 #, java-format msgid "I2CP listener restarted for \"{0}\"" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:948 +#: ../java/src/org/klomp/snark/SnarkManager.java:967 msgid "New files will be publicly readable" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:950 +#: ../java/src/org/klomp/snark/SnarkManager.java:969 msgid "New files will not be publicly readable" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:957 +#: ../java/src/org/klomp/snark/SnarkManager.java:976 msgid "Enabled autostart" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:959 +#: ../java/src/org/klomp/snark/SnarkManager.java:978 msgid "Disabled autostart" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:965 +#: ../java/src/org/klomp/snark/SnarkManager.java:985 +msgid "Enabled smart sort" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:987 +msgid "Disabled smart sort" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:994 msgid "Enabled open trackers - torrent restart required to take effect." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:967 +#: ../java/src/org/klomp/snark/SnarkManager.java:996 msgid "Disabled open trackers - torrent restart required to take effect." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:974 +#: ../java/src/org/klomp/snark/SnarkManager.java:1003 msgid "Enabled DHT." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:976 +#: ../java/src/org/klomp/snark/SnarkManager.java:1005 msgid "Disabled DHT." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:978 +#: ../java/src/org/klomp/snark/SnarkManager.java:1007 msgid "DHT change requires tunnel shutdown and reopen" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:985 +#: ../java/src/org/klomp/snark/SnarkManager.java:1014 #, java-format msgid "{0} theme loaded, return to main i2psnark page to view." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:995 +#: ../java/src/org/klomp/snark/SnarkManager.java:1024 msgid "Configuration unchanged." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1027 +#: ../java/src/org/klomp/snark/SnarkManager.java:1056 msgid "Open Tracker list changed - torrent restart required to take effect." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1037 +#: ../java/src/org/klomp/snark/SnarkManager.java:1066 msgid "Private tracker list changed - affects newly created torrents only." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1083 +#: ../java/src/org/klomp/snark/SnarkManager.java:1112 #, java-format msgid "Unable to save the config to {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1164 +#: ../java/src/org/klomp/snark/SnarkManager.java:1193 msgid "Connecting to I2P" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1167 +#: ../java/src/org/klomp/snark/SnarkManager.java:1196 msgid "Error connecting to I2P - check your I2CP settings!" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1176 -#: ../java/src/org/klomp/snark/SnarkManager.java:2133 +#: ../java/src/org/klomp/snark/SnarkManager.java:1205 +#: ../java/src/org/klomp/snark/SnarkManager.java:2270 #, java-format msgid "Error: Could not add the torrent {0}" msgstr "" #. catch this here so we don't try do delete it below -#: ../java/src/org/klomp/snark/SnarkManager.java:1199 +#: ../java/src/org/klomp/snark/SnarkManager.java:1228 #, java-format msgid "Cannot open \"{0}\"" msgstr "" #. TODO - if the existing one is a magnet, delete it and add the metainfo instead? -#: ../java/src/org/klomp/snark/SnarkManager.java:1218 -#: ../java/src/org/klomp/snark/SnarkManager.java:1352 -#: ../java/src/org/klomp/snark/SnarkManager.java:1440 +#: ../java/src/org/klomp/snark/SnarkManager.java:1247 +#: ../java/src/org/klomp/snark/SnarkManager.java:1388 +#: ../java/src/org/klomp/snark/SnarkManager.java:1476 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:166 #, java-format msgid "Torrent with this info hash is already running: {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1224 +#: ../java/src/org/klomp/snark/SnarkManager.java:1253 #, java-format msgid "ERROR - No I2P trackers in private torrent \"{0}\"" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1226 +#: ../java/src/org/klomp/snark/SnarkManager.java:1255 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", will announce to I2P open trackers and " "DHT only." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1229 +#: ../java/src/org/klomp/snark/SnarkManager.java:1258 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and open trackers are disabled, will " "announce to DHT only." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1231 +#: ../java/src/org/klomp/snark/SnarkManager.java:1260 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and DHT and open trackers are " "disabled, you should enable open trackers or DHT before starting the torrent." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1257 +#: ../java/src/org/klomp/snark/SnarkManager.java:1286 #, java-format msgid "Torrent in \"{0}\" is invalid" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1264 +#: ../java/src/org/klomp/snark/SnarkManager.java:1292 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1042 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1069 +#, java-format +msgid "Torrent file deleted: {0}" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1295 +#, java-format +msgid "Torrent file moved from {0} to {1}" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1299 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:193 #, java-format msgid "ERROR - Out of memory, cannot create torrent from {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1285 +#: ../java/src/org/klomp/snark/SnarkManager.java:1321 #, java-format -msgid "Torrent added and started: \"{0}\"" +msgid "Torrent added and started: {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1287 +#: ../java/src/org/klomp/snark/SnarkManager.java:1323 #, java-format -msgid "Torrent added: \"{0}\"" +msgid "Torrent added: {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1363 +#: ../java/src/org/klomp/snark/SnarkManager.java:1399 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:93 #, java-format msgid "Fetching {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1369 +#: ../java/src/org/klomp/snark/SnarkManager.java:1405 #, java-format msgid "" "Open trackers are disabled and we have no DHT peers. Fetch of {0} may not " "succeed until you start another torrent, enable open trackers, or enable DHT." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1373 +#: ../java/src/org/klomp/snark/SnarkManager.java:1409 #, java-format msgid "Adding {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1406 +#: ../java/src/org/klomp/snark/SnarkManager.java:1442 #, java-format msgid "Download already running: {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1451 -#: ../java/src/org/klomp/snark/SnarkManager.java:1477 -#: ../java/src/org/klomp/snark/SnarkManager.java:2052 +#: ../java/src/org/klomp/snark/SnarkManager.java:1487 +#: ../java/src/org/klomp/snark/SnarkManager.java:1513 +#: ../java/src/org/klomp/snark/SnarkManager.java:2151 #, java-format msgid "Failed to copy torrent file to {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1828 +#: ../java/src/org/klomp/snark/SnarkManager.java:1927 #, java-format -msgid "Too many files in \"{0}\" ({1}), deleting it!" +msgid "Too many files in \"{0}\" ({1})!" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1830 +#: ../java/src/org/klomp/snark/SnarkManager.java:1929 #, java-format -msgid "Torrent file \"{0}\" cannot end in \".torrent\", deleting it!" +msgid "Torrent file \"{0}\" cannot end in \".torrent\"!" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1832 +#: ../java/src/org/klomp/snark/SnarkManager.java:1931 #, java-format -msgid "No pieces in \"{0}\", deleting it!" +msgid "No pieces in \"{0}\"!" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1834 +#: ../java/src/org/klomp/snark/SnarkManager.java:1933 #, java-format -msgid "Too many pieces in \"{0}\", limit is {1}, deleting it!" +msgid "Too many pieces in \"{0}\", limit is {1}!" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1836 +#: ../java/src/org/klomp/snark/SnarkManager.java:1935 #, java-format -msgid "Pieces are too large in \"{0}\" ({1}B), deleting it." +msgid "Pieces are too large in \"{0}\" ({1}B)!" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1837 +#: ../java/src/org/klomp/snark/SnarkManager.java:1936 #, java-format msgid "Limit is {0}B" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1839 +#: ../java/src/org/klomp/snark/SnarkManager.java:1938 #, java-format -msgid "Torrent \"{0}\" has no data, deleting it!" +msgid "Torrent \"{0}\" has no data!" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1847 +#: ../java/src/org/klomp/snark/SnarkManager.java:1946 #, java-format -msgid "Torrents larger than {0}B are not supported yet, deleting \"{1}\"" +msgid "Torrents larger than {0}B are not supported yet \"{1}\"!" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1864 +#: ../java/src/org/klomp/snark/SnarkManager.java:1963 #, java-format msgid "Error: Could not remove the torrent {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1887 -#: ../java/src/org/klomp/snark/SnarkManager.java:1906 +#: ../java/src/org/klomp/snark/SnarkManager.java:1986 +#: ../java/src/org/klomp/snark/SnarkManager.java:2005 #, java-format -msgid "Torrent stopped: \"{0}\"" +msgid "Torrent stopped: {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1926 +#: ../java/src/org/klomp/snark/SnarkManager.java:2025 #, java-format msgid "Torrent removed: \"{0}\"" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1934 +#: ../java/src/org/klomp/snark/SnarkManager.java:2033 #, java-format msgid "Adding torrents in {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1966 +#: ../java/src/org/klomp/snark/SnarkManager.java:2067 #, java-format msgid "Up bandwidth limit is {0} KBps" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1993 +#: ../java/src/org/klomp/snark/SnarkManager.java:2092 #, java-format msgid "Download finished: {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:2048 +#: ../java/src/org/klomp/snark/SnarkManager.java:2147 #, java-format msgid "Metainfo received for {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:2049 -#: ../java/src/org/klomp/snark/SnarkManager.java:2280 +#: ../java/src/org/klomp/snark/SnarkManager.java:2148 +#: ../java/src/org/klomp/snark/SnarkManager.java:2431 #, java-format msgid "Starting up torrent {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:2064 +#: ../java/src/org/klomp/snark/SnarkManager.java:2163 #, java-format msgid "Error on torrent {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:2127 +#: ../java/src/org/klomp/snark/SnarkManager.java:2264 msgid "Unable to connect to I2P!" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:2279 +#: ../java/src/org/klomp/snark/SnarkManager.java:2430 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:130 msgid "Opening the I2P tunnel" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:2303 +#: ../java/src/org/klomp/snark/SnarkManager.java:2450 msgid "Opening the I2P tunnel and starting all torrents." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:2366 +#: ../java/src/org/klomp/snark/SnarkManager.java:2513 msgid "Stopping all torrents and closing the I2P tunnel." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:2385 +#: ../java/src/org/klomp/snark/SnarkManager.java:2532 msgid "Closing I2P tunnel after notifying trackers." msgstr "" +#: ../java/src/org/klomp/snark/SnarkManager.java:2594 +#, java-format +msgid "Finished recheck of torrent {0}, now {1} complete" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2596 +#, java-format +msgid "Finished recheck of torrent {0}, unchanged" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2600 +#, java-format +msgid "Error checking the torrent {0}" +msgstr "" + #: ../java/src/org/klomp/snark/TrackerClient.java:245 #, java-format msgid "No valid trackers for {0} - enable opentrackers or DHT?" @@ -448,889 +483,911 @@ msgstr "" msgid "Torrent at {0} was not valid" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:268 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:311 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:322 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1763 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2662 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:270 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:313 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:324 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1778 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2698 msgid "I2PSnark" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:273 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2149 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2422 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2165 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2446 msgid "Configuration" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:277 msgid "Anonymous BitTorrent Client" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:291 msgid "Router is down" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:306 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:308 msgid "Torrents" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:319 msgid "Refresh page" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:326 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:328 msgid "Forum" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:341 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:343 msgid "Click \"Add torrent\" button to fetch torrent" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:394 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:396 msgid "clear messages" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:449 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2980 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3072 msgid "Status" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2994 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:453 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3086 #, java-format msgid "Sort by {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:462 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:464 msgid "Hide Peers" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:468 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:470 msgid "Show Peers" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:491 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2648 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2718 msgid "Torrent" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "File type" msgstr "" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:509 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 msgid "ETA" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:512 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:514 msgid "Estimated time remaining" msgstr "" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:535 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 msgid "RX" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:538 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:540 msgid "Downloaded" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2818 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2968 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2878 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3060 msgid "Size" msgstr "" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 msgid "TX" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2896 msgid "Upload ratio" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:569 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:571 msgid "Uploaded" msgstr "" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:581 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 msgid "RX Rate" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:584 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:586 msgid "Down Rate" msgstr "" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:596 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 msgid "TX Rate" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:599 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:601 msgid "Up Rate" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:615 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 msgid "Stop all torrents and the I2P tunnel" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:619 msgid "Stop All" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:629 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 msgid "Start all stopped torrents" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:633 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:647 msgid "Start All" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:643 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 msgid "Start all torrents and the I2P tunnel" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:668 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:670 msgid "No torrents loaded." msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:674 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 msgid "Totals" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:678 #, java-format msgid "1 torrent" msgid_plural "{0} torrents" msgstr[0] "" msgstr[1] "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:683 #, java-format msgid "1 connected peer" msgid_plural "{0} connected peers" msgstr[0] "" msgstr[1] "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:688 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:690 #, java-format msgid "1 DHT peer" msgid_plural "{0} DHT peers" msgstr[0] "" msgstr[1] "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:695 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:697 msgid "Dest" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First page" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Prev" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Previous page" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next page" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last page" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:960 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:962 msgid "Data directory cannot be created" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1176 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:972 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1185 #, java-format msgid "Cannot add torrent {0} inside another torrent: {1}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:985 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:993 #, java-format msgid "Invalid URL: Must start with \"http://\", \"{0}\", or \"{1}\"" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1026 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1063 #, java-format msgid "Magnet deleted: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1061 #, java-format -msgid "Torrent file deleted: {0}" -msgstr "" - -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1053 -#, java-format msgid "Download deleted: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1070 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1078 #, java-format msgid "Data file deleted: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1072 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1089 #, java-format msgid "Data file could not be deleted: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1097 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1105 #, java-format msgid "Directory could not be deleted: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1112 #, java-format msgid "Directory deleted: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1155 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1164 #, java-format msgid "Cannot add a torrent ending in \".torrent\": {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1160 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1169 #, java-format msgid "Torrent with this name is already running: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1175 #, java-format msgid "Cannot add a torrent including an I2P directory: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1181 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1190 #, java-format msgid "Cannot add torrent {0} including another torrent: {1}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1216 msgid "Error - Cannot include alternate trackers without a primary tracker" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1220 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1229 msgid "Error - Cannot mix private and public trackers in a torrent" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1251 #, java-format msgid "Torrent created for \"{0}\"" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1244 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 #, java-format msgid "" "Many I2P trackers require you to register new torrents before seeding - " "please do so before starting \"{0}\"" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1255 #, java-format msgid "Error creating a torrent for \"{0}\"" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1250 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1259 #, java-format msgid "Cannot create a torrent for the nonexistent data: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1262 msgid "Error creating torrent - you must enter a file or directory" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2406 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2430 msgid "Delete selected" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2408 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2432 msgid "Save tracker configuration" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1301 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1310 msgid "Removed" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1333 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2405 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2407 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1342 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2429 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2431 msgid "Add tracker" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1356 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1359 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1365 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1368 msgid "Enter valid tracker name and URLs" msgstr "" #. "<input type=\"reset\" class=\"cancel\" value=\"").append(_t("Cancel")).append("\">\n" + -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1361 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2410 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1370 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2434 msgid "Restore defaults" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1373 msgid "Restored default trackers" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1472 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1473 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1485 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1486 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2949 msgid "Checking" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1475 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1476 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1489 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2956 msgid "Allocating" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1499 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1505 msgid "Tracker Error" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1492 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1522 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1527 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1538 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1543 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1554 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1507 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1537 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1542 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1553 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1558 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1569 #, java-format msgid "1 peer" msgid_plural "{0} peers" msgstr[0] "" msgstr[1] "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1502 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1503 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1517 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1518 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2954 msgid "Starting" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1511 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1526 msgid "Seeding" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1515 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1529 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1530 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2831 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1544 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2891 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3139 msgid "Complete" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1534 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1535 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1540 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1541 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1550 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1555 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 msgid "OK" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1546 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1551 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1552 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1567 msgid "Stalled" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1557 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1571 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1572 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1575 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1576 msgid "No Peers" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1563 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1578 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1579 msgid "Stopped" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1593 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1608 msgid "Torrent details" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1628 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1643 msgid "View files" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1630 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1645 msgid "Open file" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1682 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 msgid "Stop the torrent" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2961 msgid "Stop" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 msgid "Start the torrent" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1714 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2963 msgid "Start" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1727 msgid "Remove the torrent from the active list, deleting the .torrent file" msgstr "" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1717 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1732 #, java-format msgid "" "Are you sure you want to delete the file \\''{0}\\'' (downloaded data will " "not be deleted) ?" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1721 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1736 msgid "Remove" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1734 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1749 msgid "Delete the .torrent file and the associated data file(s)" msgstr "" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1739 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1754 #, java-format msgid "" "Are you sure you want to delete the torrent \\''{0}\\'' and all downloaded " "data?" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1743 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1758 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2388 msgid "Delete" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1779 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1794 msgid "Unknown" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1791 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1806 msgid "Seed" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1814 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1829 msgid "Uninteresting (The peer has no pieces we need)" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1816 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1831 msgid "Choked (The peer is not allowing us to request pieces)" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1851 msgid "Uninterested (We have no pieces the peer needs)" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1838 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1853 msgid "Choking (We are not allowing the peer to request pieces)" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1954 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1969 #, java-format msgid "Details at {0} tracker" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1971 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1986 msgid "Info" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 msgid "Add Torrent" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 msgid "From URL" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2050 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2065 msgid "" "Enter the torrent file download URL (I2P only), magnet link, maggot link, or " "info hash" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2070 msgid "Add torrent" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2074 msgid "Data dir" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2077 #, java-format msgid "Enter the directory to save the data in (default {0})" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2066 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 #, java-format msgid "You can also copy .torrent files to: {0}." msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2068 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2083 msgid "Removing a .torrent will cause it to stop." msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2096 msgid "Create Torrent" msgstr "" #. out.write("From file: <input type=\"file\" name=\"newFile\" size=\"50\" value=\"" + newFile + "\" /><br>\n"); -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2084 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2099 msgid "Data to seed" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2088 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2103 #, java-format msgid "File or directory to seed (full path or within the directory {0} )" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2091 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2337 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2106 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2361 msgid "Trackers" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2093 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2108 msgid "Primary" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2095 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2110 msgid "Alternates" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2098 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2113 msgid "Create torrent" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2116 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2131 msgid "none" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2153 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2169 msgid "Data directory" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2158 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 msgid "Files readable by all" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2162 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2178 msgid "If checked, other users may access the downloaded files" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2182 msgid "Auto start torrents" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2170 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2186 msgid "If checked, automatically start torrents that are added" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2190 +msgid "Smart torrent sorting" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2194 +msgid "If checked, ignore words such as 'the' when sorting" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2198 msgid "Theme" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2188 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2212 msgid "Refresh time" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2201 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2225 msgid "Never" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2231 msgid "Startup delay" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2209 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2233 msgid "minutes" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2213 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2237 msgid "Page size" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2215 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 msgid "torrents" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 msgid "Total uploader limit" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2266 msgid "peers" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2270 msgid "Up bandwidth limit" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2249 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2273 msgid "Half available bandwidth recommended." msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2251 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2275 msgid "View or change router bandwidth" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2255 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2279 msgid "Use open trackers also" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2259 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 msgid "" "If checked, announce torrents to open trackers as well as the tracker listed " "in the torrent file" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2287 msgid "Enable DHT" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2267 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2291 msgid "If checked, use DHT" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2307 msgid "Inbound Settings" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2313 msgid "Outbound Settings" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2297 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2321 msgid "I2CP host" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2302 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2326 msgid "I2CP port" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2341 msgid "I2CP options" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2322 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 msgid "Save configuration" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2342 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2366 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "Name" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2344 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2368 msgid "Website URL" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2370 msgid "Standard" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2348 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2372 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3172 msgid "Open" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2350 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2374 msgid "Private" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2352 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2376 msgid "Announce URL" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2396 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2420 msgid "Add" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2439 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2463 #, java-format msgid "Invalid magnet URL {0}" msgstr "" #. * dummies for translation -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2447 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2471 #, java-format msgid "1 hop" msgid_plural "{0} hops" msgstr[0] "" msgstr[1] "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2448 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2472 #, java-format msgid "1 tunnel" msgid_plural "{0} tunnels" msgstr[0] "" msgstr[1] "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2691 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2728 msgid "Torrent file" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 msgid "Data location" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2708 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2745 msgid "Info hash" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2727 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2764 msgid "Primary Tracker" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2773 msgid "Tracker List" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2761 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2798 msgid "Comment" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2771 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2812 msgid "Created" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2782 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2823 msgid "Created By" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2794 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2833 +msgid "Added" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2842 +msgid "Completed" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2854 msgid "Magnet link" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2807 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2867 msgid "Private torrent" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2827 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2887 msgid "Completion" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2856 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2916 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 msgid "Remaining" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2926 msgid "Files" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2873 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 msgid "Pieces" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2879 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2939 msgid "Piece size" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2952 +msgid "Refresh page for results" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2964 +msgid "Force Recheck" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3025 msgid "Directory" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2992 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3084 msgid "Priority" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3004 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3096 msgid "Up to higher level directory" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3038 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3130 msgid "Torrent not found?" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3136 msgid "File not found in torrent?" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3057 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3149 msgid "complete" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3058 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3150 msgid "remaining" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3196 msgid "High" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3109 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3201 msgid "Normal" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3114 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3206 msgid "Skip" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3124 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3216 msgid "Set all high" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3126 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3218 msgid "Set all normal" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3128 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3220 msgid "Skip all" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3129 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3221 msgid "Save priorities" msgstr "" diff --git a/apps/i2psnark/locale/messages_es.po b/apps/i2psnark/locale/messages_es.po index c7a293fd0408747162bf80567755816ca204f565..46afe9bf5a8ed69a9c69f5bf2301cb7805daff86 100644 --- a/apps/i2psnark/locale/messages_es.po +++ b/apps/i2psnark/locale/messages_es.po @@ -20,10 +20,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:09+0000\n" -"PO-Revision-Date: 2015-07-17 01:57+0000\n" -"Last-Translator: strel\n" -"Language-Team: Spanish (http://www.transifex.com/projects/p/I2P/language/es/)\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-05 17:17+0000\n" +"Last-Translator: kytv <killyourtv@i2pmail.org>\n" +"Language-Team: Spanish (http://www.transifex.com/otf/I2P/language/es/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -35,222 +35,230 @@ msgid "No more torrents running." msgstr "No hay más torrents intercambiandose." #: ../java/src/org/klomp/snark/IdleChecker.java:76 -#: ../java/src/org/klomp/snark/SnarkManager.java:2392 -#: ../java/src/org/klomp/snark/SnarkManager.java:2403 +#: ../java/src/org/klomp/snark/SnarkManager.java:2539 +#: ../java/src/org/klomp/snark/SnarkManager.java:2550 msgid "I2P tunnel closed." msgstr "Túnel I2P cerrado." #: ../java/src/org/klomp/snark/MagnetURI.java:42 #: ../java/src/org/klomp/snark/MagnetURI.java:52 -#: ../java/src/org/klomp/snark/SnarkManager.java:2096 +#: ../java/src/org/klomp/snark/SnarkManager.java:2221 msgid "Magnet" msgstr "Enlace magnet" -#: ../java/src/org/klomp/snark/SnarkManager.java:772 +#: ../java/src/org/klomp/snark/SnarkManager.java:791 #, java-format msgid "Total uploaders limit changed to {0}" msgstr "El lÃmite total de usuarios subiendo ha cambiado a {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:774 +#: ../java/src/org/klomp/snark/SnarkManager.java:793 #, java-format msgid "Minimum total uploaders limit is {0}" msgstr "El lÃmite mÃnimo total de usuarios subiendo es {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:786 +#: ../java/src/org/klomp/snark/SnarkManager.java:805 #, java-format msgid "Up BW limit changed to {0}KBps" msgstr "El lÃmite de ancho de banda de subida cambió a {0} KB/s" -#: ../java/src/org/klomp/snark/SnarkManager.java:788 +#: ../java/src/org/klomp/snark/SnarkManager.java:807 #, java-format msgid "Minimum up bandwidth limit is {0}KBps" msgstr "El lÃmite mÃnimo de ancho de banda de subida es {0} KB/s" -#: ../java/src/org/klomp/snark/SnarkManager.java:800 +#: ../java/src/org/klomp/snark/SnarkManager.java:819 #, java-format msgid "Startup delay changed to {0}" msgstr "El retardo en el arranque cambió a {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:811 +#: ../java/src/org/klomp/snark/SnarkManager.java:830 #, java-format msgid "Refresh time changed to {0}" msgstr "Hora de actualización cambiado a {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:813 +#: ../java/src/org/klomp/snark/SnarkManager.java:832 msgid "Refresh disabled" msgstr "Actualización deshabilitada" -#: ../java/src/org/klomp/snark/SnarkManager.java:829 +#: ../java/src/org/klomp/snark/SnarkManager.java:848 #, java-format msgid "Page size changed to {0}" msgstr "Tamaño de página cambiado a {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:838 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:956 +#: ../java/src/org/klomp/snark/SnarkManager.java:857 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:958 msgid "Data directory must be an absolute path" msgstr "La carpeta de datos tiene que ser una ruta absoluta" -#: ../java/src/org/klomp/snark/SnarkManager.java:840 +#: ../java/src/org/klomp/snark/SnarkManager.java:859 msgid "Data directory does not exist" msgstr "La carpeta de datos no existe" -#: ../java/src/org/klomp/snark/SnarkManager.java:842 +#: ../java/src/org/klomp/snark/SnarkManager.java:861 msgid "Not a directory" msgstr "No es una carpeta" -#: ../java/src/org/klomp/snark/SnarkManager.java:844 +#: ../java/src/org/klomp/snark/SnarkManager.java:863 msgid "Unreadable" msgstr "No se pudo leer" -#: ../java/src/org/klomp/snark/SnarkManager.java:849 +#: ../java/src/org/klomp/snark/SnarkManager.java:868 #, java-format msgid "Data directory changed to {0}" msgstr "Carpeta de datos cambiada a {0} " -#: ../java/src/org/klomp/snark/SnarkManager.java:904 +#: ../java/src/org/klomp/snark/SnarkManager.java:923 msgid "I2CP and tunnel changes will take effect after stopping all torrents" msgstr "Los cambios de I2CP (protocolo cliente I2P) y túnel serán efectivos después de detener todos los torrents" -#: ../java/src/org/klomp/snark/SnarkManager.java:908 +#: ../java/src/org/klomp/snark/SnarkManager.java:927 #, java-format msgid "I2CP options changed to {0}" msgstr "Opciones I2CP cambiadas a {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:914 +#: ../java/src/org/klomp/snark/SnarkManager.java:933 msgid "Disconnecting old I2CP destination" msgstr "Desconectando destino I2CP antiguo" -#: ../java/src/org/klomp/snark/SnarkManager.java:916 +#: ../java/src/org/klomp/snark/SnarkManager.java:935 #, java-format msgid "I2CP settings changed to {0}" msgstr "Preferencias de I2CP cambiadas a {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:921 +#: ../java/src/org/klomp/snark/SnarkManager.java:940 msgid "" "Unable to connect with the new settings, reverting to the old I2CP settings" msgstr "No se pudo conectar usando las nuevas preferencias de I2CP (protocolo cliente I2P), volviendo a las antiguas" -#: ../java/src/org/klomp/snark/SnarkManager.java:925 +#: ../java/src/org/klomp/snark/SnarkManager.java:944 msgid "Unable to reconnect with the old settings!" msgstr "¡No se pudo reconectar usando las preferencias antiguas!" -#: ../java/src/org/klomp/snark/SnarkManager.java:927 +#: ../java/src/org/klomp/snark/SnarkManager.java:946 msgid "Reconnected on the new I2CP destination" msgstr "Reconectado con el nuevo destino I2CP" -#: ../java/src/org/klomp/snark/SnarkManager.java:934 +#: ../java/src/org/klomp/snark/SnarkManager.java:953 #, java-format msgid "I2CP listener restarted for \"{0}\"" msgstr "El escuchador de I2CP se reinició para \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:948 +#: ../java/src/org/klomp/snark/SnarkManager.java:967 msgid "New files will be publicly readable" msgstr "Los ficheros nuevos serán públicamente legibles" -#: ../java/src/org/klomp/snark/SnarkManager.java:950 +#: ../java/src/org/klomp/snark/SnarkManager.java:969 msgid "New files will not be publicly readable" msgstr "Los ficheros nuevos no serán públicamente legibles" -#: ../java/src/org/klomp/snark/SnarkManager.java:957 +#: ../java/src/org/klomp/snark/SnarkManager.java:976 msgid "Enabled autostart" msgstr "Arranque automático activado" -#: ../java/src/org/klomp/snark/SnarkManager.java:959 +#: ../java/src/org/klomp/snark/SnarkManager.java:978 msgid "Disabled autostart" msgstr "Arranque automático desactivado" -#: ../java/src/org/klomp/snark/SnarkManager.java:965 +#: ../java/src/org/klomp/snark/SnarkManager.java:985 +msgid "Enabled smart sort" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:987 +msgid "Disabled smart sort" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:994 msgid "Enabled open trackers - torrent restart required to take effect." msgstr "Trackers (rastreadores) abiertos activados - requiere reiniciar el torrent para que sea efectivo." -#: ../java/src/org/klomp/snark/SnarkManager.java:967 +#: ../java/src/org/klomp/snark/SnarkManager.java:996 msgid "Disabled open trackers - torrent restart required to take effect." msgstr "Trackers (rastreadores) abiertos desactivados - requiere reiniciar el torrent para que sea efectivo." -#: ../java/src/org/klomp/snark/SnarkManager.java:974 +#: ../java/src/org/klomp/snark/SnarkManager.java:1003 msgid "Enabled DHT." msgstr "DHT habilitada." -#: ../java/src/org/klomp/snark/SnarkManager.java:976 +#: ../java/src/org/klomp/snark/SnarkManager.java:1005 msgid "Disabled DHT." msgstr "DHT deshabilitada." -#: ../java/src/org/klomp/snark/SnarkManager.java:978 +#: ../java/src/org/klomp/snark/SnarkManager.java:1007 msgid "DHT change requires tunnel shutdown and reopen" msgstr "Cambiar la DHT (tabla de hash distribuida) requiere cerrar el túnel y volver a abrirlo" -#: ../java/src/org/klomp/snark/SnarkManager.java:985 +#: ../java/src/org/klomp/snark/SnarkManager.java:1014 #, java-format msgid "{0} theme loaded, return to main i2psnark page to view." msgstr "Tema {0} cargado, vuelva a la página principal de i2psnark para verlo" -#: ../java/src/org/klomp/snark/SnarkManager.java:995 +#: ../java/src/org/klomp/snark/SnarkManager.java:1024 msgid "Configuration unchanged." msgstr "La configuración no cambió." -#: ../java/src/org/klomp/snark/SnarkManager.java:1027 +#: ../java/src/org/klomp/snark/SnarkManager.java:1056 msgid "Open Tracker list changed - torrent restart required to take effect." msgstr "La lista de trackers (rastreadores) abiertos cambió - requiere reiniciar el torrent para que sea efectiva." -#: ../java/src/org/klomp/snark/SnarkManager.java:1037 +#: ../java/src/org/klomp/snark/SnarkManager.java:1066 msgid "Private tracker list changed - affects newly created torrents only." msgstr "La lista de trackers (rastreadores) privados cambió - afactará sólo a los torrents creados a partir de ahora." -#: ../java/src/org/klomp/snark/SnarkManager.java:1083 +#: ../java/src/org/klomp/snark/SnarkManager.java:1112 #, java-format msgid "Unable to save the config to {0}" msgstr "No se pudo guardar la configuración en {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1164 +#: ../java/src/org/klomp/snark/SnarkManager.java:1193 msgid "Connecting to I2P" msgstr "Conectando a I2P" -#: ../java/src/org/klomp/snark/SnarkManager.java:1167 +#: ../java/src/org/klomp/snark/SnarkManager.java:1196 msgid "Error connecting to I2P - check your I2CP settings!" msgstr "Error al conectar a I2P - ¡compruebe sus preferencias de I2CP!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1176 -#: ../java/src/org/klomp/snark/SnarkManager.java:2133 +#: ../java/src/org/klomp/snark/SnarkManager.java:1205 +#: ../java/src/org/klomp/snark/SnarkManager.java:2270 #, java-format msgid "Error: Could not add the torrent {0}" msgstr "Error: No se pudo añadir el torrent {0}" #. catch this here so we don't try do delete it below -#: ../java/src/org/klomp/snark/SnarkManager.java:1199 +#: ../java/src/org/klomp/snark/SnarkManager.java:1228 #, java-format msgid "Cannot open \"{0}\"" msgstr "No se pudo abrir \"{0}\"" #. TODO - if the existing one is a magnet, delete it and add the metainfo #. instead? -#: ../java/src/org/klomp/snark/SnarkManager.java:1218 -#: ../java/src/org/klomp/snark/SnarkManager.java:1352 -#: ../java/src/org/klomp/snark/SnarkManager.java:1440 +#: ../java/src/org/klomp/snark/SnarkManager.java:1247 +#: ../java/src/org/klomp/snark/SnarkManager.java:1388 +#: ../java/src/org/klomp/snark/SnarkManager.java:1476 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:166 #, java-format msgid "Torrent with this info hash is already running: {0}" msgstr "Ya hay un torrent con esta información de hash (identificador criptográfico): {0}." -#: ../java/src/org/klomp/snark/SnarkManager.java:1224 +#: ../java/src/org/klomp/snark/SnarkManager.java:1253 #, java-format msgid "ERROR - No I2P trackers in private torrent \"{0}\"" msgstr "ERROR - No hay trackers I2P en el torrent privado \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:1226 +#: ../java/src/org/klomp/snark/SnarkManager.java:1255 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", will announce to I2P open trackers and" " DHT only." msgstr "Advertencia - No hay trackers (rastreadores) I2P en \"{0}\", sólo se anunciará a trackers abiertos I2P y a la DHT (tabla de hash distribuida)." -#: ../java/src/org/klomp/snark/SnarkManager.java:1229 +#: ../java/src/org/klomp/snark/SnarkManager.java:1258 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and open trackers are disabled, will " "announce to DHT only." msgstr "Advertencia - No hay trackers (rastreadores) I2P en \"{0}\", y los trackers abiertos están deshabilitados. Sólo se anunciará a la DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:1231 +#: ../java/src/org/klomp/snark/SnarkManager.java:1260 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and DHT and open trackers are " @@ -258,34 +266,46 @@ msgid "" "torrent." msgstr "Advertencia - No hay trackers (rastreadores) I2P en \"{0}\", y la DHT (tabla de hash distribuida) y los trackers abiertos están deshabilitados, debe habilitar los trackers abiertos o la DHT antes de iniciar el torrent." -#: ../java/src/org/klomp/snark/SnarkManager.java:1257 +#: ../java/src/org/klomp/snark/SnarkManager.java:1286 #, java-format msgid "Torrent in \"{0}\" is invalid" msgstr "El torrent en \"{0}\" no es válido." -#: ../java/src/org/klomp/snark/SnarkManager.java:1264 +#: ../java/src/org/klomp/snark/SnarkManager.java:1292 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1042 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1069 +#, java-format +msgid "Torrent file deleted: {0}" +msgstr "Fichero torrent borrado: {0}" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1295 +#, java-format +msgid "Torrent file moved from {0} to {1}" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1299 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:193 #, java-format msgid "ERROR - Out of memory, cannot create torrent from {0}" msgstr "ERROR - Sin memoria disponible, no se pudo crear un torrent a partir de {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1285 +#: ../java/src/org/klomp/snark/SnarkManager.java:1321 #, java-format -msgid "Torrent added and started: \"{0}\"" -msgstr "Torrent añadido e iniciado: \"{0}\"" +msgid "Torrent added and started: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1287 +#: ../java/src/org/klomp/snark/SnarkManager.java:1323 #, java-format -msgid "Torrent added: \"{0}\"" -msgstr "Torrent añadido: \"{0}\"" +msgid "Torrent added: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1363 +#: ../java/src/org/klomp/snark/SnarkManager.java:1399 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:93 #, java-format msgid "Fetching {0}" msgstr "Obteniendo {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1369 +#: ../java/src/org/klomp/snark/SnarkManager.java:1405 #, java-format msgid "" "Open trackers are disabled and we have no DHT peers. Fetch of {0} may not " @@ -293,131 +313,146 @@ msgid "" "DHT." msgstr "Los rastreadores abiertos están desactivados y no hay pares DHT. Es posible que no se puedan obtener para {0} hasta que no inicie otro torrent, active los rastreadores abiertos o active la DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:1373 +#: ../java/src/org/klomp/snark/SnarkManager.java:1409 #, java-format msgid "Adding {0}" msgstr "Añadiendo {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1406 +#: ../java/src/org/klomp/snark/SnarkManager.java:1442 #, java-format msgid "Download already running: {0}" msgstr "Descarga ya en marcha: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1451 -#: ../java/src/org/klomp/snark/SnarkManager.java:1477 -#: ../java/src/org/klomp/snark/SnarkManager.java:2052 +#: ../java/src/org/klomp/snark/SnarkManager.java:1487 +#: ../java/src/org/klomp/snark/SnarkManager.java:1513 +#: ../java/src/org/klomp/snark/SnarkManager.java:2151 #, java-format msgid "Failed to copy torrent file to {0}" msgstr "No se pudo copiar el fichero torrent a {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1828 +#: ../java/src/org/klomp/snark/SnarkManager.java:1927 #, java-format -msgid "Too many files in \"{0}\" ({1}), deleting it!" -msgstr "Hay demasiados ficheros en \"{0}\" ({1}), ¡borrándolos!" +msgid "Too many files in \"{0}\" ({1})!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1830 +#: ../java/src/org/klomp/snark/SnarkManager.java:1929 #, java-format -msgid "Torrent file \"{0}\" cannot end in \".torrent\", deleting it!" -msgstr "El fichero torrent \"{0}\" no puede terminar en \".torrent\". ¡borrándolo!" +msgid "Torrent file \"{0}\" cannot end in \".torrent\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1832 +#: ../java/src/org/klomp/snark/SnarkManager.java:1931 #, java-format -msgid "No pieces in \"{0}\", deleting it!" -msgstr "No hay partes en \"{0}\", ¡borrándolo!" +msgid "No pieces in \"{0}\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1834 +#: ../java/src/org/klomp/snark/SnarkManager.java:1933 #, java-format -msgid "Too many pieces in \"{0}\", limit is {1}, deleting it!" -msgstr "Hay demasiadas partes en \"{0}\", el lÃmite es {1}, ¡borrándolo!" +msgid "Too many pieces in \"{0}\", limit is {1}!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1836 +#: ../java/src/org/klomp/snark/SnarkManager.java:1935 #, java-format -msgid "Pieces are too large in \"{0}\" ({1}B), deleting it." -msgstr "Las partes en \"{0}\" ({1}Bytes) son demasiado grandes, ¡borrándolas!" +msgid "Pieces are too large in \"{0}\" ({1}B)!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1837 +#: ../java/src/org/klomp/snark/SnarkManager.java:1936 #, java-format msgid "Limit is {0}B" msgstr "El lÃmite es de \"{0}\"Bytes" -#: ../java/src/org/klomp/snark/SnarkManager.java:1839 +#: ../java/src/org/klomp/snark/SnarkManager.java:1938 #, java-format -msgid "Torrent \"{0}\" has no data, deleting it!" -msgstr "El torrent \"{0}\" no contiene datos, ¡borrándolo!" +msgid "Torrent \"{0}\" has no data!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1847 +#: ../java/src/org/klomp/snark/SnarkManager.java:1946 #, java-format -msgid "Torrents larger than {0}B are not supported yet, deleting \"{1}\"" -msgstr "Los torrents mayores de \"{0}\"Bytes aún no están soportados, borrando \"{1}\"" +msgid "Torrents larger than {0}B are not supported yet \"{1}\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1864 +#: ../java/src/org/klomp/snark/SnarkManager.java:1963 #, java-format msgid "Error: Could not remove the torrent {0}" msgstr "Error: No se pudo eliminar el torrent \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:1887 -#: ../java/src/org/klomp/snark/SnarkManager.java:1906 +#: ../java/src/org/klomp/snark/SnarkManager.java:1986 +#: ../java/src/org/klomp/snark/SnarkManager.java:2005 #, java-format -msgid "Torrent stopped: \"{0}\"" -msgstr "Torrent detenido: \"{0}\"" +msgid "Torrent stopped: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1926 +#: ../java/src/org/klomp/snark/SnarkManager.java:2025 #, java-format msgid "Torrent removed: \"{0}\"" msgstr "Torrent eliminado: \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:1934 +#: ../java/src/org/klomp/snark/SnarkManager.java:2033 #, java-format msgid "Adding torrents in {0}" msgstr "Añadiendo torrents en {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1966 +#: ../java/src/org/klomp/snark/SnarkManager.java:2067 #, java-format msgid "Up bandwidth limit is {0} KBps" msgstr "El limite de ancho de banda de subida es {0} KB/s" -#: ../java/src/org/klomp/snark/SnarkManager.java:1993 +#: ../java/src/org/klomp/snark/SnarkManager.java:2092 #, java-format msgid "Download finished: {0}" msgstr "Descarga finalizada: \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:2048 +#: ../java/src/org/klomp/snark/SnarkManager.java:2147 #, java-format msgid "Metainfo received for {0}" msgstr "Metainfo recibida para {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2049 -#: ../java/src/org/klomp/snark/SnarkManager.java:2280 +#: ../java/src/org/klomp/snark/SnarkManager.java:2148 +#: ../java/src/org/klomp/snark/SnarkManager.java:2431 #, java-format msgid "Starting up torrent {0}" msgstr "Iniciando el torrent {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2064 +#: ../java/src/org/klomp/snark/SnarkManager.java:2163 #, java-format msgid "Error on torrent {0}" msgstr "Error en el torrent {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2127 +#: ../java/src/org/klomp/snark/SnarkManager.java:2264 msgid "Unable to connect to I2P!" msgstr "¡No se pudo conectar con I2P!" -#: ../java/src/org/klomp/snark/SnarkManager.java:2279 +#: ../java/src/org/klomp/snark/SnarkManager.java:2430 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:130 msgid "Opening the I2P tunnel" msgstr "Abriendo el túnel I2P" -#: ../java/src/org/klomp/snark/SnarkManager.java:2303 +#: ../java/src/org/klomp/snark/SnarkManager.java:2450 msgid "Opening the I2P tunnel and starting all torrents." msgstr "Abriendo el túnel I2P e iniciando todos los torrents ..." -#: ../java/src/org/klomp/snark/SnarkManager.java:2366 +#: ../java/src/org/klomp/snark/SnarkManager.java:2513 msgid "Stopping all torrents and closing the I2P tunnel." msgstr "Deteniendo todos los torrents y cerrando el túnel I2P." -#: ../java/src/org/klomp/snark/SnarkManager.java:2385 +#: ../java/src/org/klomp/snark/SnarkManager.java:2532 msgid "Closing I2P tunnel after notifying trackers." msgstr "Cerrando túnel I2P después de avisar a los trackers" +#: ../java/src/org/klomp/snark/SnarkManager.java:2594 +#, java-format +msgid "Finished recheck of torrent {0}, now {1} complete" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2596 +#, java-format +msgid "Finished recheck of torrent {0}, unchanged" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2600 +#, java-format +msgid "Error checking the torrent {0}" +msgstr "" + #: ../java/src/org/klomp/snark/TrackerClient.java:245 #, java-format msgid "No valid trackers for {0} - enable opentrackers or DHT?" @@ -463,891 +498,913 @@ msgstr "Torrent ya en cola: {0}" msgid "Torrent at {0} was not valid" msgstr "El torrent en {0} no era válido" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:268 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:311 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:322 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1763 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2662 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:270 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:313 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:324 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1778 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2698 msgid "I2PSnark" msgstr "I2PSnark" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:273 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2149 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2422 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2165 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2446 msgid "Configuration" msgstr "Configuración" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:277 msgid "Anonymous BitTorrent Client" msgstr "Cliente BitTorrent anónimo" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:291 msgid "Router is down" msgstr "El router está caÃdo" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:306 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:308 msgid "Torrents" msgstr "Torrents" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:319 msgid "Refresh page" msgstr "Actualizar página" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:326 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:328 msgid "Forum" msgstr "Foro" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:341 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:343 msgid "Click \"Add torrent\" button to fetch torrent" msgstr "Haga clic en el botón \"Añadir torrent\" para obtener un torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:394 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:396 msgid "clear messages" msgstr "eliminar mensajes" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:449 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2980 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3072 msgid "Status" msgstr "Estado" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2994 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:453 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3086 #, java-format msgid "Sort by {0}" msgstr "Ordenado por {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:462 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:464 msgid "Hide Peers" msgstr "Ocultar pares ('peers')" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:468 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:470 msgid "Show Peers" msgstr "Mostrar pares ('peers')" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:491 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2648 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2718 msgid "Torrent" msgstr "Torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "File type" msgstr "Tipo de fichero" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:509 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 msgid "ETA" msgstr "Llegada" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:512 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:514 msgid "Estimated time remaining" msgstr "Tiempo restante estimado" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:535 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 msgid "RX" msgstr "Receptor" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:538 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:540 msgid "Downloaded" msgstr "Descargado" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2818 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2968 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2878 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3060 msgid "Size" msgstr "Tamaño" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 msgid "TX" msgstr "Transmisor" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2896 msgid "Upload ratio" msgstr "Tasa de subida" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:569 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:571 msgid "Uploaded" msgstr "Subido" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:581 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 msgid "RX Rate" msgstr "Tasa de descarga" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:584 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:586 msgid "Down Rate" msgstr "Tasa de descarga" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:596 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 msgid "TX Rate" msgstr "Tasa de subida" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:599 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:601 msgid "Up Rate" msgstr "Tasa de subida" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:615 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 msgid "Stop all torrents and the I2P tunnel" msgstr "Detener todos los torrents y el túnel I2P" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:619 msgid "Stop All" msgstr "Detener todos" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:629 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 msgid "Start all stopped torrents" msgstr "Iniciar todos los torrents parados" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:633 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:647 msgid "Start All" msgstr "Iniciar todos" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:643 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 msgid "Start all torrents and the I2P tunnel" msgstr "Iniciar todos los torrents y el túnel I2P" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:668 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:670 msgid "No torrents loaded." msgstr "No hay torrents cargados." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:674 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 msgid "Totals" msgstr "Totales" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:678 #, java-format msgid "1 torrent" msgid_plural "{0} torrents" msgstr[0] "1 torrent" msgstr[1] "{0} torrents" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:683 #, java-format msgid "1 connected peer" msgid_plural "{0} connected peers" msgstr[0] "1 par conectado" msgstr[1] "{0} pares conectados" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:688 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:690 #, java-format msgid "1 DHT peer" msgid_plural "{0} DHT peers" msgstr[0] "1 par DHT" msgstr[1] "{0} pares DHT" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:695 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:697 msgid "Dest" msgstr "Dest" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First" msgstr "Primera" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First page" msgstr "Primera página" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Prev" msgstr "Anterior" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Previous page" msgstr "Página anterior" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next" msgstr "Siguiente" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next page" msgstr "Página siguiente" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last" msgstr "Última" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last page" msgstr "Última página" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:960 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:962 msgid "Data directory cannot be created" msgstr "No se pudo crear el directorio de datos" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1176 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:972 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1185 #, java-format msgid "Cannot add torrent {0} inside another torrent: {1}" msgstr "No puede añadir un torrent {0} dentro de otro torrent: {1}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:985 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:993 #, java-format msgid "Invalid URL: Must start with \"http://\", \"{0}\", or \"{1}\"" msgstr "URL no válida: debe comenzar con \"http://\", \"{0}\", o \"{1}\"." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1026 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1063 #, java-format msgid "Magnet deleted: {0}" msgstr "Magnet borrado: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1061 #, java-format -msgid "Torrent file deleted: {0}" -msgstr "Fichero torrent borrado: {0}" - -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1053 -#, java-format msgid "Download deleted: {0}" msgstr "Descarga borrada: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1070 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1078 #, java-format msgid "Data file deleted: {0}" msgstr "Fichero de datos borrado: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1072 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1089 #, java-format msgid "Data file could not be deleted: {0}" msgstr "No se pudo borrar el fichero de datos: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1097 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1105 #, java-format msgid "Directory could not be deleted: {0}" msgstr "No se pudo borrar la carpeta {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1112 #, java-format msgid "Directory deleted: {0}" msgstr "Carpeta borrada: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1155 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1164 #, java-format msgid "Cannot add a torrent ending in \".torrent\": {0}" msgstr "No se pudo añadir un torrent que acaba en \".torrent\": {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1160 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1169 #, java-format msgid "Torrent with this name is already running: {0}" msgstr "Un torrent con este nombre ya está intercambiandose: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1175 #, java-format msgid "Cannot add a torrent including an I2P directory: {0}" msgstr "No puede añadir un torrent que incluye un directorio I2P: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1181 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1190 #, java-format msgid "Cannot add torrent {0} including another torrent: {1}" msgstr "No puede añadir un torrent {0} que incluye otro torrent: {1}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1216 msgid "Error - Cannot include alternate trackers without a primary tracker" msgstr "Error - No se pueden incluir trackers alternativos sin un tracker principal" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1220 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1229 msgid "Error - Cannot mix private and public trackers in a torrent" msgstr "Error - No se pueden mezclar trackers privados y públicos en un torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1251 #, java-format msgid "Torrent created for \"{0}\"" msgstr "Torrent creado para \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1244 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 #, java-format msgid "" "Many I2P trackers require you to register new torrents before seeding - " "please do so before starting \"{0}\"" msgstr "Muchos trackers (rastreadores) I2P requieren que registre los nuevos torrents antes del seeding (sembrado) - por favor hágalo antes de iniciar \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1255 #, java-format msgid "Error creating a torrent for \"{0}\"" msgstr "Error al crear un torrent para \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1250 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1259 #, java-format msgid "Cannot create a torrent for the nonexistent data: {0}" msgstr "No se pudo crear un torrent para los datos inexistentes: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1262 msgid "Error creating torrent - you must enter a file or directory" msgstr "Error al crear torrent - ha de introducir un fichero o carpeta" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2406 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2430 msgid "Delete selected" msgstr "Borrar seleccionados" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2408 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2432 msgid "Save tracker configuration" msgstr "Guardar configuración de tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1301 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1310 msgid "Removed" msgstr "Eliminado" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1333 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2405 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2407 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1342 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2429 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2431 msgid "Add tracker" msgstr "Añadir tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1356 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1359 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1365 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1368 msgid "Enter valid tracker name and URLs" msgstr "Introduzca nombre y URLs de tracker (rastreador) válidos" #. "<input type=\"reset\" class=\"cancel\" #. value=\"").append(_t("Cancel")).append("\">\n" + -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1361 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2410 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1370 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2434 msgid "Restore defaults" msgstr "Restaurar predeterminados" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1373 msgid "Restored default trackers" msgstr "Trackers (rastreadores) predeterminados restaurados" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1472 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1473 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1485 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1486 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2949 msgid "Checking" msgstr "Comprobando" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1475 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1476 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1489 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2956 msgid "Allocating" msgstr "Asignando" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1499 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1505 msgid "Tracker Error" msgstr "Error del tracker (rastreador)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1492 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1522 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1527 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1538 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1543 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1554 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1507 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1537 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1542 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1553 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1558 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1569 #, java-format msgid "1 peer" msgid_plural "{0} peers" msgstr[0] "1 par" msgstr[1] "{0} pares" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1502 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1503 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1517 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1518 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2954 msgid "Starting" msgstr "Iniciando" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1511 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1526 msgid "Seeding" msgstr "Sembrando" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1515 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1529 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1530 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2831 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1544 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2891 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3139 msgid "Complete" msgstr "Completo" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1534 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1535 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1540 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1541 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1550 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1555 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 msgid "OK" msgstr "Bien" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1546 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1551 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1552 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1567 msgid "Stalled" msgstr "Estancado" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1557 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1571 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1572 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1575 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1576 msgid "No Peers" msgstr "Sin pares" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1563 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1578 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1579 msgid "Stopped" msgstr "Detenido" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1593 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1608 msgid "Torrent details" msgstr "Detalles del torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1628 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1643 msgid "View files" msgstr "Ver ficheros" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1630 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1645 msgid "Open file" msgstr "Abrir fichero" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1682 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 msgid "Stop the torrent" msgstr "Detener el torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2961 msgid "Stop" msgstr "Detener" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 msgid "Start the torrent" msgstr "Iniciar el torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1714 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2963 msgid "Start" msgstr "Iniciar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1727 msgid "Remove the torrent from the active list, deleting the .torrent file" msgstr "Eliminar el torrent de la lista de torrents activos, borrando el fichero .torrent" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1717 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1732 #, java-format msgid "" "Are you sure you want to delete the file \\''{0}\\'' (downloaded data will " "not be deleted) ?" msgstr "¿Está seguro de que quiere borrar el fichero \\''{0}\\'' (los datos descargados no serán borrados)?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1721 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1736 msgid "Remove" msgstr "Eliminar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1734 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1749 msgid "Delete the .torrent file and the associated data file(s)" msgstr "Borrar el fichero .torrent y el(los) ficheros(s) de datos asociado(s)" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1739 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1754 #, java-format msgid "" "Are you sure you want to delete the torrent \\''{0}\\'' and all downloaded " "data?" msgstr "¿Está seguro de que quiere borrar el torrent \\''{0}\\'' y todos los datos descargados correspondientes?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1743 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1758 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2388 msgid "Delete" msgstr "Borrar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1779 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1794 msgid "Unknown" msgstr "Desconocido" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1791 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1806 msgid "Seed" msgstr "Semilla (seed)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1814 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1829 msgid "Uninteresting (The peer has no pieces we need)" msgstr "Sin interés (el par no tiene las partes que necesitamos)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1816 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1831 msgid "Choked (The peer is not allowing us to request pieces)" msgstr "Restringido (el par no nos está permitiendo solicitar partes)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1851 msgid "Uninterested (We have no pieces the peer needs)" msgstr "No interesado (no tenemos las partes que el par precisa)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1838 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1853 msgid "Choking (We are not allowing the peer to request pieces)" msgstr "Restringiendo (no estamos permitiendo al par solicitar partes)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1954 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1969 #, java-format msgid "Details at {0} tracker" msgstr "Detalles en el tracker (rastreador) {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1971 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1986 msgid "Info" msgstr "Información" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 msgid "Add Torrent" msgstr "Añadir torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 msgid "From URL" msgstr "Desde la URL" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2050 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2065 msgid "" "Enter the torrent file download URL (I2P only), magnet link, maggot link, or" " info hash" msgstr "Introduzca URL de descarga del fichero torrent (sólo I2P), enlace magnet, enlace maggot, o información de hash" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2070 msgid "Add torrent" msgstr "Añadir torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2074 msgid "Data dir" msgstr "Dir de datos" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2077 #, java-format msgid "Enter the directory to save the data in (default {0})" msgstr "Introduzca el directorio en el que guardar los datos (por defecto {0})" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2066 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 #, java-format msgid "You can also copy .torrent files to: {0}." msgstr "También puede copiar ficheros .torrent a: {0}." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2068 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2083 msgid "Removing a .torrent will cause it to stop." msgstr "Eliminar un fichero .torrent provocará que se detengan sus transferencias." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2096 msgid "Create Torrent" msgstr "Crear un torrent" #. out.write("From file: <input type=\"file\" name=\"newFile\" size=\"50\" #. value=\"" + newFile + "\" /><br>\n"); -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2084 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2099 msgid "Data to seed" msgstr "Datos a sembrar ('seed')" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2088 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2103 #, java-format msgid "File or directory to seed (full path or within the directory {0} )" msgstr "Fichero o directorio a sembrar (seed) (ruta completa o dentro del directorio {0} ) " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2091 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2337 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2106 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2361 msgid "Trackers" msgstr "Trackers" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2093 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2108 msgid "Primary" msgstr "Principal" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2095 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2110 msgid "Alternates" msgstr "Alternativos" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2098 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2113 msgid "Create torrent" msgstr "Crear torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2116 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2131 msgid "none" msgstr "ninguno" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2153 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2169 msgid "Data directory" msgstr "Carpeta de datos" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2158 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 msgid "Files readable by all" msgstr "Ficheros legibles por todos" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2162 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2178 msgid "If checked, other users may access the downloaded files" msgstr "Si está marcada, otros usuarios pueden acceder a los ficheros descargados" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2182 msgid "Auto start torrents" msgstr "Auto iniciar torrents" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2170 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2186 msgid "If checked, automatically start torrents that are added" msgstr "Si está marcado, iniciará automáticamente los torrents se añadan" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2190 +msgid "Smart torrent sorting" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2194 +msgid "If checked, ignore words such as 'the' when sorting" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2198 msgid "Theme" msgstr "Tema" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2188 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2212 msgid "Refresh time" msgstr "Hora de actualización" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2201 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2225 msgid "Never" msgstr "Nunca" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2231 msgid "Startup delay" msgstr "Retardo al arrancar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2209 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2233 msgid "minutes" msgstr "minutos" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2213 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2237 msgid "Page size" msgstr "Tamaño de página" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2215 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 msgid "torrents" msgstr "torrents" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 msgid "Total uploader limit" msgstr "LÃmite total de usuarios subiendo" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2266 msgid "peers" msgstr "pares" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2270 msgid "Up bandwidth limit" msgstr "LÃmite de velocidad de subida" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2249 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2273 msgid "Half available bandwidth recommended." msgstr "Se recomienda la mitad del ancho de banda disponible." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2251 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2275 msgid "View or change router bandwidth" msgstr "Mostrar o cambiar ancho de banda del router (enrutador)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2255 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2279 msgid "Use open trackers also" msgstr "Usar también trackers (rastreadores) abiertos" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2259 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 msgid "" "If checked, announce torrents to open trackers as well as the tracker listed" " in the torrent file" msgstr "Si está marcado, anuncia los torrents a los trackers (rastreadores) abiertos asà como a los listados en el fichero torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2287 msgid "Enable DHT" msgstr "Habilitar DHT" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2267 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2291 msgid "If checked, use DHT" msgstr "Si está marcada, usar DHT" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2307 msgid "Inbound Settings" msgstr "Preferencias de entrada" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2313 msgid "Outbound Settings" msgstr "Preferencias de salida" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2297 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2321 msgid "I2CP host" msgstr "Anfitrión I2CP" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2302 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2326 msgid "I2CP port" msgstr "Puerto I2CP" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2341 msgid "I2CP options" msgstr "Opciones de I2CP" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2322 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 msgid "Save configuration" msgstr "Guardar configuración" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2342 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2366 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "Name" msgstr "Nombre" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2344 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2368 msgid "Website URL" msgstr "URL del sitio web" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2370 msgid "Standard" msgstr "Estándar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2348 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2372 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3172 msgid "Open" msgstr "Abrir" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2350 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2374 msgid "Private" msgstr "Privado" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2352 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2376 msgid "Announce URL" msgstr "URL de anunciamientos" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2396 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2420 msgid "Add" msgstr "Añadir" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2439 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2463 #, java-format msgid "Invalid magnet URL {0}" msgstr "URL de magnet no válida: {0}" #. * dummies for translation -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2447 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2471 #, java-format msgid "1 hop" msgid_plural "{0} hops" msgstr[0] "1 salto" msgstr[1] "{0} saltos" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2448 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2472 #, java-format msgid "1 tunnel" msgid_plural "{0} tunnels" msgstr[0] "1 túnel" msgstr[1] "{0} túneles" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2691 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2728 msgid "Torrent file" msgstr "Fichero torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 msgid "Data location" msgstr "Ubicación de los datos" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2708 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2745 msgid "Info hash" msgstr "Información de hash" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2727 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2764 msgid "Primary Tracker" msgstr "Tracker principal" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2773 msgid "Tracker List" msgstr "Lista de trackers" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2761 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2798 msgid "Comment" msgstr "Comentario" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2771 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2812 msgid "Created" msgstr "Creado en" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2782 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2823 msgid "Created By" msgstr "Creado por" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2794 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2833 +msgid "Added" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2842 +msgid "Completed" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2854 msgid "Magnet link" msgstr "Enlace de magnet" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2807 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2867 msgid "Private torrent" msgstr "Torrent privado" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2827 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2887 msgid "Completion" msgstr "Finalización" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2856 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2916 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 msgid "Remaining" msgstr "Restante" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2926 msgid "Files" msgstr "Ficheros" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2873 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 msgid "Pieces" msgstr "Partes" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2879 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2939 msgid "Piece size" msgstr "Tamaño de las partes" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2952 +msgid "Refresh page for results" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2964 +msgid "Force Recheck" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3025 msgid "Directory" msgstr "Carpeta" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2992 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3084 msgid "Priority" msgstr "Prioridad" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3004 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3096 msgid "Up to higher level directory" msgstr "Subir a la carpeta del siguiente nivel" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3038 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3130 msgid "Torrent not found?" msgstr "¿No se encotró el fichero torrent?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3136 msgid "File not found in torrent?" msgstr "¿No se encontró el fichero en el torrent?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3057 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3149 msgid "complete" msgstr "completo" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3058 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3150 msgid "remaining" msgstr "restante" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3196 msgid "High" msgstr "Alta" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3109 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3201 msgid "Normal" msgstr "Normal" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3114 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3206 msgid "Skip" msgstr "Saltar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3124 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3216 msgid "Set all high" msgstr "Configurar todos a alto " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3126 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3218 msgid "Set all normal" msgstr "Configurar todos a normal" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3128 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3220 msgid "Skip all" msgstr "Omitir todos" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3129 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3221 msgid "Save priorities" msgstr "Guardar prioridades" diff --git a/apps/i2psnark/locale/messages_fr.po b/apps/i2psnark/locale/messages_fr.po index c8987da9ad591b819e7cb9682483a2c0d49af191..9b64f87fa646006e75c45e48d0c393d955b88b31 100644 --- a/apps/i2psnark/locale/messages_fr.po +++ b/apps/i2psnark/locale/messages_fr.po @@ -17,10 +17,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:09+0000\n" -"PO-Revision-Date: 2015-07-22 09:07+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-05 17:50+0000\n" "Last-Translator: Towinet\n" -"Language-Team: French (http://www.transifex.com/projects/p/I2P/language/fr/)\n" +"Language-Team: French (http://www.transifex.com/otf/I2P/language/fr/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -32,222 +32,230 @@ msgid "No more torrents running." msgstr "Il n'y a plus de torrents en fonctionnement." #: ../java/src/org/klomp/snark/IdleChecker.java:76 -#: ../java/src/org/klomp/snark/SnarkManager.java:2392 -#: ../java/src/org/klomp/snark/SnarkManager.java:2403 +#: ../java/src/org/klomp/snark/SnarkManager.java:2539 +#: ../java/src/org/klomp/snark/SnarkManager.java:2550 msgid "I2P tunnel closed." msgstr "Tunnel I2P fermé." #: ../java/src/org/klomp/snark/MagnetURI.java:42 #: ../java/src/org/klomp/snark/MagnetURI.java:52 -#: ../java/src/org/klomp/snark/SnarkManager.java:2096 +#: ../java/src/org/klomp/snark/SnarkManager.java:2221 msgid "Magnet" msgstr "Magnet" -#: ../java/src/org/klomp/snark/SnarkManager.java:772 +#: ../java/src/org/klomp/snark/SnarkManager.java:791 #, java-format msgid "Total uploaders limit changed to {0}" msgstr "Limite totale uploaders modifiée à : {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:774 +#: ../java/src/org/klomp/snark/SnarkManager.java:793 #, java-format msgid "Minimum total uploaders limit is {0}" msgstr "La limite de nombre minimal d''uploaders est {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:786 +#: ../java/src/org/klomp/snark/SnarkManager.java:805 #, java-format msgid "Up BW limit changed to {0}KBps" msgstr "Limite d’envoi modifiée à : {0} ko/s" -#: ../java/src/org/klomp/snark/SnarkManager.java:788 +#: ../java/src/org/klomp/snark/SnarkManager.java:807 #, java-format msgid "Minimum up bandwidth limit is {0}KBps" msgstr "La limite minimale d’envoi est {0} ko/s" -#: ../java/src/org/klomp/snark/SnarkManager.java:800 +#: ../java/src/org/klomp/snark/SnarkManager.java:819 #, java-format msgid "Startup delay changed to {0}" msgstr "Délai de démarrage modifié à {0} minutes" -#: ../java/src/org/klomp/snark/SnarkManager.java:811 +#: ../java/src/org/klomp/snark/SnarkManager.java:830 #, java-format msgid "Refresh time changed to {0}" msgstr "Temps de rafraîchissement changé pour {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:813 +#: ../java/src/org/klomp/snark/SnarkManager.java:832 msgid "Refresh disabled" msgstr "Rafraîchissement désactivé" -#: ../java/src/org/klomp/snark/SnarkManager.java:829 +#: ../java/src/org/klomp/snark/SnarkManager.java:848 #, java-format msgid "Page size changed to {0}" msgstr "Taille de la page changée pour {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:838 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:956 +#: ../java/src/org/klomp/snark/SnarkManager.java:857 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:958 msgid "Data directory must be an absolute path" msgstr "Répertoire des données doit être un chemin absolu" -#: ../java/src/org/klomp/snark/SnarkManager.java:840 +#: ../java/src/org/klomp/snark/SnarkManager.java:859 msgid "Data directory does not exist" msgstr "Répertoire de données n'existe pas" -#: ../java/src/org/klomp/snark/SnarkManager.java:842 +#: ../java/src/org/klomp/snark/SnarkManager.java:861 msgid "Not a directory" msgstr "Pas un répertoire" -#: ../java/src/org/klomp/snark/SnarkManager.java:844 +#: ../java/src/org/klomp/snark/SnarkManager.java:863 msgid "Unreadable" msgstr "Illisible" -#: ../java/src/org/klomp/snark/SnarkManager.java:849 +#: ../java/src/org/klomp/snark/SnarkManager.java:868 #, java-format msgid "Data directory changed to {0}" msgstr "Répertoire des données changé pour {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:904 +#: ../java/src/org/klomp/snark/SnarkManager.java:923 msgid "I2CP and tunnel changes will take effect after stopping all torrents" msgstr "Les modifications sur I2CP et les tunnels seront pris en compte après avoir arrêté tous les torrents" -#: ../java/src/org/klomp/snark/SnarkManager.java:908 +#: ../java/src/org/klomp/snark/SnarkManager.java:927 #, java-format msgid "I2CP options changed to {0}" msgstr "Options I2CP changées pour {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:914 +#: ../java/src/org/klomp/snark/SnarkManager.java:933 msgid "Disconnecting old I2CP destination" msgstr "Déconnexion des anciennes destination I2CP" -#: ../java/src/org/klomp/snark/SnarkManager.java:916 +#: ../java/src/org/klomp/snark/SnarkManager.java:935 #, java-format msgid "I2CP settings changed to {0}" msgstr "Les paramètres I2CP ont été changés à {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:921 +#: ../java/src/org/klomp/snark/SnarkManager.java:940 msgid "" "Unable to connect with the new settings, reverting to the old I2CP settings" msgstr "Impossible de se connecter avec les nouveaux paramètres, retour à l'ancienne configuration I2CP" -#: ../java/src/org/klomp/snark/SnarkManager.java:925 +#: ../java/src/org/klomp/snark/SnarkManager.java:944 msgid "Unable to reconnect with the old settings!" msgstr "Impossible de se reconnecter avec les anciens paramètres!" -#: ../java/src/org/klomp/snark/SnarkManager.java:927 +#: ../java/src/org/klomp/snark/SnarkManager.java:946 msgid "Reconnected on the new I2CP destination" msgstr "Reconnexion sur la nouvelle destination I2CP" -#: ../java/src/org/klomp/snark/SnarkManager.java:934 +#: ../java/src/org/klomp/snark/SnarkManager.java:953 #, java-format msgid "I2CP listener restarted for \"{0}\"" msgstr "Écouteur I2CP redémarré pour \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:948 +#: ../java/src/org/klomp/snark/SnarkManager.java:967 msgid "New files will be publicly readable" msgstr "Les nouveaux fichiers seront publiquement lisibles" -#: ../java/src/org/klomp/snark/SnarkManager.java:950 +#: ../java/src/org/klomp/snark/SnarkManager.java:969 msgid "New files will not be publicly readable" msgstr "Les nouveaux fichiers ne seront pas publiquement lisibles" -#: ../java/src/org/klomp/snark/SnarkManager.java:957 +#: ../java/src/org/klomp/snark/SnarkManager.java:976 msgid "Enabled autostart" msgstr "Démarrage automatique activé" -#: ../java/src/org/klomp/snark/SnarkManager.java:959 +#: ../java/src/org/klomp/snark/SnarkManager.java:978 msgid "Disabled autostart" msgstr "Démarrage automatique désactivé" -#: ../java/src/org/klomp/snark/SnarkManager.java:965 +#: ../java/src/org/klomp/snark/SnarkManager.java:985 +msgid "Enabled smart sort" +msgstr "Tri intelligent permis" + +#: ../java/src/org/klomp/snark/SnarkManager.java:987 +msgid "Disabled smart sort" +msgstr "Tri intelligent non-permis" + +#: ../java/src/org/klomp/snark/SnarkManager.java:994 msgid "Enabled open trackers - torrent restart required to take effect." msgstr "Trackers ouverts activés - redémarrage des torrents requis pour prise en compte." -#: ../java/src/org/klomp/snark/SnarkManager.java:967 +#: ../java/src/org/klomp/snark/SnarkManager.java:996 msgid "Disabled open trackers - torrent restart required to take effect." msgstr "Trackers ouverts désactivés - redémarrage des torrents requis pour prise en compte." -#: ../java/src/org/klomp/snark/SnarkManager.java:974 +#: ../java/src/org/klomp/snark/SnarkManager.java:1003 msgid "Enabled DHT." msgstr "DHT activée." -#: ../java/src/org/klomp/snark/SnarkManager.java:976 +#: ../java/src/org/klomp/snark/SnarkManager.java:1005 msgid "Disabled DHT." msgstr "DHT désactivée." -#: ../java/src/org/klomp/snark/SnarkManager.java:978 +#: ../java/src/org/klomp/snark/SnarkManager.java:1007 msgid "DHT change requires tunnel shutdown and reopen" msgstr "Le changement DHT nécessite la fermeture puis réouverture du tunnel" -#: ../java/src/org/klomp/snark/SnarkManager.java:985 +#: ../java/src/org/klomp/snark/SnarkManager.java:1014 #, java-format msgid "{0} theme loaded, return to main i2psnark page to view." msgstr "Thème {0} chargé, revenez à la page d''accueil d''i2psnark pour voir comme il est beau !" -#: ../java/src/org/klomp/snark/SnarkManager.java:995 +#: ../java/src/org/klomp/snark/SnarkManager.java:1024 msgid "Configuration unchanged." msgstr "Aucun changement de configuration." -#: ../java/src/org/klomp/snark/SnarkManager.java:1027 +#: ../java/src/org/klomp/snark/SnarkManager.java:1056 msgid "Open Tracker list changed - torrent restart required to take effect." msgstr "Liste des trackers ouverts modifiée - redémarrage des torrents requis pour prise en compte" -#: ../java/src/org/klomp/snark/SnarkManager.java:1037 +#: ../java/src/org/klomp/snark/SnarkManager.java:1066 msgid "Private tracker list changed - affects newly created torrents only." msgstr "Liste tracker privé modifiée - affecte seulement les torrents nouvellement créés." -#: ../java/src/org/klomp/snark/SnarkManager.java:1083 +#: ../java/src/org/klomp/snark/SnarkManager.java:1112 #, java-format msgid "Unable to save the config to {0}" msgstr "Impossible de sauvegarder la configuration vers {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1164 +#: ../java/src/org/klomp/snark/SnarkManager.java:1193 msgid "Connecting to I2P" msgstr "Connexion à I2P" -#: ../java/src/org/klomp/snark/SnarkManager.java:1167 +#: ../java/src/org/klomp/snark/SnarkManager.java:1196 msgid "Error connecting to I2P - check your I2CP settings!" msgstr "Erreur de connexion à I2P - Vérifiez vos paramètres I2CP!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1176 -#: ../java/src/org/klomp/snark/SnarkManager.java:2133 +#: ../java/src/org/klomp/snark/SnarkManager.java:1205 +#: ../java/src/org/klomp/snark/SnarkManager.java:2270 #, java-format msgid "Error: Could not add the torrent {0}" msgstr "Erreur : Impossible d’ajouter le torrent : {0}" #. catch this here so we don't try do delete it below -#: ../java/src/org/klomp/snark/SnarkManager.java:1199 +#: ../java/src/org/klomp/snark/SnarkManager.java:1228 #, java-format msgid "Cannot open \"{0}\"" msgstr "Impossible d’ouvrir: \"{0}\"" #. TODO - if the existing one is a magnet, delete it and add the metainfo #. instead? -#: ../java/src/org/klomp/snark/SnarkManager.java:1218 -#: ../java/src/org/klomp/snark/SnarkManager.java:1352 -#: ../java/src/org/klomp/snark/SnarkManager.java:1440 +#: ../java/src/org/klomp/snark/SnarkManager.java:1247 +#: ../java/src/org/klomp/snark/SnarkManager.java:1388 +#: ../java/src/org/klomp/snark/SnarkManager.java:1476 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:166 #, java-format msgid "Torrent with this info hash is already running: {0}" msgstr "Un torrent avec cette empreinte est déjà actif: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1224 +#: ../java/src/org/klomp/snark/SnarkManager.java:1253 #, java-format msgid "ERROR - No I2P trackers in private torrent \"{0}\"" msgstr "ERREUR - Pas de trackers I2P dans le torrent privé \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:1226 +#: ../java/src/org/klomp/snark/SnarkManager.java:1255 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", will announce to I2P open trackers and" " DHT only." msgstr "Avertissement - Pas de trackers I2P dans \"{0}\", vais annoncer aux trackers I2P ouverts et DHT seulement." -#: ../java/src/org/klomp/snark/SnarkManager.java:1229 +#: ../java/src/org/klomp/snark/SnarkManager.java:1258 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and open trackers are disabled, will " "announce to DHT only." msgstr "Avertissement - Pas de trackers I2P dans \"{0}\", et les trackers ouverts sont désactivés, vais annoncer à DHT seulement." -#: ../java/src/org/klomp/snark/SnarkManager.java:1231 +#: ../java/src/org/klomp/snark/SnarkManager.java:1260 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and DHT and open trackers are " @@ -255,34 +263,46 @@ msgid "" "torrent." msgstr "Avertissement - Pas de trackers I2P dans \"{0}\", et DHT et les trackers ouverts sont désactivés, vous devriez activer les trackers ouverts ou DHT avant de démarrer le torrent." -#: ../java/src/org/klomp/snark/SnarkManager.java:1257 +#: ../java/src/org/klomp/snark/SnarkManager.java:1286 #, java-format msgid "Torrent in \"{0}\" is invalid" msgstr "Le torrent dans \"{0}\" est invalide" -#: ../java/src/org/klomp/snark/SnarkManager.java:1264 +#: ../java/src/org/klomp/snark/SnarkManager.java:1292 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1042 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1069 +#, java-format +msgid "Torrent file deleted: {0}" +msgstr "Fichier torrent effacé: {0}" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1295 +#, java-format +msgid "Torrent file moved from {0} to {1}" +msgstr "Fichier torrent déplacé depuis {0} vers {1}" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1299 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:193 #, java-format msgid "ERROR - Out of memory, cannot create torrent from {0}" msgstr "ERREUR - Mémoire insuffisante, impossible de créer le torrent depuis {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1285 +#: ../java/src/org/klomp/snark/SnarkManager.java:1321 #, java-format -msgid "Torrent added and started: \"{0}\"" -msgstr "Torrent ajouté et démarré: \"{0}\"" +msgid "Torrent added and started: {0}" +msgstr "Torrent ajouté et démarré : {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1287 +#: ../java/src/org/klomp/snark/SnarkManager.java:1323 #, java-format -msgid "Torrent added: \"{0}\"" -msgstr "Torrent ajouté: \"{0}\"" +msgid "Torrent added: {0}" +msgstr "Torrent ajouté : {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1363 +#: ../java/src/org/klomp/snark/SnarkManager.java:1399 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:93 #, java-format msgid "Fetching {0}" msgstr "Envoi {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1369 +#: ../java/src/org/klomp/snark/SnarkManager.java:1405 #, java-format msgid "" "Open trackers are disabled and we have no DHT peers. Fetch of {0} may not " @@ -290,131 +310,146 @@ msgid "" "DHT." msgstr "Les trackers ouverts sont désactivés et nous n''avons pas de pairs DHT. La recherche de {0} pourrait ne pas réussir jusqu''à ce que vous démarriez un autre torrent, activiez trackers ouverts, ou activeiz DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:1373 +#: ../java/src/org/klomp/snark/SnarkManager.java:1409 #, java-format msgid "Adding {0}" msgstr "Ajout {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1406 +#: ../java/src/org/klomp/snark/SnarkManager.java:1442 #, java-format msgid "Download already running: {0}" msgstr "Téléchargements déjà en cours: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1451 -#: ../java/src/org/klomp/snark/SnarkManager.java:1477 -#: ../java/src/org/klomp/snark/SnarkManager.java:2052 +#: ../java/src/org/klomp/snark/SnarkManager.java:1487 +#: ../java/src/org/klomp/snark/SnarkManager.java:1513 +#: ../java/src/org/klomp/snark/SnarkManager.java:2151 #, java-format msgid "Failed to copy torrent file to {0}" msgstr "Impossible de copier le torrent vers {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1828 +#: ../java/src/org/klomp/snark/SnarkManager.java:1927 #, java-format -msgid "Too many files in \"{0}\" ({1}), deleting it!" -msgstr "Trop de fichiers dans \"{0}\" ({1}), suppression! " +msgid "Too many files in \"{0}\" ({1})!" +msgstr "Trop de fichiers dans \"{0}\" ({1}) !" -#: ../java/src/org/klomp/snark/SnarkManager.java:1830 +#: ../java/src/org/klomp/snark/SnarkManager.java:1929 #, java-format -msgid "Torrent file \"{0}\" cannot end in \".torrent\", deleting it!" -msgstr "Le fichier torrent \"{0}\" ne peut pas se terminer par \".torrent\", suppression!" +msgid "Torrent file \"{0}\" cannot end in \".torrent\"!" +msgstr "Le fichier torrent \"{0}\" peut pas finir en \".torrent\" !" -#: ../java/src/org/klomp/snark/SnarkManager.java:1832 +#: ../java/src/org/klomp/snark/SnarkManager.java:1931 #, java-format -msgid "No pieces in \"{0}\", deleting it!" -msgstr "Pas de tronçon dans \"{0}\", suppression!" +msgid "No pieces in \"{0}\"!" +msgstr "Pas de tronçons dans \"{0}\" !" -#: ../java/src/org/klomp/snark/SnarkManager.java:1834 +#: ../java/src/org/klomp/snark/SnarkManager.java:1933 #, java-format -msgid "Too many pieces in \"{0}\", limit is {1}, deleting it!" -msgstr "Trop de tronçons dans \"{0}\" , la limite est {1}, suppression!" +msgid "Too many pieces in \"{0}\", limit is {1}!" +msgstr "Trop de tronçons dans \"{0}\", la limite est de {1} !" -#: ../java/src/org/klomp/snark/SnarkManager.java:1836 +#: ../java/src/org/klomp/snark/SnarkManager.java:1935 #, java-format -msgid "Pieces are too large in \"{0}\" ({1}B), deleting it." -msgstr "Les tronçons sont trop larges dans \"{0}\" ({1}B), suppression." +msgid "Pieces are too large in \"{0}\" ({1}B)!" +msgstr "Les tronçons sont trop grands dans \"{0}\" ({1}B) !" -#: ../java/src/org/klomp/snark/SnarkManager.java:1837 +#: ../java/src/org/klomp/snark/SnarkManager.java:1936 #, java-format msgid "Limit is {0}B" msgstr "La limite est de \"{0}\"octets" -#: ../java/src/org/klomp/snark/SnarkManager.java:1839 +#: ../java/src/org/klomp/snark/SnarkManager.java:1938 #, java-format -msgid "Torrent \"{0}\" has no data, deleting it!" -msgstr "Le fichier torrent \"{0}\" n'a pas de données, suppression!" +msgid "Torrent \"{0}\" has no data!" +msgstr "Le torrent \"{0}\" n'a pas de donnée !" -#: ../java/src/org/klomp/snark/SnarkManager.java:1847 +#: ../java/src/org/klomp/snark/SnarkManager.java:1946 #, java-format -msgid "Torrents larger than {0}B are not supported yet, deleting \"{1}\"" -msgstr "Les torrents dont la taille est supérieure à \"{0}\"octets ne sont pas encore supportés, suppression \"{1}\"." +msgid "Torrents larger than {0}B are not supported yet \"{1}\"!" +msgstr "Les torrents plus grands que {0}B ne sont pas encore supportés \"{1}\" !" -#: ../java/src/org/klomp/snark/SnarkManager.java:1864 +#: ../java/src/org/klomp/snark/SnarkManager.java:1963 #, java-format msgid "Error: Could not remove the torrent {0}" msgstr "Erreur: Impossible de supprimer le torrent \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:1887 -#: ../java/src/org/klomp/snark/SnarkManager.java:1906 +#: ../java/src/org/klomp/snark/SnarkManager.java:1986 +#: ../java/src/org/klomp/snark/SnarkManager.java:2005 #, java-format -msgid "Torrent stopped: \"{0}\"" -msgstr "Torrent arrêté: \"{0}\"" +msgid "Torrent stopped: {0}" +msgstr "Torrent stoppé : {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1926 +#: ../java/src/org/klomp/snark/SnarkManager.java:2025 #, java-format msgid "Torrent removed: \"{0}\"" msgstr "Torrent supprimé: \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:1934 +#: ../java/src/org/klomp/snark/SnarkManager.java:2033 #, java-format msgid "Adding torrents in {0}" msgstr "Ajout des torrents dans {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1966 +#: ../java/src/org/klomp/snark/SnarkManager.java:2067 #, java-format msgid "Up bandwidth limit is {0} KBps" msgstr "Limite bande passante haute est {0} KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:1993 +#: ../java/src/org/klomp/snark/SnarkManager.java:2092 #, java-format msgid "Download finished: {0}" msgstr "Téléchargement terminé: \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:2048 +#: ../java/src/org/klomp/snark/SnarkManager.java:2147 #, java-format msgid "Metainfo received for {0}" msgstr "Metainfo reçue pour {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2049 -#: ../java/src/org/klomp/snark/SnarkManager.java:2280 +#: ../java/src/org/klomp/snark/SnarkManager.java:2148 +#: ../java/src/org/klomp/snark/SnarkManager.java:2431 #, java-format msgid "Starting up torrent {0}" msgstr "Démarrage du torrent {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2064 +#: ../java/src/org/klomp/snark/SnarkManager.java:2163 #, java-format msgid "Error on torrent {0}" msgstr "Erreur sur torrent {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2127 +#: ../java/src/org/klomp/snark/SnarkManager.java:2264 msgid "Unable to connect to I2P!" msgstr "Impossible de se connecter à I2P!" -#: ../java/src/org/klomp/snark/SnarkManager.java:2279 +#: ../java/src/org/klomp/snark/SnarkManager.java:2430 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:130 msgid "Opening the I2P tunnel" msgstr "Ouverture du tunnel I2P" -#: ../java/src/org/klomp/snark/SnarkManager.java:2303 +#: ../java/src/org/klomp/snark/SnarkManager.java:2450 msgid "Opening the I2P tunnel and starting all torrents." msgstr "Ouverture du tunnel I2P et démarrage de tous les torrents." -#: ../java/src/org/klomp/snark/SnarkManager.java:2366 +#: ../java/src/org/klomp/snark/SnarkManager.java:2513 msgid "Stopping all torrents and closing the I2P tunnel." msgstr "Arrêt de tous les torrents et fermeture du tunnel I2P." -#: ../java/src/org/klomp/snark/SnarkManager.java:2385 +#: ../java/src/org/klomp/snark/SnarkManager.java:2532 msgid "Closing I2P tunnel after notifying trackers." msgstr "Fermeture du tunnel I2P après notification aux trackers." +#: ../java/src/org/klomp/snark/SnarkManager.java:2594 +#, java-format +msgid "Finished recheck of torrent {0}, now {1} complete" +msgstr "Vérification du torrent {0} terminée, maintenant {1} complet" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2596 +#, java-format +msgid "Finished recheck of torrent {0}, unchanged" +msgstr "Vérification du torrent {0} terminée, inchangé" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2600 +#, java-format +msgid "Error checking the torrent {0}" +msgstr "Erreur lors de la vérification du torrent {0}" + #: ../java/src/org/klomp/snark/TrackerClient.java:245 #, java-format msgid "No valid trackers for {0} - enable opentrackers or DHT?" @@ -460,891 +495,913 @@ msgstr "Torrent déjà dans la file d''attente: {0}" msgid "Torrent at {0} was not valid" msgstr "Le torrent {0} est invalide" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:268 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:311 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:322 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1763 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2662 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:270 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:313 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:324 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1778 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2698 msgid "I2PSnark" msgstr "I2PSnark" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:273 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2149 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2422 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2165 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2446 msgid "Configuration" msgstr "Configuration" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:277 msgid "Anonymous BitTorrent Client" msgstr "Client BitTorrent anonyme" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:291 msgid "Router is down" msgstr "Le routeur est tombé" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:306 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:308 msgid "Torrents" msgstr "Torrents" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:319 msgid "Refresh page" msgstr "Rafraîchir la page" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:326 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:328 msgid "Forum" msgstr "Forum" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:341 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:343 msgid "Click \"Add torrent\" button to fetch torrent" msgstr "Cliquer le bouton \"Ajout torrent\" pour aller chercher le torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:394 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:396 msgid "clear messages" msgstr "nettoyer messages" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:449 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2980 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3072 msgid "Status" msgstr "État" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2994 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:453 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3086 #, java-format msgid "Sort by {0}" msgstr "Trier par {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:462 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:464 msgid "Hide Peers" msgstr "Cacher les pairs" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:468 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:470 msgid "Show Peers" msgstr "Afficher les pairs" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:491 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2648 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2718 msgid "Torrent" msgstr "Torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "File type" msgstr "Type de fichier" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:509 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 msgid "ETA" msgstr "Temps" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:512 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:514 msgid "Estimated time remaining" msgstr "Temps restant estimé" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:535 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 msgid "RX" msgstr "Reçu" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:538 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:540 msgid "Downloaded" msgstr "Téléchargé" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2818 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2968 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2878 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3060 msgid "Size" msgstr "Taille" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 msgid "TX" msgstr "Envoyé" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2896 msgid "Upload ratio" msgstr "Ratio en upload" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:569 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:571 msgid "Uploaded" msgstr "Envoyé" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:581 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 msgid "RX Rate" msgstr "Taux RX" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:584 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:586 msgid "Down Rate" msgstr "Taux de téléchargement" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:596 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 msgid "TX Rate" msgstr "Taux TX" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:599 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:601 msgid "Up Rate" msgstr "Taux d'envoi" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:615 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 msgid "Stop all torrents and the I2P tunnel" msgstr "Arrêter tous les torrents et le tunnel I2P" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:619 msgid "Stop All" msgstr "Arrêter tout" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:629 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 msgid "Start all stopped torrents" msgstr "Démarrer tous les torrents arrêtés" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:633 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:647 msgid "Start All" msgstr "Démarrer tout" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:643 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 msgid "Start all torrents and the I2P tunnel" msgstr "Démarrer tous les torrents et le tunnel I2P" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:668 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:670 msgid "No torrents loaded." msgstr "Aucun torrent chargé." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:674 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 msgid "Totals" msgstr "Totaux" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:678 #, java-format msgid "1 torrent" msgid_plural "{0} torrents" msgstr[0] "{0} torrent" msgstr[1] "{0} torrents" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:683 #, java-format msgid "1 connected peer" msgid_plural "{0} connected peers" msgstr[0] "{0} pair connecté" msgstr[1] "{0} pairs connectés" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:688 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:690 #, java-format msgid "1 DHT peer" msgid_plural "{0} DHT peers" msgstr[0] "1 pair DHT" msgstr[1] "{0} pairs DHT" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:695 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:697 msgid "Dest" msgstr "Dest" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First" msgstr "Premier" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First page" msgstr "Première page" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Prev" msgstr "Préc" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Previous page" msgstr "Page suivante" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next" msgstr "Suivant" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next page" msgstr "Page suivante" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last" msgstr "Dernier" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last page" msgstr "Dernière page" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:960 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:962 msgid "Data directory cannot be created" msgstr "Le répertoire données ne peut pas être créé" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1176 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:972 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1185 #, java-format msgid "Cannot add torrent {0} inside another torrent: {1}" msgstr "Ne peut pas ajouter le torrent {0} à l'intérieur d'un autre torrent: {1}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:985 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:993 #, java-format msgid "Invalid URL: Must start with \"http://\", \"{0}\", or \"{1}\"" msgstr "URL incorrecte - elle doit débuter par \"http://\", \"{0}\", ou \"{1}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1026 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1063 #, java-format msgid "Magnet deleted: {0}" msgstr "Magnet supprimé: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1061 #, java-format -msgid "Torrent file deleted: {0}" -msgstr "Fichier torrent effacé: {0}" - -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1053 -#, java-format msgid "Download deleted: {0}" msgstr "Téléchargement effacé: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1070 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1078 #, java-format msgid "Data file deleted: {0}" msgstr "Fichier de données effacé: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1072 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1089 #, java-format msgid "Data file could not be deleted: {0}" msgstr "Le fichier de données ne peut être effacé: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1097 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1105 #, java-format msgid "Directory could not be deleted: {0}" msgstr "Le répertoire n''a pas pu être effacé: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1112 #, java-format msgid "Directory deleted: {0}" msgstr "Répertoire effacé: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1155 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1164 #, java-format msgid "Cannot add a torrent ending in \".torrent\": {0}" msgstr "Ne peut pas ajouter un torrent se terminant par \".torrent\": {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1160 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1169 #, java-format msgid "Torrent with this name is already running: {0}" msgstr "Un torrent avec ce nom est déjà en cours: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1175 #, java-format msgid "Cannot add a torrent including an I2P directory: {0}" msgstr "Ne peut pas ajouter un torrent incluant un dossier d''I2P: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1181 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1190 #, java-format msgid "Cannot add torrent {0} including another torrent: {1}" msgstr "Ne peut pas ajouter le torrent {0} incluant un autre torrent: {1}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1216 msgid "Error - Cannot include alternate trackers without a primary tracker" msgstr "Erreur - Ne peut pas inclure de trackers trackers alternatifs sans un tracker primaire" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1220 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1229 msgid "Error - Cannot mix private and public trackers in a torrent" msgstr "Erreur - Ne peut pas mixer dans un torrent trackers public et privés" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1251 #, java-format msgid "Torrent created for \"{0}\"" msgstr "Torrent créé pour \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1244 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 #, java-format msgid "" "Many I2P trackers require you to register new torrents before seeding - " "please do so before starting \"{0}\"" msgstr "De nombreux trackers I2P nécessitent d’enregistrer les nouveaux torrents avant de seeder - faites-le avant de démarrer \"{0}\"!" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1255 #, java-format msgid "Error creating a torrent for \"{0}\"" msgstr "Erreur de création du torrent pour \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1250 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1259 #, java-format msgid "Cannot create a torrent for the nonexistent data: {0}" msgstr "Impossible de créer un torrent pour des données inexistantes: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1262 msgid "Error creating torrent - you must enter a file or directory" msgstr "Erreur de création du torrent - vous devez saisir un fichier ou un répertoire" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2406 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2430 msgid "Delete selected" msgstr "Effacer les sélectionnés" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2408 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2432 msgid "Save tracker configuration" msgstr "Sauvegarder la configuration du tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1301 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1310 msgid "Removed" msgstr "Retiré" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1333 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2405 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2407 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1342 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2429 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2431 msgid "Add tracker" msgstr "Ajout tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1356 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1359 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1365 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1368 msgid "Enter valid tracker name and URLs" msgstr "Entrez nom de tracker valide et URLs" #. "<input type=\"reset\" class=\"cancel\" #. value=\"").append(_t("Cancel")).append("\">\n" + -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1361 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2410 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1370 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2434 msgid "Restore defaults" msgstr "Restaurer les paramètres d'origine" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1373 msgid "Restored default trackers" msgstr "Restaurer les trackers d'origine" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1472 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1473 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1485 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1486 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2949 msgid "Checking" msgstr "Vérification" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1475 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1476 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1489 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2956 msgid "Allocating" msgstr "Allocation" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1499 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1505 msgid "Tracker Error" msgstr "Erreur du tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1492 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1522 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1527 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1538 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1543 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1554 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1507 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1537 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1542 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1553 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1558 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1569 #, java-format msgid "1 peer" msgid_plural "{0} peers" msgstr[0] "{0} pair" msgstr[1] "{0} pairs" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1502 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1503 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1517 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1518 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2954 msgid "Starting" msgstr "Démarrage" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1511 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1526 msgid "Seeding" msgstr "Seed en cours" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1515 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1529 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1530 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2831 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1544 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2891 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3139 msgid "Complete" msgstr "Complet" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1534 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1535 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1540 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1541 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1550 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1555 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 msgid "OK" msgstr "OK" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1546 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1551 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1552 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1567 msgid "Stalled" msgstr "Figé" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1557 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1571 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1572 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1575 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1576 msgid "No Peers" msgstr "Pas de pair" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1563 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1578 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1579 msgid "Stopped" msgstr "Arrêté" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1593 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1608 msgid "Torrent details" msgstr "Détails du torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1628 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1643 msgid "View files" msgstr "Voir les fichiers" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1630 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1645 msgid "Open file" msgstr "Ouvrir fichier" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1682 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 msgid "Stop the torrent" msgstr "Arrêter le torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2961 msgid "Stop" msgstr "Arrêter" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 msgid "Start the torrent" msgstr "Démarrer le torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1714 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2963 msgid "Start" msgstr "Démarrer" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1727 msgid "Remove the torrent from the active list, deleting the .torrent file" msgstr "Enlever le torrent de la liste active, suprression du fichier .torrent" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1717 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1732 #, java-format msgid "" "Are you sure you want to delete the file \\''{0}\\'' (downloaded data will " "not be deleted) ?" msgstr "Êtes-vous sûr que vous voulez supprimer le fichier \\''{0}\\'' (les données téléchargées ne seront pas supprimées) ?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1721 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1736 msgid "Remove" msgstr "Enlever" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1734 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1749 msgid "Delete the .torrent file and the associated data file(s)" msgstr "Supprimer le fichier .torrent et le(s) fichier(s) de données associé(s)" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1739 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1754 #, java-format msgid "" "Are you sure you want to delete the torrent \\''{0}\\'' and all downloaded " "data?" msgstr "Êtes-vous certain de vouloir supprimer le torrent \\''{0}\\'' ainsi que toutes les données téléchargées ?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1743 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1758 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2388 msgid "Delete" msgstr "Supprimer" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1779 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1794 msgid "Unknown" msgstr "Inconnu" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1791 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1806 msgid "Seed" msgstr "Seed" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1814 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1829 msgid "Uninteresting (The peer has no pieces we need)" msgstr "Aucun intérêt (le pair n'a aucun tronçon utile)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1816 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1831 msgid "Choked (The peer is not allowing us to request pieces)" msgstr "bridé (le pair ne nous permet pas de demander des tronçons)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1851 msgid "Uninterested (We have no pieces the peer needs)" msgstr "Pas intéressé (aucun tronçon utile au pair)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1838 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1853 msgid "Choking (We are not allowing the peer to request pieces)" msgstr "bridage (nous ne permettons pas au pair de demander un tronçon)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1954 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1969 #, java-format msgid "Details at {0} tracker" msgstr "Détails au tracker {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1971 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1986 msgid "Info" msgstr "Info" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 msgid "Add Torrent" msgstr "Ajouter torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 msgid "From URL" msgstr "Depuis l'URL" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2050 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2065 msgid "" "Enter the torrent file download URL (I2P only), magnet link, maggot link, or" " info hash" msgstr "Entrez l'URL de téléchargement du fichier torrent (I2P seulement), lien magnet, lien maggot, or l'info hash" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2070 msgid "Add torrent" msgstr "Ajouter torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2074 msgid "Data dir" msgstr "Répertoire données" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2077 #, java-format msgid "Enter the directory to save the data in (default {0})" msgstr "Saisissez le répertoire où sauvegarder les données par défaut (default {0})" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2066 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 #, java-format msgid "You can also copy .torrent files to: {0}." msgstr "Vous pouvez aussi copier les fichiers .torrent vers {0}." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2068 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2083 msgid "Removing a .torrent will cause it to stop." msgstr "La suppression d'un fichier .torrent entraîne l'arrêt du torrent." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2096 msgid "Create Torrent" msgstr "Créer torrent" #. out.write("From file: <input type=\"file\" name=\"newFile\" size=\"50\" #. value=\"" + newFile + "\" /><br>\n"); -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2084 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2099 msgid "Data to seed" msgstr "Données à seeder" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2088 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2103 #, java-format msgid "File or directory to seed (full path or within the directory {0} )" msgstr "Fichier ou dossier à seeder (chemin complet ou dans le dossier {0} )" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2091 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2337 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2106 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2361 msgid "Trackers" msgstr "Trackers" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2093 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2108 msgid "Primary" msgstr "Primaire" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2095 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2110 msgid "Alternates" msgstr "Alternatifs" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2098 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2113 msgid "Create torrent" msgstr "Créer torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2116 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2131 msgid "none" msgstr "aucun" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2153 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2169 msgid "Data directory" msgstr "Répertoire de données" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2158 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 msgid "Files readable by all" msgstr "Fichiers lisibles par tous" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2162 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2178 msgid "If checked, other users may access the downloaded files" msgstr "Si coché, les autres utilisateurs pourront accéder aux fichiers téléchargés." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2182 msgid "Auto start torrents" msgstr "Démarrer automatiquement les torrents" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2170 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2186 msgid "If checked, automatically start torrents that are added" msgstr "Si coché, les torrents démarreront automatiquement lors de l'ajout" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2190 +msgid "Smart torrent sorting" +msgstr "Triage intelligent de torrent" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2194 +msgid "If checked, ignore words such as 'the' when sorting" +msgstr "Si coché, ignore des mots tels que 'the' lors du tri" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2198 msgid "Theme" msgstr "Thème" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2188 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2212 msgid "Refresh time" msgstr "Temps de rafraîchissement " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2201 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2225 msgid "Never" msgstr "Jamais" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2231 msgid "Startup delay" msgstr "Délais de démarrage" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2209 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2233 msgid "minutes" msgstr "minutes" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2213 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2237 msgid "Page size" msgstr "Taille page" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2215 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 msgid "torrents" msgstr "torrents" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 msgid "Total uploader limit" msgstr "Limite totale d'envoi" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2266 msgid "peers" msgstr "pairs" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2270 msgid "Up bandwidth limit" msgstr "Limite de bande passante en envoi" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2249 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2273 msgid "Half available bandwidth recommended." msgstr "La moitié de la bande passante est recommandée." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2251 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2275 msgid "View or change router bandwidth" msgstr "Consulter ou modifier la bande passante du routeur" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2255 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2279 msgid "Use open trackers also" msgstr "Utiliser également les trackers ouverts" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2259 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 msgid "" "If checked, announce torrents to open trackers as well as the tracker listed" " in the torrent file" msgstr "Si coché, les torrents seront annoncés vers les open trackers ainsi que vers les trackers indiqués dans le fichier torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2287 msgid "Enable DHT" msgstr "Active DHT" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2267 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2291 msgid "If checked, use DHT" msgstr "Si coché, utilise DHT" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2307 msgid "Inbound Settings" msgstr "Paramètres entrants" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2313 msgid "Outbound Settings" msgstr "Paramètres sortants" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2297 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2321 msgid "I2CP host" msgstr "Hôte I2CP" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2302 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2326 msgid "I2CP port" msgstr "Port I2CP" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2341 msgid "I2CP options" msgstr "Options I2CP" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2322 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 msgid "Save configuration" msgstr "Sauvegarder la configuration" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2342 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2366 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "Name" msgstr "Nom" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2344 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2368 msgid "Website URL" msgstr "URL du site web" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2370 msgid "Standard" msgstr "Standard" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2348 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2372 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3172 msgid "Open" msgstr "Ouvrir le fichier" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2350 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2374 msgid "Private" msgstr "Privé" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2352 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2376 msgid "Announce URL" msgstr "Annoncer URL" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2396 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2420 msgid "Add" msgstr "Ajout" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2439 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2463 #, java-format msgid "Invalid magnet URL {0}" msgstr "URL magnet {0} incorrecte" #. * dummies for translation -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2447 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2471 #, java-format msgid "1 hop" msgid_plural "{0} hops" msgstr[0] "{0} saut" msgstr[1] "{0} sauts" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2448 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2472 #, java-format msgid "1 tunnel" msgid_plural "{0} tunnels" msgstr[0] "{0} tunnel" msgstr[1] "{0} tunnels" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2691 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2728 msgid "Torrent file" msgstr "Fichier torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 msgid "Data location" msgstr "Emplacement donnée" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2708 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2745 msgid "Info hash" msgstr "Info hachage" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2727 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2764 msgid "Primary Tracker" msgstr "Tracker primaire" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2773 msgid "Tracker List" msgstr "Liste tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2761 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2798 msgid "Comment" msgstr "Commentaire" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2771 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2812 msgid "Created" msgstr "Créé" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2782 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2823 msgid "Created By" msgstr "Créé par" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2794 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2833 +msgid "Added" +msgstr "Ajouté" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2842 +msgid "Completed" +msgstr "Complété" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2854 msgid "Magnet link" msgstr "Lien magnet" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2807 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2867 msgid "Private torrent" msgstr "Torrent privé" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2827 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2887 msgid "Completion" msgstr "Finalisation" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2856 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2916 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 msgid "Remaining" msgstr "Restant" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2926 msgid "Files" msgstr "Fichiers" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2873 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 msgid "Pieces" msgstr "Tronçons" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2879 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2939 msgid "Piece size" msgstr "Taille des tronçons" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2952 +msgid "Refresh page for results" +msgstr "Rafraîchir la page pour des résultats" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2964 +msgid "Force Recheck" +msgstr "Forcer revérification" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3025 msgid "Directory" msgstr "Répertoire" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2992 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3084 msgid "Priority" msgstr "Priorité" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3004 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3096 msgid "Up to higher level directory" msgstr "Vers le répertoire parent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3038 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3130 msgid "Torrent not found?" msgstr "Torrent non trouvé?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3136 msgid "File not found in torrent?" msgstr "Fichier non trouvé dans le torrent?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3057 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3149 msgid "complete" msgstr "complet" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3058 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3150 msgid "remaining" msgstr "restant" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3196 msgid "High" msgstr "Haut" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3109 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3201 msgid "Normal" msgstr "Normal" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3114 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3206 msgid "Skip" msgstr "Ignorer" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3124 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3216 msgid "Set all high" msgstr "Mettre tous à haute" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3126 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3218 msgid "Set all normal" msgstr "Mettre tous à normale" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3128 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3220 msgid "Skip all" msgstr "Tout sauter" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3129 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3221 msgid "Save priorities" msgstr "Sauvegarder les priorités" diff --git a/apps/i2psnark/locale/messages_hu.po b/apps/i2psnark/locale/messages_hu.po index 6710e744eede7da7bb81db6c7151b3ec45a6b2e1..e5bb98038b3863edfbd662fd5a19b723355bee4d 100644 --- a/apps/i2psnark/locale/messages_hu.po +++ b/apps/i2psnark/locale/messages_hu.po @@ -10,10 +10,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:09+0000\n" -"PO-Revision-Date: 2015-07-17 01:32+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-05 17:17+0000\n" "Last-Translator: kytv <killyourtv@i2pmail.org>\n" -"Language-Team: Hungarian (http://www.transifex.com/projects/p/I2P/language/hu/)\n" +"Language-Team: Hungarian (http://www.transifex.com/otf/I2P/language/hu/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -25,222 +25,230 @@ msgid "No more torrents running." msgstr "Nincs több futó torrent." #: ../java/src/org/klomp/snark/IdleChecker.java:76 -#: ../java/src/org/klomp/snark/SnarkManager.java:2392 -#: ../java/src/org/klomp/snark/SnarkManager.java:2403 +#: ../java/src/org/klomp/snark/SnarkManager.java:2539 +#: ../java/src/org/klomp/snark/SnarkManager.java:2550 msgid "I2P tunnel closed." msgstr "I2P alagút lezárva." #: ../java/src/org/klomp/snark/MagnetURI.java:42 #: ../java/src/org/klomp/snark/MagnetURI.java:52 -#: ../java/src/org/klomp/snark/SnarkManager.java:2096 +#: ../java/src/org/klomp/snark/SnarkManager.java:2221 msgid "Magnet" msgstr "Mágnes" -#: ../java/src/org/klomp/snark/SnarkManager.java:772 +#: ../java/src/org/klomp/snark/SnarkManager.java:791 #, java-format msgid "Total uploaders limit changed to {0}" msgstr "Teljes feltöltÅ‘k korlátja megváltoztatva a következÅ‘re: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:774 +#: ../java/src/org/klomp/snark/SnarkManager.java:793 #, java-format msgid "Minimum total uploaders limit is {0}" msgstr "Teljes feltöltÅ‘k minimum korlátja a következÅ‘: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:786 +#: ../java/src/org/klomp/snark/SnarkManager.java:805 #, java-format msgid "Up BW limit changed to {0}KBps" msgstr "Feltöltési sávszélesség korlátja megváltoztatva a következÅ‘re: {0} KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:788 +#: ../java/src/org/klomp/snark/SnarkManager.java:807 #, java-format msgid "Minimum up bandwidth limit is {0}KBps" msgstr "A minimum feltöltési sávszélesség korlátja {0} KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:800 +#: ../java/src/org/klomp/snark/SnarkManager.java:819 #, java-format msgid "Startup delay changed to {0}" msgstr "Késleltetés indÃtáskor megváltoztatva a következÅ‘re: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:811 +#: ../java/src/org/klomp/snark/SnarkManager.java:830 #, java-format msgid "Refresh time changed to {0}" msgstr "FrissÃtési idÅ‘ a következÅ‘re változott: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:813 +#: ../java/src/org/klomp/snark/SnarkManager.java:832 msgid "Refresh disabled" msgstr "FrissÃtés kikapcsolva" -#: ../java/src/org/klomp/snark/SnarkManager.java:829 +#: ../java/src/org/klomp/snark/SnarkManager.java:848 #, java-format msgid "Page size changed to {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:838 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:956 +#: ../java/src/org/klomp/snark/SnarkManager.java:857 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:958 msgid "Data directory must be an absolute path" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:840 +#: ../java/src/org/klomp/snark/SnarkManager.java:859 msgid "Data directory does not exist" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:842 +#: ../java/src/org/klomp/snark/SnarkManager.java:861 msgid "Not a directory" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:844 +#: ../java/src/org/klomp/snark/SnarkManager.java:863 msgid "Unreadable" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:849 +#: ../java/src/org/klomp/snark/SnarkManager.java:868 #, java-format msgid "Data directory changed to {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:904 +#: ../java/src/org/klomp/snark/SnarkManager.java:923 msgid "I2CP and tunnel changes will take effect after stopping all torrents" msgstr "Az I2CP-re és alagutakra vonatkozó változtatások az összes torrent leállÃtása után lépnek érvénybe" -#: ../java/src/org/klomp/snark/SnarkManager.java:908 +#: ../java/src/org/klomp/snark/SnarkManager.java:927 #, java-format msgid "I2CP options changed to {0}" msgstr "I2CP opciók a következÅ‘re lettek változtatva: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:914 +#: ../java/src/org/klomp/snark/SnarkManager.java:933 msgid "Disconnecting old I2CP destination" msgstr "Lekapcsolódás a régi I2CP célállomásról" -#: ../java/src/org/klomp/snark/SnarkManager.java:916 +#: ../java/src/org/klomp/snark/SnarkManager.java:935 #, java-format msgid "I2CP settings changed to {0}" msgstr "I2CP beállÃtások a következÅ‘re változtak: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:921 +#: ../java/src/org/klomp/snark/SnarkManager.java:940 msgid "" "Unable to connect with the new settings, reverting to the old I2CP settings" msgstr "Sikertelen kapcsolódás az új beállÃtásokat használva, visszatérés a régi I2CP beállÃtásokhoz" -#: ../java/src/org/klomp/snark/SnarkManager.java:925 +#: ../java/src/org/klomp/snark/SnarkManager.java:944 msgid "Unable to reconnect with the old settings!" msgstr "Sikertelen újrakapcsolódás a régi beállÃtásokat használva!" -#: ../java/src/org/klomp/snark/SnarkManager.java:927 +#: ../java/src/org/klomp/snark/SnarkManager.java:946 msgid "Reconnected on the new I2CP destination" msgstr "Újracsatlakozva az új I2CP célállomásra" -#: ../java/src/org/klomp/snark/SnarkManager.java:934 +#: ../java/src/org/klomp/snark/SnarkManager.java:953 #, java-format msgid "I2CP listener restarted for \"{0}\"" msgstr "I2CP figyelÅ‘ újraindÃtva a következÅ‘höz: \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:948 +#: ../java/src/org/klomp/snark/SnarkManager.java:967 msgid "New files will be publicly readable" msgstr "Az új fájlok nyilvánosan olvashatók lesznek" -#: ../java/src/org/klomp/snark/SnarkManager.java:950 +#: ../java/src/org/klomp/snark/SnarkManager.java:969 msgid "New files will not be publicly readable" msgstr "Az új fájlok nyilvánosan nem lesznek olvashatók" -#: ../java/src/org/klomp/snark/SnarkManager.java:957 +#: ../java/src/org/klomp/snark/SnarkManager.java:976 msgid "Enabled autostart" msgstr "Automatikus indÃtás engedélyezve" -#: ../java/src/org/klomp/snark/SnarkManager.java:959 +#: ../java/src/org/klomp/snark/SnarkManager.java:978 msgid "Disabled autostart" msgstr "Automatikus indÃtás kikapcsolva" -#: ../java/src/org/klomp/snark/SnarkManager.java:965 +#: ../java/src/org/klomp/snark/SnarkManager.java:985 +msgid "Enabled smart sort" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:987 +msgid "Disabled smart sort" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:994 msgid "Enabled open trackers - torrent restart required to take effect." msgstr "NyÃlt követÅ‘k (tracker) engedélyezve - az érvénybe lépéshez a torrent újraindÃtása szükséges." -#: ../java/src/org/klomp/snark/SnarkManager.java:967 +#: ../java/src/org/klomp/snark/SnarkManager.java:996 msgid "Disabled open trackers - torrent restart required to take effect." msgstr "NyÃlt követÅ‘k (tracker) kikapcsolva - az érvénybe lépéshez a torrent újraindÃtása szükséges." -#: ../java/src/org/klomp/snark/SnarkManager.java:974 +#: ../java/src/org/klomp/snark/SnarkManager.java:1003 msgid "Enabled DHT." msgstr "DHT engedélyezve." -#: ../java/src/org/klomp/snark/SnarkManager.java:976 +#: ../java/src/org/klomp/snark/SnarkManager.java:1005 msgid "Disabled DHT." msgstr "DHT letiltva." -#: ../java/src/org/klomp/snark/SnarkManager.java:978 +#: ../java/src/org/klomp/snark/SnarkManager.java:1007 msgid "DHT change requires tunnel shutdown and reopen" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:985 +#: ../java/src/org/klomp/snark/SnarkManager.java:1014 #, java-format msgid "{0} theme loaded, return to main i2psnark page to view." msgstr "{0} téma betöltve, megtekintéséhez térj vissza az i2psnark fÅ‘oldalára." -#: ../java/src/org/klomp/snark/SnarkManager.java:995 +#: ../java/src/org/klomp/snark/SnarkManager.java:1024 msgid "Configuration unchanged." msgstr "BeállÃtások nem lettek megváltoztatva." -#: ../java/src/org/klomp/snark/SnarkManager.java:1027 +#: ../java/src/org/klomp/snark/SnarkManager.java:1056 msgid "Open Tracker list changed - torrent restart required to take effect." msgstr "NyÃlt KövetÅ‘k (tracker) listája megváltozott - az érvénybe lépéshez a torrent újraindÃtása szükséges." -#: ../java/src/org/klomp/snark/SnarkManager.java:1037 +#: ../java/src/org/klomp/snark/SnarkManager.java:1066 msgid "Private tracker list changed - affects newly created torrents only." msgstr "Megváltozott a privát tracker lista - csak az újonnan létrehozott torrentekre vonatkozik." -#: ../java/src/org/klomp/snark/SnarkManager.java:1083 +#: ../java/src/org/klomp/snark/SnarkManager.java:1112 #, java-format msgid "Unable to save the config to {0}" msgstr "Nem sikerült a beállÃtások mentése a következÅ‘re: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1164 +#: ../java/src/org/klomp/snark/SnarkManager.java:1193 msgid "Connecting to I2P" msgstr "Kapcsolódás az I2P-hez" -#: ../java/src/org/klomp/snark/SnarkManager.java:1167 +#: ../java/src/org/klomp/snark/SnarkManager.java:1196 msgid "Error connecting to I2P - check your I2CP settings!" msgstr "Hiba az I2P-hez való csatlakozáskor - ellenÅ‘rizd az I2CP beállÃtásait!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1176 -#: ../java/src/org/klomp/snark/SnarkManager.java:2133 +#: ../java/src/org/klomp/snark/SnarkManager.java:1205 +#: ../java/src/org/klomp/snark/SnarkManager.java:2270 #, java-format msgid "Error: Could not add the torrent {0}" msgstr "Hiba: a következÅ‘ torrent hozzáadása sikertelen: {0}" #. catch this here so we don't try do delete it below -#: ../java/src/org/klomp/snark/SnarkManager.java:1199 +#: ../java/src/org/klomp/snark/SnarkManager.java:1228 #, java-format msgid "Cannot open \"{0}\"" msgstr "\"{0}\" megnyitása sikertelen" #. TODO - if the existing one is a magnet, delete it and add the metainfo #. instead? -#: ../java/src/org/klomp/snark/SnarkManager.java:1218 -#: ../java/src/org/klomp/snark/SnarkManager.java:1352 -#: ../java/src/org/klomp/snark/SnarkManager.java:1440 +#: ../java/src/org/klomp/snark/SnarkManager.java:1247 +#: ../java/src/org/klomp/snark/SnarkManager.java:1388 +#: ../java/src/org/klomp/snark/SnarkManager.java:1476 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:166 #, java-format msgid "Torrent with this info hash is already running: {0}" msgstr "A torrent már fut ezzel az infó hash-el: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1224 +#: ../java/src/org/klomp/snark/SnarkManager.java:1253 #, java-format msgid "ERROR - No I2P trackers in private torrent \"{0}\"" msgstr "HIBA - Nincsenek I2P követÅ‘k (trackerek) a következÅ‘ privát torrentben: \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:1226 +#: ../java/src/org/klomp/snark/SnarkManager.java:1255 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", will announce to I2P open trackers and" " DHT only." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1229 +#: ../java/src/org/klomp/snark/SnarkManager.java:1258 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and open trackers are disabled, will " "announce to DHT only." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1231 +#: ../java/src/org/klomp/snark/SnarkManager.java:1260 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and DHT and open trackers are " @@ -248,34 +256,46 @@ msgid "" "torrent." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1257 +#: ../java/src/org/klomp/snark/SnarkManager.java:1286 #, java-format msgid "Torrent in \"{0}\" is invalid" msgstr "Érvénytelen torrent a következÅ‘ben: \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:1264 +#: ../java/src/org/klomp/snark/SnarkManager.java:1292 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1042 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1069 +#, java-format +msgid "Torrent file deleted: {0}" +msgstr "Torrent fájl törölve: {0}" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1295 +#, java-format +msgid "Torrent file moved from {0} to {1}" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1299 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:193 #, java-format msgid "ERROR - Out of memory, cannot create torrent from {0}" msgstr "HIBA - nincs több memória, torrent létrehozása sikertelen a következÅ‘bÅ‘l: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1285 +#: ../java/src/org/klomp/snark/SnarkManager.java:1321 #, java-format -msgid "Torrent added and started: \"{0}\"" -msgstr "Torrent hozzáadva és elindÃtva: \"{0}\"" +msgid "Torrent added and started: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1287 +#: ../java/src/org/klomp/snark/SnarkManager.java:1323 #, java-format -msgid "Torrent added: \"{0}\"" -msgstr "Torrent hozzáadva: \"{0}\"" +msgid "Torrent added: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1363 +#: ../java/src/org/klomp/snark/SnarkManager.java:1399 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:93 #, java-format msgid "Fetching {0}" msgstr "Leszedés: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1369 +#: ../java/src/org/klomp/snark/SnarkManager.java:1405 #, java-format msgid "" "Open trackers are disabled and we have no DHT peers. Fetch of {0} may not " @@ -283,131 +303,146 @@ msgid "" "DHT." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1373 +#: ../java/src/org/klomp/snark/SnarkManager.java:1409 #, java-format msgid "Adding {0}" msgstr "{0} Hozzáadása" -#: ../java/src/org/klomp/snark/SnarkManager.java:1406 +#: ../java/src/org/klomp/snark/SnarkManager.java:1442 #, java-format msgid "Download already running: {0}" msgstr "Futó letöltés: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1451 -#: ../java/src/org/klomp/snark/SnarkManager.java:1477 -#: ../java/src/org/klomp/snark/SnarkManager.java:2052 +#: ../java/src/org/klomp/snark/SnarkManager.java:1487 +#: ../java/src/org/klomp/snark/SnarkManager.java:1513 +#: ../java/src/org/klomp/snark/SnarkManager.java:2151 #, java-format msgid "Failed to copy torrent file to {0}" msgstr "Nem sikerült a torrent fájl másolása a következÅ‘re: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1828 +#: ../java/src/org/klomp/snark/SnarkManager.java:1927 #, java-format -msgid "Too many files in \"{0}\" ({1}), deleting it!" -msgstr "Túl sok fájl a következÅ‘ben: \"{0}\" ({1}), törlésre kerül!" +msgid "Too many files in \"{0}\" ({1})!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1830 +#: ../java/src/org/klomp/snark/SnarkManager.java:1929 #, java-format -msgid "Torrent file \"{0}\" cannot end in \".torrent\", deleting it!" -msgstr "Torrent fájl \"{0}\" nem végzÅ‘dhet Ãgy: \".torrent\", törlésre kerül!" +msgid "Torrent file \"{0}\" cannot end in \".torrent\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1832 +#: ../java/src/org/klomp/snark/SnarkManager.java:1931 #, java-format -msgid "No pieces in \"{0}\", deleting it!" -msgstr "Nincsenek részek a következÅ‘ben: \"{0}\", törlésre kerül!" +msgid "No pieces in \"{0}\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1834 +#: ../java/src/org/klomp/snark/SnarkManager.java:1933 #, java-format -msgid "Too many pieces in \"{0}\", limit is {1}, deleting it!" -msgstr "Túl sok rész a következÅ‘ben: \"{0}\", a határ {1}, törlésre kerül!" +msgid "Too many pieces in \"{0}\", limit is {1}!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1836 +#: ../java/src/org/klomp/snark/SnarkManager.java:1935 #, java-format -msgid "Pieces are too large in \"{0}\" ({1}B), deleting it." -msgstr "A részek túl nagyok a következÅ‘ben: \"{0}\" ({1}B), törlésre kerül." +msgid "Pieces are too large in \"{0}\" ({1}B)!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1837 +#: ../java/src/org/klomp/snark/SnarkManager.java:1936 #, java-format msgid "Limit is {0}B" msgstr "A határ {0}B" -#: ../java/src/org/klomp/snark/SnarkManager.java:1839 +#: ../java/src/org/klomp/snark/SnarkManager.java:1938 #, java-format -msgid "Torrent \"{0}\" has no data, deleting it!" -msgstr "\"{0}\" torrent nem tartalmaz adatot, törlésre kerül!" +msgid "Torrent \"{0}\" has no data!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1847 +#: ../java/src/org/klomp/snark/SnarkManager.java:1946 #, java-format -msgid "Torrents larger than {0}B are not supported yet, deleting \"{1}\"" -msgstr "Nincsenek támogatva torrentek, melyek nagyobbak, mint {0}B, \"{1}\" törlésre kerül" +msgid "Torrents larger than {0}B are not supported yet \"{1}\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1864 +#: ../java/src/org/klomp/snark/SnarkManager.java:1963 #, java-format msgid "Error: Could not remove the torrent {0}" msgstr "Hiba: a következÅ‘ torrent eltávolÃtása sikertelen: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1887 -#: ../java/src/org/klomp/snark/SnarkManager.java:1906 +#: ../java/src/org/klomp/snark/SnarkManager.java:1986 +#: ../java/src/org/klomp/snark/SnarkManager.java:2005 #, java-format -msgid "Torrent stopped: \"{0}\"" -msgstr "Torrent leállÃtva: \"{0}\"" +msgid "Torrent stopped: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1926 +#: ../java/src/org/klomp/snark/SnarkManager.java:2025 #, java-format msgid "Torrent removed: \"{0}\"" msgstr "Torrent eltávolÃtva: \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:1934 +#: ../java/src/org/klomp/snark/SnarkManager.java:2033 #, java-format msgid "Adding torrents in {0}" msgstr "Torrentek hozzáadása a következÅ‘ben: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1966 +#: ../java/src/org/klomp/snark/SnarkManager.java:2067 #, java-format msgid "Up bandwidth limit is {0} KBps" msgstr "Feltöltési sebesség korlát {0} KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:1993 +#: ../java/src/org/klomp/snark/SnarkManager.java:2092 #, java-format msgid "Download finished: {0}" msgstr "A letöltés befejezÅ‘dött: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2048 +#: ../java/src/org/klomp/snark/SnarkManager.java:2147 #, java-format msgid "Metainfo received for {0}" msgstr "Metainformáció letöltve a következÅ‘höz: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2049 -#: ../java/src/org/klomp/snark/SnarkManager.java:2280 +#: ../java/src/org/klomp/snark/SnarkManager.java:2148 +#: ../java/src/org/klomp/snark/SnarkManager.java:2431 #, java-format msgid "Starting up torrent {0}" msgstr "{0} torrent indÃtása" -#: ../java/src/org/klomp/snark/SnarkManager.java:2064 +#: ../java/src/org/klomp/snark/SnarkManager.java:2163 #, java-format msgid "Error on torrent {0}" msgstr "Hiba a következÅ‘ torrenten: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2127 +#: ../java/src/org/klomp/snark/SnarkManager.java:2264 msgid "Unable to connect to I2P!" msgstr "Sikertelen csatlakozás az I2P-hez!" -#: ../java/src/org/klomp/snark/SnarkManager.java:2279 +#: ../java/src/org/klomp/snark/SnarkManager.java:2430 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:130 msgid "Opening the I2P tunnel" msgstr "Az I2P alagút megnyitása" -#: ../java/src/org/klomp/snark/SnarkManager.java:2303 +#: ../java/src/org/klomp/snark/SnarkManager.java:2450 msgid "Opening the I2P tunnel and starting all torrents." msgstr "Az I2P alagút megnyitás, minden torrent indÃtás alatt." -#: ../java/src/org/klomp/snark/SnarkManager.java:2366 +#: ../java/src/org/klomp/snark/SnarkManager.java:2513 msgid "Stopping all torrents and closing the I2P tunnel." msgstr "Az összes torrent leállÃtás és az I2P alagút lezárás alatt." -#: ../java/src/org/klomp/snark/SnarkManager.java:2385 +#: ../java/src/org/klomp/snark/SnarkManager.java:2532 msgid "Closing I2P tunnel after notifying trackers." msgstr "" +#: ../java/src/org/klomp/snark/SnarkManager.java:2594 +#, java-format +msgid "Finished recheck of torrent {0}, now {1} complete" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2596 +#, java-format +msgid "Finished recheck of torrent {0}, unchanged" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2600 +#, java-format +msgid "Error checking the torrent {0}" +msgstr "" + #: ../java/src/org/klomp/snark/TrackerClient.java:245 #, java-format msgid "No valid trackers for {0} - enable opentrackers or DHT?" @@ -453,891 +488,913 @@ msgstr "Torrent már a sorban van: {0}" msgid "Torrent at {0} was not valid" msgstr "Érvénytelen torrent a következÅ‘ helyen: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:268 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:311 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:322 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1763 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2662 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:270 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:313 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:324 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1778 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2698 msgid "I2PSnark" msgstr "I2PSnark" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:273 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2149 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2422 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2165 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2446 msgid "Configuration" msgstr "BeállÃtások" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:277 msgid "Anonymous BitTorrent Client" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:291 msgid "Router is down" msgstr "Router leállva" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:306 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:308 msgid "Torrents" msgstr "Torrentek" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:319 msgid "Refresh page" msgstr "Lap újratöltése" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:326 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:328 msgid "Forum" msgstr "Fórum" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:341 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:343 msgid "Click \"Add torrent\" button to fetch torrent" msgstr "Torrent leszedéséhez kattints a \"Torrent hozzáadása\" gombra" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:394 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:396 msgid "clear messages" msgstr "üzenetek törlése" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:449 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2980 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3072 msgid "Status" msgstr "Ãllapot" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2994 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:453 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3086 #, java-format msgid "Sort by {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:462 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:464 msgid "Hide Peers" msgstr "Társak Elrejtése" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:468 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:470 msgid "Show Peers" msgstr "Társak MegjelenÃtése" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:491 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2648 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2718 msgid "Torrent" msgstr "Torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "File type" msgstr "" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:509 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 msgid "ETA" msgstr "BIE" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:512 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:514 msgid "Estimated time remaining" msgstr "Becsült hátralévÅ‘ idÅ‘" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:535 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 msgid "RX" msgstr "Be" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:538 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:540 msgid "Downloaded" msgstr "Letöltött" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2818 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2968 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2878 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3060 msgid "Size" msgstr "Méret" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 msgid "TX" msgstr "Ki" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2896 msgid "Upload ratio" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:569 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:571 msgid "Uploaded" msgstr "Feltöltött" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:581 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 msgid "RX Rate" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:584 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:586 msgid "Down Rate" msgstr "Letöltési Sebesség" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:596 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 msgid "TX Rate" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:599 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:601 msgid "Up Rate" msgstr "Feltöltési Sebesség" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:615 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 msgid "Stop all torrents and the I2P tunnel" msgstr "Minden torrent és az I2P alagút leállÃtása" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:619 msgid "Stop All" msgstr "Mindet LeállÃt" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:629 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 msgid "Start all stopped torrents" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:633 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:647 msgid "Start All" msgstr "Mind IndÃtása" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:643 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 msgid "Start all torrents and the I2P tunnel" msgstr "Minden torrent és az I2P alagút indÃtása" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:668 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:670 msgid "No torrents loaded." msgstr "Egy torrent sem került betöltésre." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:674 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 msgid "Totals" msgstr "Összesen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:678 #, java-format msgid "1 torrent" msgid_plural "{0} torrents" msgstr[0] "1 torrent" msgstr[1] "{0} torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:683 #, java-format msgid "1 connected peer" msgid_plural "{0} connected peers" msgstr[0] "1 csatlakozott társ" msgstr[1] "{0} csatlakzott társ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:688 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:690 #, java-format msgid "1 DHT peer" msgid_plural "{0} DHT peers" msgstr[0] "" msgstr[1] "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:695 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:697 msgid "Dest" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First page" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Prev" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Previous page" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next page" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last page" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:960 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:962 msgid "Data directory cannot be created" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1176 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:972 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1185 #, java-format msgid "Cannot add torrent {0} inside another torrent: {1}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:985 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:993 #, java-format msgid "Invalid URL: Must start with \"http://\", \"{0}\", or \"{1}\"" msgstr "Érvénytelen URL: \"http://\", \"{0}\", vagy \"{1}\" kell kezdÅ‘dnie" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1026 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1063 #, java-format msgid "Magnet deleted: {0}" msgstr "Mágnes észlelve: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1061 #, java-format -msgid "Torrent file deleted: {0}" -msgstr "Torrent fájl törölve: {0}" - -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1053 -#, java-format msgid "Download deleted: {0}" msgstr "Letöltés törölve: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1070 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1078 #, java-format msgid "Data file deleted: {0}" msgstr "Adatfájl törölve: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1072 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1089 #, java-format msgid "Data file could not be deleted: {0}" msgstr "Adatfájl törlése nem sikerült: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1097 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1105 #, java-format msgid "Directory could not be deleted: {0}" msgstr "Könyvtár nem törölhetÅ‘: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1112 #, java-format msgid "Directory deleted: {0}" msgstr "Könyvtár törölve: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1155 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1164 #, java-format msgid "Cannot add a torrent ending in \".torrent\": {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1160 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1169 #, java-format msgid "Torrent with this name is already running: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1175 #, java-format msgid "Cannot add a torrent including an I2P directory: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1181 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1190 #, java-format msgid "Cannot add torrent {0} including another torrent: {1}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1216 msgid "Error - Cannot include alternate trackers without a primary tracker" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1220 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1229 msgid "Error - Cannot mix private and public trackers in a torrent" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1251 #, java-format msgid "Torrent created for \"{0}\"" msgstr "Torrent létrehozva a következÅ‘nek: \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1244 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 #, java-format msgid "" "Many I2P trackers require you to register new torrents before seeding - " "please do so before starting \"{0}\"" msgstr "Sok I2P követÅ‘ (tracker) megköveteli az új torrentek regisztrációját táplálás (seed) elÅ‘tt - kérlek, regisztrálj, mielÅ‘tt elindÃtod a következÅ‘t: \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1255 #, java-format msgid "Error creating a torrent for \"{0}\"" msgstr "Hiba történt a torrent létrehozásakor \"{0}\" számára" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1250 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1259 #, java-format msgid "Cannot create a torrent for the nonexistent data: {0}" msgstr "Nem sikerült torrent létrehozása, nemlétezÅ‘ adat: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1262 msgid "Error creating torrent - you must enter a file or directory" msgstr "Hiba a torrent létrehozásakor - Fájl vagy könyvtár megadása kötelezÅ‘" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2406 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2430 msgid "Delete selected" msgstr "Kijelöltek törlése" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2408 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2432 msgid "Save tracker configuration" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1301 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1310 msgid "Removed" msgstr "EltávolÃtva" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1333 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2405 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2407 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1342 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2429 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2431 msgid "Add tracker" msgstr "KövetÅ‘ (tracker) hozzáadása" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1356 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1359 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1365 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1368 msgid "Enter valid tracker name and URLs" msgstr "Adj meg érvényes követÅ‘ (tracker) nevet és URL cÃmeket" #. "<input type=\"reset\" class=\"cancel\" #. value=\"").append(_t("Cancel")).append("\">\n" + -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1361 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2410 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1370 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2434 msgid "Restore defaults" msgstr "Alapértelmezések visszaállÃtása" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1373 msgid "Restored default trackers" msgstr "Alapértelmezett követÅ‘k (trackerek) visszaállÃtva" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1472 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1473 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1485 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1486 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2949 msgid "Checking" msgstr "EllenÅ‘rzés" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1475 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1476 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1489 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2956 msgid "Allocating" msgstr "Helyfoglalás" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1499 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1505 msgid "Tracker Error" msgstr "KövetÅ‘ (tracker) Hiba" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1492 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1522 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1527 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1538 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1543 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1554 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1507 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1537 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1542 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1553 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1558 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1569 #, java-format msgid "1 peer" msgid_plural "{0} peers" msgstr[0] "1 társ" msgstr[1] "{0} társ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1502 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1503 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1517 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1518 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2954 msgid "Starting" msgstr "IndÃtás" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1511 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1526 msgid "Seeding" msgstr "Táplálás (seeding)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1515 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1529 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1530 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2831 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1544 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2891 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3139 msgid "Complete" msgstr "Kész" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1534 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1535 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1540 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1541 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1550 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1555 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 msgid "OK" msgstr "Rendben" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1546 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1551 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1552 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1567 msgid "Stalled" msgstr "Beragadt" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1557 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1571 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1572 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1575 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1576 msgid "No Peers" msgstr "Nincsenek Társak" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1563 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1578 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1579 msgid "Stopped" msgstr "LeállÃtva" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1593 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1608 msgid "Torrent details" msgstr "Torrent részletek" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1628 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1643 msgid "View files" msgstr "Fájlok megtekintése" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1630 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1645 msgid "Open file" msgstr "Fájl megnyitása" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1682 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 msgid "Stop the torrent" msgstr "Torrent leállÃtása" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2961 msgid "Stop" msgstr "LeállÃtás" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 msgid "Start the torrent" msgstr "Torrent indÃtása" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1714 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2963 msgid "Start" msgstr "IndÃtás" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1727 msgid "Remove the torrent from the active list, deleting the .torrent file" msgstr "Torrent eltávolÃtása az aktÃv listáról, a .torrent fájl törlésével" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1717 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1732 #, java-format msgid "" "Are you sure you want to delete the file \\''{0}\\'' (downloaded data will " "not be deleted) ?" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1721 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1736 msgid "Remove" msgstr "EltávolÃtás" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1734 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1749 msgid "Delete the .torrent file and the associated data file(s)" msgstr ".torrent fájl törlése a hozzá tartozó adatfájlokkal együtt" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1739 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1754 #, java-format msgid "" "Are you sure you want to delete the torrent \\''{0}\\'' and all downloaded " "data?" msgstr "Biztos, hogy törlöd a következÅ‘ torrentet és az összes letöltött adatot: \\''{0}\\'' ?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1743 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1758 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2388 msgid "Delete" msgstr "Törlés" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1779 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1794 msgid "Unknown" msgstr "Ismeretlen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1791 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1806 msgid "Seed" msgstr "Táplálás (Seed)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1814 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1829 msgid "Uninteresting (The peer has no pieces we need)" msgstr "Érdektelen (társ nem rendelkezik számunkra szükséges részekkel)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1816 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1831 msgid "Choked (The peer is not allowing us to request pieces)" msgstr "EltömÅ‘dött (a társ nem engedi részek igénylését)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1851 msgid "Uninterested (We have no pieces the peer needs)" msgstr "Érdektelen (nem rendelkezünk a társak számára szükséges részekkel)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1838 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1853 msgid "Choking (We are not allowing the peer to request pieces)" msgstr "EltömÅ‘dött (a társak számára a részek igénylése nem engedélyezett)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1954 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1969 #, java-format msgid "Details at {0} tracker" msgstr "Részletek a következÅ‘ követÅ‘n (tracker): {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1971 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1986 msgid "Info" msgstr "Infó" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 msgid "Add Torrent" msgstr "Torrent Hozzáadása" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 msgid "From URL" msgstr "URL cÃmrÅ‘l" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2050 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2065 msgid "" "Enter the torrent file download URL (I2P only), magnet link, maggot link, or" " info hash" msgstr "Add meg a torrent fájl letöltési URL-jét (csak I2P), mágnes linket, maggot linket vagy infó hash-t" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2070 msgid "Add torrent" msgstr "Torrent hozzáadása" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2074 msgid "Data dir" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2077 #, java-format msgid "Enter the directory to save the data in (default {0})" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2066 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 #, java-format msgid "You can also copy .torrent files to: {0}." msgstr "Másolhatsz .torrent fájlokat a következÅ‘höz is: {0}." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2068 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2083 msgid "Removing a .torrent will cause it to stop." msgstr "A .torrent fájl eltávolÃtásával meg fog állni." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2096 msgid "Create Torrent" msgstr "Torrent létrehozása" #. out.write("From file: <input type=\"file\" name=\"newFile\" size=\"50\" #. value=\"" + newFile + "\" /><br>\n"); -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2084 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2099 msgid "Data to seed" msgstr "Adat táplálásra (seed)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2088 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2103 #, java-format msgid "File or directory to seed (full path or within the directory {0} )" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2091 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2337 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2106 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2361 msgid "Trackers" msgstr "KövetÅ‘k (trackerek)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2093 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2108 msgid "Primary" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2095 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2110 msgid "Alternates" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2098 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2113 msgid "Create torrent" msgstr "Torrent létrehozása" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2116 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2131 msgid "none" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2153 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2169 msgid "Data directory" msgstr "Adatkönyvtár" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2158 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 msgid "Files readable by all" msgstr "Mindenki által olvasható fájlok" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2162 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2178 msgid "If checked, other users may access the downloaded files" msgstr "Ha be van jelölve, más felhasználók is elérhetik a letöltött fájlokat" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2182 msgid "Auto start torrents" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2170 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2186 msgid "If checked, automatically start torrents that are added" msgstr "Ha be van jelölve, a hozzáadott torrentek automatikusan elindulnak" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2190 +msgid "Smart torrent sorting" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2194 +msgid "If checked, ignore words such as 'the' when sorting" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2198 msgid "Theme" msgstr "Téma" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2188 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2212 msgid "Refresh time" msgstr "IdÅ‘ frissÃtése" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2201 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2225 msgid "Never" msgstr "Soha" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2231 msgid "Startup delay" msgstr "IndÃtási késleltetés" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2209 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2233 msgid "minutes" msgstr "perc" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2213 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2237 msgid "Page size" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2215 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 msgid "torrents" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 msgid "Total uploader limit" msgstr "Teljes feltöltÅ‘k korlát" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2266 msgid "peers" msgstr "társak" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2270 msgid "Up bandwidth limit" msgstr "Feltöltési sávszélesség korlát" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2249 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2273 msgid "Half available bandwidth recommended." msgstr "A rendelkezésre álló sávszélesség fele javasolt." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2251 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2275 msgid "View or change router bandwidth" msgstr "A router sávszélesség megtekintése vagy megváltoztatása" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2255 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2279 msgid "Use open trackers also" msgstr "NyÃlt követÅ‘ket (tracker) is használjon" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2259 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 msgid "" "If checked, announce torrents to open trackers as well as the tracker listed" " in the torrent file" msgstr "Ha be van jelölve, bejelenti a torrenteket a nyÃlt követÅ‘kre (tracker) és torrent fájlban feltüntetett követÅ‘re is" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2287 msgid "Enable DHT" msgstr "DHT engedélyezése" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2267 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2291 msgid "If checked, use DHT" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2307 msgid "Inbound Settings" msgstr "BejövÅ‘ BeállÃtások" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2313 msgid "Outbound Settings" msgstr "KimenÅ‘ BeállÃtások" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2297 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2321 msgid "I2CP host" msgstr "I2CP hoszt" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2302 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2326 msgid "I2CP port" msgstr "I2CP port" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2341 msgid "I2CP options" msgstr "I2CP opciók" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2322 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 msgid "Save configuration" msgstr "BeállÃtások mentése" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2342 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2366 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "Name" msgstr "Név" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2344 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2368 msgid "Website URL" msgstr "Weboldal URL" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2370 msgid "Standard" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2348 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2372 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3172 msgid "Open" msgstr "Megnyitás" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2350 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2374 msgid "Private" msgstr "Privát" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2352 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2376 msgid "Announce URL" msgstr "Bejelentési URL" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2396 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2420 msgid "Add" msgstr "Hozzáadás" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2439 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2463 #, java-format msgid "Invalid magnet URL {0}" msgstr "Érvénytelen mágnes URL {0}" #. * dummies for translation -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2447 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2471 #, java-format msgid "1 hop" msgid_plural "{0} hops" msgstr[0] "1 ugrás" msgstr[1] "{0} ugrás" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2448 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2472 #, java-format msgid "1 tunnel" msgid_plural "{0} tunnels" msgstr[0] "1 alagút" msgstr[1] "{0} alagút" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2691 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2728 msgid "Torrent file" msgstr "Torrent fájl" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 msgid "Data location" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2708 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2745 msgid "Info hash" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2727 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2764 msgid "Primary Tracker" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2773 msgid "Tracker List" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2761 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2798 msgid "Comment" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2771 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2812 msgid "Created" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2782 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2823 msgid "Created By" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2794 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2833 +msgid "Added" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2842 +msgid "Completed" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2854 msgid "Magnet link" msgstr "Mágnes link" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2807 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2867 msgid "Private torrent" msgstr "Privát torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2827 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2887 msgid "Completion" msgstr "Befejezés" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2856 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2916 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 msgid "Remaining" msgstr "HátralévÅ‘" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2926 msgid "Files" msgstr "Fájlok" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2873 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 msgid "Pieces" msgstr "Részek" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2879 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2939 msgid "Piece size" msgstr "Rész méret" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2952 +msgid "Refresh page for results" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2964 +msgid "Force Recheck" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3025 msgid "Directory" msgstr "Könyvtár" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2992 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3084 msgid "Priority" msgstr "Prioritás" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3004 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3096 msgid "Up to higher level directory" msgstr "Vissza a felsÅ‘bb szintű könyvtárba" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3038 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3130 msgid "Torrent not found?" msgstr "Torrent nem található?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3136 msgid "File not found in torrent?" msgstr "File nem található a torrentben?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3057 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3149 msgid "complete" msgstr "kész" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3058 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3150 msgid "remaining" msgstr "hátralévÅ‘" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3196 msgid "High" msgstr "Magas" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3109 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3201 msgid "Normal" msgstr "Normál" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3114 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3206 msgid "Skip" msgstr "Kihagy" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3124 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3216 msgid "Set all high" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3126 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3218 msgid "Set all normal" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3128 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3220 msgid "Skip all" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3129 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3221 msgid "Save priorities" msgstr "Tulajdonságok mentése" diff --git a/apps/i2psnark/locale/messages_it.po b/apps/i2psnark/locale/messages_it.po index e0315ca1941b3e7ab26aab3e2b59049a6a8140c6..b97d05b67c15b2b5c3be608e6efdf99a8ed8b7d9 100644 --- a/apps/i2psnark/locale/messages_it.po +++ b/apps/i2psnark/locale/messages_it.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:09+0000\n" -"PO-Revision-Date: 2015-07-17 01:32+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-05 17:17+0000\n" "Last-Translator: kytv <killyourtv@i2pmail.org>\n" -"Language-Team: Italian (http://www.transifex.com/projects/p/I2P/language/it/)\n" +"Language-Team: Italian (http://www.transifex.com/otf/I2P/language/it/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -29,222 +29,230 @@ msgid "No more torrents running." msgstr "" #: ../java/src/org/klomp/snark/IdleChecker.java:76 -#: ../java/src/org/klomp/snark/SnarkManager.java:2392 -#: ../java/src/org/klomp/snark/SnarkManager.java:2403 +#: ../java/src/org/klomp/snark/SnarkManager.java:2539 +#: ../java/src/org/klomp/snark/SnarkManager.java:2550 msgid "I2P tunnel closed." msgstr "Tunnel I2P chiuso." #: ../java/src/org/klomp/snark/MagnetURI.java:42 #: ../java/src/org/klomp/snark/MagnetURI.java:52 -#: ../java/src/org/klomp/snark/SnarkManager.java:2096 +#: ../java/src/org/klomp/snark/SnarkManager.java:2221 msgid "Magnet" msgstr "Magnet" -#: ../java/src/org/klomp/snark/SnarkManager.java:772 +#: ../java/src/org/klomp/snark/SnarkManager.java:791 #, java-format msgid "Total uploaders limit changed to {0}" msgstr "Limite del totale di uploaders modificato a {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:774 +#: ../java/src/org/klomp/snark/SnarkManager.java:793 #, java-format msgid "Minimum total uploaders limit is {0}" msgstr "Il minimo limite del totale di uploaders è {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:786 +#: ../java/src/org/klomp/snark/SnarkManager.java:805 #, java-format msgid "Up BW limit changed to {0}KBps" msgstr "Il minimo limite della banda in up modificato a {0}KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:788 +#: ../java/src/org/klomp/snark/SnarkManager.java:807 #, java-format msgid "Minimum up bandwidth limit is {0}KBps" msgstr "Il minimo limite della banda in up è {0}KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:800 +#: ../java/src/org/klomp/snark/SnarkManager.java:819 #, java-format msgid "Startup delay changed to {0}" msgstr "Ritardo startup modificato a {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:811 +#: ../java/src/org/klomp/snark/SnarkManager.java:830 #, java-format msgid "Refresh time changed to {0}" msgstr "Tempo di aggiornamento cambiato in {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:813 +#: ../java/src/org/klomp/snark/SnarkManager.java:832 msgid "Refresh disabled" msgstr "Aggiornamento disabilitato" -#: ../java/src/org/klomp/snark/SnarkManager.java:829 +#: ../java/src/org/klomp/snark/SnarkManager.java:848 #, java-format msgid "Page size changed to {0}" msgstr "Dimensione pagina cambiata a {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:838 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:956 +#: ../java/src/org/klomp/snark/SnarkManager.java:857 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:958 msgid "Data directory must be an absolute path" msgstr "La cartella dei dati deve essere un percorso assoluto" -#: ../java/src/org/klomp/snark/SnarkManager.java:840 +#: ../java/src/org/klomp/snark/SnarkManager.java:859 msgid "Data directory does not exist" msgstr "La cartella dei dati non esiste" -#: ../java/src/org/klomp/snark/SnarkManager.java:842 +#: ../java/src/org/klomp/snark/SnarkManager.java:861 msgid "Not a directory" msgstr "Non è una cartella" -#: ../java/src/org/klomp/snark/SnarkManager.java:844 +#: ../java/src/org/klomp/snark/SnarkManager.java:863 msgid "Unreadable" msgstr "Illeggibile" -#: ../java/src/org/klomp/snark/SnarkManager.java:849 +#: ../java/src/org/klomp/snark/SnarkManager.java:868 #, java-format msgid "Data directory changed to {0}" msgstr "Cartella dei dati cambiata a {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:904 +#: ../java/src/org/klomp/snark/SnarkManager.java:923 msgid "I2CP and tunnel changes will take effect after stopping all torrents" msgstr "I cambiamenti di tunnel ed I2CP saranno effettivi dopo aver fermato tutti i torrent " -#: ../java/src/org/klomp/snark/SnarkManager.java:908 +#: ../java/src/org/klomp/snark/SnarkManager.java:927 #, java-format msgid "I2CP options changed to {0}" msgstr "Opzioni I2CP modificate in {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:914 +#: ../java/src/org/klomp/snark/SnarkManager.java:933 msgid "Disconnecting old I2CP destination" msgstr "La vecchia destinazione I2CP è in disconnessione" -#: ../java/src/org/klomp/snark/SnarkManager.java:916 +#: ../java/src/org/klomp/snark/SnarkManager.java:935 #, java-format msgid "I2CP settings changed to {0}" msgstr "Impostazioni I2CP cambiate a {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:921 +#: ../java/src/org/klomp/snark/SnarkManager.java:940 msgid "" "Unable to connect with the new settings, reverting to the old I2CP settings" msgstr "Impossibile connettersi con le nuove impostazioni, ritorno alle vecchie impostazioni I2CP" -#: ../java/src/org/klomp/snark/SnarkManager.java:925 +#: ../java/src/org/klomp/snark/SnarkManager.java:944 msgid "Unable to reconnect with the old settings!" msgstr "Impossibile riconnettersi con le vecchie impostazioni!" -#: ../java/src/org/klomp/snark/SnarkManager.java:927 +#: ../java/src/org/klomp/snark/SnarkManager.java:946 msgid "Reconnected on the new I2CP destination" msgstr "Riconnesso sulla nuova destinazione I2CP" -#: ../java/src/org/klomp/snark/SnarkManager.java:934 +#: ../java/src/org/klomp/snark/SnarkManager.java:953 #, java-format msgid "I2CP listener restarted for \"{0}\"" msgstr "Listener I2CP riavviato per \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:948 +#: ../java/src/org/klomp/snark/SnarkManager.java:967 msgid "New files will be publicly readable" msgstr "I nuovi file saranno visibili pubblicamente" -#: ../java/src/org/klomp/snark/SnarkManager.java:950 +#: ../java/src/org/klomp/snark/SnarkManager.java:969 msgid "New files will not be publicly readable" msgstr "I nuovi file non saranno visibili pubblicamente" -#: ../java/src/org/klomp/snark/SnarkManager.java:957 +#: ../java/src/org/klomp/snark/SnarkManager.java:976 msgid "Enabled autostart" msgstr "Autostart abilitato" -#: ../java/src/org/klomp/snark/SnarkManager.java:959 +#: ../java/src/org/klomp/snark/SnarkManager.java:978 msgid "Disabled autostart" msgstr "Autostart disabilitato" -#: ../java/src/org/klomp/snark/SnarkManager.java:965 +#: ../java/src/org/klomp/snark/SnarkManager.java:985 +msgid "Enabled smart sort" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:987 +msgid "Disabled smart sort" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:994 msgid "Enabled open trackers - torrent restart required to take effect." msgstr "Tracker aperti abilitati - è richiesto il riavvio dei torrent perchè la modifica abbia effetto." -#: ../java/src/org/klomp/snark/SnarkManager.java:967 +#: ../java/src/org/klomp/snark/SnarkManager.java:996 msgid "Disabled open trackers - torrent restart required to take effect." msgstr "Tracker aperti disabilitati - è richiesto il riavvio dei torrent perchè la modifica abbia effetto." -#: ../java/src/org/klomp/snark/SnarkManager.java:974 +#: ../java/src/org/klomp/snark/SnarkManager.java:1003 msgid "Enabled DHT." msgstr "Abilita DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:976 +#: ../java/src/org/klomp/snark/SnarkManager.java:1005 msgid "Disabled DHT." msgstr "Disabilita DHT" -#: ../java/src/org/klomp/snark/SnarkManager.java:978 +#: ../java/src/org/klomp/snark/SnarkManager.java:1007 msgid "DHT change requires tunnel shutdown and reopen" msgstr "La modifica DHT richiede il riavvio dei tunnel" -#: ../java/src/org/klomp/snark/SnarkManager.java:985 +#: ../java/src/org/klomp/snark/SnarkManager.java:1014 #, java-format msgid "{0} theme loaded, return to main i2psnark page to view." msgstr "{0} tema caricato, ritornare alla pagina i2psnark principale per vederlo." -#: ../java/src/org/klomp/snark/SnarkManager.java:995 +#: ../java/src/org/klomp/snark/SnarkManager.java:1024 msgid "Configuration unchanged." msgstr "Configurazione non modificata." -#: ../java/src/org/klomp/snark/SnarkManager.java:1027 +#: ../java/src/org/klomp/snark/SnarkManager.java:1056 msgid "Open Tracker list changed - torrent restart required to take effect." msgstr "Lista dei tracker aperti modificata - è richiesto il riavvio dei torrent perchè la modifica abbia effetto." -#: ../java/src/org/klomp/snark/SnarkManager.java:1037 +#: ../java/src/org/klomp/snark/SnarkManager.java:1066 msgid "Private tracker list changed - affects newly created torrents only." msgstr "Elenco tracker privati modificato - solo per i nuovi torrent creati." -#: ../java/src/org/klomp/snark/SnarkManager.java:1083 +#: ../java/src/org/klomp/snark/SnarkManager.java:1112 #, java-format msgid "Unable to save the config to {0}" msgstr "Impossibile salvare la configurazione su {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1164 +#: ../java/src/org/klomp/snark/SnarkManager.java:1193 msgid "Connecting to I2P" msgstr "In connessione a I2P" -#: ../java/src/org/klomp/snark/SnarkManager.java:1167 +#: ../java/src/org/klomp/snark/SnarkManager.java:1196 msgid "Error connecting to I2P - check your I2CP settings!" msgstr "Errore nella connessione a I2P - controlla le tue impostazioni I2CP!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1176 -#: ../java/src/org/klomp/snark/SnarkManager.java:2133 +#: ../java/src/org/klomp/snark/SnarkManager.java:1205 +#: ../java/src/org/klomp/snark/SnarkManager.java:2270 #, java-format msgid "Error: Could not add the torrent {0}" msgstr "Errore: Non è stato possibile aggiungere il torrent {0}" #. catch this here so we don't try do delete it below -#: ../java/src/org/klomp/snark/SnarkManager.java:1199 +#: ../java/src/org/klomp/snark/SnarkManager.java:1228 #, java-format msgid "Cannot open \"{0}\"" msgstr "Impossibile aprire \"{0}\"" #. TODO - if the existing one is a magnet, delete it and add the metainfo #. instead? -#: ../java/src/org/klomp/snark/SnarkManager.java:1218 -#: ../java/src/org/klomp/snark/SnarkManager.java:1352 -#: ../java/src/org/klomp/snark/SnarkManager.java:1440 +#: ../java/src/org/klomp/snark/SnarkManager.java:1247 +#: ../java/src/org/klomp/snark/SnarkManager.java:1388 +#: ../java/src/org/klomp/snark/SnarkManager.java:1476 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:166 #, java-format msgid "Torrent with this info hash is already running: {0}" msgstr "Un torrent con questo info hash è già attivo: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1224 +#: ../java/src/org/klomp/snark/SnarkManager.java:1253 #, java-format msgid "ERROR - No I2P trackers in private torrent \"{0}\"" msgstr "ERRORE - Nessun tracker I2P nel torrent privato \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:1226 +#: ../java/src/org/klomp/snark/SnarkManager.java:1255 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", will announce to I2P open trackers and" " DHT only." msgstr "Attenzione - No i2P trackers entranti (in) \"{0}\", sarà richiesto alla rete i2P di aprire solamente trackers e peers DHT" -#: ../java/src/org/klomp/snark/SnarkManager.java:1229 +#: ../java/src/org/klomp/snark/SnarkManager.java:1258 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and open trackers are disabled, will " "announce to DHT only." msgstr "Attenzione - No i2P trackers entranti (in) \"{0}\", l'apertura di trackers è disabilitata e sarà richiesto di aprire solo peers DHT" -#: ../java/src/org/klomp/snark/SnarkManager.java:1231 +#: ../java/src/org/klomp/snark/SnarkManager.java:1260 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and DHT and open trackers are " @@ -252,34 +260,46 @@ msgid "" "torrent." msgstr "Attenzione - No i2P trackers entranti (in) \"{0}\", l'apertura di trackers e client DHT sono disabilitati. Dovresti, prima di far partire un torrent, abilitare l'apertura di trackers o peers DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:1257 +#: ../java/src/org/klomp/snark/SnarkManager.java:1286 #, java-format msgid "Torrent in \"{0}\" is invalid" msgstr "Il torrent in \"{0}\" non è valido" -#: ../java/src/org/klomp/snark/SnarkManager.java:1264 +#: ../java/src/org/klomp/snark/SnarkManager.java:1292 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1042 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1069 +#, java-format +msgid "Torrent file deleted: {0}" +msgstr "File torrent eliminato: {0}" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1295 +#, java-format +msgid "Torrent file moved from {0} to {1}" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1299 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:193 #, java-format msgid "ERROR - Out of memory, cannot create torrent from {0}" msgstr "ERRORE - Memoria piena, impossibile creare torrent da {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1285 +#: ../java/src/org/klomp/snark/SnarkManager.java:1321 #, java-format -msgid "Torrent added and started: \"{0}\"" -msgstr "Torrent aggounto e avviato: \"{0}\"" +msgid "Torrent added and started: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1287 +#: ../java/src/org/klomp/snark/SnarkManager.java:1323 #, java-format -msgid "Torrent added: \"{0}\"" -msgstr "Torrent aggiunto: \"{0}\"" +msgid "Torrent added: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1363 +#: ../java/src/org/klomp/snark/SnarkManager.java:1399 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:93 #, java-format msgid "Fetching {0}" msgstr "Recupero di {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1369 +#: ../java/src/org/klomp/snark/SnarkManager.java:1405 #, java-format msgid "" "Open trackers are disabled and we have no DHT peers. Fetch of {0} may not " @@ -287,131 +307,146 @@ msgid "" "DHT." msgstr "I trackers aperti sono disabilitati e non ci sono peers DHT. Il recupero {0} potrebbe non riuscire fino a che non fai partire un altro torrent, abiliti i trackers aperti o abiliti il DHT. " -#: ../java/src/org/klomp/snark/SnarkManager.java:1373 +#: ../java/src/org/klomp/snark/SnarkManager.java:1409 #, java-format msgid "Adding {0}" msgstr "{0} in aggiunta" -#: ../java/src/org/klomp/snark/SnarkManager.java:1406 +#: ../java/src/org/klomp/snark/SnarkManager.java:1442 #, java-format msgid "Download already running: {0}" msgstr "Download già attivo: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1451 -#: ../java/src/org/klomp/snark/SnarkManager.java:1477 -#: ../java/src/org/klomp/snark/SnarkManager.java:2052 +#: ../java/src/org/klomp/snark/SnarkManager.java:1487 +#: ../java/src/org/klomp/snark/SnarkManager.java:1513 +#: ../java/src/org/klomp/snark/SnarkManager.java:2151 #, java-format msgid "Failed to copy torrent file to {0}" msgstr "Fallimento nella copia del file torrent su {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1828 +#: ../java/src/org/klomp/snark/SnarkManager.java:1927 #, java-format -msgid "Too many files in \"{0}\" ({1}), deleting it!" -msgstr "Troppi file in \"{0}\" ({1}), in rimozione!" +msgid "Too many files in \"{0}\" ({1})!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1830 +#: ../java/src/org/klomp/snark/SnarkManager.java:1929 #, java-format -msgid "Torrent file \"{0}\" cannot end in \".torrent\", deleting it!" -msgstr "Il file torrent \"{0}\" non può finire in \".torrent\", in rimozione!" +msgid "Torrent file \"{0}\" cannot end in \".torrent\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1832 +#: ../java/src/org/klomp/snark/SnarkManager.java:1931 #, java-format -msgid "No pieces in \"{0}\", deleting it!" -msgstr "Non ci sono pezzi in \"{0}\", in rimozione!" +msgid "No pieces in \"{0}\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1834 +#: ../java/src/org/klomp/snark/SnarkManager.java:1933 #, java-format -msgid "Too many pieces in \"{0}\", limit is {1}, deleting it!" -msgstr "Troppi pezzi in \"{0}\", il limite è {1}, in rimozione!" +msgid "Too many pieces in \"{0}\", limit is {1}!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1836 +#: ../java/src/org/klomp/snark/SnarkManager.java:1935 #, java-format -msgid "Pieces are too large in \"{0}\" ({1}B), deleting it." -msgstr "I pezzi sono troppo larghi in \"{0}\" ({1}B), in rimozione." +msgid "Pieces are too large in \"{0}\" ({1}B)!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1837 +#: ../java/src/org/klomp/snark/SnarkManager.java:1936 #, java-format msgid "Limit is {0}B" msgstr "Il limite è {0}B" -#: ../java/src/org/klomp/snark/SnarkManager.java:1839 +#: ../java/src/org/klomp/snark/SnarkManager.java:1938 #, java-format -msgid "Torrent \"{0}\" has no data, deleting it!" -msgstr "Il torrent \"{0}\" non ha dati, in rimozione!" +msgid "Torrent \"{0}\" has no data!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1847 +#: ../java/src/org/klomp/snark/SnarkManager.java:1946 #, java-format -msgid "Torrents larger than {0}B are not supported yet, deleting \"{1}\"" -msgstr "Torrent più grandi di {0}B non sono ancora supportati, \"{1}\" in rimozione" +msgid "Torrents larger than {0}B are not supported yet \"{1}\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1864 +#: ../java/src/org/klomp/snark/SnarkManager.java:1963 #, java-format msgid "Error: Could not remove the torrent {0}" msgstr "Errore: Non è stato possibile rimuovere il torrent {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1887 -#: ../java/src/org/klomp/snark/SnarkManager.java:1906 +#: ../java/src/org/klomp/snark/SnarkManager.java:1986 +#: ../java/src/org/klomp/snark/SnarkManager.java:2005 #, java-format -msgid "Torrent stopped: \"{0}\"" -msgstr "Torrent fermato: \"{0}\"" +msgid "Torrent stopped: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1926 +#: ../java/src/org/klomp/snark/SnarkManager.java:2025 #, java-format msgid "Torrent removed: \"{0}\"" msgstr "Torrent rimosso: \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:1934 +#: ../java/src/org/klomp/snark/SnarkManager.java:2033 #, java-format msgid "Adding torrents in {0}" msgstr "Torrent in aggiunta in {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1966 +#: ../java/src/org/klomp/snark/SnarkManager.java:2067 #, java-format msgid "Up bandwidth limit is {0} KBps" msgstr "La banda di Upload massima è {0} KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:1993 +#: ../java/src/org/klomp/snark/SnarkManager.java:2092 #, java-format msgid "Download finished: {0}" msgstr "Download completato: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2048 +#: ../java/src/org/klomp/snark/SnarkManager.java:2147 #, java-format msgid "Metainfo received for {0}" msgstr "Metainfo ricevute per {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2049 -#: ../java/src/org/klomp/snark/SnarkManager.java:2280 +#: ../java/src/org/klomp/snark/SnarkManager.java:2148 +#: ../java/src/org/klomp/snark/SnarkManager.java:2431 #, java-format msgid "Starting up torrent {0}" msgstr "Avvio del torrent {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2064 +#: ../java/src/org/klomp/snark/SnarkManager.java:2163 #, java-format msgid "Error on torrent {0}" msgstr "Errore sul torrent {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2127 +#: ../java/src/org/klomp/snark/SnarkManager.java:2264 msgid "Unable to connect to I2P!" msgstr "Impossibile connettersi a I2P!" -#: ../java/src/org/klomp/snark/SnarkManager.java:2279 +#: ../java/src/org/klomp/snark/SnarkManager.java:2430 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:130 msgid "Opening the I2P tunnel" msgstr "Apertura tunnel I2P" -#: ../java/src/org/klomp/snark/SnarkManager.java:2303 +#: ../java/src/org/klomp/snark/SnarkManager.java:2450 msgid "Opening the I2P tunnel and starting all torrents." msgstr "Avvio di tutti i torrent e apertura del tunnel I2P in corso. " -#: ../java/src/org/klomp/snark/SnarkManager.java:2366 +#: ../java/src/org/klomp/snark/SnarkManager.java:2513 msgid "Stopping all torrents and closing the I2P tunnel." msgstr "Stop di tutti i torrent e chiusura del tunnel I2P in corso." -#: ../java/src/org/klomp/snark/SnarkManager.java:2385 +#: ../java/src/org/klomp/snark/SnarkManager.java:2532 msgid "Closing I2P tunnel after notifying trackers." msgstr "Chiusura tunnel I2P dopo la notifica ai trackers." +#: ../java/src/org/klomp/snark/SnarkManager.java:2594 +#, java-format +msgid "Finished recheck of torrent {0}, now {1} complete" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2596 +#, java-format +msgid "Finished recheck of torrent {0}, unchanged" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2600 +#, java-format +msgid "Error checking the torrent {0}" +msgstr "" + #: ../java/src/org/klomp/snark/TrackerClient.java:245 #, java-format msgid "No valid trackers for {0} - enable opentrackers or DHT?" @@ -457,891 +492,913 @@ msgstr "Torrent già in coda: {0}" msgid "Torrent at {0} was not valid" msgstr "Il torrent a {0} non è stato valido" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:268 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:311 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:322 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1763 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2662 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:270 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:313 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:324 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1778 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2698 msgid "I2PSnark" msgstr "I2PSnark" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:273 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2149 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2422 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2165 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2446 msgid "Configuration" msgstr "Configurazione" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:277 msgid "Anonymous BitTorrent Client" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:291 msgid "Router is down" msgstr "Il router non è in funzione" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:306 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:308 msgid "Torrents" msgstr "Torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:319 msgid "Refresh page" msgstr "Ricarica pagina" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:326 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:328 msgid "Forum" msgstr "Forum" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:341 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:343 msgid "Click \"Add torrent\" button to fetch torrent" msgstr "Clicca il bottone \"Aggiungi torrent\" per scaricare il torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:394 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:396 msgid "clear messages" msgstr "pulisci messaggi" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:449 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2980 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3072 msgid "Status" msgstr "Stato" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2994 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:453 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3086 #, java-format msgid "Sort by {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:462 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:464 msgid "Hide Peers" msgstr "Nascondi Peers" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:468 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:470 msgid "Show Peers" msgstr "Mostra Peers" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:491 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2648 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2718 msgid "Torrent" msgstr "Torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "File type" msgstr "" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:509 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 msgid "ETA" msgstr "ETA" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:512 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:514 msgid "Estimated time remaining" msgstr "Stima del tempo rimanente" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:535 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 msgid "RX" msgstr "RX" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:538 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:540 msgid "Downloaded" msgstr "Scaricato" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2818 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2968 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2878 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3060 msgid "Size" msgstr "Dimensione" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 msgid "TX" msgstr "TX" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2896 msgid "Upload ratio" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:569 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:571 msgid "Uploaded" msgstr "Inviato" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:581 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 msgid "RX Rate" msgstr "Velocità Ricezione (RX) " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:584 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:586 msgid "Down Rate" msgstr "Tasso di Download" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:596 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 msgid "TX Rate" msgstr "Velocità Trasmissione (TX)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:599 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:601 msgid "Up Rate" msgstr "Tasso di Upload" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:615 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 msgid "Stop all torrents and the I2P tunnel" msgstr "Ferma tutti i torrent e il tunnel I2P" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:619 msgid "Stop All" msgstr "Ferma Tutto" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:629 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 msgid "Start all stopped torrents" msgstr "Avvia tutti i torrent fermati" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:633 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:647 msgid "Start All" msgstr "Avvia Tutti" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:643 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 msgid "Start all torrents and the I2P tunnel" msgstr "Avvia tutti i torrent e il tunnel I2P" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:668 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:670 msgid "No torrents loaded." msgstr "Nessun torrent caricato." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:674 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 msgid "Totals" msgstr "Totali" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:678 #, java-format msgid "1 torrent" msgid_plural "{0} torrents" msgstr[0] "1 torrent" msgstr[1] "{0} torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:683 #, java-format msgid "1 connected peer" msgid_plural "{0} connected peers" msgstr[0] "1 peer connesso" msgstr[1] "{0} peer connessi" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:688 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:690 #, java-format msgid "1 DHT peer" msgid_plural "{0} DHT peers" msgstr[0] "uno: 1 DHT peer" msgstr[1] "altri: {0} DHT peers" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:695 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:697 msgid "Dest" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First" msgstr "Primo" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First page" msgstr "Prima pagina" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Prev" msgstr "Ind" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Previous page" msgstr "Pagina precedente" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next" msgstr "Avanti" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next page" msgstr "Pagina successiva" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last" msgstr "Ultimo" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last page" msgstr "Ultima pagina" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:960 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:962 msgid "Data directory cannot be created" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1176 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:972 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1185 #, java-format msgid "Cannot add torrent {0} inside another torrent: {1}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:985 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:993 #, java-format msgid "Invalid URL: Must start with \"http://\", \"{0}\", or \"{1}\"" msgstr "URL non valido: Deve cominciare con \"http://\", \"{0}\", o \"{1}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1026 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1063 #, java-format msgid "Magnet deleted: {0}" msgstr "Magnet eliminato: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1061 #, java-format -msgid "Torrent file deleted: {0}" -msgstr "File torrent eliminato: {0}" - -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1053 -#, java-format msgid "Download deleted: {0}" msgstr "Downloads cancellati: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1070 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1078 #, java-format msgid "Data file deleted: {0}" msgstr "File di dati eliminato: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1072 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1089 #, java-format msgid "Data file could not be deleted: {0}" msgstr "Non è stato possibile eliminare il file di dati: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1097 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1105 #, java-format msgid "Directory could not be deleted: {0}" msgstr "La Cartella non può essere cancellata: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1112 #, java-format msgid "Directory deleted: {0}" msgstr "Cartella cancellata: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1155 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1164 #, java-format msgid "Cannot add a torrent ending in \".torrent\": {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1160 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1169 #, java-format msgid "Torrent with this name is already running: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1175 #, java-format msgid "Cannot add a torrent including an I2P directory: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1181 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1190 #, java-format msgid "Cannot add torrent {0} including another torrent: {1}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1216 msgid "Error - Cannot include alternate trackers without a primary tracker" msgstr "Errore - Impossibile includere tracker alternativi senza un tracker primario" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1220 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1229 msgid "Error - Cannot mix private and public trackers in a torrent" msgstr "Errore - Impossibile fare un mix di tracker privati e pubblici in un torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1251 #, java-format msgid "Torrent created for \"{0}\"" msgstr "Torrent creato per \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1244 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 #, java-format msgid "" "Many I2P trackers require you to register new torrents before seeding - " "please do so before starting \"{0}\"" msgstr "Molti tracker I2P ti richiedono di registrare nuovi torrent prima del seeding - per cortesia fallo, prima di avviare \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1255 #, java-format msgid "Error creating a torrent for \"{0}\"" msgstr "Errore nella creazione di un torrent per \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1250 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1259 #, java-format msgid "Cannot create a torrent for the nonexistent data: {0}" msgstr "Impossibile creare un torrent per i dati nonesistenti: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1262 msgid "Error creating torrent - you must enter a file or directory" msgstr "Errore nella creazione del torrent - devi inserire un file o una directory" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2406 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2430 msgid "Delete selected" msgstr "Elimina selezionati" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2408 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2432 msgid "Save tracker configuration" msgstr "Salva configurazione tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1301 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1310 msgid "Removed" msgstr "Rimosso" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1333 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2405 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2407 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1342 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2429 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2431 msgid "Add tracker" msgstr "Aggiungi tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1356 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1359 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1365 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1368 msgid "Enter valid tracker name and URLs" msgstr "Inserisci nome e URL validi per il tracker" #. "<input type=\"reset\" class=\"cancel\" #. value=\"").append(_t("Cancel")).append("\">\n" + -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1361 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2410 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1370 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2434 msgid "Restore defaults" msgstr "Ripristina" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1373 msgid "Restored default trackers" msgstr "Ripristina tracker di default" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1472 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1473 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1485 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1486 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2949 msgid "Checking" msgstr "Controllo (Check)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1475 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1476 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1489 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2956 msgid "Allocating" msgstr "Allocando" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1499 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1505 msgid "Tracker Error" msgstr "Errore del Tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1492 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1522 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1527 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1538 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1543 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1554 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1507 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1537 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1542 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1553 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1558 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1569 #, java-format msgid "1 peer" msgid_plural "{0} peers" msgstr[0] "1 peer" msgstr[1] "{0} peers" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1502 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1503 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1517 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1518 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2954 msgid "Starting" msgstr "In partenza" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1511 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1526 msgid "Seeding" msgstr "Seeding" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1515 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1529 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1530 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2831 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1544 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2891 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3139 msgid "Complete" msgstr "Completo" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1534 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1535 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1540 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1541 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1550 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1555 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 msgid "OK" msgstr "OK" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1546 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1551 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1552 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1567 msgid "Stalled" msgstr "In Stallo" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1557 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1571 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1572 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1575 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1576 msgid "No Peers" msgstr "Nessun Peer" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1563 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1578 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1579 msgid "Stopped" msgstr "Fermato" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1593 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1608 msgid "Torrent details" msgstr "Dettagli torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1628 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1643 msgid "View files" msgstr "Vedi files" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1630 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1645 msgid "Open file" msgstr "Apri file" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1682 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 msgid "Stop the torrent" msgstr "Ferma il torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2961 msgid "Stop" msgstr "Ferma" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 msgid "Start the torrent" msgstr "Avvia il torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1714 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2963 msgid "Start" msgstr "Avvia" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1727 msgid "Remove the torrent from the active list, deleting the .torrent file" msgstr "Rimuovi il torrent dalla lista attiva eliminando il file .torrent" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1717 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1732 #, java-format msgid "" "Are you sure you want to delete the file \\''{0}\\'' (downloaded data will " "not be deleted) ?" msgstr "Sei sicuro di voler cancellare il file \\\"{0}\\\" (i dati scaricati non verranno cancellati)?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1721 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1736 msgid "Remove" msgstr "Rimuovi" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1734 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1749 msgid "Delete the .torrent file and the associated data file(s)" msgstr "Elimina il file .torrent e i file dati associati" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1739 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1754 #, java-format msgid "" "Are you sure you want to delete the torrent \\''{0}\\'' and all downloaded " "data?" msgstr "Sei sicuro di voler eliminare il torrent \\\"{0}\\\" e tutti i dati scaricati?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1743 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1758 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2388 msgid "Delete" msgstr "Elimina" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1779 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1794 msgid "Unknown" msgstr "Sconosciuto" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1791 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1806 msgid "Seed" msgstr "Seed" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1814 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1829 msgid "Uninteresting (The peer has no pieces we need)" msgstr "Non interessante (Il peer non ha pezzi di nostro interesse)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1816 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1831 msgid "Choked (The peer is not allowing us to request pieces)" msgstr "Soffocato (Il peer non ci sta permettendo di richiedere pezzi)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1851 msgid "Uninterested (We have no pieces the peer needs)" msgstr "Non interessato (Non abbiamo pezzi di interesse per il peer)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1838 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1853 msgid "Choking (We are not allowing the peer to request pieces)" msgstr "Soffocando (Non stiamo permettendo al peer di richiedere pezzi)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1954 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1969 #, java-format msgid "Details at {0} tracker" msgstr "Dettagli al tracker {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1971 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1986 msgid "Info" msgstr "Info" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 msgid "Add Torrent" msgstr "Aggiungi Torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 msgid "From URL" msgstr "Da URL" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2050 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2065 msgid "" "Enter the torrent file download URL (I2P only), magnet link, maggot link, or" " info hash" msgstr "Inserisci l'URL del file torrent da scaricare (solo I2P), link magnet, link maggot o info hash" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2070 msgid "Add torrent" msgstr "Aggiungi torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2074 msgid "Data dir" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2077 #, java-format msgid "Enter the directory to save the data in (default {0})" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2066 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 #, java-format msgid "You can also copy .torrent files to: {0}." msgstr "Puoi anche copiare files .torrent su: {0}." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2068 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2083 msgid "Removing a .torrent will cause it to stop." msgstr "Rimuovere un .torrent lo fermerà ." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2096 msgid "Create Torrent" msgstr "Crea Torrent" #. out.write("From file: <input type=\"file\" name=\"newFile\" size=\"50\" #. value=\"" + newFile + "\" /><br>\n"); -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2084 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2099 msgid "Data to seed" msgstr "Dati da mandare in seed" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2088 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2103 #, java-format msgid "File or directory to seed (full path or within the directory {0} )" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2091 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2337 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2106 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2361 msgid "Trackers" msgstr "Trackers" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2093 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2108 msgid "Primary" msgstr "Primario" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2095 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2110 msgid "Alternates" msgstr "Alternativi" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2098 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2113 msgid "Create torrent" msgstr "Crea torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2116 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2131 msgid "none" msgstr "nessuno" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2153 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2169 msgid "Data directory" msgstr "Directory dati" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2158 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 msgid "Files readable by all" msgstr "File visibili da tutti" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2162 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2178 msgid "If checked, other users may access the downloaded files" msgstr "Se selezionato, gli altri utenti potrebbero accedere ai file scaricati" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2182 msgid "Auto start torrents" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2170 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2186 msgid "If checked, automatically start torrents that are added" msgstr "Se selezionato, avvia automaticamente torrent che vengono aggiunti" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2190 +msgid "Smart torrent sorting" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2194 +msgid "If checked, ignore words such as 'the' when sorting" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2198 msgid "Theme" msgstr "Tema" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2188 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2212 msgid "Refresh time" msgstr "Tempo di aggiornamento" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2201 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2225 msgid "Never" msgstr "Mai" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2231 msgid "Startup delay" msgstr "Ritardo di avvio" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2209 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2233 msgid "minutes" msgstr "minuti" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2213 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2237 msgid "Page size" msgstr "Dimensione pagina" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2215 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 msgid "torrents" msgstr "torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 msgid "Total uploader limit" msgstr "Limite di uploader totale" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2266 msgid "peers" msgstr "peers" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2270 msgid "Up bandwidth limit" msgstr "Limite di banda in upload" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2249 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2273 msgid "Half available bandwidth recommended." msgstr "Raccomandata metà della banda disponibile." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2251 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2275 msgid "View or change router bandwidth" msgstr "Vedi o cambia la banda del router" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2255 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2279 msgid "Use open trackers also" msgstr "Usa anche tracker aperti" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2259 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 msgid "" "If checked, announce torrents to open trackers as well as the tracker listed" " in the torrent file" msgstr "Se selezionato, annuncia i torrent sia a tracker aperti che ai tracker elencati nel file torrent " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2287 msgid "Enable DHT" msgstr "Abilita DHT" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2267 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2291 msgid "If checked, use DHT" msgstr "Se selezionato, usa DHT" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2307 msgid "Inbound Settings" msgstr "Impostazioni d'Entrata" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2313 msgid "Outbound Settings" msgstr "Impostazioni d'Uscita" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2297 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2321 msgid "I2CP host" msgstr "Host I2CP" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2302 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2326 msgid "I2CP port" msgstr "Porta I2CP" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2341 msgid "I2CP options" msgstr "Opzioni I2CP" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2322 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 msgid "Save configuration" msgstr "Salva configurazione" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2342 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2366 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "Name" msgstr "Nome" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2344 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2368 msgid "Website URL" msgstr "URL Sitoweb" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2370 msgid "Standard" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2348 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2372 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3172 msgid "Open" msgstr "Apri" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2350 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2374 msgid "Private" msgstr "Privato" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2352 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2376 msgid "Announce URL" msgstr "URL Announce" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2396 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2420 msgid "Add" msgstr "Aggiungi" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2439 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2463 #, java-format msgid "Invalid magnet URL {0}" msgstr "Magnet URL {0} non valido" #. * dummies for translation -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2447 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2471 #, java-format msgid "1 hop" msgid_plural "{0} hops" msgstr[0] "1 hop" msgstr[1] "{0} hop" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2448 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2472 #, java-format msgid "1 tunnel" msgid_plural "{0} tunnels" msgstr[0] "1 tunnel" msgstr[1] "{0} tunnel" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2691 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2728 msgid "Torrent file" msgstr "File torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 msgid "Data location" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2708 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2745 msgid "Info hash" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2727 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2764 msgid "Primary Tracker" msgstr "Tracker primario" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2773 msgid "Tracker List" msgstr "Elenco dei tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2761 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2798 msgid "Comment" msgstr "Commento" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2771 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2812 msgid "Created" msgstr "Creato" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2782 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2823 msgid "Created By" msgstr "Creato da" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2794 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2833 +msgid "Added" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2842 +msgid "Completed" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2854 msgid "Magnet link" msgstr "Link magnet" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2807 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2867 msgid "Private torrent" msgstr "Torrent privato" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2827 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2887 msgid "Completion" msgstr "Completamento" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2856 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2916 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 msgid "Remaining" msgstr "Rimanente" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2926 msgid "Files" msgstr "Files" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2873 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 msgid "Pieces" msgstr "Pezzi" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2879 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2939 msgid "Piece size" msgstr "Dimensione pezzo" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2952 +msgid "Refresh page for results" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2964 +msgid "Force Recheck" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3025 msgid "Directory" msgstr "Cartella" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2992 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3084 msgid "Priority" msgstr "Priorità " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3004 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3096 msgid "Up to higher level directory" msgstr "Fino a cartella di livello superiore" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3038 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3130 msgid "Torrent not found?" msgstr "Torrent non trovato?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3136 msgid "File not found in torrent?" msgstr "File non trovato nel torrent?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3057 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3149 msgid "complete" msgstr "completo" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3058 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3150 msgid "remaining" msgstr "rimanente" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3196 msgid "High" msgstr "Alto" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3109 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3201 msgid "Normal" msgstr "Normale" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3114 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3206 msgid "Skip" msgstr "Salta" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3124 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3216 msgid "Set all high" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3126 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3218 msgid "Set all normal" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3128 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3220 msgid "Skip all" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3129 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3221 msgid "Save priorities" msgstr "Salva priorità " diff --git a/apps/i2psnark/locale/messages_nb.po b/apps/i2psnark/locale/messages_nb.po index 43d9111cc28eae6a6f5f5fedd42c9a3108f11208..33e6ff25e0953cc62d6cfe04e31c3112f5c4267f 100644 --- a/apps/i2psnark/locale/messages_nb.po +++ b/apps/i2psnark/locale/messages_nb.po @@ -9,10 +9,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:09+0000\n" -"PO-Revision-Date: 2015-07-17 01:32+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-05 17:17+0000\n" "Last-Translator: kytv <killyourtv@i2pmail.org>\n" -"Language-Team: Norwegian BokmÃ¥l (http://www.transifex.com/projects/p/I2P/language/nb/)\n" +"Language-Team: Norwegian BokmÃ¥l (http://www.transifex.com/otf/I2P/language/nb/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -24,222 +24,230 @@ msgid "No more torrents running." msgstr "" #: ../java/src/org/klomp/snark/IdleChecker.java:76 -#: ../java/src/org/klomp/snark/SnarkManager.java:2392 -#: ../java/src/org/klomp/snark/SnarkManager.java:2403 +#: ../java/src/org/klomp/snark/SnarkManager.java:2539 +#: ../java/src/org/klomp/snark/SnarkManager.java:2550 msgid "I2P tunnel closed." msgstr "I2P tunnelen lukket." #: ../java/src/org/klomp/snark/MagnetURI.java:42 #: ../java/src/org/klomp/snark/MagnetURI.java:52 -#: ../java/src/org/klomp/snark/SnarkManager.java:2096 +#: ../java/src/org/klomp/snark/SnarkManager.java:2221 msgid "Magnet" msgstr "Magnet" -#: ../java/src/org/klomp/snark/SnarkManager.java:772 +#: ../java/src/org/klomp/snark/SnarkManager.java:791 #, java-format msgid "Total uploaders limit changed to {0}" msgstr "Total opplaster grense satt til {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:774 +#: ../java/src/org/klomp/snark/SnarkManager.java:793 #, java-format msgid "Minimum total uploaders limit is {0}" msgstr "Minimum total opplaster grense er {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:786 +#: ../java/src/org/klomp/snark/SnarkManager.java:805 #, java-format msgid "Up BW limit changed to {0}KBps" msgstr "Opp bÃ¥ndbredde endret til {0}KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:788 +#: ../java/src/org/klomp/snark/SnarkManager.java:807 #, java-format msgid "Minimum up bandwidth limit is {0}KBps" msgstr "Minimum opp bÃ¥ndbredde grense er {0}KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:800 +#: ../java/src/org/klomp/snark/SnarkManager.java:819 #, java-format msgid "Startup delay changed to {0}" msgstr "Oppstart utsettelse sett til {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:811 +#: ../java/src/org/klomp/snark/SnarkManager.java:830 #, java-format msgid "Refresh time changed to {0}" msgstr "Oppdaterings tid endret til {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:813 +#: ../java/src/org/klomp/snark/SnarkManager.java:832 msgid "Refresh disabled" msgstr "Oppdatering skrudd av" -#: ../java/src/org/klomp/snark/SnarkManager.java:829 +#: ../java/src/org/klomp/snark/SnarkManager.java:848 #, java-format msgid "Page size changed to {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:838 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:956 +#: ../java/src/org/klomp/snark/SnarkManager.java:857 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:958 msgid "Data directory must be an absolute path" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:840 +#: ../java/src/org/klomp/snark/SnarkManager.java:859 msgid "Data directory does not exist" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:842 +#: ../java/src/org/klomp/snark/SnarkManager.java:861 msgid "Not a directory" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:844 +#: ../java/src/org/klomp/snark/SnarkManager.java:863 msgid "Unreadable" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:849 +#: ../java/src/org/klomp/snark/SnarkManager.java:868 #, java-format msgid "Data directory changed to {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:904 +#: ../java/src/org/klomp/snark/SnarkManager.java:923 msgid "I2CP and tunnel changes will take effect after stopping all torrents" msgstr "I2CP og tunnel endringer vil ta effekt etter sopping av alle torrents" -#: ../java/src/org/klomp/snark/SnarkManager.java:908 +#: ../java/src/org/klomp/snark/SnarkManager.java:927 #, java-format msgid "I2CP options changed to {0}" msgstr "I2CP instillinger endret til {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:914 +#: ../java/src/org/klomp/snark/SnarkManager.java:933 msgid "Disconnecting old I2CP destination" msgstr "Frakobler fra gammel I2CP destinasjon" -#: ../java/src/org/klomp/snark/SnarkManager.java:916 +#: ../java/src/org/klomp/snark/SnarkManager.java:935 #, java-format msgid "I2CP settings changed to {0}" msgstr "I2CP instillinger endret til {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:921 +#: ../java/src/org/klomp/snark/SnarkManager.java:940 msgid "" "Unable to connect with the new settings, reverting to the old I2CP settings" msgstr "Umulig Ã¥ fÃ¥ tilkobling med de nye instillingene, gÃ¥r tilbake til de gamle I2CP instillingene" -#: ../java/src/org/klomp/snark/SnarkManager.java:925 +#: ../java/src/org/klomp/snark/SnarkManager.java:944 msgid "Unable to reconnect with the old settings!" msgstr "Umulig Ã¥ koble seg til pÃ¥ nytt med gammle instillinger!" -#: ../java/src/org/klomp/snark/SnarkManager.java:927 +#: ../java/src/org/klomp/snark/SnarkManager.java:946 msgid "Reconnected on the new I2CP destination" msgstr "Gjentilkobler pÃ¥ den nye I2CP destinasjonen" -#: ../java/src/org/klomp/snark/SnarkManager.java:934 +#: ../java/src/org/klomp/snark/SnarkManager.java:953 #, java-format msgid "I2CP listener restarted for \"{0}\"" msgstr "I2CP lytter omstartet for \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:948 +#: ../java/src/org/klomp/snark/SnarkManager.java:967 msgid "New files will be publicly readable" msgstr "Nye filer vil bli lesbar for alle" -#: ../java/src/org/klomp/snark/SnarkManager.java:950 +#: ../java/src/org/klomp/snark/SnarkManager.java:969 msgid "New files will not be publicly readable" msgstr "Nye filer vil ikke bli lesbar for alle" -#: ../java/src/org/klomp/snark/SnarkManager.java:957 +#: ../java/src/org/klomp/snark/SnarkManager.java:976 msgid "Enabled autostart" msgstr "Autostart er skrudd pÃ¥" -#: ../java/src/org/klomp/snark/SnarkManager.java:959 +#: ../java/src/org/klomp/snark/SnarkManager.java:978 msgid "Disabled autostart" msgstr "Autostart er avslÃ¥tt" -#: ../java/src/org/klomp/snark/SnarkManager.java:965 +#: ../java/src/org/klomp/snark/SnarkManager.java:985 +msgid "Enabled smart sort" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:987 +msgid "Disabled smart sort" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:994 msgid "Enabled open trackers - torrent restart required to take effect." msgstr "Skru pÃ¥ Ã¥pne trackers - krever torrent omstart for Ã¥ ta effekt." -#: ../java/src/org/klomp/snark/SnarkManager.java:967 +#: ../java/src/org/klomp/snark/SnarkManager.java:996 msgid "Disabled open trackers - torrent restart required to take effect." msgstr "Skru av Ã¥pne trackers - krever torrent omstart for Ã¥ ta effekt." -#: ../java/src/org/klomp/snark/SnarkManager.java:974 +#: ../java/src/org/klomp/snark/SnarkManager.java:1003 msgid "Enabled DHT." msgstr "DHT skrudd pÃ¥" -#: ../java/src/org/klomp/snark/SnarkManager.java:976 +#: ../java/src/org/klomp/snark/SnarkManager.java:1005 msgid "Disabled DHT." msgstr "DHT skrudd av" -#: ../java/src/org/klomp/snark/SnarkManager.java:978 +#: ../java/src/org/klomp/snark/SnarkManager.java:1007 msgid "DHT change requires tunnel shutdown and reopen" msgstr "DHT endring krever tunnel avslutting og gjennÃ¥pning" -#: ../java/src/org/klomp/snark/SnarkManager.java:985 +#: ../java/src/org/klomp/snark/SnarkManager.java:1014 #, java-format msgid "{0} theme loaded, return to main i2psnark page to view." msgstr "{0} tema lastet, returner til hovedsiden for i2psnart for Ã¥ se." -#: ../java/src/org/klomp/snark/SnarkManager.java:995 +#: ../java/src/org/klomp/snark/SnarkManager.java:1024 msgid "Configuration unchanged." msgstr "Konfigurasjon uendret." -#: ../java/src/org/klomp/snark/SnarkManager.java:1027 +#: ../java/src/org/klomp/snark/SnarkManager.java:1056 msgid "Open Tracker list changed - torrent restart required to take effect." msgstr "Ã…pen tracker listen endret - torrent omstart kreves før det tar effekt." -#: ../java/src/org/klomp/snark/SnarkManager.java:1037 +#: ../java/src/org/klomp/snark/SnarkManager.java:1066 msgid "Private tracker list changed - affects newly created torrents only." msgstr "Privat tracker list endret - vil kun pÃ¥virke ny opprettet torrent filer." -#: ../java/src/org/klomp/snark/SnarkManager.java:1083 +#: ../java/src/org/klomp/snark/SnarkManager.java:1112 #, java-format msgid "Unable to save the config to {0}" msgstr "Umulig Ã¥ lagre konfigurasjon til {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1164 +#: ../java/src/org/klomp/snark/SnarkManager.java:1193 msgid "Connecting to I2P" msgstr "Kobler til I2P" -#: ../java/src/org/klomp/snark/SnarkManager.java:1167 +#: ../java/src/org/klomp/snark/SnarkManager.java:1196 msgid "Error connecting to I2P - check your I2CP settings!" msgstr "Feil ved tilkobling til I2P - Sjekk dine I2CP instillinger!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1176 -#: ../java/src/org/klomp/snark/SnarkManager.java:2133 +#: ../java/src/org/klomp/snark/SnarkManager.java:1205 +#: ../java/src/org/klomp/snark/SnarkManager.java:2270 #, java-format msgid "Error: Could not add the torrent {0}" msgstr "Feil: kan ikke legge til torrenten {0}" #. catch this here so we don't try do delete it below -#: ../java/src/org/klomp/snark/SnarkManager.java:1199 +#: ../java/src/org/klomp/snark/SnarkManager.java:1228 #, java-format msgid "Cannot open \"{0}\"" msgstr "Kan ikke Ã¥pne \"{0}\"" #. TODO - if the existing one is a magnet, delete it and add the metainfo #. instead? -#: ../java/src/org/klomp/snark/SnarkManager.java:1218 -#: ../java/src/org/klomp/snark/SnarkManager.java:1352 -#: ../java/src/org/klomp/snark/SnarkManager.java:1440 +#: ../java/src/org/klomp/snark/SnarkManager.java:1247 +#: ../java/src/org/klomp/snark/SnarkManager.java:1388 +#: ../java/src/org/klomp/snark/SnarkManager.java:1476 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:166 #, java-format msgid "Torrent with this info hash is already running: {0}" msgstr "Torrent med samme info hash kjører allerede: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1224 +#: ../java/src/org/klomp/snark/SnarkManager.java:1253 #, java-format msgid "ERROR - No I2P trackers in private torrent \"{0}\"" msgstr "FEIL - Ingen I2P trackers i privat torrent \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:1226 +#: ../java/src/org/klomp/snark/SnarkManager.java:1255 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", will announce to I2P open trackers and" " DHT only." msgstr "Advarsel - Ingen I2P trackers i \"{0}\", vil bare annonsere til I2P Ã¥pne trackers og DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:1229 +#: ../java/src/org/klomp/snark/SnarkManager.java:1258 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and open trackers are disabled, will " "announce to DHT only." msgstr "Advarsel - Ingen I2P tracker i \"{0}\", og Ã¥pne trackers er skrudd av, vil annonsere kun pÃ¥ DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:1231 +#: ../java/src/org/klomp/snark/SnarkManager.java:1260 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and DHT and open trackers are " @@ -247,34 +255,46 @@ msgid "" "torrent." msgstr "Advarsel - Ingen I2P trackers i \"{0}\", og DHT og Ã¥pne trackers er avskrudd, du burde skru pÃ¥ Ã¥pen tracker eller DHT før du starter torrenten." -#: ../java/src/org/klomp/snark/SnarkManager.java:1257 +#: ../java/src/org/klomp/snark/SnarkManager.java:1286 #, java-format msgid "Torrent in \"{0}\" is invalid" msgstr "Torrent i \"{0}\" er ugyldig" -#: ../java/src/org/klomp/snark/SnarkManager.java:1264 +#: ../java/src/org/klomp/snark/SnarkManager.java:1292 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1042 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1069 +#, java-format +msgid "Torrent file deleted: {0}" +msgstr "Torrent fil slettet: {0}" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1295 +#, java-format +msgid "Torrent file moved from {0} to {1}" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1299 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:193 #, java-format msgid "ERROR - Out of memory, cannot create torrent from {0}" msgstr "FEIL - Tomt for minne, kan ikke lage torrent fra {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1285 +#: ../java/src/org/klomp/snark/SnarkManager.java:1321 #, java-format -msgid "Torrent added and started: \"{0}\"" -msgstr "Torrent lagt til og startet: \"{0}\"" +msgid "Torrent added and started: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1287 +#: ../java/src/org/klomp/snark/SnarkManager.java:1323 #, java-format -msgid "Torrent added: \"{0}\"" -msgstr "Torrent lagt til: \"{0}\"" +msgid "Torrent added: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1363 +#: ../java/src/org/klomp/snark/SnarkManager.java:1399 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:93 #, java-format msgid "Fetching {0}" msgstr "Henter {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1369 +#: ../java/src/org/klomp/snark/SnarkManager.java:1405 #, java-format msgid "" "Open trackers are disabled and we have no DHT peers. Fetch of {0} may not " @@ -282,131 +302,146 @@ msgid "" "DHT." msgstr "Ã…pne trackers er skrudd av og vi har ingen DHT peers. Mottak av {0} blir muligens ikke fullført før du starter en annen torrent, starter Ã¥pne trackers, eller DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:1373 +#: ../java/src/org/klomp/snark/SnarkManager.java:1409 #, java-format msgid "Adding {0}" msgstr "Legger til {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1406 +#: ../java/src/org/klomp/snark/SnarkManager.java:1442 #, java-format msgid "Download already running: {0}" msgstr "Nedlastning kjører alt: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1451 -#: ../java/src/org/klomp/snark/SnarkManager.java:1477 -#: ../java/src/org/klomp/snark/SnarkManager.java:2052 +#: ../java/src/org/klomp/snark/SnarkManager.java:1487 +#: ../java/src/org/klomp/snark/SnarkManager.java:1513 +#: ../java/src/org/klomp/snark/SnarkManager.java:2151 #, java-format msgid "Failed to copy torrent file to {0}" msgstr "Feilet med Ã¥ kopiere torrent fil til {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1828 +#: ../java/src/org/klomp/snark/SnarkManager.java:1927 #, java-format -msgid "Too many files in \"{0}\" ({1}), deleting it!" -msgstr "For mange filer i \"{0}\" ({1}), sletter det!" +msgid "Too many files in \"{0}\" ({1})!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1830 +#: ../java/src/org/klomp/snark/SnarkManager.java:1929 #, java-format -msgid "Torrent file \"{0}\" cannot end in \".torrent\", deleting it!" -msgstr "Torrent filen \"{0}\" kan ikke avsluttes i \".torrent\", sletter den!" +msgid "Torrent file \"{0}\" cannot end in \".torrent\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1832 +#: ../java/src/org/klomp/snark/SnarkManager.java:1931 #, java-format -msgid "No pieces in \"{0}\", deleting it!" -msgstr "Ingen biter i \"{0}\", sletter den!" +msgid "No pieces in \"{0}\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1834 +#: ../java/src/org/klomp/snark/SnarkManager.java:1933 #, java-format -msgid "Too many pieces in \"{0}\", limit is {1}, deleting it!" -msgstr "For mange biter i \"{0}\", grensen er {1}, sletter den!" +msgid "Too many pieces in \"{0}\", limit is {1}!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1836 +#: ../java/src/org/klomp/snark/SnarkManager.java:1935 #, java-format -msgid "Pieces are too large in \"{0}\" ({1}B), deleting it." -msgstr "Bitene er for store i \"{0}\" ({1}B), sletter den." +msgid "Pieces are too large in \"{0}\" ({1}B)!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1837 +#: ../java/src/org/klomp/snark/SnarkManager.java:1936 #, java-format msgid "Limit is {0}B" msgstr "Grensen er {0}B" -#: ../java/src/org/klomp/snark/SnarkManager.java:1839 +#: ../java/src/org/klomp/snark/SnarkManager.java:1938 #, java-format -msgid "Torrent \"{0}\" has no data, deleting it!" -msgstr "Torrent \"{0}\" har ingen data, sletter den!" +msgid "Torrent \"{0}\" has no data!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1847 +#: ../java/src/org/klomp/snark/SnarkManager.java:1946 #, java-format -msgid "Torrents larger than {0}B are not supported yet, deleting \"{1}\"" -msgstr "Torrents større enn {0}B er ikke supportet ennÃ¥, sletter \"{1}\"" +msgid "Torrents larger than {0}B are not supported yet \"{1}\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1864 +#: ../java/src/org/klomp/snark/SnarkManager.java:1963 #, java-format msgid "Error: Could not remove the torrent {0}" msgstr "Feil: kan ikke fjerne torrent {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1887 -#: ../java/src/org/klomp/snark/SnarkManager.java:1906 +#: ../java/src/org/klomp/snark/SnarkManager.java:1986 +#: ../java/src/org/klomp/snark/SnarkManager.java:2005 #, java-format -msgid "Torrent stopped: \"{0}\"" -msgstr "Torrent stoppet: \"{0}\"" +msgid "Torrent stopped: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1926 +#: ../java/src/org/klomp/snark/SnarkManager.java:2025 #, java-format msgid "Torrent removed: \"{0}\"" msgstr "Torrent fjernet: \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:1934 +#: ../java/src/org/klomp/snark/SnarkManager.java:2033 #, java-format msgid "Adding torrents in {0}" msgstr "Legger til torrents i {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1966 +#: ../java/src/org/klomp/snark/SnarkManager.java:2067 #, java-format msgid "Up bandwidth limit is {0} KBps" msgstr "Opp hastighet grense er {0} KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:1993 +#: ../java/src/org/klomp/snark/SnarkManager.java:2092 #, java-format msgid "Download finished: {0}" msgstr "Nedlastning fullført: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2048 +#: ../java/src/org/klomp/snark/SnarkManager.java:2147 #, java-format msgid "Metainfo received for {0}" msgstr "Meta informasjon mottatt for {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2049 -#: ../java/src/org/klomp/snark/SnarkManager.java:2280 +#: ../java/src/org/klomp/snark/SnarkManager.java:2148 +#: ../java/src/org/klomp/snark/SnarkManager.java:2431 #, java-format msgid "Starting up torrent {0}" msgstr "Starter opp torrent {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2064 +#: ../java/src/org/klomp/snark/SnarkManager.java:2163 #, java-format msgid "Error on torrent {0}" msgstr "Feil i torrent {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2127 +#: ../java/src/org/klomp/snark/SnarkManager.java:2264 msgid "Unable to connect to I2P!" msgstr "Umulig Ã¥ koble til I2P!" -#: ../java/src/org/klomp/snark/SnarkManager.java:2279 +#: ../java/src/org/klomp/snark/SnarkManager.java:2430 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:130 msgid "Opening the I2P tunnel" msgstr "Ã…pner I2P tunnelen" -#: ../java/src/org/klomp/snark/SnarkManager.java:2303 +#: ../java/src/org/klomp/snark/SnarkManager.java:2450 msgid "Opening the I2P tunnel and starting all torrents." msgstr "Ã…pner I2P tunnelen og starter alle torrents." -#: ../java/src/org/klomp/snark/SnarkManager.java:2366 +#: ../java/src/org/klomp/snark/SnarkManager.java:2513 msgid "Stopping all torrents and closing the I2P tunnel." msgstr "Stopper alle torrents og lukker I2P tunnelen." -#: ../java/src/org/klomp/snark/SnarkManager.java:2385 +#: ../java/src/org/klomp/snark/SnarkManager.java:2532 msgid "Closing I2P tunnel after notifying trackers." msgstr "Lukker I2P tunnel etter beskjed til trackers." +#: ../java/src/org/klomp/snark/SnarkManager.java:2594 +#, java-format +msgid "Finished recheck of torrent {0}, now {1} complete" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2596 +#, java-format +msgid "Finished recheck of torrent {0}, unchanged" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2600 +#, java-format +msgid "Error checking the torrent {0}" +msgstr "" + #: ../java/src/org/klomp/snark/TrackerClient.java:245 #, java-format msgid "No valid trackers for {0} - enable opentrackers or DHT?" @@ -452,891 +487,913 @@ msgstr "Torrent allerede i kø: {0}" msgid "Torrent at {0} was not valid" msgstr "Torrent ved {0} var ikke valid" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:268 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:311 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:322 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1763 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2662 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:270 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:313 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:324 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1778 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2698 msgid "I2PSnark" msgstr "I2PSnark" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:273 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2149 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2422 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2165 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2446 msgid "Configuration" msgstr "Konfigurasjon" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:277 msgid "Anonymous BitTorrent Client" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:291 msgid "Router is down" msgstr "Ruter er nede" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:306 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:308 msgid "Torrents" msgstr "Torrents" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:319 msgid "Refresh page" msgstr "Oppdater side" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:326 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:328 msgid "Forum" msgstr "Forum" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:341 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:343 msgid "Click \"Add torrent\" button to fetch torrent" msgstr "Klikk \"Legg til trorrent\" knappen for Ã¥ motta torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:394 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:396 msgid "clear messages" msgstr "fjern meldinger" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:449 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2980 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3072 msgid "Status" msgstr "Status" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2994 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:453 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3086 #, java-format msgid "Sort by {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:462 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:464 msgid "Hide Peers" msgstr "Gjem peers" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:468 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:470 msgid "Show Peers" msgstr "Vis peers" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:491 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2648 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2718 msgid "Torrent" msgstr "Torrrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "File type" msgstr "" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:509 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 msgid "ETA" msgstr "ETA" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:512 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:514 msgid "Estimated time remaining" msgstr "Beregnet tid som gjenstÃ¥r" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:535 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 msgid "RX" msgstr "RX" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:538 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:540 msgid "Downloaded" msgstr "Lastet ned" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2818 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2968 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2878 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3060 msgid "Size" msgstr "Størrelse" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 msgid "TX" msgstr "TX" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2896 msgid "Upload ratio" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:569 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:571 msgid "Uploaded" msgstr "Lastet opp" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:581 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 msgid "RX Rate" msgstr "RX Fart" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:584 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:586 msgid "Down Rate" msgstr "Ned hastighet" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:596 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 msgid "TX Rate" msgstr "TX Fart" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:599 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:601 msgid "Up Rate" msgstr "Opp hastighet" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:615 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 msgid "Stop all torrents and the I2P tunnel" msgstr "Stopp alle torrents og I2P tunellen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:619 msgid "Stop All" msgstr "Stopp alle" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:629 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 msgid "Start all stopped torrents" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:633 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:647 msgid "Start All" msgstr "Start alle" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:643 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 msgid "Start all torrents and the I2P tunnel" msgstr "Start alle torrents og I2P tunellen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:668 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:670 msgid "No torrents loaded." msgstr "Ingen torrent lastet." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:674 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 msgid "Totals" msgstr "Totaler" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:678 #, java-format msgid "1 torrent" msgid_plural "{0} torrents" msgstr[0] "1 torrent" msgstr[1] "{0} torrents " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:683 #, java-format msgid "1 connected peer" msgid_plural "{0} connected peers" msgstr[0] "1 tilkoblet peer" msgstr[1] "{0} tilkoblet peers" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:688 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:690 #, java-format msgid "1 DHT peer" msgid_plural "{0} DHT peers" msgstr[0] "1 DHT peer" msgstr[1] "{0} DHT peers" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:695 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:697 msgid "Dest" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First page" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Prev" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Previous page" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next page" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last page" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:960 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:962 msgid "Data directory cannot be created" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1176 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:972 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1185 #, java-format msgid "Cannot add torrent {0} inside another torrent: {1}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:985 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:993 #, java-format msgid "Invalid URL: Must start with \"http://\", \"{0}\", or \"{1}\"" msgstr "Ugyldig URL: Den mÃ¥ starte med \"http://\", \"{0}\", eller \"{1}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1026 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1063 #, java-format msgid "Magnet deleted: {0}" msgstr "Magnet slettet: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1061 #, java-format -msgid "Torrent file deleted: {0}" -msgstr "Torrent fil slettet: {0}" - -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1053 -#, java-format msgid "Download deleted: {0}" msgstr "Nedlastning slettet: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1070 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1078 #, java-format msgid "Data file deleted: {0}" msgstr "Data fil slettet: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1072 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1089 #, java-format msgid "Data file could not be deleted: {0}" msgstr "Data fil kunne ikke bli slettet: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1097 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1105 #, java-format msgid "Directory could not be deleted: {0}" msgstr "Mappen kunne ikke bli slettet: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1112 #, java-format msgid "Directory deleted: {0}" msgstr "Mappe slettet: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1155 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1164 #, java-format msgid "Cannot add a torrent ending in \".torrent\": {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1160 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1169 #, java-format msgid "Torrent with this name is already running: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1175 #, java-format msgid "Cannot add a torrent including an I2P directory: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1181 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1190 #, java-format msgid "Cannot add torrent {0} including another torrent: {1}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1216 msgid "Error - Cannot include alternate trackers without a primary tracker" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1220 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1229 msgid "Error - Cannot mix private and public trackers in a torrent" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1251 #, java-format msgid "Torrent created for \"{0}\"" msgstr "Torrent laget for \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1244 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 #, java-format msgid "" "Many I2P trackers require you to register new torrents before seeding - " "please do so before starting \"{0}\"" msgstr "Mange I2P trackers krever at du registerer nye torrents før seeding - Vennligst gjør det før du starter \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1255 #, java-format msgid "Error creating a torrent for \"{0}\"" msgstr "Feil ved laging av torrent for \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1250 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1259 #, java-format msgid "Cannot create a torrent for the nonexistent data: {0}" msgstr "Kan ikke lage torrent fra den ikke-eksisterende data: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1262 msgid "Error creating torrent - you must enter a file or directory" msgstr "Feil ved opprettelse av torrent - du mÃ¥ velge en fil eller mappe" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2406 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2430 msgid "Delete selected" msgstr "Slett markerte" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2408 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2432 msgid "Save tracker configuration" msgstr "Lagre tracker konfigurasjon" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1301 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1310 msgid "Removed" msgstr "Fjernet" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1333 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2405 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2407 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1342 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2429 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2431 msgid "Add tracker" msgstr "Legg til tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1356 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1359 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1365 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1368 msgid "Enter valid tracker name and URLs" msgstr "Skriv inn valid tracker navn og URLer" #. "<input type=\"reset\" class=\"cancel\" #. value=\"").append(_t("Cancel")).append("\">\n" + -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1361 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2410 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1370 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2434 msgid "Restore defaults" msgstr "Gjenopprett standarder" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1373 msgid "Restored default trackers" msgstr "Gjenopprettet standard trackers" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1472 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1473 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1485 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1486 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2949 msgid "Checking" msgstr "Sjekker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1475 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1476 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1489 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2956 msgid "Allocating" msgstr "Tildeling" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1499 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1505 msgid "Tracker Error" msgstr "Tracker Feil" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1492 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1522 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1527 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1538 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1543 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1554 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1507 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1537 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1542 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1553 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1558 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1569 #, java-format msgid "1 peer" msgid_plural "{0} peers" msgstr[0] "1 peer" msgstr[1] "{0} peers" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1502 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1503 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1517 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1518 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2954 msgid "Starting" msgstr "Starter" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1511 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1526 msgid "Seeding" msgstr "Deler" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1515 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1529 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1530 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2831 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1544 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2891 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3139 msgid "Complete" msgstr "Ferdig" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1534 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1535 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1540 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1541 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1550 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1555 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 msgid "OK" msgstr "OK" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1546 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1551 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1552 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1567 msgid "Stalled" msgstr "FastlÃ¥st" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1557 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1571 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1572 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1575 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1576 msgid "No Peers" msgstr "Ingen Peers" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1563 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1578 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1579 msgid "Stopped" msgstr "Stoppet" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1593 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1608 msgid "Torrent details" msgstr "Torrent detaljer" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1628 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1643 msgid "View files" msgstr "Vis filer" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1630 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1645 msgid "Open file" msgstr "Ã…pne fil" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1682 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 msgid "Stop the torrent" msgstr "Stopp torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2961 msgid "Stop" msgstr "Stopp" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 msgid "Start the torrent" msgstr "Start torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1714 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2963 msgid "Start" msgstr "Start" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1727 msgid "Remove the torrent from the active list, deleting the .torrent file" msgstr "Fjern torrent fra den aktive listen, og slette .torrent filen" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1717 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1732 #, java-format msgid "" "Are you sure you want to delete the file \\''{0}\\'' (downloaded data will " "not be deleted) ?" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1721 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1736 msgid "Remove" msgstr "Fjern" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1734 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1749 msgid "Delete the .torrent file and the associated data file(s)" msgstr "Slett .torrent filen og all tilhørende data fil(er)" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1739 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1754 #, java-format msgid "" "Are you sure you want to delete the torrent \\''{0}\\'' and all downloaded " "data?" msgstr "Er du sikker pÃ¥ at du vil slette torrent \\\"{0}\\\" og all nedlastet data?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1743 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1758 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2388 msgid "Delete" msgstr "Slett" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1779 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1794 msgid "Unknown" msgstr "Ukjent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1791 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1806 msgid "Seed" msgstr "Deler" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1814 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1829 msgid "Uninteresting (The peer has no pieces we need)" msgstr "Uinteressang (Peeren har ingen biter vi trenger)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1816 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1831 msgid "Choked (The peer is not allowing us to request pieces)" msgstr "Skjult (Peeren gir oss ikke lov til Ã¥ be om biter)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1851 msgid "Uninterested (We have no pieces the peer needs)" msgstr "Uinteresang (Vi har ingen biter peeren trenger)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1838 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1853 msgid "Choking (We are not allowing the peer to request pieces)" msgstr "Hoster (Vi tillater ikke peeren til Ã¥ be om biter)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1954 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1969 #, java-format msgid "Details at {0} tracker" msgstr "Detaljer hos {0} tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1971 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1986 msgid "Info" msgstr "Informasjon" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 msgid "Add Torrent" msgstr "Legg til torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 msgid "From URL" msgstr "Fra URL" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2050 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2065 msgid "" "Enter the torrent file download URL (I2P only), magnet link, maggot link, or" " info hash" msgstr "Skriv inn torrent fil nedlastings URL (kun I2P), magnet link, maggot link, eller info hash" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2070 msgid "Add torrent" msgstr "Legg til torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2074 msgid "Data dir" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2077 #, java-format msgid "Enter the directory to save the data in (default {0})" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2066 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 #, java-format msgid "You can also copy .torrent files to: {0}." msgstr "Du kan ogsÃ¥ kopiere .torrent filer til: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2068 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2083 msgid "Removing a .torrent will cause it to stop." msgstr "Fjerning av .torrent vil fÃ¥ den til Ã¥ stoppe." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2096 msgid "Create Torrent" msgstr "Opprett Torrent" #. out.write("From file: <input type=\"file\" name=\"newFile\" size=\"50\" #. value=\"" + newFile + "\" /><br>\n"); -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2084 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2099 msgid "Data to seed" msgstr "Data for deling" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2088 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2103 #, java-format msgid "File or directory to seed (full path or within the directory {0} )" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2091 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2337 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2106 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2361 msgid "Trackers" msgstr "Trackers" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2093 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2108 msgid "Primary" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2095 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2110 msgid "Alternates" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2098 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2113 msgid "Create torrent" msgstr "Opprett torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2116 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2131 msgid "none" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2153 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2169 msgid "Data directory" msgstr "Data mappe" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2158 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 msgid "Files readable by all" msgstr "Filer tilgjengelig for alle" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2162 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2178 msgid "If checked, other users may access the downloaded files" msgstr "Hvis merket, andre lokale brukere kan fÃ¥ tilgang til nedlastninger" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2182 msgid "Auto start torrents" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2170 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2186 msgid "If checked, automatically start torrents that are added" msgstr "Hvis avmerket, vil torrents som blir lagt til automatisk startet" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2190 +msgid "Smart torrent sorting" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2194 +msgid "If checked, ignore words such as 'the' when sorting" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2198 msgid "Theme" msgstr "Theme" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2188 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2212 msgid "Refresh time" msgstr "Oppdater tid" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2201 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2225 msgid "Never" msgstr "Aldri" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2231 msgid "Startup delay" msgstr "Oppstarts utsettelse" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2209 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2233 msgid "minutes" msgstr "minutter" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2213 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2237 msgid "Page size" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2215 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 msgid "torrents" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 msgid "Total uploader limit" msgstr "Total opplaster grense" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2266 msgid "peers" msgstr "peers" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2270 msgid "Up bandwidth limit" msgstr "Opp bÃ¥ndbredde grense" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2249 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2273 msgid "Half available bandwidth recommended." msgstr "Halve tilgjengelige hastigheten er anbefalt." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2251 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2275 msgid "View or change router bandwidth" msgstr "Vis eller endre router bÃ¥ndbredde" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2255 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2279 msgid "Use open trackers also" msgstr "Bruk Ã¥pne trackers ogsÃ¥" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2259 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 msgid "" "If checked, announce torrents to open trackers as well as the tracker listed" " in the torrent file" msgstr "Hvis avmerked, annonser torrenter til Ã¥pne trackers i tillegg til tracker listen i torrent filen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2287 msgid "Enable DHT" msgstr "Skru pÃ¥ DHT" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2267 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2291 msgid "If checked, use DHT" msgstr "Hvis markert, bruk DHT" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2307 msgid "Inbound Settings" msgstr "InngÃ¥ende instillinger" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2313 msgid "Outbound Settings" msgstr "UtgÃ¥ende instillinger" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2297 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2321 msgid "I2CP host" msgstr "I2CP vert" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2302 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2326 msgid "I2CP port" msgstr "I2CP port" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2341 msgid "I2CP options" msgstr "I2CP alternativer" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2322 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 msgid "Save configuration" msgstr "Lagre konfigurasjon" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2342 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2366 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "Name" msgstr "Navn" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2344 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2368 msgid "Website URL" msgstr "Webside URL" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2370 msgid "Standard" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2348 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2372 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3172 msgid "Open" msgstr "Ã…pne" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2350 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2374 msgid "Private" msgstr "Privat" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2352 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2376 msgid "Announce URL" msgstr "Annonserings URL" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2396 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2420 msgid "Add" msgstr "Legg til" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2439 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2463 #, java-format msgid "Invalid magnet URL {0}" msgstr "Invalid magnet URL {0}" #. * dummies for translation -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2447 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2471 #, java-format msgid "1 hop" msgid_plural "{0} hops" msgstr[0] "1 hopp" msgstr[1] "{0} hopp" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2448 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2472 #, java-format msgid "1 tunnel" msgid_plural "{0} tunnels" msgstr[0] "1 tunnel" msgstr[1] "{0} tunneler" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2691 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2728 msgid "Torrent file" msgstr "Torrent fil" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 msgid "Data location" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2708 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2745 msgid "Info hash" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2727 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2764 msgid "Primary Tracker" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2773 msgid "Tracker List" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2761 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2798 msgid "Comment" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2771 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2812 msgid "Created" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2782 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2823 msgid "Created By" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2794 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2833 +msgid "Added" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2842 +msgid "Completed" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2854 msgid "Magnet link" msgstr "Magnet link" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2807 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2867 msgid "Private torrent" msgstr "Privat torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2827 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2887 msgid "Completion" msgstr "Fullføring" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2856 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2916 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 msgid "Remaining" msgstr "GjennstÃ¥r" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2926 msgid "Files" msgstr "Filer" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2873 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 msgid "Pieces" msgstr "Biter" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2879 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2939 msgid "Piece size" msgstr "Bit størrelse" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2952 +msgid "Refresh page for results" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2964 +msgid "Force Recheck" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3025 msgid "Directory" msgstr "Mappe" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2992 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3084 msgid "Priority" msgstr "Prioritet" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3004 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3096 msgid "Up to higher level directory" msgstr "Opp en level i mappe" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3038 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3130 msgid "Torrent not found?" msgstr "Torrent ikke funnet?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3136 msgid "File not found in torrent?" msgstr "Fil ikke funnet i torrent?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3057 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3149 msgid "complete" msgstr "ferdig" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3058 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3150 msgid "remaining" msgstr "gjennstÃ¥r" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3196 msgid "High" msgstr "Høy" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3109 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3201 msgid "Normal" msgstr "Normal" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3114 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3206 msgid "Skip" msgstr "Dropp" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3124 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3216 msgid "Set all high" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3126 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3218 msgid "Set all normal" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3128 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3220 msgid "Skip all" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3129 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3221 msgid "Save priorities" msgstr "Lagre prioriteter" diff --git a/apps/i2psnark/locale/messages_nl.po b/apps/i2psnark/locale/messages_nl.po index 20ff93044875ab2c6fa32a946d958b130b812b61..c011177006b608c49bb6a788a20060f3df58c015 100644 --- a/apps/i2psnark/locale/messages_nl.po +++ b/apps/i2psnark/locale/messages_nl.po @@ -12,10 +12,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:09+0000\n" -"PO-Revision-Date: 2015-07-17 01:32+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-05 17:17+0000\n" "Last-Translator: kytv <killyourtv@i2pmail.org>\n" -"Language-Team: Dutch (http://www.transifex.com/projects/p/I2P/language/nl/)\n" +"Language-Team: Dutch (http://www.transifex.com/otf/I2P/language/nl/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -27,222 +27,230 @@ msgid "No more torrents running." msgstr "Er draaien geen torrents meer." #: ../java/src/org/klomp/snark/IdleChecker.java:76 -#: ../java/src/org/klomp/snark/SnarkManager.java:2392 -#: ../java/src/org/klomp/snark/SnarkManager.java:2403 +#: ../java/src/org/klomp/snark/SnarkManager.java:2539 +#: ../java/src/org/klomp/snark/SnarkManager.java:2550 msgid "I2P tunnel closed." msgstr "I2P tunnel gesloten." #: ../java/src/org/klomp/snark/MagnetURI.java:42 #: ../java/src/org/klomp/snark/MagnetURI.java:52 -#: ../java/src/org/klomp/snark/SnarkManager.java:2096 +#: ../java/src/org/klomp/snark/SnarkManager.java:2221 msgid "Magnet" msgstr "Magneet" -#: ../java/src/org/klomp/snark/SnarkManager.java:772 +#: ../java/src/org/klomp/snark/SnarkManager.java:791 #, java-format msgid "Total uploaders limit changed to {0}" msgstr "Totale uploaders limiet gewijzigd in {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:774 +#: ../java/src/org/klomp/snark/SnarkManager.java:793 #, java-format msgid "Minimum total uploaders limit is {0}" msgstr "Minimum totale uploaders limiet is {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:786 +#: ../java/src/org/klomp/snark/SnarkManager.java:805 #, java-format msgid "Up BW limit changed to {0}KBps" msgstr "Up bandbreedte limiet gewijzigd in {0}KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:788 +#: ../java/src/org/klomp/snark/SnarkManager.java:807 #, java-format msgid "Minimum up bandwidth limit is {0}KBps" msgstr "Minimum up bandbreedte limiet is {0}KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:800 +#: ../java/src/org/klomp/snark/SnarkManager.java:819 #, java-format msgid "Startup delay changed to {0}" msgstr "Opstartvertraging gewijzigd in {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:811 +#: ../java/src/org/klomp/snark/SnarkManager.java:830 #, java-format msgid "Refresh time changed to {0}" msgstr "Ververstijd gewijzigd naar {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:813 +#: ../java/src/org/klomp/snark/SnarkManager.java:832 msgid "Refresh disabled" msgstr "Verversen uitgezet" -#: ../java/src/org/klomp/snark/SnarkManager.java:829 +#: ../java/src/org/klomp/snark/SnarkManager.java:848 #, java-format msgid "Page size changed to {0}" msgstr "Paginagrootte gewijzigd naar {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:838 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:956 +#: ../java/src/org/klomp/snark/SnarkManager.java:857 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:958 msgid "Data directory must be an absolute path" msgstr "Data-directory moet een absoluut pad zijn" -#: ../java/src/org/klomp/snark/SnarkManager.java:840 +#: ../java/src/org/klomp/snark/SnarkManager.java:859 msgid "Data directory does not exist" msgstr "Data-directory bestaat niet" -#: ../java/src/org/klomp/snark/SnarkManager.java:842 +#: ../java/src/org/klomp/snark/SnarkManager.java:861 msgid "Not a directory" msgstr "Geen directory" -#: ../java/src/org/klomp/snark/SnarkManager.java:844 +#: ../java/src/org/klomp/snark/SnarkManager.java:863 msgid "Unreadable" msgstr "Onleesbaar" -#: ../java/src/org/klomp/snark/SnarkManager.java:849 +#: ../java/src/org/klomp/snark/SnarkManager.java:868 #, java-format msgid "Data directory changed to {0}" msgstr "Data-directory gewijzigd naar {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:904 +#: ../java/src/org/klomp/snark/SnarkManager.java:923 msgid "I2CP and tunnel changes will take effect after stopping all torrents" msgstr "I2CP en tunnel wijzigingen hebben pas effect na het stoppen van alle torrents" -#: ../java/src/org/klomp/snark/SnarkManager.java:908 +#: ../java/src/org/klomp/snark/SnarkManager.java:927 #, java-format msgid "I2CP options changed to {0}" msgstr "I2CP-opties gewijzigd naar {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:914 +#: ../java/src/org/klomp/snark/SnarkManager.java:933 msgid "Disconnecting old I2CP destination" msgstr "Oude I2CP destination wordt afgesloten" -#: ../java/src/org/klomp/snark/SnarkManager.java:916 +#: ../java/src/org/klomp/snark/SnarkManager.java:935 #, java-format msgid "I2CP settings changed to {0}" msgstr "I2CP instellingen gewijzigd in {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:921 +#: ../java/src/org/klomp/snark/SnarkManager.java:940 msgid "" "Unable to connect with the new settings, reverting to the old I2CP settings" msgstr "Kan geen connectie maken met de nieuwe instellingen, we keren terug naar oude I2CP instellingen" -#: ../java/src/org/klomp/snark/SnarkManager.java:925 +#: ../java/src/org/klomp/snark/SnarkManager.java:944 msgid "Unable to reconnect with the old settings!" msgstr "Kan niet opnieuw verbinden met de oude instellingen!" -#: ../java/src/org/klomp/snark/SnarkManager.java:927 +#: ../java/src/org/klomp/snark/SnarkManager.java:946 msgid "Reconnected on the new I2CP destination" msgstr "Opnieuw verbonden met de nieuwe I2CP destination" -#: ../java/src/org/klomp/snark/SnarkManager.java:934 +#: ../java/src/org/klomp/snark/SnarkManager.java:953 #, java-format msgid "I2CP listener restarted for \"{0}\"" msgstr "I2CP listener herstart voor \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:948 +#: ../java/src/org/klomp/snark/SnarkManager.java:967 msgid "New files will be publicly readable" msgstr "Nieuwe bestanden zullen publiek bereikbaar zijn" -#: ../java/src/org/klomp/snark/SnarkManager.java:950 +#: ../java/src/org/klomp/snark/SnarkManager.java:969 msgid "New files will not be publicly readable" msgstr "Nieuwe bestanden zullen niet publiek bereikbaar zijn" -#: ../java/src/org/klomp/snark/SnarkManager.java:957 +#: ../java/src/org/klomp/snark/SnarkManager.java:976 msgid "Enabled autostart" msgstr "Autostart ingeschakeld" -#: ../java/src/org/klomp/snark/SnarkManager.java:959 +#: ../java/src/org/klomp/snark/SnarkManager.java:978 msgid "Disabled autostart" msgstr "Autostart uitgeschakeld" -#: ../java/src/org/klomp/snark/SnarkManager.java:965 +#: ../java/src/org/klomp/snark/SnarkManager.java:985 +msgid "Enabled smart sort" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:987 +msgid "Disabled smart sort" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:994 msgid "Enabled open trackers - torrent restart required to take effect." msgstr "Open Trackers ingeschakeld - torrent herstart nodig." -#: ../java/src/org/klomp/snark/SnarkManager.java:967 +#: ../java/src/org/klomp/snark/SnarkManager.java:996 msgid "Disabled open trackers - torrent restart required to take effect." msgstr "Open Trackers uitgeschakeld - torrent herstart nodig." -#: ../java/src/org/klomp/snark/SnarkManager.java:974 +#: ../java/src/org/klomp/snark/SnarkManager.java:1003 msgid "Enabled DHT." msgstr "DHT aangezet." -#: ../java/src/org/klomp/snark/SnarkManager.java:976 +#: ../java/src/org/klomp/snark/SnarkManager.java:1005 msgid "Disabled DHT." msgstr "DHT uitgezet." -#: ../java/src/org/klomp/snark/SnarkManager.java:978 +#: ../java/src/org/klomp/snark/SnarkManager.java:1007 msgid "DHT change requires tunnel shutdown and reopen" msgstr "DHT-wijziging vereist afsluiten en opnieuw openen van tunnel" -#: ../java/src/org/klomp/snark/SnarkManager.java:985 +#: ../java/src/org/klomp/snark/SnarkManager.java:1014 #, java-format msgid "{0} theme loaded, return to main i2psnark page to view." msgstr "{0} thema geladen, ga naar de hoofd i2psnark pagina om deze te bekijken." -#: ../java/src/org/klomp/snark/SnarkManager.java:995 +#: ../java/src/org/klomp/snark/SnarkManager.java:1024 msgid "Configuration unchanged." msgstr "Configuratie ongewijzigd." -#: ../java/src/org/klomp/snark/SnarkManager.java:1027 +#: ../java/src/org/klomp/snark/SnarkManager.java:1056 msgid "Open Tracker list changed - torrent restart required to take effect." msgstr "Open Tracker lijst gewijzigd - torrent herstart nodig." -#: ../java/src/org/klomp/snark/SnarkManager.java:1037 +#: ../java/src/org/klomp/snark/SnarkManager.java:1066 msgid "Private tracker list changed - affects newly created torrents only." msgstr "Privé trackerlijst gewijzigd - beïnvloedt enkel nieuw aangemaakte torrents." -#: ../java/src/org/klomp/snark/SnarkManager.java:1083 +#: ../java/src/org/klomp/snark/SnarkManager.java:1112 #, java-format msgid "Unable to save the config to {0}" msgstr "Kan de configuratie niet opslaan in {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1164 +#: ../java/src/org/klomp/snark/SnarkManager.java:1193 msgid "Connecting to I2P" msgstr "Verbinden met I2P" -#: ../java/src/org/klomp/snark/SnarkManager.java:1167 +#: ../java/src/org/klomp/snark/SnarkManager.java:1196 msgid "Error connecting to I2P - check your I2CP settings!" msgstr "Fout bij verbinden met I2P - controlleer je I2CP instellingen!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1176 -#: ../java/src/org/klomp/snark/SnarkManager.java:2133 +#: ../java/src/org/klomp/snark/SnarkManager.java:1205 +#: ../java/src/org/klomp/snark/SnarkManager.java:2270 #, java-format msgid "Error: Could not add the torrent {0}" msgstr "Fout: Kan de torrent {0} niet toevoegen" #. catch this here so we don't try do delete it below -#: ../java/src/org/klomp/snark/SnarkManager.java:1199 +#: ../java/src/org/klomp/snark/SnarkManager.java:1228 #, java-format msgid "Cannot open \"{0}\"" msgstr "Kan \"{0}\" niet openen" #. TODO - if the existing one is a magnet, delete it and add the metainfo #. instead? -#: ../java/src/org/klomp/snark/SnarkManager.java:1218 -#: ../java/src/org/klomp/snark/SnarkManager.java:1352 -#: ../java/src/org/klomp/snark/SnarkManager.java:1440 +#: ../java/src/org/klomp/snark/SnarkManager.java:1247 +#: ../java/src/org/klomp/snark/SnarkManager.java:1388 +#: ../java/src/org/klomp/snark/SnarkManager.java:1476 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:166 #, java-format msgid "Torrent with this info hash is already running: {0}" msgstr "Torrent met deze info hash is al actief: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1224 +#: ../java/src/org/klomp/snark/SnarkManager.java:1253 #, java-format msgid "ERROR - No I2P trackers in private torrent \"{0}\"" msgstr "FOUT - Geen I2P-trackers in privé-torrent \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:1226 +#: ../java/src/org/klomp/snark/SnarkManager.java:1255 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", will announce to I2P open trackers and" " DHT only." msgstr "Waarschuwing - Geen I2P-trackers in \"{0}\", zal alleen aankondigen aan open trackers en DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:1229 +#: ../java/src/org/klomp/snark/SnarkManager.java:1258 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and open trackers are disabled, will " "announce to DHT only." msgstr "Waarschuwing - Geen I2P-trackers in \"{0}\", en open trackers zijn uitgezet, zal alleen aankondigen aan DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:1231 +#: ../java/src/org/klomp/snark/SnarkManager.java:1260 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and DHT and open trackers are " @@ -250,34 +258,46 @@ msgid "" "torrent." msgstr "Waarschuwing - Geen I2P-trackers in \"{0}\", en DHT en open trackers zijn uitgezet, je moet open trackers of DHT aanzetten alvorens de torrent te starten." -#: ../java/src/org/klomp/snark/SnarkManager.java:1257 +#: ../java/src/org/klomp/snark/SnarkManager.java:1286 #, java-format msgid "Torrent in \"{0}\" is invalid" msgstr "Torrent in \"{0}\" is ongeldig" -#: ../java/src/org/klomp/snark/SnarkManager.java:1264 +#: ../java/src/org/klomp/snark/SnarkManager.java:1292 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1042 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1069 +#, java-format +msgid "Torrent file deleted: {0}" +msgstr "Torrent bestand verwijderd: {0}" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1295 +#, java-format +msgid "Torrent file moved from {0} to {1}" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1299 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:193 #, java-format msgid "ERROR - Out of memory, cannot create torrent from {0}" msgstr "ERROR - Geen geheugen meer, kan geen torrent maken van {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1285 +#: ../java/src/org/klomp/snark/SnarkManager.java:1321 #, java-format -msgid "Torrent added and started: \"{0}\"" -msgstr "Torrent toegevoegd en gestart: \"{0}\"" +msgid "Torrent added and started: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1287 +#: ../java/src/org/klomp/snark/SnarkManager.java:1323 #, java-format -msgid "Torrent added: \"{0}\"" -msgstr "Torrent toegevoegd: \"{0}\"" +msgid "Torrent added: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1363 +#: ../java/src/org/klomp/snark/SnarkManager.java:1399 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:93 #, java-format msgid "Fetching {0}" msgstr "Downloaden {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1369 +#: ../java/src/org/klomp/snark/SnarkManager.java:1405 #, java-format msgid "" "Open trackers are disabled and we have no DHT peers. Fetch of {0} may not " @@ -285,131 +305,146 @@ msgid "" "DHT." msgstr "Open trackers zijn uitgezet en we hebben geen DHT peers. Ophalen van {0} zal misschien niet lukken tot je een andere torrent start, open trackers aanzet, of DHT aanzet." -#: ../java/src/org/klomp/snark/SnarkManager.java:1373 +#: ../java/src/org/klomp/snark/SnarkManager.java:1409 #, java-format msgid "Adding {0}" msgstr "Toevoegen van {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1406 +#: ../java/src/org/klomp/snark/SnarkManager.java:1442 #, java-format msgid "Download already running: {0}" msgstr "Download is al bezig: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1451 -#: ../java/src/org/klomp/snark/SnarkManager.java:1477 -#: ../java/src/org/klomp/snark/SnarkManager.java:2052 +#: ../java/src/org/klomp/snark/SnarkManager.java:1487 +#: ../java/src/org/klomp/snark/SnarkManager.java:1513 +#: ../java/src/org/klomp/snark/SnarkManager.java:2151 #, java-format msgid "Failed to copy torrent file to {0}" msgstr "Kan het torrent bestand niet kopieren naar {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1828 +#: ../java/src/org/klomp/snark/SnarkManager.java:1927 #, java-format -msgid "Too many files in \"{0}\" ({1}), deleting it!" -msgstr "Te veel bestanden in \"{0}\" ({1}), wordt verwijderd!" +msgid "Too many files in \"{0}\" ({1})!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1830 +#: ../java/src/org/klomp/snark/SnarkManager.java:1929 #, java-format -msgid "Torrent file \"{0}\" cannot end in \".torrent\", deleting it!" -msgstr "Torrent bestand \"{0}\" kan niet eindigen in \".torrent\", wordt verwijderd!" +msgid "Torrent file \"{0}\" cannot end in \".torrent\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1832 +#: ../java/src/org/klomp/snark/SnarkManager.java:1931 #, java-format -msgid "No pieces in \"{0}\", deleting it!" -msgstr "Geen stukken in \"{0}\", wordt verwijderd!" +msgid "No pieces in \"{0}\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1834 +#: ../java/src/org/klomp/snark/SnarkManager.java:1933 #, java-format -msgid "Too many pieces in \"{0}\", limit is {1}, deleting it!" -msgstr "Te veel stukken in \"{0}\", limiet is {1}, wordt verwijderd!" +msgid "Too many pieces in \"{0}\", limit is {1}!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1836 +#: ../java/src/org/klomp/snark/SnarkManager.java:1935 #, java-format -msgid "Pieces are too large in \"{0}\" ({1}B), deleting it." -msgstr "Stukken zijn te groot in \"{0}\" ({1}B), wordt verwijderd." +msgid "Pieces are too large in \"{0}\" ({1}B)!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1837 +#: ../java/src/org/klomp/snark/SnarkManager.java:1936 #, java-format msgid "Limit is {0}B" msgstr "Limiet is {0}B" -#: ../java/src/org/klomp/snark/SnarkManager.java:1839 +#: ../java/src/org/klomp/snark/SnarkManager.java:1938 #, java-format -msgid "Torrent \"{0}\" has no data, deleting it!" -msgstr "Torrent \"{0}\" heeft geen data en wordt verwijderd!" +msgid "Torrent \"{0}\" has no data!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1847 +#: ../java/src/org/klomp/snark/SnarkManager.java:1946 #, java-format -msgid "Torrents larger than {0}B are not supported yet, deleting \"{1}\"" -msgstr "Torrents groter dan {0}B worden nog niet ondersteund, verwijder \"{1}\"" +msgid "Torrents larger than {0}B are not supported yet \"{1}\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1864 +#: ../java/src/org/klomp/snark/SnarkManager.java:1963 #, java-format msgid "Error: Could not remove the torrent {0}" msgstr "Fout: Kan de torrent {0} niet verwijderen" -#: ../java/src/org/klomp/snark/SnarkManager.java:1887 -#: ../java/src/org/klomp/snark/SnarkManager.java:1906 +#: ../java/src/org/klomp/snark/SnarkManager.java:1986 +#: ../java/src/org/klomp/snark/SnarkManager.java:2005 #, java-format -msgid "Torrent stopped: \"{0}\"" -msgstr "Torrent gestopt: \"{0}\"" +msgid "Torrent stopped: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1926 +#: ../java/src/org/klomp/snark/SnarkManager.java:2025 #, java-format msgid "Torrent removed: \"{0}\"" msgstr "Torrent verwijderd: \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:1934 +#: ../java/src/org/klomp/snark/SnarkManager.java:2033 #, java-format msgid "Adding torrents in {0}" msgstr "Toevoegen van torrents in {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1966 +#: ../java/src/org/klomp/snark/SnarkManager.java:2067 #, java-format msgid "Up bandwidth limit is {0} KBps" msgstr "Bandbreedtelimiet omhoog is {0} KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:1993 +#: ../java/src/org/klomp/snark/SnarkManager.java:2092 #, java-format msgid "Download finished: {0}" msgstr "Download gereed: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2048 +#: ../java/src/org/klomp/snark/SnarkManager.java:2147 #, java-format msgid "Metainfo received for {0}" msgstr "Metainfo ontvangen voor {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2049 -#: ../java/src/org/klomp/snark/SnarkManager.java:2280 +#: ../java/src/org/klomp/snark/SnarkManager.java:2148 +#: ../java/src/org/klomp/snark/SnarkManager.java:2431 #, java-format msgid "Starting up torrent {0}" msgstr "Starten met torrent {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2064 +#: ../java/src/org/klomp/snark/SnarkManager.java:2163 #, java-format msgid "Error on torrent {0}" msgstr "Fout bij torrent {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2127 +#: ../java/src/org/klomp/snark/SnarkManager.java:2264 msgid "Unable to connect to I2P!" msgstr "Kan niet verbinden met I2P!" -#: ../java/src/org/klomp/snark/SnarkManager.java:2279 +#: ../java/src/org/klomp/snark/SnarkManager.java:2430 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:130 msgid "Opening the I2P tunnel" msgstr "Bezig met openen van I2P-tunnel" -#: ../java/src/org/klomp/snark/SnarkManager.java:2303 +#: ../java/src/org/klomp/snark/SnarkManager.java:2450 msgid "Opening the I2P tunnel and starting all torrents." msgstr "Openen van de I2P tunnel en starten van alle torrents." -#: ../java/src/org/klomp/snark/SnarkManager.java:2366 +#: ../java/src/org/klomp/snark/SnarkManager.java:2513 msgid "Stopping all torrents and closing the I2P tunnel." msgstr "Stoppen van alle torrents en sluiten van I2P tunnel." -#: ../java/src/org/klomp/snark/SnarkManager.java:2385 +#: ../java/src/org/klomp/snark/SnarkManager.java:2532 msgid "Closing I2P tunnel after notifying trackers." msgstr "Bezig met sluiten van I2P-tunnel na verwittigen van trackers." +#: ../java/src/org/klomp/snark/SnarkManager.java:2594 +#, java-format +msgid "Finished recheck of torrent {0}, now {1} complete" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2596 +#, java-format +msgid "Finished recheck of torrent {0}, unchanged" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2600 +#, java-format +msgid "Error checking the torrent {0}" +msgstr "" + #: ../java/src/org/klomp/snark/TrackerClient.java:245 #, java-format msgid "No valid trackers for {0} - enable opentrackers or DHT?" @@ -455,891 +490,913 @@ msgstr "Torrent zit al in de wachtrij: {0}" msgid "Torrent at {0} was not valid" msgstr "Torrent op {0} was niet geldig" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:268 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:311 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:322 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1763 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2662 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:270 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:313 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:324 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1778 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2698 msgid "I2PSnark" msgstr "I2PSnark" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:273 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2149 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2422 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2165 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2446 msgid "Configuration" msgstr "Configuratie" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:277 msgid "Anonymous BitTorrent Client" msgstr "Anonieme BitTorrent-cliënt" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:291 msgid "Router is down" msgstr "Router is uitgeschakeld" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:306 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:308 msgid "Torrents" msgstr "Torrents" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:319 msgid "Refresh page" msgstr "Ververs pagina" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:326 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:328 msgid "Forum" msgstr "Forum" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:341 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:343 msgid "Click \"Add torrent\" button to fetch torrent" msgstr "Klik op de \"Torrent toevoegen\"-knop om de torrent op te halen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:394 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:396 msgid "clear messages" msgstr "berichten wissen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:449 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2980 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3072 msgid "Status" msgstr "Status" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2994 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:453 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3086 #, java-format msgid "Sort by {0}" msgstr "Sorteren op {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:462 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:464 msgid "Hide Peers" msgstr "Verberg Peers" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:468 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:470 msgid "Show Peers" msgstr "Toon Peers" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:491 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2648 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2718 msgid "Torrent" msgstr "Torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "File type" msgstr "Bestandstype" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:509 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 msgid "ETA" msgstr "ETA" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:512 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:514 msgid "Estimated time remaining" msgstr "Schatting resterende tijd" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:535 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 msgid "RX" msgstr "RX" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:538 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:540 msgid "Downloaded" msgstr "Gedownload" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2818 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2968 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2878 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3060 msgid "Size" msgstr "Grootte" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 msgid "TX" msgstr "TX" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2896 msgid "Upload ratio" msgstr "Upload-ratio" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:569 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:571 msgid "Uploaded" msgstr "Geupload" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:581 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 msgid "RX Rate" msgstr "RX-ratio" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:584 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:586 msgid "Down Rate" msgstr "Down Snelheid" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:596 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 msgid "TX Rate" msgstr "TX-ratio" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:599 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:601 msgid "Up Rate" msgstr "Up Snelheid" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:615 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 msgid "Stop all torrents and the I2P tunnel" msgstr "Stop alle torrents en de I2P tunnel" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:619 msgid "Stop All" msgstr "Stop Alle" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:629 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 msgid "Start all stopped torrents" msgstr "Start alle gestopte torrents" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:633 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:647 msgid "Start All" msgstr "Start Alle" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:643 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 msgid "Start all torrents and the I2P tunnel" msgstr "Start alle torrents en de I2P tunnel" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:668 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:670 msgid "No torrents loaded." msgstr "Geen torrents geladen." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:674 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 msgid "Totals" msgstr "Totalen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:678 #, java-format msgid "1 torrent" msgid_plural "{0} torrents" msgstr[0] "1 torrent" msgstr[1] "{0} torrents" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:683 #, java-format msgid "1 connected peer" msgid_plural "{0} connected peers" msgstr[0] "1 verbonden peer" msgstr[1] "{0} verbonden peers" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:688 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:690 #, java-format msgid "1 DHT peer" msgid_plural "{0} DHT peers" msgstr[0] "1 DHT peer" msgstr[1] "{0} DHT peers" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:695 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:697 msgid "Dest" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First" msgstr "Eerste" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First page" msgstr "Eerste pagina" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Prev" msgstr "Vorige" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Previous page" msgstr "Vorige pagina" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next" msgstr "Volgende" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next page" msgstr "Volgende pagina" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last" msgstr "Laatste" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last page" msgstr "Laatste pagina" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:960 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:962 msgid "Data directory cannot be created" msgstr "Data-directory kan niet aangemaakt worden" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1176 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:972 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1185 #, java-format msgid "Cannot add torrent {0} inside another torrent: {1}" msgstr "Kan torrent {0} niet toevoegen binnen andere torrent: {1}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:985 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:993 #, java-format msgid "Invalid URL: Must start with \"http://\", \"{0}\", or \"{1}\"" msgstr "Ongeldige URL: moet beginnen met \"http://\", \"{0}\", of \"{1}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1026 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1063 #, java-format msgid "Magnet deleted: {0}" msgstr "Magnet verwijderd: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1061 #, java-format -msgid "Torrent file deleted: {0}" -msgstr "Torrent bestand verwijderd: {0}" - -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1053 -#, java-format msgid "Download deleted: {0}" msgstr "Download verwijderd: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1070 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1078 #, java-format msgid "Data file deleted: {0}" msgstr "Data bestand verwijderd: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1072 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1089 #, java-format msgid "Data file could not be deleted: {0}" msgstr "Kan data bestand niet verwijderen: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1097 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1105 #, java-format msgid "Directory could not be deleted: {0}" msgstr "Directory kon niet worden verwijderd: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1112 #, java-format msgid "Directory deleted: {0}" msgstr "Map verwijderd: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1155 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1164 #, java-format msgid "Cannot add a torrent ending in \".torrent\": {0}" msgstr "Kan geen torrent toevoegen die eindig op \".torrent\": {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1160 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1169 #, java-format msgid "Torrent with this name is already running: {0}" msgstr "Torrent met deze naam is al bezig: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1175 #, java-format msgid "Cannot add a torrent including an I2P directory: {0}" msgstr "Kan geen torrent toevoegen die een I2P-directory bevat: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1181 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1190 #, java-format msgid "Cannot add torrent {0} including another torrent: {1}" msgstr "Kan torrent {0} die een andere torrent bevat niet toevoegen: {1}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1216 msgid "Error - Cannot include alternate trackers without a primary tracker" msgstr "Fout - Kan geen alternatieve trackers toevoegen zonder een primaire tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1220 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1229 msgid "Error - Cannot mix private and public trackers in a torrent" msgstr "Fout - Kan privé en publieke trackers in een torrent niet mengen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1251 #, java-format msgid "Torrent created for \"{0}\"" msgstr "Torrent gemaakt voor \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1244 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 #, java-format msgid "" "Many I2P trackers require you to register new torrents before seeding - " "please do so before starting \"{0}\"" msgstr "Veel I2P trackers vereisen dat je de nieuwe torrent registreert voor het seeden - doe dit voordat je \"{0}\" start" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1255 #, java-format msgid "Error creating a torrent for \"{0}\"" msgstr "Fout bij het maken van een torrent voor \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1250 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1259 #, java-format msgid "Cannot create a torrent for the nonexistent data: {0}" msgstr "Kan geen torrent maken voor niet-bestaande data: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1262 msgid "Error creating torrent - you must enter a file or directory" msgstr "Fout bij het maken van de torrent - je moet een bestand of directory invullen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2406 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2430 msgid "Delete selected" msgstr "Geselecteerde verwijderen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2408 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2432 msgid "Save tracker configuration" msgstr "Trackerconfiguratie opslaan" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1301 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1310 msgid "Removed" msgstr "Verwijderd" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1333 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2405 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2407 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1342 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2429 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2431 msgid "Add tracker" msgstr "Tracker toevoegen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1356 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1359 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1365 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1368 msgid "Enter valid tracker name and URLs" msgstr "Geef een geldige trackernaam en URLs in" #. "<input type=\"reset\" class=\"cancel\" #. value=\"").append(_t("Cancel")).append("\">\n" + -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1361 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2410 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1370 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2434 msgid "Restore defaults" msgstr "Standaardtrackers herstellen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1373 msgid "Restored default trackers" msgstr "Standaardtrackers hersteld" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1472 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1473 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1485 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1486 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2949 msgid "Checking" msgstr "Bezig met controleren" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1475 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1476 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1489 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2956 msgid "Allocating" msgstr "Bezig met toewijzen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1499 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1505 msgid "Tracker Error" msgstr "Tracker Fout" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1492 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1522 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1527 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1538 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1543 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1554 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1507 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1537 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1542 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1553 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1558 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1569 #, java-format msgid "1 peer" msgid_plural "{0} peers" msgstr[0] "1 peer" msgstr[1] "{0} peers" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1502 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1503 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1517 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1518 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2954 msgid "Starting" msgstr "Bezig met starten" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1511 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1526 msgid "Seeding" msgstr "Seeding" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1515 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1529 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1530 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2831 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1544 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2891 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3139 msgid "Complete" msgstr "Voltooid" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1534 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1535 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1540 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1541 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1550 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1555 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 msgid "OK" msgstr "OK" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1546 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1551 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1552 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1567 msgid "Stalled" msgstr "Vastgelopen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1557 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1571 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1572 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1575 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1576 msgid "No Peers" msgstr "Geen Peers" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1563 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1578 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1579 msgid "Stopped" msgstr "Gestopt" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1593 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1608 msgid "Torrent details" msgstr "Torrent details" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1628 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1643 msgid "View files" msgstr "Bekijk bestanden" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1630 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1645 msgid "Open file" msgstr "Open bestand" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1682 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 msgid "Stop the torrent" msgstr "Stop de torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2961 msgid "Stop" msgstr "Stop" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 msgid "Start the torrent" msgstr "Start de torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1714 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2963 msgid "Start" msgstr "Start" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1727 msgid "Remove the torrent from the active list, deleting the .torrent file" msgstr "Verwijder de torrent van de actieve lijst, het .torrent bestand wordt verwijderd" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1717 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1732 #, java-format msgid "" "Are you sure you want to delete the file \\''{0}\\'' (downloaded data will " "not be deleted) ?" msgstr "Ben je zeker dat je het bestand \\''{0}\\'' wil verwijderen (gedownloade data zullen niet verwijderd worden)?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1721 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1736 msgid "Remove" msgstr "Weghalen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1734 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1749 msgid "Delete the .torrent file and the associated data file(s)" msgstr "Verwijder het .torrent bestand en de gerelateerde data bestand(en)" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1739 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1754 #, java-format msgid "" "Are you sure you want to delete the torrent \\''{0}\\'' and all downloaded " "data?" msgstr "Weet je zeker dat je de torrent \\''{0}\\'' en alle gedownloade data wilt verwijderen?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1743 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1758 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2388 msgid "Delete" msgstr "Verwijderen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1779 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1794 msgid "Unknown" msgstr "Onbekend" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1791 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1806 msgid "Seed" msgstr "Seed" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1814 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1829 msgid "Uninteresting (The peer has no pieces we need)" msgstr "Niet interessant (De peer heeft geen stukken die we nodig hebben)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1816 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1831 msgid "Choked (The peer is not allowing us to request pieces)" msgstr "Verstikt (De peer laat ons niet toe om stukken op te vragen)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1851 msgid "Uninterested (We have no pieces the peer needs)" msgstr "Niet geïnteresseerd (We heben geen stukken die de peer nodig heeft)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1838 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1853 msgid "Choking (We are not allowing the peer to request pieces)" msgstr "Verstikt (We laten de peer niet toe om stukken op te vragen)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1954 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1969 #, java-format msgid "Details at {0} tracker" msgstr "Details op de {0} tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1971 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1986 msgid "Info" msgstr "Info" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 msgid "Add Torrent" msgstr "Torrent Toevoegen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 msgid "From URL" msgstr "Van URL" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2050 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2065 msgid "" "Enter the torrent file download URL (I2P only), magnet link, maggot link, or" " info hash" msgstr "Voer de download-URL (alleen I2P), magneetlink, maggotlink of infohash van het torrentbestand in" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2070 msgid "Add torrent" msgstr "Torrent toevoegen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2074 msgid "Data dir" msgstr "Datamap" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2077 #, java-format msgid "Enter the directory to save the data in (default {0})" msgstr "Voer de directory om de gegevens in op te slaan in (standaard {0})" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2066 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 #, java-format msgid "You can also copy .torrent files to: {0}." msgstr "Je kan ook .torrent bestanden kopieren naar: {0}." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2068 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2083 msgid "Removing a .torrent will cause it to stop." msgstr "Verwijderen van een .torrent zorgt dat deze stopt." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2096 msgid "Create Torrent" msgstr "Creëer Torrent" #. out.write("From file: <input type=\"file\" name=\"newFile\" size=\"50\" #. value=\"" + newFile + "\" /><br>\n"); -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2084 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2099 msgid "Data to seed" msgstr "Data om te seeden" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2088 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2103 #, java-format msgid "File or directory to seed (full path or within the directory {0} )" msgstr "Bestand of directory om te seeden (volledig pad of binnen de directory {0} )" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2091 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2337 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2106 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2361 msgid "Trackers" msgstr "Trackers" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2093 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2108 msgid "Primary" msgstr "Primair" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2095 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2110 msgid "Alternates" msgstr "Alternatieven" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2098 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2113 msgid "Create torrent" msgstr "Creëer torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2116 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2131 msgid "none" msgstr "geen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2153 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2169 msgid "Data directory" msgstr "Data directory" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2158 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 msgid "Files readable by all" msgstr "Bestanden leesbaar door iedereen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2162 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2178 msgid "If checked, other users may access the downloaded files" msgstr "Indien aangevinkt hebben andere gebruikers toegang tot de gedownloade bestanden" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2182 msgid "Auto start torrents" msgstr "Torrents automatisch starten" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2170 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2186 msgid "If checked, automatically start torrents that are added" msgstr "Indien aangevinkt, start toegevoegde torrents automatisch" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2190 +msgid "Smart torrent sorting" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2194 +msgid "If checked, ignore words such as 'the' when sorting" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2198 msgid "Theme" msgstr "Thema" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2188 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2212 msgid "Refresh time" msgstr "Ververstijd" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2201 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2225 msgid "Never" msgstr "Nooit" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2231 msgid "Startup delay" msgstr "Startup vertraging" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2209 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2233 msgid "minutes" msgstr "minuten" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2213 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2237 msgid "Page size" msgstr "Paginagrootte" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2215 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 msgid "torrents" msgstr "torrents" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 msgid "Total uploader limit" msgstr "Totale uploader limiet" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2266 msgid "peers" msgstr "peers" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2270 msgid "Up bandwidth limit" msgstr "Up bandbreedte limiet" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2249 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2273 msgid "Half available bandwidth recommended." msgstr "Helft van beschikbare bandbreedte aanbevolen." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2251 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2275 msgid "View or change router bandwidth" msgstr "Bekijk of wijzig router bandbreedte" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2255 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2279 msgid "Use open trackers also" msgstr "Gebruik ook open trackers" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2259 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 msgid "" "If checked, announce torrents to open trackers as well as the tracker listed" " in the torrent file" msgstr "Indien aangevinkt, kondig torrents ook aan bij de tracker uit het torrent bestand" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2287 msgid "Enable DHT" msgstr "DHT aanzetten" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2267 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2291 msgid "If checked, use DHT" msgstr "Gebruik DHT indien aangevinkt" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2307 msgid "Inbound Settings" msgstr "Inkomende Instellingen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2313 msgid "Outbound Settings" msgstr "Uitgaande Instellingen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2297 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2321 msgid "I2CP host" msgstr "I2CP host" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2302 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2326 msgid "I2CP port" msgstr "I2CP poort" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2341 msgid "I2CP options" msgstr "I2CP opties" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2322 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 msgid "Save configuration" msgstr "Configuratie opslaan" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2342 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2366 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "Name" msgstr "Naam" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2344 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2368 msgid "Website URL" msgstr "Website-URL" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2370 msgid "Standard" msgstr "Standaard" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2348 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2372 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3172 msgid "Open" msgstr "Open" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2350 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2374 msgid "Private" msgstr "Privé" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2352 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2376 msgid "Announce URL" msgstr "Kondig URL aan" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2396 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2420 msgid "Add" msgstr "Toevoegen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2439 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2463 #, java-format msgid "Invalid magnet URL {0}" msgstr "Ongeldige magnet URL {0}" #. * dummies for translation -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2447 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2471 #, java-format msgid "1 hop" msgid_plural "{0} hops" msgstr[0] "1 hop" msgstr[1] "{0} hops" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2448 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2472 #, java-format msgid "1 tunnel" msgid_plural "{0} tunnels" msgstr[0] "1 tunnel" msgstr[1] "{0} tunnels" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2691 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2728 msgid "Torrent file" msgstr "Torrentbestand" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 msgid "Data location" msgstr "Datalocatie" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2708 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2745 msgid "Info hash" msgstr "Infohash" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2727 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2764 msgid "Primary Tracker" msgstr "Primaire tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2773 msgid "Tracker List" msgstr "Trackerlijst" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2761 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2798 msgid "Comment" msgstr "Opmerking" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2771 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2812 msgid "Created" msgstr "Aangemaakt" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2782 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2823 msgid "Created By" msgstr "Aangemaakt door" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2794 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2833 +msgid "Added" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2842 +msgid "Completed" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2854 msgid "Magnet link" msgstr "Magnet link" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2807 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2867 msgid "Private torrent" msgstr "Privé-torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2827 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2887 msgid "Completion" msgstr "Voltooiing" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2856 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2916 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 msgid "Remaining" msgstr "Resterend" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2926 msgid "Files" msgstr "Bestanden" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2873 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 msgid "Pieces" msgstr "Stukken" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2879 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2939 msgid "Piece size" msgstr "Stukgrootte" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2952 +msgid "Refresh page for results" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2964 +msgid "Force Recheck" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3025 msgid "Directory" msgstr "Directory" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2992 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3084 msgid "Priority" msgstr "Prioriteit" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3004 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3096 msgid "Up to higher level directory" msgstr "Naar bovenliggende directory" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3038 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3130 msgid "Torrent not found?" msgstr "Torrent niet gevonden?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3136 msgid "File not found in torrent?" msgstr "Bestand niet gevonden in torrent?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3057 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3149 msgid "complete" msgstr "voltooid" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3058 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3150 msgid "remaining" msgstr "resterend" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3196 msgid "High" msgstr "Hoog" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3109 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3201 msgid "Normal" msgstr "Normaal" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3114 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3206 msgid "Skip" msgstr "Overslaan" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3124 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3216 msgid "Set all high" msgstr "Stel alle in als hoog" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3126 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3218 msgid "Set all normal" msgstr "Stel alle in als normaal" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3128 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3220 msgid "Skip all" msgstr "Alle overslaan" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3129 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3221 msgid "Save priorities" msgstr "Prioriteiten opslaan" diff --git a/apps/i2psnark/locale/messages_pl.po b/apps/i2psnark/locale/messages_pl.po index 3a67840540ab9dd9eabe24ea8bf0bcb53c9e7b65..d5cf89343cec9031ce298cd99230ea7c0166ff01 100644 --- a/apps/i2psnark/locale/messages_pl.po +++ b/apps/i2psnark/locale/messages_pl.po @@ -16,9 +16,9 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:09+0000\n" -"PO-Revision-Date: 2015-09-03 19:18+0000\n" -"Last-Translator: Taporpo Ne <taporpone@gmail.com>\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-05 17:17+0000\n" +"Last-Translator: kytv <killyourtv@i2pmail.org>\n" "Language-Team: Polish (http://www.transifex.com/otf/I2P/language/pl/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -31,222 +31,230 @@ msgid "No more torrents running." msgstr "Nie ma wiÄ™cej uruchomionych torrentów." #: ../java/src/org/klomp/snark/IdleChecker.java:76 -#: ../java/src/org/klomp/snark/SnarkManager.java:2392 -#: ../java/src/org/klomp/snark/SnarkManager.java:2403 +#: ../java/src/org/klomp/snark/SnarkManager.java:2539 +#: ../java/src/org/klomp/snark/SnarkManager.java:2550 msgid "I2P tunnel closed." msgstr "ZamkniÄ™to tunel I2P." #: ../java/src/org/klomp/snark/MagnetURI.java:42 #: ../java/src/org/klomp/snark/MagnetURI.java:52 -#: ../java/src/org/klomp/snark/SnarkManager.java:2096 +#: ../java/src/org/klomp/snark/SnarkManager.java:2221 msgid "Magnet" msgstr "Magnet" -#: ../java/src/org/klomp/snark/SnarkManager.java:772 +#: ../java/src/org/klomp/snark/SnarkManager.java:791 #, java-format msgid "Total uploaders limit changed to {0}" msgstr "Ograniczenie liczby uploaderów zmieniono do {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:774 +#: ../java/src/org/klomp/snark/SnarkManager.java:793 #, java-format msgid "Minimum total uploaders limit is {0}" msgstr "Minimalny caÅ‚kowity limit uploadera: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:786 +#: ../java/src/org/klomp/snark/SnarkManager.java:805 #, java-format msgid "Up BW limit changed to {0}KBps" msgstr "Ograniczenie pasma wyjÅ›ciowego zmieniono na: {0} KB/s" -#: ../java/src/org/klomp/snark/SnarkManager.java:788 +#: ../java/src/org/klomp/snark/SnarkManager.java:807 #, java-format msgid "Minimum up bandwidth limit is {0}KBps" msgstr "Minimalne pasmo wyjÅ›ciowe to: {0} KB/s" -#: ../java/src/org/klomp/snark/SnarkManager.java:800 +#: ../java/src/org/klomp/snark/SnarkManager.java:819 #, java-format msgid "Startup delay changed to {0}" msgstr "Opóźnienie uruchamiania zmieniono na {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:811 +#: ../java/src/org/klomp/snark/SnarkManager.java:830 #, java-format msgid "Refresh time changed to {0}" msgstr "Czas odÅ›wierzania zmieniony na {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:813 +#: ../java/src/org/klomp/snark/SnarkManager.java:832 msgid "Refresh disabled" msgstr "OdÅ›wieżanie wyłączone" -#: ../java/src/org/klomp/snark/SnarkManager.java:829 +#: ../java/src/org/klomp/snark/SnarkManager.java:848 #, java-format msgid "Page size changed to {0}" msgstr "Rozmiar strony zmieniony do {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:838 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:956 +#: ../java/src/org/klomp/snark/SnarkManager.java:857 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:958 msgid "Data directory must be an absolute path" msgstr "Katalog danych musi być peÅ‚nÄ… Å›cieżkÄ…" -#: ../java/src/org/klomp/snark/SnarkManager.java:840 +#: ../java/src/org/klomp/snark/SnarkManager.java:859 msgid "Data directory does not exist" msgstr "Katalog danych nie istnieje" -#: ../java/src/org/klomp/snark/SnarkManager.java:842 +#: ../java/src/org/klomp/snark/SnarkManager.java:861 msgid "Not a directory" msgstr "To nie jest katalog" -#: ../java/src/org/klomp/snark/SnarkManager.java:844 +#: ../java/src/org/klomp/snark/SnarkManager.java:863 msgid "Unreadable" msgstr "Nieczytelne" -#: ../java/src/org/klomp/snark/SnarkManager.java:849 +#: ../java/src/org/klomp/snark/SnarkManager.java:868 #, java-format msgid "Data directory changed to {0}" msgstr "Katalog danych zmieniony do {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:904 +#: ../java/src/org/klomp/snark/SnarkManager.java:923 msgid "I2CP and tunnel changes will take effect after stopping all torrents" msgstr "Zmiany dotyczÄ…ce I2CP i tuneli bÄ™dÄ… wprowadzone po zatrzymaniu wszystkich torrentów." -#: ../java/src/org/klomp/snark/SnarkManager.java:908 +#: ../java/src/org/klomp/snark/SnarkManager.java:927 #, java-format msgid "I2CP options changed to {0}" msgstr "Opcje I2CP zmienione na {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:914 +#: ../java/src/org/klomp/snark/SnarkManager.java:933 msgid "Disconnecting old I2CP destination" msgstr "Rozłączanie starych celów I2CP" -#: ../java/src/org/klomp/snark/SnarkManager.java:916 +#: ../java/src/org/klomp/snark/SnarkManager.java:935 #, java-format msgid "I2CP settings changed to {0}" msgstr "Ustawienia I2CP zmienione do: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:921 +#: ../java/src/org/klomp/snark/SnarkManager.java:940 msgid "" "Unable to connect with the new settings, reverting to the old I2CP settings" msgstr "Nie można połączyć siÄ™ z nowymi ustawieniami, powrót do starych ustawieÅ„ I2CP" -#: ../java/src/org/klomp/snark/SnarkManager.java:925 +#: ../java/src/org/klomp/snark/SnarkManager.java:944 msgid "Unable to reconnect with the old settings!" msgstr "Nie można siÄ™ połączyć ze starymi ustawieniami!" -#: ../java/src/org/klomp/snark/SnarkManager.java:927 +#: ../java/src/org/klomp/snark/SnarkManager.java:946 msgid "Reconnected on the new I2CP destination" msgstr "Ponowne podłączanie do nowych celów I2CP" -#: ../java/src/org/klomp/snark/SnarkManager.java:934 +#: ../java/src/org/klomp/snark/SnarkManager.java:953 #, java-format msgid "I2CP listener restarted for \"{0}\"" msgstr "NasÅ‚uch I2CP zrestartowany dla \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:948 +#: ../java/src/org/klomp/snark/SnarkManager.java:967 msgid "New files will be publicly readable" msgstr "Nowe pliki bÄ™dÄ… publicznie dostÄ™pne" -#: ../java/src/org/klomp/snark/SnarkManager.java:950 +#: ../java/src/org/klomp/snark/SnarkManager.java:969 msgid "New files will not be publicly readable" msgstr "Nowe pliki nie bÄ™dÄ… publicznie dostÄ™pne" -#: ../java/src/org/klomp/snark/SnarkManager.java:957 +#: ../java/src/org/klomp/snark/SnarkManager.java:976 msgid "Enabled autostart" msgstr "Włączono automatyczne uruchamianie" -#: ../java/src/org/klomp/snark/SnarkManager.java:959 +#: ../java/src/org/klomp/snark/SnarkManager.java:978 msgid "Disabled autostart" msgstr "Wyłączono automatyczne uruchamianie" -#: ../java/src/org/klomp/snark/SnarkManager.java:965 +#: ../java/src/org/klomp/snark/SnarkManager.java:985 +msgid "Enabled smart sort" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:987 +msgid "Disabled smart sort" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:994 msgid "Enabled open trackers - torrent restart required to take effect." msgstr "Włączono otwarte trackery - wymagane ponowne uruchomienie torrenta." -#: ../java/src/org/klomp/snark/SnarkManager.java:967 +#: ../java/src/org/klomp/snark/SnarkManager.java:996 msgid "Disabled open trackers - torrent restart required to take effect." msgstr "Wyłączono otwarte trackery - wymagane ponowne uruchomienie torrenta." -#: ../java/src/org/klomp/snark/SnarkManager.java:974 +#: ../java/src/org/klomp/snark/SnarkManager.java:1003 msgid "Enabled DHT." msgstr "DHT włączone." -#: ../java/src/org/klomp/snark/SnarkManager.java:976 +#: ../java/src/org/klomp/snark/SnarkManager.java:1005 msgid "Disabled DHT." msgstr "DHT wyłączone." -#: ../java/src/org/klomp/snark/SnarkManager.java:978 +#: ../java/src/org/klomp/snark/SnarkManager.java:1007 msgid "DHT change requires tunnel shutdown and reopen" msgstr "Zmiana DHT wymaga zamkniÄ™cia tunelu i jego ponownego otwarcia" -#: ../java/src/org/klomp/snark/SnarkManager.java:985 +#: ../java/src/org/klomp/snark/SnarkManager.java:1014 #, java-format msgid "{0} theme loaded, return to main i2psnark page to view." msgstr "ZaÅ‚adowano temat {0}. Przejdź do strony głównej i2psnark, by zobaczyć." -#: ../java/src/org/klomp/snark/SnarkManager.java:995 +#: ../java/src/org/klomp/snark/SnarkManager.java:1024 msgid "Configuration unchanged." msgstr "Ustawienia niezmienione." -#: ../java/src/org/klomp/snark/SnarkManager.java:1027 +#: ../java/src/org/klomp/snark/SnarkManager.java:1056 msgid "Open Tracker list changed - torrent restart required to take effect." msgstr "Lista otwartych trackerów zostaÅ‚a zmieniona – wymagane ponowne uruchomienie torrenta." -#: ../java/src/org/klomp/snark/SnarkManager.java:1037 +#: ../java/src/org/klomp/snark/SnarkManager.java:1066 msgid "Private tracker list changed - affects newly created torrents only." msgstr "Lista prywatnych trackerów zostaÅ‚a zmieniona – dotyczy tylko nowo utworzonych torrentów." -#: ../java/src/org/klomp/snark/SnarkManager.java:1083 +#: ../java/src/org/klomp/snark/SnarkManager.java:1112 #, java-format msgid "Unable to save the config to {0}" msgstr "Nie można zapisać konfiguracji do {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1164 +#: ../java/src/org/klomp/snark/SnarkManager.java:1193 msgid "Connecting to I2P" msgstr "ÅÄ…czenie z I2P" -#: ../java/src/org/klomp/snark/SnarkManager.java:1167 +#: ../java/src/org/klomp/snark/SnarkManager.java:1196 msgid "Error connecting to I2P - check your I2CP settings!" msgstr "Nie można siÄ™ połączyć z I2P, sprawdź swoje ustawienia I2CP!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1176 -#: ../java/src/org/klomp/snark/SnarkManager.java:2133 +#: ../java/src/org/klomp/snark/SnarkManager.java:1205 +#: ../java/src/org/klomp/snark/SnarkManager.java:2270 #, java-format msgid "Error: Could not add the torrent {0}" msgstr "Błąd: Nie można dodać torrenta {0}" #. catch this here so we don't try do delete it below -#: ../java/src/org/klomp/snark/SnarkManager.java:1199 +#: ../java/src/org/klomp/snark/SnarkManager.java:1228 #, java-format msgid "Cannot open \"{0}\"" msgstr "Nie można otworzyć \"{0}\"" #. TODO - if the existing one is a magnet, delete it and add the metainfo #. instead? -#: ../java/src/org/klomp/snark/SnarkManager.java:1218 -#: ../java/src/org/klomp/snark/SnarkManager.java:1352 -#: ../java/src/org/klomp/snark/SnarkManager.java:1440 +#: ../java/src/org/klomp/snark/SnarkManager.java:1247 +#: ../java/src/org/klomp/snark/SnarkManager.java:1388 +#: ../java/src/org/klomp/snark/SnarkManager.java:1476 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:166 #, java-format msgid "Torrent with this info hash is already running: {0}" msgstr "Torrent o tym hashu jest już uruchomiony: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1224 +#: ../java/src/org/klomp/snark/SnarkManager.java:1253 #, java-format msgid "ERROR - No I2P trackers in private torrent \"{0}\"" msgstr "BÅÄ„D – brak trackerów w prywatnym torrencie \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:1226 +#: ../java/src/org/klomp/snark/SnarkManager.java:1255 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", will announce to I2P open trackers and" " DHT only." msgstr "Uwaga – Nie ma trackerów I2P w \"{0}\", zostanie to zameldowane tylko do otwartych trackerów i DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:1229 +#: ../java/src/org/klomp/snark/SnarkManager.java:1258 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and open trackers are disabled, will " "announce to DHT only." msgstr "Uwaga – Brak trackerów I2P w \"{0}\", a otwarte trackery sÄ… wyłączone. Torrent bÄ™dzie dziaÅ‚aÅ‚ wyłącznie w oparciu o DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:1231 +#: ../java/src/org/klomp/snark/SnarkManager.java:1260 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and DHT and open trackers are " @@ -254,34 +262,46 @@ msgid "" "torrent." msgstr "Uwaga – Brak trackerów I2P w \"{0}\". Otwarte trackery i DHT również sÄ… wyłączone. Należy włączyć otwarte trackery lub DHT przed rozpoczÄ™ciem torrenta." -#: ../java/src/org/klomp/snark/SnarkManager.java:1257 +#: ../java/src/org/klomp/snark/SnarkManager.java:1286 #, java-format msgid "Torrent in \"{0}\" is invalid" msgstr "Torrent w \"{0}\" jest niepoprawny" -#: ../java/src/org/klomp/snark/SnarkManager.java:1264 +#: ../java/src/org/klomp/snark/SnarkManager.java:1292 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1042 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1069 +#, java-format +msgid "Torrent file deleted: {0}" +msgstr "Plik torrenta usuniÄ™to: {0}" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1295 +#, java-format +msgid "Torrent file moved from {0} to {1}" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1299 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:193 #, java-format msgid "ERROR - Out of memory, cannot create torrent from {0}" msgstr "BÅÄ„D – Brak pamiÄ™ci, nie można utworzyć pliku torrent z {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1285 +#: ../java/src/org/klomp/snark/SnarkManager.java:1321 #, java-format -msgid "Torrent added and started: \"{0}\"" -msgstr "Torrent dodany i uruchomiony: \"{0}\"" +msgid "Torrent added and started: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1287 +#: ../java/src/org/klomp/snark/SnarkManager.java:1323 #, java-format -msgid "Torrent added: \"{0}\"" -msgstr "Torrent dodany: \"{0}\"" +msgid "Torrent added: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1363 +#: ../java/src/org/klomp/snark/SnarkManager.java:1399 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:93 #, java-format msgid "Fetching {0}" msgstr "Pobieranie: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1369 +#: ../java/src/org/klomp/snark/SnarkManager.java:1405 #, java-format msgid "" "Open trackers are disabled and we have no DHT peers. Fetch of {0} may not " @@ -289,131 +309,146 @@ msgid "" "DHT." msgstr "Otwarte trackery sÄ… wyłączone i nie mamy żadnych peerów DHT. Pobranie z {0} może siÄ™ nie udać, dopóki nie uruchomisz innego torrenta, włączysz otwarte trackery lub włączysz DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:1373 +#: ../java/src/org/klomp/snark/SnarkManager.java:1409 #, java-format msgid "Adding {0}" msgstr "Dodawanie {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1406 +#: ../java/src/org/klomp/snark/SnarkManager.java:1442 #, java-format msgid "Download already running: {0}" msgstr "Pobieranie już zostaÅ‚o uruchomione: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1451 -#: ../java/src/org/klomp/snark/SnarkManager.java:1477 -#: ../java/src/org/klomp/snark/SnarkManager.java:2052 +#: ../java/src/org/klomp/snark/SnarkManager.java:1487 +#: ../java/src/org/klomp/snark/SnarkManager.java:1513 +#: ../java/src/org/klomp/snark/SnarkManager.java:2151 #, java-format msgid "Failed to copy torrent file to {0}" msgstr "Nie udaÅ‚o siÄ™ skopiować pliku torrent do {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1828 +#: ../java/src/org/klomp/snark/SnarkManager.java:1927 #, java-format -msgid "Too many files in \"{0}\" ({1}), deleting it!" -msgstr "Za dużo plików w \"{0}\" ({1}), usuwanie go!" +msgid "Too many files in \"{0}\" ({1})!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1830 +#: ../java/src/org/klomp/snark/SnarkManager.java:1929 #, java-format -msgid "Torrent file \"{0}\" cannot end in \".torrent\", deleting it!" -msgstr "Torrent \"{0}\" nie może siÄ™ koÅ„czyć w \".torrent\", usuwanie go!" +msgid "Torrent file \"{0}\" cannot end in \".torrent\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1832 +#: ../java/src/org/klomp/snark/SnarkManager.java:1931 #, java-format -msgid "No pieces in \"{0}\", deleting it!" -msgstr "W torrencie \"{0}\" nie ma piece'ów, usuwanie go!" +msgid "No pieces in \"{0}\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1834 +#: ../java/src/org/klomp/snark/SnarkManager.java:1933 #, java-format -msgid "Too many pieces in \"{0}\", limit is {1}, deleting it!" -msgstr "Za dużo piece''ów w \"{0}\" (limit to {1}), usuwanie go!" +msgid "Too many pieces in \"{0}\", limit is {1}!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1836 +#: ../java/src/org/klomp/snark/SnarkManager.java:1935 #, java-format -msgid "Pieces are too large in \"{0}\" ({1}B), deleting it." -msgstr "Za duże piece''y w torrencie \"{0}\" ({1}B), usuwanie go." +msgid "Pieces are too large in \"{0}\" ({1}B)!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1837 +#: ../java/src/org/klomp/snark/SnarkManager.java:1936 #, java-format msgid "Limit is {0}B" msgstr "Granica to {0}B" -#: ../java/src/org/klomp/snark/SnarkManager.java:1839 +#: ../java/src/org/klomp/snark/SnarkManager.java:1938 #, java-format -msgid "Torrent \"{0}\" has no data, deleting it!" -msgstr "Torrent \"{0}\" nie zawiera danych, usuwanie!" +msgid "Torrent \"{0}\" has no data!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1847 +#: ../java/src/org/klomp/snark/SnarkManager.java:1946 #, java-format -msgid "Torrents larger than {0}B are not supported yet, deleting \"{1}\"" -msgstr "Torrenty wiÄ™ksze niż {0}B nie sÄ… jeszcze wspierane, usuniÄ™cie \"{1}\"" +msgid "Torrents larger than {0}B are not supported yet \"{1}\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1864 +#: ../java/src/org/klomp/snark/SnarkManager.java:1963 #, java-format msgid "Error: Could not remove the torrent {0}" msgstr "Błąd: nie można usunąć torrenta {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1887 -#: ../java/src/org/klomp/snark/SnarkManager.java:1906 +#: ../java/src/org/klomp/snark/SnarkManager.java:1986 +#: ../java/src/org/klomp/snark/SnarkManager.java:2005 #, java-format -msgid "Torrent stopped: \"{0}\"" -msgstr "Torrent zatrzymany: \"{0}\"" +msgid "Torrent stopped: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1926 +#: ../java/src/org/klomp/snark/SnarkManager.java:2025 #, java-format msgid "Torrent removed: \"{0}\"" msgstr "Torrent usuniÄ™ty: \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:1934 +#: ../java/src/org/klomp/snark/SnarkManager.java:2033 #, java-format msgid "Adding torrents in {0}" msgstr "Dodawanie torrentów w {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1966 +#: ../java/src/org/klomp/snark/SnarkManager.java:2067 #, java-format msgid "Up bandwidth limit is {0} KBps" msgstr "Limit transferu połączeÅ„ wychodzcych to {0} KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:1993 +#: ../java/src/org/klomp/snark/SnarkManager.java:2092 #, java-format msgid "Download finished: {0}" msgstr "Pobieranie ukoÅ„czone: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2048 +#: ../java/src/org/klomp/snark/SnarkManager.java:2147 #, java-format msgid "Metainfo received for {0}" msgstr "Metainfo otrzymane dla {0} " -#: ../java/src/org/klomp/snark/SnarkManager.java:2049 -#: ../java/src/org/klomp/snark/SnarkManager.java:2280 +#: ../java/src/org/klomp/snark/SnarkManager.java:2148 +#: ../java/src/org/klomp/snark/SnarkManager.java:2431 #, java-format msgid "Starting up torrent {0}" msgstr "Uruchamianie torrenta: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2064 +#: ../java/src/org/klomp/snark/SnarkManager.java:2163 #, java-format msgid "Error on torrent {0}" msgstr "Błąd w torrencie {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2127 +#: ../java/src/org/klomp/snark/SnarkManager.java:2264 msgid "Unable to connect to I2P!" msgstr "Nie można podłączyć siÄ™ do I2P!" -#: ../java/src/org/klomp/snark/SnarkManager.java:2279 +#: ../java/src/org/klomp/snark/SnarkManager.java:2430 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:130 msgid "Opening the I2P tunnel" msgstr "Otwieranie tunelu I2P" -#: ../java/src/org/klomp/snark/SnarkManager.java:2303 +#: ../java/src/org/klomp/snark/SnarkManager.java:2450 msgid "Opening the I2P tunnel and starting all torrents." msgstr "Otwieranie tunelu I2P i uruchamianie wszystkich torrentów." -#: ../java/src/org/klomp/snark/SnarkManager.java:2366 +#: ../java/src/org/klomp/snark/SnarkManager.java:2513 msgid "Stopping all torrents and closing the I2P tunnel." msgstr "Zatrzymywanie wszystkich torrentów i zamykanie tunelu I2P." -#: ../java/src/org/klomp/snark/SnarkManager.java:2385 +#: ../java/src/org/klomp/snark/SnarkManager.java:2532 msgid "Closing I2P tunnel after notifying trackers." msgstr "ZamkniÄ™cie tunelu I2P po powiadomieniu trackerów." +#: ../java/src/org/klomp/snark/SnarkManager.java:2594 +#, java-format +msgid "Finished recheck of torrent {0}, now {1} complete" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2596 +#, java-format +msgid "Finished recheck of torrent {0}, unchanged" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2600 +#, java-format +msgid "Error checking the torrent {0}" +msgstr "" + #: ../java/src/org/klomp/snark/TrackerClient.java:245 #, java-format msgid "No valid trackers for {0} - enable opentrackers or DHT?" @@ -459,178 +494,178 @@ msgstr "Torrent już w kolejce: {0}" msgid "Torrent at {0} was not valid" msgstr "Torrent pobrany z {0} jest niepoprawny" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:268 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:311 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:322 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1763 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2662 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:270 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:313 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:324 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1778 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2698 msgid "I2PSnark" msgstr "I2PSnark" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:273 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2149 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2422 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2165 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2446 msgid "Configuration" msgstr "Ustawienia" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:277 msgid "Anonymous BitTorrent Client" msgstr "Anonimowy klient protokoÅ‚u BitTorrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:291 msgid "Router is down" msgstr "WÄ™zeÅ‚ jest wyłączony" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:306 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:308 msgid "Torrents" msgstr "Torrenty" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:319 msgid "Refresh page" msgstr "OdÅ›wież stronÄ™" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:326 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:328 msgid "Forum" msgstr "Forum" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:341 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:343 msgid "Click \"Add torrent\" button to fetch torrent" msgstr "Kliknij \"Dodaj torrent\" by pobrać torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:394 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:396 msgid "clear messages" msgstr "wyczyść komunikaty" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:449 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2980 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3072 msgid "Status" msgstr "Stan" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2994 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:453 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3086 #, java-format msgid "Sort by {0}" msgstr "Sortuj wg {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:462 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:464 msgid "Hide Peers" msgstr "Ukryj peery" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:468 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:470 msgid "Show Peers" msgstr "Pokaż peery" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:491 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2648 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2718 msgid "Torrent" msgstr "Torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "File type" msgstr "Rodzaj pliku" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:509 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 msgid "ETA" msgstr "PozostaÅ‚o" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:512 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:514 msgid "Estimated time remaining" msgstr "Szacowany pozostaÅ‚y czas" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:535 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 msgid "RX" msgstr "RX" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:538 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:540 msgid "Downloaded" msgstr "Pobrano" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2818 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2968 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2878 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3060 msgid "Size" msgstr "Rozmiar" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 msgid "TX" msgstr "TX" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2896 msgid "Upload ratio" msgstr "Współczynnik wysyÅ‚ania (ratio)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:569 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:571 msgid "Uploaded" msgstr "WysÅ‚ano" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:581 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 msgid "RX Rate" msgstr "↓" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:584 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:586 msgid "Down Rate" msgstr "PrÄ™dkość pobierania" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:596 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 msgid "TX Rate" msgstr "↑" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:599 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:601 msgid "Up Rate" msgstr "PrÄ™dkość wysyÅ‚ania" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:615 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 msgid "Stop all torrents and the I2P tunnel" msgstr "Zatrzymaj wszystkie torrenty i tunel I2P" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:619 msgid "Stop All" msgstr "Zatrzymaj wszystkie" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:629 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 msgid "Start all stopped torrents" msgstr "Uruchom wszystkie zatrzymane torrenty" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:633 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:647 msgid "Start All" msgstr "Uruchom wszystkie" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:643 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 msgid "Start all torrents and the I2P tunnel" msgstr "Uruchom wszystkie torrenty i tunel I2P" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:668 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:670 msgid "No torrents loaded." msgstr "Nie zaÅ‚adowano torrentów." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:674 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 msgid "Totals" msgstr "ÅÄ…cznie" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:678 #, java-format msgid "1 torrent" msgid_plural "{0} torrents" @@ -638,7 +673,7 @@ msgstr[0] "{0} torrent" msgstr[1] "{0} torrenty" msgstr[2] "{0} torrentów" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:683 #, java-format msgid "1 connected peer" msgid_plural "{0} connected peers" @@ -646,7 +681,7 @@ msgstr[0] "{0} podłączony peer" msgstr[1] "{0} podłączone peery" msgstr[2] "{0} podłączonych peerów" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:688 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:690 #, java-format msgid "1 DHT peer" msgid_plural "{0} DHT peers" @@ -654,207 +689,202 @@ msgstr[0] "{0} peer DHT" msgstr[1] "{0} peery DHT" msgstr[2] "{0} peerów DHT" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:695 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:697 msgid "Dest" msgstr "Cel" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First" msgstr "Pierwsza" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First page" msgstr "Pierwsza strona" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Prev" msgstr "Poprzednia" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Previous page" msgstr "Poprzednia strona" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next" msgstr "NastÄ™pna" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next page" msgstr "NastÄ™pna strona" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last" msgstr "Ostatnia" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last page" msgstr "Ostatnia strona" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:960 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:962 msgid "Data directory cannot be created" msgstr "Katalog nie może zostać utworzony" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1176 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:972 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1185 #, java-format msgid "Cannot add torrent {0} inside another torrent: {1}" msgstr "Nie można dodać torrenta {0} wewnÄ…trz innego torrenta {1}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:985 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:993 #, java-format msgid "Invalid URL: Must start with \"http://\", \"{0}\", or \"{1}\"" msgstr "NieprawidÅ‚owy URL: musi zaczynać siÄ™ od \"http://\", \"{0}\" lub \"{1}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1026 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1063 #, java-format msgid "Magnet deleted: {0}" msgstr "OdnoÅ›nik Magnet usuniÄ™ty: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1061 #, java-format -msgid "Torrent file deleted: {0}" -msgstr "Plik torrenta usuniÄ™to: {0}" - -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1053 -#, java-format msgid "Download deleted: {0}" msgstr "Pobrane usuniÄ™te: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1070 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1078 #, java-format msgid "Data file deleted: {0}" msgstr "Pliki z danymi usuniÄ™te: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1072 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1089 #, java-format msgid "Data file could not be deleted: {0}" msgstr "Nie można usunąć pliku z danymi: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1097 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1105 #, java-format msgid "Directory could not be deleted: {0}" msgstr "Katalog nie może być usuniÄ™ty: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1112 #, java-format msgid "Directory deleted: {0}" msgstr "UsuniÄ™to katalog: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1155 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1164 #, java-format msgid "Cannot add a torrent ending in \".torrent\": {0}" msgstr "Nie można dodać torrent koÅ„czÄ…cego siÄ™ \".torrent\": {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1160 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1169 #, java-format msgid "Torrent with this name is already running: {0}" msgstr "Torrent z tÄ… nazwÄ… już jest uruchomiony: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1175 #, java-format msgid "Cannot add a torrent including an I2P directory: {0}" msgstr "Nie można dodać torrenta zawierajÄ…cego katalog I2P: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1181 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1190 #, java-format msgid "Cannot add torrent {0} including another torrent: {1}" msgstr "Nie można dodać torrenta {0} zawierajÄ…cego inny torrent {1}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1216 msgid "Error - Cannot include alternate trackers without a primary tracker" msgstr "Błąd – Nie można dodać alternatywnych trackerów bez głównego trackera" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1220 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1229 msgid "Error - Cannot mix private and public trackers in a torrent" msgstr "Błąd – Nie można mieszać prywatnych i publicznych trackerów w torrencie" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1251 #, java-format msgid "Torrent created for \"{0}\"" msgstr "Utworzono torrent dla \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1244 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 #, java-format msgid "" "Many I2P trackers require you to register new torrents before seeding - " "please do so before starting \"{0}\"" msgstr "Wiele trackerów w I2P wymaga zarejestrowania torrenta przed seedowaniem – proszÄ™, zrób tak przed uruchomieniem \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1255 #, java-format msgid "Error creating a torrent for \"{0}\"" msgstr "Błąd podczas tworzenia torrenta dla: \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1250 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1259 #, java-format msgid "Cannot create a torrent for the nonexistent data: {0}" msgstr "Nie można utworzyć torrenta dla nieistniejÄ…cych danych: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1262 msgid "Error creating torrent - you must enter a file or directory" msgstr "Błąd przy tworzeniu torrenta – musisz podać plik lub katalog" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2406 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2430 msgid "Delete selected" msgstr "UsuÅ„ zaznaczone" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2408 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2432 msgid "Save tracker configuration" msgstr "Zapisz ustawienia trackerów" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1301 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1310 msgid "Removed" msgstr "UsuniÄ™to" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1333 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2405 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2407 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1342 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2429 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2431 msgid "Add tracker" msgstr "Dodaj tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1356 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1359 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1365 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1368 msgid "Enter valid tracker name and URLs" msgstr "Podaj prawidÅ‚owÄ… nazwÄ™ trackera i URL" #. "<input type=\"reset\" class=\"cancel\" #. value=\"").append(_t("Cancel")).append("\">\n" + -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1361 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2410 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1370 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2434 msgid "Restore defaults" msgstr "Przywróć domyÅ›lne" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1373 msgid "Restored default trackers" msgstr "Przywrócono domyÅ›lne trackery" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1472 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1473 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1485 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1486 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2949 msgid "Checking" msgstr "Sprawdzanie" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1475 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1476 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1489 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2956 msgid "Allocating" msgstr "Alokowanie" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1499 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1505 msgid "Tracker Error" msgstr "Błąd trackera" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1492 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1522 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1527 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1538 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1543 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1554 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1507 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1537 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1542 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1553 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1558 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1569 #, java-format msgid "1 peer" msgid_plural "{0} peers" @@ -862,366 +892,377 @@ msgstr[0] "{0} peer" msgstr[1] "{0} peery" msgstr[2] "{0} peerów" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1502 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1503 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1517 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1518 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2954 msgid "Starting" msgstr "Uruchamianie" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1511 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1526 msgid "Seeding" msgstr "Seedowanie" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1515 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1529 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1530 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2831 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1544 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2891 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3139 msgid "Complete" msgstr "ZakoÅ„czono" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1534 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1535 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1540 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1541 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1550 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1555 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 msgid "OK" msgstr "OK" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1546 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1551 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1552 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1567 msgid "Stalled" msgstr "UtkniÄ™to" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1557 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1571 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1572 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1575 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1576 msgid "No Peers" msgstr "Brak peerów" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1563 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1578 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1579 msgid "Stopped" msgstr "Zatrzymany" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1593 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1608 msgid "Torrent details" msgstr "Szczegóły torrenta" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1628 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1643 msgid "View files" msgstr "Zobacz pliki" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1630 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1645 msgid "Open file" msgstr "Otwórz plik" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1682 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 msgid "Stop the torrent" msgstr "Zatrzymaj torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2961 msgid "Stop" msgstr "Zatrzymaj" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 msgid "Start the torrent" msgstr "Uruchom torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1714 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2963 msgid "Start" msgstr "Uruchom" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1727 msgid "Remove the torrent from the active list, deleting the .torrent file" msgstr "UsuÅ„ torrent z aktywnej listy, usuwajÄ…c plik .torrent" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1717 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1732 #, java-format msgid "" "Are you sure you want to delete the file \\''{0}\\'' (downloaded data will " "not be deleted) ?" msgstr "Czy jesteÅ› pewnien, że chcesz usunąć plik \\''{0}\\'' (pobrane dane nie bÄ™dÄ… usuniÄ™te) ?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1721 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1736 msgid "Remove" msgstr "UsuÅ„" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1734 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1749 msgid "Delete the .torrent file and the associated data file(s)" msgstr "UsuÅ„ plik .torrent i zwiÄ…zane z nim pliki z danymi" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1739 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1754 #, java-format msgid "" "Are you sure you want to delete the torrent \\''{0}\\'' and all downloaded " "data?" msgstr "Czy na pewno chcesz usunąć plik \\''{0}.torrent\\'' oraz pobrane dane?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1743 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1758 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2388 msgid "Delete" msgstr "UsuÅ„" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1779 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1794 msgid "Unknown" msgstr "Nieznany" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1791 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1806 msgid "Seed" msgstr "Seed" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1814 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1829 msgid "Uninteresting (The peer has no pieces we need)" msgstr "Uninteresting (peer nie ma piece'ów, które potrzebujemy)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1816 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1831 msgid "Choked (The peer is not allowing us to request pieces)" msgstr "Choked (peer nie pozwala nam na proÅ›bÄ™ o piece)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1851 msgid "Uninterested (We have no pieces the peer needs)" msgstr "Uninterested (nie mamy piece'ów, których peer potrzebuje)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1838 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1853 msgid "Choking (We are not allowing the peer to request pieces)" msgstr "Choking (nie pozwalamy peerowi na proÅ›bÄ™ o piece)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1954 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1969 #, java-format msgid "Details at {0} tracker" msgstr "Szczegóły na trackerze {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1971 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1986 msgid "Info" msgstr "Info" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 msgid "Add Torrent" msgstr "Dodaj torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 msgid "From URL" msgstr "Z adresu URL" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2050 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2065 msgid "" "Enter the torrent file download URL (I2P only), magnet link, maggot link, or" " info hash" msgstr "Wpisz adres URL pliku torrent (tylko I2P), Magnet link, link maggot lub info hash" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2070 msgid "Add torrent" msgstr "Dodaj torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2074 msgid "Data dir" msgstr "Katalog na pobrane dane" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2077 #, java-format msgid "Enter the directory to save the data in (default {0})" msgstr "Podaj katalog do zapisu danych (domyÅ›lnie: {0})" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2066 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 #, java-format msgid "You can also copy .torrent files to: {0}." msgstr "Możesz także skopiować pliki .torrent do: {0}." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2068 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2083 msgid "Removing a .torrent will cause it to stop." msgstr "UsuniÄ™cie pliku .torrent spowoduje jego zatrzymanie." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2096 msgid "Create Torrent" msgstr "Utwórz torrent" #. out.write("From file: <input type=\"file\" name=\"newFile\" size=\"50\" #. value=\"" + newFile + "\" /><br>\n"); -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2084 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2099 msgid "Data to seed" msgstr "Dane do seedowania" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2088 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2103 #, java-format msgid "File or directory to seed (full path or within the directory {0} )" msgstr "Plik lub katalog do seedowania (peÅ‚na Å›cieżka lub katalog wewnÄ…trz \"{0}\")" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2091 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2337 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2106 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2361 msgid "Trackers" msgstr "Trackery" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2093 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2108 msgid "Primary" msgstr "Główne" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2095 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2110 msgid "Alternates" msgstr "Alternatywne" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2098 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2113 msgid "Create torrent" msgstr "Utwórz torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2116 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2131 msgid "none" msgstr "brak" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2153 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2169 msgid "Data directory" msgstr "Katalog z danymi" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2158 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 msgid "Files readable by all" msgstr "Pliki dostÄ™pne dla wszystkich" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2162 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2178 msgid "If checked, other users may access the downloaded files" msgstr "JeÅ›li zaznaczone, inni użytkownicy mogÄ… mieć dostÄ™p do pobranych plików" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2182 msgid "Auto start torrents" msgstr "Uruchamiaj automatycznie torrenty" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2170 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2186 msgid "If checked, automatically start torrents that are added" msgstr "JeÅ›li zaznaczone – automatycznie uruchamiaj dodane torrenty" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2190 +msgid "Smart torrent sorting" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2194 +msgid "If checked, ignore words such as 'the' when sorting" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2198 msgid "Theme" msgstr "Motyw" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2188 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2212 msgid "Refresh time" msgstr "Czas odÅ›wierzania" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2201 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2225 msgid "Never" msgstr "Nigdy" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2231 msgid "Startup delay" msgstr "Opóźnienie uruchomienia" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2209 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2233 msgid "minutes" msgstr "minuty" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2213 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2237 msgid "Page size" msgstr "Rozmiar strony" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2215 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 msgid "torrents" msgstr "torrenty" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 msgid "Total uploader limit" msgstr "CaÅ‚kowity limit uploaderów" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2266 msgid "peers" msgstr "peery" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2270 msgid "Up bandwidth limit" msgstr "Ograniczenie pasma wyjÅ›ciowego" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2249 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2273 msgid "Half available bandwidth recommended." msgstr "Zalecana poÅ‚owa dostÄ™pnego pasma." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2251 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2275 msgid "View or change router bandwidth" msgstr "Zobacz lub zmieÅ„ pasmo wÄ™zÅ‚a" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2255 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2279 msgid "Use open trackers also" msgstr "Używaj również otwartych trackerów" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2259 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 msgid "" "If checked, announce torrents to open trackers as well as the tracker listed" " in the torrent file" msgstr "JeÅ›li zaznaczone, zgÅ‚aszaj torrenty do otwartych trackerów, jak również do trackerów podanych w pliku torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2287 msgid "Enable DHT" msgstr "Włącz DHT" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2267 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2291 msgid "If checked, use DHT" msgstr "JeÅ›li zaznaczone, używa DHT" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2307 msgid "Inbound Settings" msgstr "Tunele wejÅ›ciowe" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2313 msgid "Outbound Settings" msgstr "Tunele wyjÅ›ciowe" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2297 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2321 msgid "I2CP host" msgstr "Adres I2CP" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2302 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2326 msgid "I2CP port" msgstr "Port I2CP" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2341 msgid "I2CP options" msgstr "Parametry I2CP" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2322 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 msgid "Save configuration" msgstr "Zapisz ustawienia" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2342 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2366 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "Name" msgstr "Nazwa" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2344 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2368 msgid "Website URL" msgstr "URL strony www" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2370 msgid "Standard" msgstr "Standardowy" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2348 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2372 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3172 msgid "Open" msgstr "Otwarty" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2350 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2374 msgid "Private" msgstr "Prywatny" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2352 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2376 msgid "Announce URL" msgstr "URL rozgÅ‚aszania" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2396 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2420 msgid "Add" msgstr "Dodaj" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2439 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2463 #, java-format msgid "Invalid magnet URL {0}" msgstr "NieprawidÅ‚owy link magnet {0}" #. * dummies for translation -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2447 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2471 #, java-format msgid "1 hop" msgid_plural "{0} hops" @@ -1229,7 +1270,7 @@ msgstr[0] "{0} skok" msgstr[1] "{0} skoki" msgstr[2] "{0} skoków" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2448 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2472 #, java-format msgid "1 tunnel" msgid_plural "{0} tunnels" @@ -1237,119 +1278,135 @@ msgstr[0] "{0} tunel" msgstr[1] "{0} tunele" msgstr[2] "{0} tuneli" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2691 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2728 msgid "Torrent file" msgstr "Plik torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 msgid "Data location" msgstr "PoÅ‚ożenie danych" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2708 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2745 msgid "Info hash" msgstr "Info hash" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2727 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2764 msgid "Primary Tracker" msgstr "Główny Tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2773 msgid "Tracker List" msgstr "Lista Trackerów" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2761 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2798 msgid "Comment" msgstr "Komentarz" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2771 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2812 msgid "Created" msgstr "Utworzony" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2782 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2823 msgid "Created By" msgstr "Utworzony przez" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2794 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2833 +msgid "Added" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2842 +msgid "Completed" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2854 msgid "Magnet link" msgstr "Link magnet" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2807 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2867 msgid "Private torrent" msgstr "Prywatny torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2827 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2887 msgid "Completion" msgstr "ZakoÅ„czono" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2856 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2916 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 msgid "Remaining" msgstr "PozostaÅ‚o" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2926 msgid "Files" msgstr "Pliki" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2873 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 msgid "Pieces" msgstr "Części" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2879 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2939 msgid "Piece size" msgstr "Rozmiar części" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2952 +msgid "Refresh page for results" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2964 +msgid "Force Recheck" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3025 msgid "Directory" msgstr "Katalog" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2992 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3084 msgid "Priority" msgstr "Priorytet" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3004 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3096 msgid "Up to higher level directory" msgstr "Do katalogu nadrzÄ™dnego" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3038 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3130 msgid "Torrent not found?" msgstr "Torrent nie znaleziony?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3136 msgid "File not found in torrent?" msgstr "Plik nie znaleziony w torrencie?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3057 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3149 msgid "complete" msgstr "zakoÅ„czono" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3058 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3150 msgid "remaining" msgstr "pozostaÅ‚o" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3196 msgid "High" msgstr "Wysoki" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3109 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3201 msgid "Normal" msgstr "Normalny" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3114 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3206 msgid "Skip" msgstr "PomiÅ„" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3124 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3216 msgid "Set all high" msgstr "Ustaw wszystkie na wysoki" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3126 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3218 msgid "Set all normal" msgstr "Ustaw wszystkie na normalny" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3128 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3220 msgid "Skip all" msgstr "PomiÅ„ wszystkie" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3129 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3221 msgid "Save priorities" msgstr "Zapisz priorytety" diff --git a/apps/i2psnark/locale/messages_pt.po b/apps/i2psnark/locale/messages_pt.po index 5cd2d6c44f439a323105fce498eddad3f2d24037..9b9923ca976638565e35d2fcb1bfec726c653fd1 100644 --- a/apps/i2psnark/locale/messages_pt.po +++ b/apps/i2psnark/locale/messages_pt.po @@ -18,10 +18,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:09+0000\n" -"PO-Revision-Date: 2015-07-17 01:32+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-09 03:40+0000\n" "Last-Translator: kytv <killyourtv@i2pmail.org>\n" -"Language-Team: Portuguese (http://www.transifex.com/projects/p/I2P/language/pt/)\n" +"Language-Team: Portuguese (http://www.transifex.com/otf/I2P/language/pt/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -33,222 +33,230 @@ msgid "No more torrents running." msgstr "" #: ../java/src/org/klomp/snark/IdleChecker.java:76 -#: ../java/src/org/klomp/snark/SnarkManager.java:2392 -#: ../java/src/org/klomp/snark/SnarkManager.java:2403 +#: ../java/src/org/klomp/snark/SnarkManager.java:2539 +#: ../java/src/org/klomp/snark/SnarkManager.java:2550 msgid "I2P tunnel closed." msgstr "Túnel I2P fechado" #: ../java/src/org/klomp/snark/MagnetURI.java:42 #: ../java/src/org/klomp/snark/MagnetURI.java:52 -#: ../java/src/org/klomp/snark/SnarkManager.java:2096 +#: ../java/src/org/klomp/snark/SnarkManager.java:2221 msgid "Magnet" msgstr "magnet" -#: ../java/src/org/klomp/snark/SnarkManager.java:772 +#: ../java/src/org/klomp/snark/SnarkManager.java:791 #, java-format msgid "Total uploaders limit changed to {0}" msgstr "Limite total de uploaders alterado para {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:774 +#: ../java/src/org/klomp/snark/SnarkManager.java:793 #, java-format msgid "Minimum total uploaders limit is {0}" msgstr "Limite mÃnimo de uploaders alterado para {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:786 +#: ../java/src/org/klomp/snark/SnarkManager.java:805 #, java-format msgid "Up BW limit changed to {0}KBps" msgstr "Largura de banda para a envio alterada para {0} KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:788 +#: ../java/src/org/klomp/snark/SnarkManager.java:807 #, java-format msgid "Minimum up bandwidth limit is {0}KBps" msgstr "Largura de banda mÃnima para envio é {0}KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:800 +#: ../java/src/org/klomp/snark/SnarkManager.java:819 #, java-format msgid "Startup delay changed to {0}" msgstr "Demora na inicialização alterada para {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:811 +#: ../java/src/org/klomp/snark/SnarkManager.java:830 #, java-format msgid "Refresh time changed to {0}" msgstr "Tempo de actualização alterado para {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:813 +#: ../java/src/org/klomp/snark/SnarkManager.java:832 msgid "Refresh disabled" msgstr "Actualização desactivada" -#: ../java/src/org/klomp/snark/SnarkManager.java:829 +#: ../java/src/org/klomp/snark/SnarkManager.java:848 #, java-format msgid "Page size changed to {0}" msgstr "Tamanho de pagina alterado para {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:838 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:956 +#: ../java/src/org/klomp/snark/SnarkManager.java:857 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:958 msgid "Data directory must be an absolute path" msgstr "Diretório de dados deve ter um caminho absoluto" -#: ../java/src/org/klomp/snark/SnarkManager.java:840 +#: ../java/src/org/klomp/snark/SnarkManager.java:859 msgid "Data directory does not exist" msgstr "Diretório de dados não existe" -#: ../java/src/org/klomp/snark/SnarkManager.java:842 +#: ../java/src/org/klomp/snark/SnarkManager.java:861 msgid "Not a directory" msgstr "Não é um diretório" -#: ../java/src/org/klomp/snark/SnarkManager.java:844 +#: ../java/src/org/klomp/snark/SnarkManager.java:863 msgid "Unreadable" msgstr "IlegÃvel" -#: ../java/src/org/klomp/snark/SnarkManager.java:849 +#: ../java/src/org/klomp/snark/SnarkManager.java:868 #, java-format msgid "Data directory changed to {0}" msgstr "Diretório de dados alterado para {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:904 +#: ../java/src/org/klomp/snark/SnarkManager.java:923 msgid "I2CP and tunnel changes will take effect after stopping all torrents" msgstr "Mudanças do I2CP e do túnel farão efeito após interromper todos os torrents" -#: ../java/src/org/klomp/snark/SnarkManager.java:908 +#: ../java/src/org/klomp/snark/SnarkManager.java:927 #, java-format msgid "I2CP options changed to {0}" msgstr "opções de I2cp alteradas para {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:914 +#: ../java/src/org/klomp/snark/SnarkManager.java:933 msgid "Disconnecting old I2CP destination" msgstr "Desconectando destinação anterior do I2CP" -#: ../java/src/org/klomp/snark/SnarkManager.java:916 +#: ../java/src/org/klomp/snark/SnarkManager.java:935 #, java-format msgid "I2CP settings changed to {0}" msgstr "Preferências do I2CP alteradas para {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:921 +#: ../java/src/org/klomp/snark/SnarkManager.java:940 msgid "" "Unable to connect with the new settings, reverting to the old I2CP settings" msgstr "Conectar-se não foi posÃvel com as novas preferências I2CP, utilizarei as anteriores." -#: ../java/src/org/klomp/snark/SnarkManager.java:925 +#: ../java/src/org/klomp/snark/SnarkManager.java:944 msgid "Unable to reconnect with the old settings!" msgstr "ImpossÃvel se conectar usando as preferências anteriores!" -#: ../java/src/org/klomp/snark/SnarkManager.java:927 +#: ../java/src/org/klomp/snark/SnarkManager.java:946 msgid "Reconnected on the new I2CP destination" msgstr "Conectado com a nova Destinação I2CP" -#: ../java/src/org/klomp/snark/SnarkManager.java:934 +#: ../java/src/org/klomp/snark/SnarkManager.java:953 #, java-format msgid "I2CP listener restarted for \"{0}\"" msgstr "Conexão I2CP re-estabelecida para \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:948 +#: ../java/src/org/klomp/snark/SnarkManager.java:967 msgid "New files will be publicly readable" msgstr "Novos ficheiros serão lidos pelo publico" -#: ../java/src/org/klomp/snark/SnarkManager.java:950 +#: ../java/src/org/klomp/snark/SnarkManager.java:969 msgid "New files will not be publicly readable" msgstr "Novos ficheiros não serão lidos pelo publico" -#: ../java/src/org/klomp/snark/SnarkManager.java:957 +#: ../java/src/org/klomp/snark/SnarkManager.java:976 msgid "Enabled autostart" msgstr "Ativado o iniciar automáticamente" -#: ../java/src/org/klomp/snark/SnarkManager.java:959 +#: ../java/src/org/klomp/snark/SnarkManager.java:978 msgid "Disabled autostart" msgstr "Desativado o iniciar automáticamente" -#: ../java/src/org/klomp/snark/SnarkManager.java:965 +#: ../java/src/org/klomp/snark/SnarkManager.java:985 +msgid "Enabled smart sort" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:987 +msgid "Disabled smart sort" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:994 msgid "Enabled open trackers - torrent restart required to take effect." msgstr "Uso de rastreadores abertos ativado - Para ter efeito é necesário reiniciar os torrentes." -#: ../java/src/org/klomp/snark/SnarkManager.java:967 +#: ../java/src/org/klomp/snark/SnarkManager.java:996 msgid "Disabled open trackers - torrent restart required to take effect." msgstr "Uso dos rastreadores abertos desativado - Para ter efeito é necesário reiniciar os torrentes." -#: ../java/src/org/klomp/snark/SnarkManager.java:974 +#: ../java/src/org/klomp/snark/SnarkManager.java:1003 msgid "Enabled DHT." msgstr "Habilitar DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:976 +#: ../java/src/org/klomp/snark/SnarkManager.java:1005 msgid "Disabled DHT." msgstr "Desabilitar DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:978 +#: ../java/src/org/klomp/snark/SnarkManager.java:1007 msgid "DHT change requires tunnel shutdown and reopen" msgstr "Mudança no DHT requer fechamento e reabertura do túnel" -#: ../java/src/org/klomp/snark/SnarkManager.java:985 +#: ../java/src/org/klomp/snark/SnarkManager.java:1014 #, java-format msgid "{0} theme loaded, return to main i2psnark page to view." msgstr "Tema {0} foi carregado. Volte no menú principal para vê-lo." -#: ../java/src/org/klomp/snark/SnarkManager.java:995 +#: ../java/src/org/klomp/snark/SnarkManager.java:1024 msgid "Configuration unchanged." msgstr "Configuração não mudada." -#: ../java/src/org/klomp/snark/SnarkManager.java:1027 +#: ../java/src/org/klomp/snark/SnarkManager.java:1056 msgid "Open Tracker list changed - torrent restart required to take effect." msgstr "Listado de rastreadores abertos mudado - Para ter efeito é necesário reiniciar os torrentes." -#: ../java/src/org/klomp/snark/SnarkManager.java:1037 +#: ../java/src/org/klomp/snark/SnarkManager.java:1066 msgid "Private tracker list changed - affects newly created torrents only." msgstr "Lista de rastreadores privados alterada - somente afetará os novos torrentes criados." -#: ../java/src/org/klomp/snark/SnarkManager.java:1083 +#: ../java/src/org/klomp/snark/SnarkManager.java:1112 #, java-format msgid "Unable to save the config to {0}" msgstr "Não se pode guardar a configuração em {0}." -#: ../java/src/org/klomp/snark/SnarkManager.java:1164 +#: ../java/src/org/klomp/snark/SnarkManager.java:1193 msgid "Connecting to I2P" msgstr "Conectando com I2P" -#: ../java/src/org/klomp/snark/SnarkManager.java:1167 +#: ../java/src/org/klomp/snark/SnarkManager.java:1196 msgid "Error connecting to I2P - check your I2CP settings!" msgstr "Erro ao se conectar com I2P - Verifique a sua configuração I2CP!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1176 -#: ../java/src/org/klomp/snark/SnarkManager.java:2133 +#: ../java/src/org/klomp/snark/SnarkManager.java:1205 +#: ../java/src/org/klomp/snark/SnarkManager.java:2270 #, java-format msgid "Error: Could not add the torrent {0}" msgstr "Erro: Não se pode adicionar o torrente {0}." #. catch this here so we don't try do delete it below -#: ../java/src/org/klomp/snark/SnarkManager.java:1199 +#: ../java/src/org/klomp/snark/SnarkManager.java:1228 #, java-format msgid "Cannot open \"{0}\"" msgstr "Não pode se abrir \"{0}\"" #. TODO - if the existing one is a magnet, delete it and add the metainfo #. instead? -#: ../java/src/org/klomp/snark/SnarkManager.java:1218 -#: ../java/src/org/klomp/snark/SnarkManager.java:1352 -#: ../java/src/org/klomp/snark/SnarkManager.java:1440 +#: ../java/src/org/klomp/snark/SnarkManager.java:1247 +#: ../java/src/org/klomp/snark/SnarkManager.java:1388 +#: ../java/src/org/klomp/snark/SnarkManager.java:1476 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:166 #, java-format msgid "Torrent with this info hash is already running: {0}" msgstr "torrente com este info hash já em marcha: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1224 +#: ../java/src/org/klomp/snark/SnarkManager.java:1253 #, java-format msgid "ERROR - No I2P trackers in private torrent \"{0}\"" msgstr "ERRO - Não há tracker I2P no torrent privado \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:1226 +#: ../java/src/org/klomp/snark/SnarkManager.java:1255 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", will announce to I2P open trackers and" " DHT only." msgstr "Aviso - Nenhum rastreador I2P em \"{0}\", o anúncio será feito apenas por rastreadores I2P abertos e DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:1229 +#: ../java/src/org/klomp/snark/SnarkManager.java:1258 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and open trackers are disabled, will " "announce to DHT only." msgstr "Aviso - Nenhum rastreador I2P em \"{0}\", e rastreadores I2P abertos estão desabilitados. O anúncio será feito apenas por DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:1231 +#: ../java/src/org/klomp/snark/SnarkManager.java:1260 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and DHT and open trackers are " @@ -256,34 +264,46 @@ msgid "" "torrent." msgstr "Aviso - Nenhum rastreador I2P em \"{0}\", e DHT e rastreadores abertos estão desabilitados. Rastreadores abertos ou DHT devem ser habilitados antes de começar o torrente." -#: ../java/src/org/klomp/snark/SnarkManager.java:1257 +#: ../java/src/org/klomp/snark/SnarkManager.java:1286 #, java-format msgid "Torrent in \"{0}\" is invalid" msgstr "O arquivo .torrent em \"{0}\" não é válido." -#: ../java/src/org/klomp/snark/SnarkManager.java:1264 +#: ../java/src/org/klomp/snark/SnarkManager.java:1292 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1042 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1069 +#, java-format +msgid "Torrent file deleted: {0}" +msgstr "Apagado o arquivo torrente: {0}" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1295 +#, java-format +msgid "Torrent file moved from {0} to {1}" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1299 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:193 #, java-format msgid "ERROR - Out of memory, cannot create torrent from {0}" msgstr "ERRO - Não ha espaço suficente, não se pode crear um torrente desde {0}." -#: ../java/src/org/klomp/snark/SnarkManager.java:1285 +#: ../java/src/org/klomp/snark/SnarkManager.java:1321 #, java-format -msgid "Torrent added and started: \"{0}\"" -msgstr "torrente adicionado e iniciado: \"{0}\"" +msgid "Torrent added and started: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1287 +#: ../java/src/org/klomp/snark/SnarkManager.java:1323 #, java-format -msgid "Torrent added: \"{0}\"" -msgstr "torrente adicionado: \"{0}\"" +msgid "Torrent added: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1363 +#: ../java/src/org/klomp/snark/SnarkManager.java:1399 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:93 #, java-format msgid "Fetching {0}" msgstr "Buscando {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1369 +#: ../java/src/org/klomp/snark/SnarkManager.java:1405 #, java-format msgid "" "Open trackers are disabled and we have no DHT peers. Fetch of {0} may not " @@ -291,131 +311,146 @@ msgid "" "DHT." msgstr "Rastreadores abertos estão desabilitados e não há participantes DHT. Descarregamento de {0} pode não prosseguir enquanto outra torrente não for iniciada, rastreadores abertos forem habilitados ou DHT habilitado." -#: ../java/src/org/klomp/snark/SnarkManager.java:1373 +#: ../java/src/org/klomp/snark/SnarkManager.java:1409 #, java-format msgid "Adding {0}" msgstr "Adicionando {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1406 +#: ../java/src/org/klomp/snark/SnarkManager.java:1442 #, java-format msgid "Download already running: {0}" msgstr "arquivo já descarregando: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1451 -#: ../java/src/org/klomp/snark/SnarkManager.java:1477 -#: ../java/src/org/klomp/snark/SnarkManager.java:2052 +#: ../java/src/org/klomp/snark/SnarkManager.java:1487 +#: ../java/src/org/klomp/snark/SnarkManager.java:1513 +#: ../java/src/org/klomp/snark/SnarkManager.java:2151 #, java-format msgid "Failed to copy torrent file to {0}" msgstr "Não se pode copiar o torrente para {0}." -#: ../java/src/org/klomp/snark/SnarkManager.java:1828 +#: ../java/src/org/klomp/snark/SnarkManager.java:1927 #, java-format -msgid "Too many files in \"{0}\" ({1}), deleting it!" -msgstr "Ha arquivos demais no \"{0}\", se apagará ({1}). " +msgid "Too many files in \"{0}\" ({1})!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1830 +#: ../java/src/org/klomp/snark/SnarkManager.java:1929 #, java-format -msgid "Torrent file \"{0}\" cannot end in \".torrent\", deleting it!" -msgstr "O arquivo de dados do torrente \"{0}\" não pode terminar em \".torrent' e será apagado." +msgid "Torrent file \"{0}\" cannot end in \".torrent\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1832 +#: ../java/src/org/klomp/snark/SnarkManager.java:1931 #, java-format -msgid "No pieces in \"{0}\", deleting it!" -msgstr "Não ha peças no \"{0}\", se apagará." +msgid "No pieces in \"{0}\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1834 +#: ../java/src/org/klomp/snark/SnarkManager.java:1933 #, java-format -msgid "Too many pieces in \"{0}\", limit is {1}, deleting it!" -msgstr "Ha peças demais no \"{0}\" e o limite é {1}. Se apagarão." +msgid "Too many pieces in \"{0}\", limit is {1}!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1836 +#: ../java/src/org/klomp/snark/SnarkManager.java:1935 #, java-format -msgid "Pieces are too large in \"{0}\" ({1}B), deleting it." -msgstr "Peças no \"{0}\" são grandes demais ({1}B). Se apagarão." +msgid "Pieces are too large in \"{0}\" ({1}B)!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1837 +#: ../java/src/org/klomp/snark/SnarkManager.java:1936 #, java-format msgid "Limit is {0}B" msgstr "O limite são \"{0}\"Bytes" -#: ../java/src/org/klomp/snark/SnarkManager.java:1839 +#: ../java/src/org/klomp/snark/SnarkManager.java:1938 #, java-format -msgid "Torrent \"{0}\" has no data, deleting it!" -msgstr "O torrente \"{0}\" não contem dados e será apagado." +msgid "Torrent \"{0}\" has no data!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1847 +#: ../java/src/org/klomp/snark/SnarkManager.java:1946 #, java-format -msgid "Torrents larger than {0}B are not supported yet, deleting \"{1}\"" -msgstr "torrentes maiores que \"{0}\" Bytes ainda não funcionam, se apagará \"{1}\"." +msgid "Torrents larger than {0}B are not supported yet \"{1}\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1864 +#: ../java/src/org/klomp/snark/SnarkManager.java:1963 #, java-format msgid "Error: Could not remove the torrent {0}" msgstr "Erro: Não se pode quitar o torrente \"{0}\"." -#: ../java/src/org/klomp/snark/SnarkManager.java:1887 -#: ../java/src/org/klomp/snark/SnarkManager.java:1906 +#: ../java/src/org/klomp/snark/SnarkManager.java:1986 +#: ../java/src/org/klomp/snark/SnarkManager.java:2005 #, java-format -msgid "Torrent stopped: \"{0}\"" -msgstr "torrente detido: \"{0}\"" +msgid "Torrent stopped: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1926 +#: ../java/src/org/klomp/snark/SnarkManager.java:2025 #, java-format msgid "Torrent removed: \"{0}\"" msgstr "torrente quitado: \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:1934 +#: ../java/src/org/klomp/snark/SnarkManager.java:2033 #, java-format msgid "Adding torrents in {0}" msgstr "Os torrentes serão adicionados em {0} ..." -#: ../java/src/org/klomp/snark/SnarkManager.java:1966 +#: ../java/src/org/klomp/snark/SnarkManager.java:2067 #, java-format msgid "Up bandwidth limit is {0} KBps" msgstr "Limite de transmissão de dados é {0} KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:1993 +#: ../java/src/org/klomp/snark/SnarkManager.java:2092 #, java-format msgid "Download finished: {0}" msgstr "Finalizada a descarga de \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:2048 +#: ../java/src/org/klomp/snark/SnarkManager.java:2147 #, java-format msgid "Metainfo received for {0}" msgstr "Metainfo recibido para {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2049 -#: ../java/src/org/klomp/snark/SnarkManager.java:2280 +#: ../java/src/org/klomp/snark/SnarkManager.java:2148 +#: ../java/src/org/klomp/snark/SnarkManager.java:2431 #, java-format msgid "Starting up torrent {0}" msgstr "Iniciando o torrente {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2064 +#: ../java/src/org/klomp/snark/SnarkManager.java:2163 #, java-format msgid "Error on torrent {0}" msgstr "Erro no torrente {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2127 +#: ../java/src/org/klomp/snark/SnarkManager.java:2264 msgid "Unable to connect to I2P!" msgstr "ImpossÃvel de se conectar com I2P" -#: ../java/src/org/klomp/snark/SnarkManager.java:2279 +#: ../java/src/org/klomp/snark/SnarkManager.java:2430 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:130 msgid "Opening the I2P tunnel" msgstr "Abrindo o túnel I2P" -#: ../java/src/org/klomp/snark/SnarkManager.java:2303 +#: ../java/src/org/klomp/snark/SnarkManager.java:2450 msgid "Opening the I2P tunnel and starting all torrents." msgstr "Abrendo o túnel I2P e iniciando os torrentes ..." -#: ../java/src/org/klomp/snark/SnarkManager.java:2366 +#: ../java/src/org/klomp/snark/SnarkManager.java:2513 msgid "Stopping all torrents and closing the I2P tunnel." msgstr "Detindo todos os torrentes e fechando o túnel I2P" -#: ../java/src/org/klomp/snark/SnarkManager.java:2385 +#: ../java/src/org/klomp/snark/SnarkManager.java:2532 msgid "Closing I2P tunnel after notifying trackers." msgstr "Fechando túnel I2P após notificar os rastreadores." +#: ../java/src/org/klomp/snark/SnarkManager.java:2594 +#, java-format +msgid "Finished recheck of torrent {0}, now {1} complete" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2596 +#, java-format +msgid "Finished recheck of torrent {0}, unchanged" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2600 +#, java-format +msgid "Error checking the torrent {0}" +msgstr "" + #: ../java/src/org/klomp/snark/TrackerClient.java:245 #, java-format msgid "No valid trackers for {0} - enable opentrackers or DHT?" @@ -461,891 +496,913 @@ msgstr "torrente já na cola: {0}" msgid "Torrent at {0} was not valid" msgstr "torrente em {0} não foi válido" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:268 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:311 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:322 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1763 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2662 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:270 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:313 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:324 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1778 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2698 msgid "I2PSnark" msgstr "I2PSnark" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:273 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2149 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2422 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2165 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2446 msgid "Configuration" msgstr "Preferências" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:277 msgid "Anonymous BitTorrent Client" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:291 msgid "Router is down" msgstr "Roteador não está funcionando" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:306 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:308 msgid "Torrents" msgstr "torrentes" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:319 msgid "Refresh page" msgstr "Atualizar página" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:326 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:328 msgid "Forum" msgstr "Foro" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:341 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:343 msgid "Click \"Add torrent\" button to fetch torrent" msgstr "Clique no botão \"Adicionar torrent\" para obter o torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:394 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:396 msgid "clear messages" msgstr "limpar mensagens" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:449 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2980 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3072 msgid "Status" msgstr "Estado" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2994 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:453 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3086 #, java-format msgid "Sort by {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:462 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:464 msgid "Hide Peers" msgstr "ocultar parceiros" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:468 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:470 msgid "Show Peers" msgstr "mostrar parceiros" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:491 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2648 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2718 msgid "Torrent" msgstr "torrente" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "File type" msgstr "" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:509 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 msgid "ETA" msgstr "Tempo" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:512 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:514 msgid "Estimated time remaining" msgstr "Tempo que falta para completar" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:535 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 msgid "RX" msgstr "Baixado" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:538 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:540 msgid "Downloaded" msgstr "Descarregado" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2818 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2968 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2878 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3060 msgid "Size" msgstr "Tamanho" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 msgid "TX" msgstr "Subido" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2896 msgid "Upload ratio" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:569 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:571 msgid "Uploaded" msgstr "Subido" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:581 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 msgid "RX Rate" msgstr "Taxa de recepção" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:584 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:586 msgid "Down Rate" msgstr "Taxa de descarga" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:596 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 msgid "TX Rate" msgstr "Taxa de transmissão" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:599 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:601 msgid "Up Rate" msgstr "Taxa de subida" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:615 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 msgid "Stop all torrents and the I2P tunnel" msgstr "Deter todos os torrentes e o túnel I2P" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:619 msgid "Stop All" msgstr "Deter tudos" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:629 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 msgid "Start all stopped torrents" msgstr "Iniciar todos os torrents interrompidos" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:633 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:647 msgid "Start All" msgstr "Arrancar todos" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:643 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 msgid "Start all torrents and the I2P tunnel" msgstr "Iniciar todos os torrentes e o túnel I2P" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:668 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:670 msgid "No torrents loaded." msgstr "Não carregado nenhum torrente" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:674 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 msgid "Totals" msgstr "Total" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:678 #, java-format msgid "1 torrent" msgid_plural "{0} torrents" msgstr[0] "1 torrente" msgstr[1] "{0} torrentes" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:683 #, java-format msgid "1 connected peer" msgid_plural "{0} connected peers" msgstr[0] "1 parceiro conectado" msgstr[1] "{0} parceiros conectados" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:688 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:690 #, java-format msgid "1 DHT peer" msgid_plural "{0} DHT peers" msgstr[0] "1 parceiros DHT" msgstr[1] "{0} parceiros DHT" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:695 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:697 msgid "Dest" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First" msgstr "Prim." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First page" msgstr "Primeira página" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Prev" msgstr "Ant." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Previous page" msgstr "Página anterior" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next" msgstr "Próx." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next page" msgstr "Próxima página" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last" msgstr "Últ." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last page" msgstr "Última página" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:960 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:962 msgid "Data directory cannot be created" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1176 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:972 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1185 #, java-format msgid "Cannot add torrent {0} inside another torrent: {1}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:985 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:993 #, java-format msgid "Invalid URL: Must start with \"http://\", \"{0}\", or \"{1}\"" msgstr "Endereço não válido - tem que começar com \"http://\", \"{0}\", ou \"{1}\"." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1026 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1063 #, java-format msgid "Magnet deleted: {0}" msgstr "Apagada o magnet: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1061 #, java-format -msgid "Torrent file deleted: {0}" -msgstr "Apagado o arquivo torrente: {0}" - -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1053 -#, java-format msgid "Download deleted: {0}" msgstr "Download excluÃdo: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1070 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1078 #, java-format msgid "Data file deleted: {0}" msgstr "Apagado o arquivo de dados: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1072 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1089 #, java-format msgid "Data file could not be deleted: {0}" msgstr "Não se pode apagar o arquivo de dados: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1097 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1105 #, java-format msgid "Directory could not be deleted: {0}" msgstr "Pasta não pôde ser excluÃda: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1112 #, java-format msgid "Directory deleted: {0}" msgstr "Pasta excluÃda: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1155 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1164 #, java-format msgid "Cannot add a torrent ending in \".torrent\": {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1160 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1169 #, java-format msgid "Torrent with this name is already running: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1175 #, java-format msgid "Cannot add a torrent including an I2P directory: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1181 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1190 #, java-format msgid "Cannot add torrent {0} including another torrent: {1}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1216 msgid "Error - Cannot include alternate trackers without a primary tracker" msgstr "Erro - ImpossÃvel incluir rastreadores alternativos sem o rastreador primário" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1220 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1229 msgid "Error - Cannot mix private and public trackers in a torrent" msgstr "Erro - ImpossÃvel misturar rastreadores públicos e privados num torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1251 #, java-format msgid "Torrent created for \"{0}\"" msgstr "torrente criado para \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1244 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 #, java-format msgid "" "Many I2P trackers require you to register new torrents before seeding - " "please do so before starting \"{0}\"" msgstr "Muitos rastreadores no I2P exigem que você registre novos torrentes antes de poder semeá-los. Por favor, faça isto antes de iniciar \"{0}\"!" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1255 #, java-format msgid "Error creating a torrent for \"{0}\"" msgstr "Erro ao criar o torrente \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1250 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1259 #, java-format msgid "Cannot create a torrent for the nonexistent data: {0}" msgstr "Não se pode criar um torrente para dados que não existam: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1262 msgid "Error creating torrent - you must enter a file or directory" msgstr "Erro ao criar o torrente - Tens que especificar um arquivo ou uma pasta." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2406 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2430 msgid "Delete selected" msgstr "Excluir selecionado" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2408 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2432 msgid "Save tracker configuration" msgstr "Salvar configurações do rastreador" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1301 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1310 msgid "Removed" msgstr "ExcluÃdo" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1333 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2405 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2407 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1342 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2429 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2431 msgid "Add tracker" msgstr "Adicionar tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1356 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1359 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1365 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1368 msgid "Enter valid tracker name and URLs" msgstr "Insira um nome válido para o tracker e URLs" #. "<input type=\"reset\" class=\"cancel\" #. value=\"").append(_t("Cancel")).append("\">\n" + -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1361 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2410 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1370 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2434 msgid "Restore defaults" msgstr "Voltar aos padrões" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1373 msgid "Restored default trackers" msgstr "Voltar aos rastreadores padrão" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1472 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1473 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1485 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1486 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2949 msgid "Checking" msgstr "Verificando" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1475 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1476 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1489 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2956 msgid "Allocating" msgstr "Reservando espaço" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1499 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1505 msgid "Tracker Error" msgstr "Erro do rastreador" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1492 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1522 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1527 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1538 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1543 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1554 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1507 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1537 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1542 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1553 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1558 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1569 #, java-format msgid "1 peer" msgid_plural "{0} peers" msgstr[0] "1 parceiro" msgstr[1] "{0} parceiros" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1502 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1503 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1517 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1518 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2954 msgid "Starting" msgstr "Iniciando" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1511 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1526 msgid "Seeding" msgstr "semeando" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1515 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1529 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1530 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2831 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1544 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2891 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3139 msgid "Complete" msgstr "completo" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1534 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1535 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1540 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1541 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1550 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1555 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 msgid "OK" msgstr "bem" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1546 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1551 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1552 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1567 msgid "Stalled" msgstr "estancado" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1557 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1571 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1572 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1575 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1576 msgid "No Peers" msgstr "sem parceiros" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1563 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1578 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1579 msgid "Stopped" msgstr "detenido" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1593 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1608 msgid "Torrent details" msgstr "Detalhes do torrente" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1628 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1643 msgid "View files" msgstr "mostrar arquivos" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1630 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1645 msgid "Open file" msgstr "abrir arquivo" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1682 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 msgid "Stop the torrent" msgstr "Deter o torrente" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2961 msgid "Stop" msgstr "Deter" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 msgid "Start the torrent" msgstr "Iniciar o torrente" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1714 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2963 msgid "Start" msgstr "Iniciar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1727 msgid "Remove the torrent from the active list, deleting the .torrent file" msgstr "Retire o torrente da lista ativa, apagando o arquivo .torrent" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1717 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1732 #, java-format msgid "" "Are you sure you want to delete the file \\''{0}\\'' (downloaded data will " "not be deleted) ?" msgstr "Tem a certeza que deseja apagar o ficheiro \\\"{0}\\\" (dados transferidos não serão apagados) ?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1721 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1736 msgid "Remove" msgstr "Quitar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1734 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1749 msgid "Delete the .torrent file and the associated data file(s)" msgstr "Apagar o arquivo torrente e o(s) arquivo(s) de dados pertenecentes" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1739 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1754 #, java-format msgid "" "Are you sure you want to delete the torrent \\''{0}\\'' and all downloaded " "data?" msgstr "Está seguro de que quer apagar o arquivo torrente \\''{0}\\'' e todos os dados descarregados deste torrente?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1743 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1758 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2388 msgid "Delete" msgstr "Apagar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1779 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1794 msgid "Unknown" msgstr "desconhecido" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1791 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1806 msgid "Seed" msgstr "Semeador" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1814 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1829 msgid "Uninteresting (The peer has no pieces we need)" msgstr "não interessante (O parceiro não tem peças que precisamos.)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1816 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1831 msgid "Choked (The peer is not allowing us to request pieces)" msgstr "sufocado (De momento o parceiro não está nos permitindo pedir mais peças.c)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1851 msgid "Uninterested (We have no pieces the peer needs)" msgstr "desinteressado (Não temos as peças que o parceiro quer.)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1838 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1853 msgid "Choking (We are not allowing the peer to request pieces)" msgstr "sufocando (De momento não estamos permitindo que os parceiros peçam mais peças)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1954 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1969 #, java-format msgid "Details at {0} tracker" msgstr "Detalhes no rastreador {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1971 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1986 msgid "Info" msgstr "Info" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 msgid "Add Torrent" msgstr "Adicionar um torrente" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 msgid "From URL" msgstr "URL fonte:" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2050 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2065 msgid "" "Enter the torrent file download URL (I2P only), magnet link, maggot link, or" " info hash" msgstr "Digite a URL para download do arquivo torrent (só I2P), ou magnet link, maggo link, ou ainda o seu hash" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2070 msgid "Add torrent" msgstr "Adicionar torrente" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2074 msgid "Data dir" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2077 #, java-format msgid "Enter the directory to save the data in (default {0})" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2066 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 #, java-format msgid "You can also copy .torrent files to: {0}." msgstr "Também pode copiar arquivos torrentes a {0}." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2068 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2083 msgid "Removing a .torrent will cause it to stop." msgstr "A remoção de um arquivo .torrent fará com que ele pare." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2096 msgid "Create Torrent" msgstr "Criar um torrente" #. out.write("From file: <input type=\"file\" name=\"newFile\" size=\"50\" #. value=\"" + newFile + "\" /><br>\n"); -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2084 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2099 msgid "Data to seed" msgstr "Dados para semear" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2088 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2103 #, java-format msgid "File or directory to seed (full path or within the directory {0} )" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2091 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2337 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2106 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2361 msgid "Trackers" msgstr "Rastreadores" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2093 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2108 msgid "Primary" msgstr "Primário" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2095 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2110 msgid "Alternates" msgstr "Alternativos" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2098 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2113 msgid "Create torrent" msgstr "Criar torrente" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2116 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2131 msgid "none" msgstr "nenhum" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2153 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2169 msgid "Data directory" msgstr "Pasta de dados" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2158 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 msgid "Files readable by all" msgstr "Ficheiro legÃvel por todos" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2162 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2178 msgid "If checked, other users may access the downloaded files" msgstr "Se marcado, outros usuários poderão acessar os ficheiros descarregados" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2182 msgid "Auto start torrents" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2170 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2186 msgid "If checked, automatically start torrents that are added" msgstr "se marcado, os torrentes adicionados se iniciarão automaticamente" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2190 +msgid "Smart torrent sorting" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2194 +msgid "If checked, ignore words such as 'the' when sorting" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2198 msgid "Theme" msgstr "Tema" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2188 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2212 msgid "Refresh time" msgstr "Tempo de actualização" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2201 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2225 msgid "Never" msgstr "Nunca" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2231 msgid "Startup delay" msgstr "Demora do arranque" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2209 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2233 msgid "minutes" msgstr "minutos" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2213 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2237 msgid "Page size" msgstr "Tamanho da página" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2215 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 msgid "torrents" msgstr "torrents" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 msgid "Total uploader limit" msgstr "Limite global de subidores" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2266 msgid "peers" msgstr "parceiros" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2270 msgid "Up bandwidth limit" msgstr "Limite de largura de banda para a subida" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2249 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2273 msgid "Half available bandwidth recommended." msgstr "Se recomenda a metade da largura de banda disponÃvel." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2251 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2275 msgid "View or change router bandwidth" msgstr "mostrar e mudar as preferências da largura de banda do roteador" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2255 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2279 msgid "Use open trackers also" msgstr "usar também rastreadores abertos" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2259 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 msgid "" "If checked, announce torrents to open trackers as well as the tracker listed" " in the torrent file" msgstr "Se marcado, anunciar os torrentes aos rastreadores abertos, assim como aos rastreadores listados no arquivo torrente" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2287 msgid "Enable DHT" msgstr "Habilitar DHT" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2267 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2291 msgid "If checked, use DHT" msgstr "Se marcado, usar DHT" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2307 msgid "Inbound Settings" msgstr "Preferências de entrada" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2313 msgid "Outbound Settings" msgstr "Preferências de saida" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2297 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2321 msgid "I2CP host" msgstr "Anfitrião I2CP" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2302 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2326 msgid "I2CP port" msgstr "Porto I2CP" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2341 msgid "I2CP options" msgstr "Opções I2CP" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2322 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 msgid "Save configuration" msgstr "Guardar configuração" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2342 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2366 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "Name" msgstr "Nome" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2344 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2368 msgid "Website URL" msgstr "URL do Website" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2370 msgid "Standard" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2348 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2372 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3172 msgid "Open" msgstr "abrir" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2350 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2374 msgid "Private" msgstr "Privado" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2352 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2376 msgid "Announce URL" msgstr "URL para anúncio" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2396 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2420 msgid "Add" msgstr "Adicionar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2439 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2463 #, java-format msgid "Invalid magnet URL {0}" msgstr "URL magnet {0} não válida" #. * dummies for translation -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2447 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2471 #, java-format msgid "1 hop" msgid_plural "{0} hops" msgstr[0] "1 salto" msgstr[1] "{0} saltos" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2448 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2472 #, java-format msgid "1 tunnel" msgid_plural "{0} tunnels" msgstr[0] "1 túnel" msgstr[1] "{0} túneles" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2691 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2728 msgid "Torrent file" msgstr "Arquivo torrente" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 msgid "Data location" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2708 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2745 msgid "Info hash" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2727 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2764 msgid "Primary Tracker" msgstr "Rastreador Primário" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2773 msgid "Tracker List" msgstr "Lista de Rastreadores" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2761 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2798 msgid "Comment" msgstr "Commentar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2771 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2812 msgid "Created" msgstr "Criado" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2782 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2823 msgid "Created By" msgstr "Criado por" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2794 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2833 +msgid "Added" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2842 +msgid "Completed" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2854 msgid "Magnet link" msgstr "URL magnet" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2807 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2867 msgid "Private torrent" msgstr "Torrente privado" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2827 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2887 msgid "Completion" msgstr "Finalização" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2856 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2916 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 msgid "Remaining" msgstr "Restantes" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2926 msgid "Files" msgstr "Arquivos" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2873 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 msgid "Pieces" msgstr "Peças" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2879 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2939 msgid "Piece size" msgstr "Tamanho das peças" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2952 +msgid "Refresh page for results" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2964 +msgid "Force Recheck" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3025 msgid "Directory" msgstr "Pasta" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2992 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3084 msgid "Priority" msgstr "Prioridade" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3004 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3096 msgid "Up to higher level directory" msgstr "Subir uma herarquia" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3038 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3130 msgid "Torrent not found?" msgstr "Não achei o arquivo torrente?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3136 msgid "File not found in torrent?" msgstr "Arquivo não achado no torrente?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3057 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3149 msgid "complete" msgstr "completo" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3058 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3150 msgid "remaining" msgstr "restantes" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3196 msgid "High" msgstr "alta" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3109 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3201 msgid "Normal" msgstr "normal" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3114 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3206 msgid "Skip" msgstr "Ignorar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3124 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3216 msgid "Set all high" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3126 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3218 msgid "Set all normal" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3128 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3220 msgid "Skip all" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3129 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3221 msgid "Save priorities" msgstr "Guardar prioridades" diff --git a/apps/i2psnark/locale/messages_pt_bR.po b/apps/i2psnark/locale/messages_pt_bR.po index 251188047ec25809c7e5985c3ef42b6b318b6cd6..e0baae5de44c87e8dadc337c4d2118439b31f35c 100644 --- a/apps/i2psnark/locale/messages_pt_bR.po +++ b/apps/i2psnark/locale/messages_pt_bR.po @@ -10,10 +10,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:09+0000\n" -"PO-Revision-Date: 2015-07-17 01:32+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-05 17:17+0000\n" "Last-Translator: kytv <killyourtv@i2pmail.org>\n" -"Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/I2P/language/pt_BR/)\n" +"Language-Team: Portuguese (Brazil) (http://www.transifex.com/otf/I2P/language/pt_BR/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -25,222 +25,230 @@ msgid "No more torrents running." msgstr "" #: ../java/src/org/klomp/snark/IdleChecker.java:76 -#: ../java/src/org/klomp/snark/SnarkManager.java:2392 -#: ../java/src/org/klomp/snark/SnarkManager.java:2403 +#: ../java/src/org/klomp/snark/SnarkManager.java:2539 +#: ../java/src/org/klomp/snark/SnarkManager.java:2550 msgid "I2P tunnel closed." msgstr "Túnel I2P fechado" #: ../java/src/org/klomp/snark/MagnetURI.java:42 #: ../java/src/org/klomp/snark/MagnetURI.java:52 -#: ../java/src/org/klomp/snark/SnarkManager.java:2096 +#: ../java/src/org/klomp/snark/SnarkManager.java:2221 msgid "Magnet" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:772 +#: ../java/src/org/klomp/snark/SnarkManager.java:791 #, java-format msgid "Total uploaders limit changed to {0}" msgstr "Limite de uploaders totais alterada para {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:774 +#: ../java/src/org/klomp/snark/SnarkManager.java:793 #, java-format msgid "Minimum total uploaders limit is {0}" msgstr "MÃnimo de uploaders totais alterada para {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:786 +#: ../java/src/org/klomp/snark/SnarkManager.java:805 #, java-format msgid "Up BW limit changed to {0}KBps" msgstr "Limite de Up BW alterada para {0}KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:788 +#: ../java/src/org/klomp/snark/SnarkManager.java:807 #, java-format msgid "Minimum up bandwidth limit is {0}KBps" msgstr "O limite de mÃnimo de banda larga é {0}KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:800 +#: ../java/src/org/klomp/snark/SnarkManager.java:819 #, java-format msgid "Startup delay changed to {0}" msgstr "Atraso de inicialização alterada para {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:811 +#: ../java/src/org/klomp/snark/SnarkManager.java:830 #, java-format msgid "Refresh time changed to {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:813 +#: ../java/src/org/klomp/snark/SnarkManager.java:832 msgid "Refresh disabled" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:829 +#: ../java/src/org/klomp/snark/SnarkManager.java:848 #, java-format msgid "Page size changed to {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:838 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:956 +#: ../java/src/org/klomp/snark/SnarkManager.java:857 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:958 msgid "Data directory must be an absolute path" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:840 +#: ../java/src/org/klomp/snark/SnarkManager.java:859 msgid "Data directory does not exist" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:842 +#: ../java/src/org/klomp/snark/SnarkManager.java:861 msgid "Not a directory" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:844 +#: ../java/src/org/klomp/snark/SnarkManager.java:863 msgid "Unreadable" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:849 +#: ../java/src/org/klomp/snark/SnarkManager.java:868 #, java-format msgid "Data directory changed to {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:904 +#: ../java/src/org/klomp/snark/SnarkManager.java:923 msgid "I2CP and tunnel changes will take effect after stopping all torrents" msgstr "Alterações em túneis e I2C entrarão em vigor depois de parar todos torrents" -#: ../java/src/org/klomp/snark/SnarkManager.java:908 +#: ../java/src/org/klomp/snark/SnarkManager.java:927 #, java-format msgid "I2CP options changed to {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:914 +#: ../java/src/org/klomp/snark/SnarkManager.java:933 msgid "Disconnecting old I2CP destination" msgstr "Desconectando destinação do velho I2CP" -#: ../java/src/org/klomp/snark/SnarkManager.java:916 +#: ../java/src/org/klomp/snark/SnarkManager.java:935 #, java-format msgid "I2CP settings changed to {0}" msgstr "Configurações de I2CP alteradas para {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:921 +#: ../java/src/org/klomp/snark/SnarkManager.java:940 msgid "" "Unable to connect with the new settings, reverting to the old I2CP settings" msgstr "Não é possÃvel conectar com as novas configurações. Revertendo para as prévias configurações de I2CP" -#: ../java/src/org/klomp/snark/SnarkManager.java:925 +#: ../java/src/org/klomp/snark/SnarkManager.java:944 msgid "Unable to reconnect with the old settings!" msgstr "Não é possÃvel conectar com as novas configurações!" -#: ../java/src/org/klomp/snark/SnarkManager.java:927 +#: ../java/src/org/klomp/snark/SnarkManager.java:946 msgid "Reconnected on the new I2CP destination" msgstr "Reconectado à nova destinação de I2CP" -#: ../java/src/org/klomp/snark/SnarkManager.java:934 +#: ../java/src/org/klomp/snark/SnarkManager.java:953 #, java-format msgid "I2CP listener restarted for \"{0}\"" msgstr "Auditor I2CP recomeçadas a \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:948 +#: ../java/src/org/klomp/snark/SnarkManager.java:967 msgid "New files will be publicly readable" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:950 +#: ../java/src/org/klomp/snark/SnarkManager.java:969 msgid "New files will not be publicly readable" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:957 +#: ../java/src/org/klomp/snark/SnarkManager.java:976 msgid "Enabled autostart" msgstr "Autocomeço permitido" -#: ../java/src/org/klomp/snark/SnarkManager.java:959 +#: ../java/src/org/klomp/snark/SnarkManager.java:978 msgid "Disabled autostart" msgstr "Autocomeço não permitido" -#: ../java/src/org/klomp/snark/SnarkManager.java:965 +#: ../java/src/org/klomp/snark/SnarkManager.java:985 +msgid "Enabled smart sort" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:987 +msgid "Disabled smart sort" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:994 msgid "Enabled open trackers - torrent restart required to take effect." msgstr "Trackers abertos permitidos - reinÃcio de torrents é preciso para entrar em vigor" -#: ../java/src/org/klomp/snark/SnarkManager.java:967 +#: ../java/src/org/klomp/snark/SnarkManager.java:996 msgid "Disabled open trackers - torrent restart required to take effect." msgstr "Trackers abertos não permitidos - reinÃcio de torrents é preciso para entrar em vigor" -#: ../java/src/org/klomp/snark/SnarkManager.java:974 +#: ../java/src/org/klomp/snark/SnarkManager.java:1003 msgid "Enabled DHT." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:976 +#: ../java/src/org/klomp/snark/SnarkManager.java:1005 msgid "Disabled DHT." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:978 +#: ../java/src/org/klomp/snark/SnarkManager.java:1007 msgid "DHT change requires tunnel shutdown and reopen" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:985 +#: ../java/src/org/klomp/snark/SnarkManager.java:1014 #, java-format msgid "{0} theme loaded, return to main i2psnark page to view." msgstr "Tema {0} carregado, retornar para a página principal de i2psnark para visualizar." -#: ../java/src/org/klomp/snark/SnarkManager.java:995 +#: ../java/src/org/klomp/snark/SnarkManager.java:1024 msgid "Configuration unchanged." msgstr "Configuração sem alteração" -#: ../java/src/org/klomp/snark/SnarkManager.java:1027 +#: ../java/src/org/klomp/snark/SnarkManager.java:1056 msgid "Open Tracker list changed - torrent restart required to take effect." msgstr "Lista de trackers abertos alterada - reinÃcio de torrents é preciso para entrar em vigor" -#: ../java/src/org/klomp/snark/SnarkManager.java:1037 +#: ../java/src/org/klomp/snark/SnarkManager.java:1066 msgid "Private tracker list changed - affects newly created torrents only." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1083 +#: ../java/src/org/klomp/snark/SnarkManager.java:1112 #, java-format msgid "Unable to save the config to {0}" msgstr "Não é possivel salvar configurações para {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1164 +#: ../java/src/org/klomp/snark/SnarkManager.java:1193 msgid "Connecting to I2P" msgstr "Conectando a I2P" -#: ../java/src/org/klomp/snark/SnarkManager.java:1167 +#: ../java/src/org/klomp/snark/SnarkManager.java:1196 msgid "Error connecting to I2P - check your I2CP settings!" msgstr "Erro ao conectar a I2P - verifique as configurações de I2CP!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1176 -#: ../java/src/org/klomp/snark/SnarkManager.java:2133 +#: ../java/src/org/klomp/snark/SnarkManager.java:1205 +#: ../java/src/org/klomp/snark/SnarkManager.java:2270 #, java-format msgid "Error: Could not add the torrent {0}" msgstr "Erro: não é possÃvel adicionar o torrent {0}" #. catch this here so we don't try do delete it below -#: ../java/src/org/klomp/snark/SnarkManager.java:1199 +#: ../java/src/org/klomp/snark/SnarkManager.java:1228 #, java-format msgid "Cannot open \"{0}\"" msgstr "Não é possÃvel abrir \"{0}\"" #. TODO - if the existing one is a magnet, delete it and add the metainfo #. instead? -#: ../java/src/org/klomp/snark/SnarkManager.java:1218 -#: ../java/src/org/klomp/snark/SnarkManager.java:1352 -#: ../java/src/org/klomp/snark/SnarkManager.java:1440 +#: ../java/src/org/klomp/snark/SnarkManager.java:1247 +#: ../java/src/org/klomp/snark/SnarkManager.java:1388 +#: ../java/src/org/klomp/snark/SnarkManager.java:1476 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:166 #, java-format msgid "Torrent with this info hash is already running: {0}" msgstr "O torrent com este info has já está sendo executado: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1224 +#: ../java/src/org/klomp/snark/SnarkManager.java:1253 #, java-format msgid "ERROR - No I2P trackers in private torrent \"{0}\"" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1226 +#: ../java/src/org/klomp/snark/SnarkManager.java:1255 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", will announce to I2P open trackers and" " DHT only." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1229 +#: ../java/src/org/klomp/snark/SnarkManager.java:1258 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and open trackers are disabled, will " "announce to DHT only." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1231 +#: ../java/src/org/klomp/snark/SnarkManager.java:1260 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and DHT and open trackers are " @@ -248,34 +256,46 @@ msgid "" "torrent." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1257 +#: ../java/src/org/klomp/snark/SnarkManager.java:1286 #, java-format msgid "Torrent in \"{0}\" is invalid" msgstr "O torrent em \"{0}\" é inválido" -#: ../java/src/org/klomp/snark/SnarkManager.java:1264 +#: ../java/src/org/klomp/snark/SnarkManager.java:1292 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1042 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1069 +#, java-format +msgid "Torrent file deleted: {0}" +msgstr "Arquivo de torrent deletado: {0}" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1295 +#, java-format +msgid "Torrent file moved from {0} to {1}" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1299 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:193 #, java-format msgid "ERROR - Out of memory, cannot create torrent from {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1285 +#: ../java/src/org/klomp/snark/SnarkManager.java:1321 #, java-format -msgid "Torrent added and started: \"{0}\"" -msgstr "Torrent adicionado e começado: \"{0}\"" +msgid "Torrent added and started: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1287 +#: ../java/src/org/klomp/snark/SnarkManager.java:1323 #, java-format -msgid "Torrent added: \"{0}\"" -msgstr "Torrent adicionado: \"{0}\"" +msgid "Torrent added: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1363 +#: ../java/src/org/klomp/snark/SnarkManager.java:1399 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:93 #, java-format msgid "Fetching {0}" msgstr "Buscando {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1369 +#: ../java/src/org/klomp/snark/SnarkManager.java:1405 #, java-format msgid "" "Open trackers are disabled and we have no DHT peers. Fetch of {0} may not " @@ -283,131 +303,146 @@ msgid "" "DHT." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1373 +#: ../java/src/org/klomp/snark/SnarkManager.java:1409 #, java-format msgid "Adding {0}" msgstr "Adicionando {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1406 +#: ../java/src/org/klomp/snark/SnarkManager.java:1442 #, java-format msgid "Download already running: {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1451 -#: ../java/src/org/klomp/snark/SnarkManager.java:1477 -#: ../java/src/org/klomp/snark/SnarkManager.java:2052 +#: ../java/src/org/klomp/snark/SnarkManager.java:1487 +#: ../java/src/org/klomp/snark/SnarkManager.java:1513 +#: ../java/src/org/klomp/snark/SnarkManager.java:2151 #, java-format msgid "Failed to copy torrent file to {0}" msgstr "Falha ao copiar arquivo de torrent de {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1828 +#: ../java/src/org/klomp/snark/SnarkManager.java:1927 #, java-format -msgid "Too many files in \"{0}\" ({1}), deleting it!" -msgstr "Arquivos em excesso em \"{0}\" ({1}), deletando!" +msgid "Too many files in \"{0}\" ({1})!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1830 +#: ../java/src/org/klomp/snark/SnarkManager.java:1929 #, java-format -msgid "Torrent file \"{0}\" cannot end in \".torrent\", deleting it!" -msgstr "Arquivo de torrent \"{0}\" não pode terminar em \".torrent\", deletando!" +msgid "Torrent file \"{0}\" cannot end in \".torrent\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1832 +#: ../java/src/org/klomp/snark/SnarkManager.java:1931 #, java-format -msgid "No pieces in \"{0}\", deleting it!" -msgstr "Sem peças em \"{0}\", deletando!" +msgid "No pieces in \"{0}\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1834 +#: ../java/src/org/klomp/snark/SnarkManager.java:1933 #, java-format -msgid "Too many pieces in \"{0}\", limit is {1}, deleting it!" -msgstr "Peças em excesso em \"{0}\". O limite é {1}, deletando!" +msgid "Too many pieces in \"{0}\", limit is {1}!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1836 +#: ../java/src/org/klomp/snark/SnarkManager.java:1935 #, java-format -msgid "Pieces are too large in \"{0}\" ({1}B), deleting it." -msgstr "Peças são muito grande em \"{0}\" ({1}B), deletando." +msgid "Pieces are too large in \"{0}\" ({1}B)!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1837 +#: ../java/src/org/klomp/snark/SnarkManager.java:1936 #, java-format msgid "Limit is {0}B" msgstr "O limite é {0}B" -#: ../java/src/org/klomp/snark/SnarkManager.java:1839 +#: ../java/src/org/klomp/snark/SnarkManager.java:1938 #, java-format -msgid "Torrent \"{0}\" has no data, deleting it!" +msgid "Torrent \"{0}\" has no data!" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1847 +#: ../java/src/org/klomp/snark/SnarkManager.java:1946 #, java-format -msgid "Torrents larger than {0}B are not supported yet, deleting \"{1}\"" -msgstr "Torrents maiores do que {0}B não são suportados ainda, deletando \"{1}\"" +msgid "Torrents larger than {0}B are not supported yet \"{1}\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1864 +#: ../java/src/org/klomp/snark/SnarkManager.java:1963 #, java-format msgid "Error: Could not remove the torrent {0}" msgstr "Erro: não foi possÃvel remover o torrent {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1887 -#: ../java/src/org/klomp/snark/SnarkManager.java:1906 +#: ../java/src/org/klomp/snark/SnarkManager.java:1986 +#: ../java/src/org/klomp/snark/SnarkManager.java:2005 #, java-format -msgid "Torrent stopped: \"{0}\"" -msgstr "Torrent parado: \"{0}\"" +msgid "Torrent stopped: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1926 +#: ../java/src/org/klomp/snark/SnarkManager.java:2025 #, java-format msgid "Torrent removed: \"{0}\"" msgstr "Torrent removido: \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:1934 +#: ../java/src/org/klomp/snark/SnarkManager.java:2033 #, java-format msgid "Adding torrents in {0}" msgstr "Adicionando torrents em {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1966 +#: ../java/src/org/klomp/snark/SnarkManager.java:2067 #, java-format msgid "Up bandwidth limit is {0} KBps" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1993 +#: ../java/src/org/klomp/snark/SnarkManager.java:2092 #, java-format msgid "Download finished: {0}" msgstr "Download terminado: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2048 +#: ../java/src/org/klomp/snark/SnarkManager.java:2147 #, java-format msgid "Metainfo received for {0}" msgstr "Metainfo recebido para {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2049 -#: ../java/src/org/klomp/snark/SnarkManager.java:2280 +#: ../java/src/org/klomp/snark/SnarkManager.java:2148 +#: ../java/src/org/klomp/snark/SnarkManager.java:2431 #, java-format msgid "Starting up torrent {0}" msgstr "Iniciando torrent {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2064 +#: ../java/src/org/klomp/snark/SnarkManager.java:2163 #, java-format msgid "Error on torrent {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:2127 +#: ../java/src/org/klomp/snark/SnarkManager.java:2264 msgid "Unable to connect to I2P!" msgstr "Incapaz de conectar ao I2P!" -#: ../java/src/org/klomp/snark/SnarkManager.java:2279 +#: ../java/src/org/klomp/snark/SnarkManager.java:2430 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:130 msgid "Opening the I2P tunnel" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:2303 +#: ../java/src/org/klomp/snark/SnarkManager.java:2450 msgid "Opening the I2P tunnel and starting all torrents." msgstr "Abrindo o túnel I2P e começando todos os torrents." -#: ../java/src/org/klomp/snark/SnarkManager.java:2366 +#: ../java/src/org/klomp/snark/SnarkManager.java:2513 msgid "Stopping all torrents and closing the I2P tunnel." msgstr "Parando todos os torrents e fechando o túnel I2P" -#: ../java/src/org/klomp/snark/SnarkManager.java:2385 +#: ../java/src/org/klomp/snark/SnarkManager.java:2532 msgid "Closing I2P tunnel after notifying trackers." msgstr "" +#: ../java/src/org/klomp/snark/SnarkManager.java:2594 +#, java-format +msgid "Finished recheck of torrent {0}, now {1} complete" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2596 +#, java-format +msgid "Finished recheck of torrent {0}, unchanged" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2600 +#, java-format +msgid "Error checking the torrent {0}" +msgstr "" + #: ../java/src/org/klomp/snark/TrackerClient.java:245 #, java-format msgid "No valid trackers for {0} - enable opentrackers or DHT?" @@ -453,891 +488,913 @@ msgstr "" msgid "Torrent at {0} was not valid" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:268 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:311 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:322 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1763 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2662 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:270 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:313 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:324 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1778 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2698 msgid "I2PSnark" msgstr "I2PSnar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:273 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2149 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2422 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2165 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2446 msgid "Configuration" msgstr "Configuração" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:277 msgid "Anonymous BitTorrent Client" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:291 msgid "Router is down" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:306 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:308 msgid "Torrents" msgstr "Torrents" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:319 msgid "Refresh page" msgstr "Recarregar página" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:326 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:328 msgid "Forum" msgstr "Fórum" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:341 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:343 msgid "Click \"Add torrent\" button to fetch torrent" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:394 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:396 msgid "clear messages" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:449 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2980 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3072 msgid "Status" msgstr "Status" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2994 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:453 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3086 #, java-format msgid "Sort by {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:462 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:464 msgid "Hide Peers" msgstr "Ocultar Pares" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:468 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:470 msgid "Show Peers" msgstr "Mostrar Pares" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:491 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2648 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2718 msgid "Torrent" msgstr "Torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "File type" msgstr "" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:509 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 msgid "ETA" msgstr "ETA" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:512 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:514 msgid "Estimated time remaining" msgstr "Tempo restante estimado" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:535 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 msgid "RX" msgstr "RX" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:538 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:540 msgid "Downloaded" msgstr "Baixado" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2818 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2968 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2878 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3060 msgid "Size" msgstr "" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 msgid "TX" msgstr "TX" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2896 msgid "Upload ratio" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:569 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:571 msgid "Uploaded" msgstr "Uploaded" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:581 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 msgid "RX Rate" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:584 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:586 msgid "Down Rate" msgstr "Taxa de down" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:596 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 msgid "TX Rate" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:599 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:601 msgid "Up Rate" msgstr "Taxad de up" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:615 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 msgid "Stop all torrents and the I2P tunnel" msgstr "Parar todos os torrents e o túnel I2P" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:619 msgid "Stop All" msgstr "Parar todos" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:629 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 msgid "Start all stopped torrents" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:633 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:647 msgid "Start All" msgstr "Começar todos" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:643 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 msgid "Start all torrents and the I2P tunnel" msgstr "Começar todos os torrents e o túnel I2P" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:668 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:670 msgid "No torrents loaded." msgstr "Nenhum torrent carregado." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:674 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 msgid "Totals" msgstr "Totais" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:678 #, java-format msgid "1 torrent" msgid_plural "{0} torrents" msgstr[0] "1 torrent" msgstr[1] "{0} torrents" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:683 #, java-format msgid "1 connected peer" msgid_plural "{0} connected peers" msgstr[0] "1 peer conectado" msgstr[1] "{0} pares conectados" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:688 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:690 #, java-format msgid "1 DHT peer" msgid_plural "{0} DHT peers" msgstr[0] "" msgstr[1] "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:695 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:697 msgid "Dest" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First page" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Prev" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Previous page" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next page" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last page" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:960 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:962 msgid "Data directory cannot be created" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1176 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:972 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1185 #, java-format msgid "Cannot add torrent {0} inside another torrent: {1}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:985 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:993 #, java-format msgid "Invalid URL: Must start with \"http://\", \"{0}\", or \"{1}\"" msgstr "URL inválido: deve começar com \"http://\", \"{0}\", ou \"{1}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1026 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1063 #, java-format msgid "Magnet deleted: {0}" msgstr "Magnet deletado: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1061 #, java-format -msgid "Torrent file deleted: {0}" -msgstr "Arquivo de torrent deletado: {0}" - -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1053 -#, java-format msgid "Download deleted: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1070 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1078 #, java-format msgid "Data file deleted: {0}" msgstr "Arquivo de data deletado: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1072 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1089 #, java-format msgid "Data file could not be deleted: {0}" msgstr "Não foi possÃvel apagar o arquivo de data: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1097 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1105 #, java-format msgid "Directory could not be deleted: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1112 #, java-format msgid "Directory deleted: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1155 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1164 #, java-format msgid "Cannot add a torrent ending in \".torrent\": {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1160 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1169 #, java-format msgid "Torrent with this name is already running: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1175 #, java-format msgid "Cannot add a torrent including an I2P directory: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1181 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1190 #, java-format msgid "Cannot add torrent {0} including another torrent: {1}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1216 msgid "Error - Cannot include alternate trackers without a primary tracker" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1220 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1229 msgid "Error - Cannot mix private and public trackers in a torrent" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1251 #, java-format msgid "Torrent created for \"{0}\"" msgstr "Torrent criado para \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1244 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 #, java-format msgid "" "Many I2P trackers require you to register new torrents before seeding - " "please do so before starting \"{0}\"" msgstr "Muitos I2P trackers requerem o registro de torrents antes de seeding - por favor, faça isso antes de começar \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1255 #, java-format msgid "Error creating a torrent for \"{0}\"" msgstr "Erro ao criar torrent para \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1250 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1259 #, java-format msgid "Cannot create a torrent for the nonexistent data: {0}" msgstr "Não foi possÃvel criar um torrent para a informação inexistente: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1262 msgid "Error creating torrent - you must enter a file or directory" msgstr "Erro ao criar torrent - é preciso um arquiso ou diretório" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2406 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2430 msgid "Delete selected" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2408 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2432 msgid "Save tracker configuration" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1301 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1310 msgid "Removed" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1333 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2405 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2407 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1342 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2429 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2431 msgid "Add tracker" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1356 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1359 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1365 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1368 msgid "Enter valid tracker name and URLs" msgstr "" #. "<input type=\"reset\" class=\"cancel\" #. value=\"").append(_t("Cancel")).append("\">\n" + -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1361 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2410 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1370 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2434 msgid "Restore defaults" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1373 msgid "Restored default trackers" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1472 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1473 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1485 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1486 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2949 msgid "Checking" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1475 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1476 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1489 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2956 msgid "Allocating" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1499 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1505 msgid "Tracker Error" msgstr "Erro de tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1492 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1522 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1527 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1538 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1543 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1554 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1507 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1537 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1542 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1553 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1558 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1569 #, java-format msgid "1 peer" msgid_plural "{0} peers" msgstr[0] "1 peer" msgstr[1] "{0} pares" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1502 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1503 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1517 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1518 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2954 msgid "Starting" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1511 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1526 msgid "Seeding" msgstr "Seeding" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1515 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1529 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1530 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2831 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1544 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2891 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3139 msgid "Complete" msgstr "Completo" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1534 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1535 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1540 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1541 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1550 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1555 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 msgid "OK" msgstr "OK" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1546 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1551 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1552 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1567 msgid "Stalled" msgstr "Estagnado" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1557 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1571 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1572 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1575 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1576 msgid "No Peers" msgstr "Sem pares" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1563 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1578 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1579 msgid "Stopped" msgstr "Parad" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1593 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1608 msgid "Torrent details" msgstr "Detalhes do torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1628 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1643 msgid "View files" msgstr "Ver arquivos" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1630 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1645 msgid "Open file" msgstr "Abrir arquivos" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1682 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 msgid "Stop the torrent" msgstr "Parar o torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2961 msgid "Stop" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 msgid "Start the torrent" msgstr "Começar o torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1714 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2963 msgid "Start" msgstr "Começar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1727 msgid "Remove the torrent from the active list, deleting the .torrent file" msgstr "Remover o torrent da lista de ativos, deletando o arquivo .torrent" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1717 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1732 #, java-format msgid "" "Are you sure you want to delete the file \\''{0}\\'' (downloaded data will " "not be deleted) ?" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1721 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1736 msgid "Remove" msgstr "Remover" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1734 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1749 msgid "Delete the .torrent file and the associated data file(s)" msgstr "Deletar o arquivo ;torrent e associar data file(s)" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1739 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1754 #, java-format msgid "" "Are you sure you want to delete the torrent \\''{0}\\'' and all downloaded " "data?" msgstr "Tem certeza que quer remover o torrent \\''{0}\\'' e todas as informaçoes baixadas?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1743 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1758 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2388 msgid "Delete" msgstr "Deletar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1779 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1794 msgid "Unknown" msgstr "desconhecido" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1791 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1806 msgid "Seed" msgstr "Seed" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1814 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1829 msgid "Uninteresting (The peer has no pieces we need)" msgstr "Desinteressante (O par não tem partes que precisemos)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1816 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1831 msgid "Choked (The peer is not allowing us to request pieces)" msgstr "Engasgado (O par não está nos permitindo solicitar partes)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1851 msgid "Uninterested (We have no pieces the peer needs)" msgstr "Desinteressado (Não temos quaisquer partes que o par precise)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1838 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1853 msgid "Choking (We are not allowing the peer to request pieces)" msgstr "Engasgando (O par está impossibilitado de solicitar partes)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1954 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1969 #, java-format msgid "Details at {0} tracker" msgstr "Detalhes em tracker {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1971 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1986 msgid "Info" msgstr "Info" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 msgid "Add Torrent" msgstr "Adicionar Torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 msgid "From URL" msgstr "Do URL" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2050 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2065 msgid "" "Enter the torrent file download URL (I2P only), magnet link, maggot link, or" " info hash" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2070 msgid "Add torrent" msgstr "Acidionar torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2074 msgid "Data dir" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2077 #, java-format msgid "Enter the directory to save the data in (default {0})" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2066 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 #, java-format msgid "You can also copy .torrent files to: {0}." msgstr "Pode também copiar arquivos .torrents de: {0}." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2068 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2083 msgid "Removing a .torrent will cause it to stop." msgstr "A remoção de um .torrent parará a mesma" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2096 msgid "Create Torrent" msgstr "Criar Torrent" #. out.write("From file: <input type=\"file\" name=\"newFile\" size=\"50\" #. value=\"" + newFile + "\" /><br>\n"); -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2084 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2099 msgid "Data to seed" msgstr "Arquivo para seed" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2088 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2103 #, java-format msgid "File or directory to seed (full path or within the directory {0} )" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2091 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2337 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2106 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2361 msgid "Trackers" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2093 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2108 msgid "Primary" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2095 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2110 msgid "Alternates" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2098 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2113 msgid "Create torrent" msgstr "Criar torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2116 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2131 msgid "none" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2153 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2169 msgid "Data directory" msgstr "Diretório de arquivo" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2158 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 msgid "Files readable by all" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2162 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2178 msgid "If checked, other users may access the downloaded files" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2182 msgid "Auto start torrents" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2170 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2186 msgid "If checked, automatically start torrents that are added" msgstr "Automaticamente começar torrents adicionados se verificado" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2190 +msgid "Smart torrent sorting" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2194 +msgid "If checked, ignore words such as 'the' when sorting" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2198 msgid "Theme" msgstr "Tema" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2188 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2212 msgid "Refresh time" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2201 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2225 msgid "Never" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2231 msgid "Startup delay" msgstr "Atraso de inicialização" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2209 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2233 msgid "minutes" msgstr "minutos" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2213 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2237 msgid "Page size" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2215 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 msgid "torrents" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 msgid "Total uploader limit" msgstr "Limite total do uploader" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2266 msgid "peers" msgstr "pares" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2270 msgid "Up bandwidth limit" msgstr "Up limite de banda larga" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2249 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2273 msgid "Half available bandwidth recommended." msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2251 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2275 msgid "View or change router bandwidth" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2255 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2279 msgid "Use open trackers also" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2259 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 msgid "" "If checked, announce torrents to open trackers as well as the tracker listed" " in the torrent file" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2287 msgid "Enable DHT" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2267 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2291 msgid "If checked, use DHT" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2307 msgid "Inbound Settings" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2313 msgid "Outbound Settings" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2297 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2321 msgid "I2CP host" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2302 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2326 msgid "I2CP port" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2341 msgid "I2CP options" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2322 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 msgid "Save configuration" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2342 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2366 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "Name" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2344 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2368 msgid "Website URL" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2370 msgid "Standard" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2348 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2372 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3172 msgid "Open" msgstr "Abrir" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2350 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2374 msgid "Private" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2352 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2376 msgid "Announce URL" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2396 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2420 msgid "Add" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2439 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2463 #, java-format msgid "Invalid magnet URL {0}" msgstr "" #. * dummies for translation -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2447 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2471 #, java-format msgid "1 hop" msgid_plural "{0} hops" msgstr[0] "" msgstr[1] "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2448 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2472 #, java-format msgid "1 tunnel" msgid_plural "{0} tunnels" msgstr[0] "" msgstr[1] "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2691 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2728 msgid "Torrent file" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 msgid "Data location" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2708 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2745 msgid "Info hash" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2727 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2764 msgid "Primary Tracker" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2773 msgid "Tracker List" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2761 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2798 msgid "Comment" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2771 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2812 msgid "Created" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2782 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2823 msgid "Created By" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2794 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2833 +msgid "Added" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2842 +msgid "Completed" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2854 msgid "Magnet link" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2807 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2867 msgid "Private torrent" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2827 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2887 msgid "Completion" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2856 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2916 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 msgid "Remaining" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2926 msgid "Files" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2873 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 msgid "Pieces" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2879 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2939 msgid "Piece size" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2952 +msgid "Refresh page for results" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2964 +msgid "Force Recheck" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3025 msgid "Directory" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2992 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3084 msgid "Priority" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3004 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3096 msgid "Up to higher level directory" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3038 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3130 msgid "Torrent not found?" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3136 msgid "File not found in torrent?" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3057 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3149 msgid "complete" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3058 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3150 msgid "remaining" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3196 msgid "High" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3109 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3201 msgid "Normal" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3114 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3206 msgid "Skip" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3124 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3216 msgid "Set all high" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3126 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3218 msgid "Set all normal" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3128 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3220 msgid "Skip all" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3129 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3221 msgid "Save priorities" msgstr "" diff --git a/apps/i2psnark/locale/messages_ro.po b/apps/i2psnark/locale/messages_ro.po index d0575dd0fff08618815c6403efc4e7c4863972da..c95d1fa065e091d9c5e842eb4d30db58e49b0171 100644 --- a/apps/i2psnark/locale/messages_ro.po +++ b/apps/i2psnark/locale/messages_ro.po @@ -5,14 +5,16 @@ # # Translators: # Di N., 2015 +# Di N., 2015 +# titus <titus0818@gmail.com>, 2015 # titus <titus0818@gmail.com>, 2015 msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:09+0000\n" -"PO-Revision-Date: 2015-07-21 13:47+0000\n" -"Last-Translator: Di N.\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-05 17:17+0000\n" +"Last-Translator: kytv <killyourtv@i2pmail.org>\n" "Language-Team: Romanian (http://www.transifex.com/otf/I2P/language/ro/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -25,222 +27,230 @@ msgid "No more torrents running." msgstr "Nu sunt torrente care rulează" #: ../java/src/org/klomp/snark/IdleChecker.java:76 -#: ../java/src/org/klomp/snark/SnarkManager.java:2392 -#: ../java/src/org/klomp/snark/SnarkManager.java:2403 +#: ../java/src/org/klomp/snark/SnarkManager.java:2539 +#: ../java/src/org/klomp/snark/SnarkManager.java:2550 msgid "I2P tunnel closed." msgstr "Tunel I2P închis." #: ../java/src/org/klomp/snark/MagnetURI.java:42 #: ../java/src/org/klomp/snark/MagnetURI.java:52 -#: ../java/src/org/klomp/snark/SnarkManager.java:2096 +#: ../java/src/org/klomp/snark/SnarkManager.java:2221 msgid "Magnet" msgstr "Magnet" -#: ../java/src/org/klomp/snark/SnarkManager.java:772 +#: ../java/src/org/klomp/snark/SnarkManager.java:791 #, java-format msgid "Total uploaders limit changed to {0}" msgstr "Limita totala de incarcare schimbat la {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:774 +#: ../java/src/org/klomp/snark/SnarkManager.java:793 #, java-format msgid "Minimum total uploaders limit is {0}" msgstr "Limita totala minimă de incarcare este {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:786 +#: ../java/src/org/klomp/snark/SnarkManager.java:805 #, java-format msgid "Up BW limit changed to {0}KBps" msgstr "Limita de incarcare BW schimbat la {0} Kbps" -#: ../java/src/org/klomp/snark/SnarkManager.java:788 +#: ../java/src/org/klomp/snark/SnarkManager.java:807 #, java-format msgid "Minimum up bandwidth limit is {0}KBps" msgstr "Limita de lățime de bandă minima la incarcarea este {0} Kbps" -#: ../java/src/org/klomp/snark/SnarkManager.java:800 +#: ../java/src/org/klomp/snark/SnarkManager.java:819 #, java-format msgid "Startup delay changed to {0}" msgstr "ÃŽntârziere de pornire schimbat la {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:811 +#: ../java/src/org/klomp/snark/SnarkManager.java:830 #, java-format msgid "Refresh time changed to {0}" msgstr "Actualizarea timpului schimbat la {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:813 +#: ../java/src/org/klomp/snark/SnarkManager.java:832 msgid "Refresh disabled" msgstr "Refresh dezactivat" -#: ../java/src/org/klomp/snark/SnarkManager.java:829 +#: ../java/src/org/klomp/snark/SnarkManager.java:848 #, java-format msgid "Page size changed to {0}" msgstr "Schimbat dimensiunea paginii la {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:838 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:956 +#: ../java/src/org/klomp/snark/SnarkManager.java:857 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:958 msgid "Data directory must be an absolute path" msgstr "Dosarul de data de lucru trebuie să fie o cale absolută" -#: ../java/src/org/klomp/snark/SnarkManager.java:840 +#: ../java/src/org/klomp/snark/SnarkManager.java:859 msgid "Data directory does not exist" msgstr "Dosarul de date nu există" -#: ../java/src/org/klomp/snark/SnarkManager.java:842 +#: ../java/src/org/klomp/snark/SnarkManager.java:861 msgid "Not a directory" msgstr "Nu e un dosar" -#: ../java/src/org/klomp/snark/SnarkManager.java:844 +#: ../java/src/org/klomp/snark/SnarkManager.java:863 msgid "Unreadable" msgstr "necitibil" -#: ../java/src/org/klomp/snark/SnarkManager.java:849 +#: ../java/src/org/klomp/snark/SnarkManager.java:868 #, java-format msgid "Data directory changed to {0}" msgstr "Dosarul de date s-a schimbat la {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:904 +#: ../java/src/org/klomp/snark/SnarkManager.java:923 msgid "I2CP and tunnel changes will take effect after stopping all torrents" msgstr "I2CP È™i tunel modificările vor intra în vigoare după oprirea tuturor torrentele" -#: ../java/src/org/klomp/snark/SnarkManager.java:908 +#: ../java/src/org/klomp/snark/SnarkManager.java:927 #, java-format msgid "I2CP options changed to {0}" msgstr "OpÈ›iuni I2CP schimbat la {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:914 +#: ../java/src/org/klomp/snark/SnarkManager.java:933 msgid "Disconnecting old I2CP destination" msgstr "Deconectarea destinaÈ›iei vechi I2CP" -#: ../java/src/org/klomp/snark/SnarkManager.java:916 +#: ../java/src/org/klomp/snark/SnarkManager.java:935 #, java-format msgid "I2CP settings changed to {0}" msgstr "OpÈ›iuni I2CP schimbat la {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:921 +#: ../java/src/org/klomp/snark/SnarkManager.java:940 msgid "" "Unable to connect with the new settings, reverting to the old I2CP settings" msgstr "Imposibil de a se conecta cu noile setări, revenirea la vechile setări I2CP" -#: ../java/src/org/klomp/snark/SnarkManager.java:925 +#: ../java/src/org/klomp/snark/SnarkManager.java:944 msgid "Unable to reconnect with the old settings!" msgstr "Nu pot să se reconectez cu setările vechi!" -#: ../java/src/org/klomp/snark/SnarkManager.java:927 +#: ../java/src/org/klomp/snark/SnarkManager.java:946 msgid "Reconnected on the new I2CP destination" msgstr "Reconectat la destinaÈ›ie noua I2CP" -#: ../java/src/org/klomp/snark/SnarkManager.java:934 +#: ../java/src/org/klomp/snark/SnarkManager.java:953 #, java-format msgid "I2CP listener restarted for \"{0}\"" msgstr "I2CP ascultător repornit pentru \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:948 +#: ../java/src/org/klomp/snark/SnarkManager.java:967 msgid "New files will be publicly readable" msgstr "FiÈ™iere noi vor putea fi citite public" -#: ../java/src/org/klomp/snark/SnarkManager.java:950 +#: ../java/src/org/klomp/snark/SnarkManager.java:969 msgid "New files will not be publicly readable" msgstr "FiÈ™iere noi nu vor putea fi citite public" -#: ../java/src/org/klomp/snark/SnarkManager.java:957 +#: ../java/src/org/klomp/snark/SnarkManager.java:976 msgid "Enabled autostart" msgstr "Activeaza autopornirea" -#: ../java/src/org/klomp/snark/SnarkManager.java:959 +#: ../java/src/org/klomp/snark/SnarkManager.java:978 msgid "Disabled autostart" msgstr "Dezactivează autopornirea" -#: ../java/src/org/klomp/snark/SnarkManager.java:965 +#: ../java/src/org/klomp/snark/SnarkManager.java:985 +msgid "Enabled smart sort" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:987 +msgid "Disabled smart sort" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:994 msgid "Enabled open trackers - torrent restart required to take effect." msgstr "Trackere deschise activat - repornirea torrentui este necesara să aibă efect." -#: ../java/src/org/klomp/snark/SnarkManager.java:967 +#: ../java/src/org/klomp/snark/SnarkManager.java:996 msgid "Disabled open trackers - torrent restart required to take effect." msgstr "Trackere deschise dezactivat - repornirea torrentui este necesara să aibă efect." -#: ../java/src/org/klomp/snark/SnarkManager.java:974 +#: ../java/src/org/klomp/snark/SnarkManager.java:1003 msgid "Enabled DHT." msgstr "DHT activat." -#: ../java/src/org/klomp/snark/SnarkManager.java:976 +#: ../java/src/org/klomp/snark/SnarkManager.java:1005 msgid "Disabled DHT." msgstr "DHT dezactivat." -#: ../java/src/org/klomp/snark/SnarkManager.java:978 +#: ../java/src/org/klomp/snark/SnarkManager.java:1007 msgid "DHT change requires tunnel shutdown and reopen" msgstr "Schimbare DHT necesită oprirea tunel È™i redeschiderea lui" -#: ../java/src/org/klomp/snark/SnarkManager.java:985 +#: ../java/src/org/klomp/snark/SnarkManager.java:1014 #, java-format msgid "{0} theme loaded, return to main i2psnark page to view." msgstr "{0} temă încărcata, a reveni la pagina principală i2psnark pentru a vizualiza." -#: ../java/src/org/klomp/snark/SnarkManager.java:995 +#: ../java/src/org/klomp/snark/SnarkManager.java:1024 msgid "Configuration unchanged." msgstr "ConfiguraÅ£ia neschimbată" -#: ../java/src/org/klomp/snark/SnarkManager.java:1027 +#: ../java/src/org/klomp/snark/SnarkManager.java:1056 msgid "Open Tracker list changed - torrent restart required to take effect." msgstr "Trackere deschise schimbat - repornirea torrentui este necesara să aibă efect." -#: ../java/src/org/klomp/snark/SnarkManager.java:1037 +#: ../java/src/org/klomp/snark/SnarkManager.java:1066 msgid "Private tracker list changed - affects newly created torrents only." msgstr "Lista trackerilor private schimbat - afectează doar nou-create torrente." -#: ../java/src/org/klomp/snark/SnarkManager.java:1083 +#: ../java/src/org/klomp/snark/SnarkManager.java:1112 #, java-format msgid "Unable to save the config to {0}" msgstr "Imposibil de a salva configurarea {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1164 +#: ../java/src/org/klomp/snark/SnarkManager.java:1193 msgid "Connecting to I2P" msgstr "Conectarea la I2P" -#: ../java/src/org/klomp/snark/SnarkManager.java:1167 +#: ../java/src/org/klomp/snark/SnarkManager.java:1196 msgid "Error connecting to I2P - check your I2CP settings!" msgstr "Eroare la conectarea la I2P - verificaÈ›i setările I2CP!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1176 -#: ../java/src/org/klomp/snark/SnarkManager.java:2133 +#: ../java/src/org/klomp/snark/SnarkManager.java:1205 +#: ../java/src/org/klomp/snark/SnarkManager.java:2270 #, java-format msgid "Error: Could not add the torrent {0}" msgstr "Eroare: Nu sa putut adăuga torentul {0}" #. catch this here so we don't try do delete it below -#: ../java/src/org/klomp/snark/SnarkManager.java:1199 +#: ../java/src/org/klomp/snark/SnarkManager.java:1228 #, java-format msgid "Cannot open \"{0}\"" msgstr "Nu se poate deschide \"{0}\"." #. TODO - if the existing one is a magnet, delete it and add the metainfo #. instead? -#: ../java/src/org/klomp/snark/SnarkManager.java:1218 -#: ../java/src/org/klomp/snark/SnarkManager.java:1352 -#: ../java/src/org/klomp/snark/SnarkManager.java:1440 +#: ../java/src/org/klomp/snark/SnarkManager.java:1247 +#: ../java/src/org/klomp/snark/SnarkManager.java:1388 +#: ../java/src/org/klomp/snark/SnarkManager.java:1476 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:166 #, java-format msgid "Torrent with this info hash is already running: {0}" msgstr "Torrent cu aceste informaÈ›ii hash este deja pornit: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1224 +#: ../java/src/org/klomp/snark/SnarkManager.java:1253 #, java-format msgid "ERROR - No I2P trackers in private torrent \"{0}\"" msgstr "EROARE - Nu sunt trackere I2P in torrent privat \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:1226 +#: ../java/src/org/klomp/snark/SnarkManager.java:1255 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", will announce to I2P open trackers and" " DHT only." msgstr "Avertisment - Nu sunt trackere I2P în \"{0}\", va anunÈ›a numai la I2P trackers deschise È™i DHT ." -#: ../java/src/org/klomp/snark/SnarkManager.java:1229 +#: ../java/src/org/klomp/snark/SnarkManager.java:1258 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and open trackers are disabled, will " "announce to DHT only." msgstr "Avertisment - Nu sunt trackere I2P în \"{0}\", È™i trackere deschise sunt dezactivate, se va anunÈ›a numai prin DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:1231 +#: ../java/src/org/klomp/snark/SnarkManager.java:1260 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and DHT and open trackers are " @@ -248,34 +258,46 @@ msgid "" "torrent." msgstr "Avertisment - Nu sunt trackere I2P în \"{0}\", È™i DHT È™i trackere deschise sunt dezactivate, ar trebui să permiteti trackere deschise sau DHT înainte de a începe torrent." -#: ../java/src/org/klomp/snark/SnarkManager.java:1257 +#: ../java/src/org/klomp/snark/SnarkManager.java:1286 #, java-format msgid "Torrent in \"{0}\" is invalid" msgstr "Torrent în \"{0}\" este incorect" -#: ../java/src/org/klomp/snark/SnarkManager.java:1264 +#: ../java/src/org/klomp/snark/SnarkManager.java:1292 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1042 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1069 +#, java-format +msgid "Torrent file deleted: {0}" +msgstr "FiÈ™ier torrent È™ters: {0}" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1295 +#, java-format +msgid "Torrent file moved from {0} to {1}" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1299 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:193 #, java-format msgid "ERROR - Out of memory, cannot create torrent from {0}" msgstr "EROARE - Out de memorie, nu se pot crea torrent din {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1285 +#: ../java/src/org/klomp/snark/SnarkManager.java:1321 #, java-format -msgid "Torrent added and started: \"{0}\"" -msgstr "Torrent adăugat È™i pornit: \"{0}\"" +msgid "Torrent added and started: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1287 +#: ../java/src/org/klomp/snark/SnarkManager.java:1323 #, java-format -msgid "Torrent added: \"{0}\"" -msgstr "Torrent adăugat: \"{0}\"" +msgid "Torrent added: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1363 +#: ../java/src/org/klomp/snark/SnarkManager.java:1399 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:93 #, java-format msgid "Fetching {0}" msgstr "Preluarea {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1369 +#: ../java/src/org/klomp/snark/SnarkManager.java:1405 #, java-format msgid "" "Open trackers are disabled and we have no DHT peers. Fetch of {0} may not " @@ -283,131 +305,146 @@ msgid "" "DHT." msgstr "Trackere deschise sunt dezactivate È™i nu avem colegii DHT. Descarcarea din{0} nu poate reuÈ™i până când veÈ›i începe un alt torrent, permite trackere deschise, sau permite DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:1373 +#: ../java/src/org/klomp/snark/SnarkManager.java:1409 #, java-format msgid "Adding {0}" msgstr "Adăugarea {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1406 +#: ../java/src/org/klomp/snark/SnarkManager.java:1442 #, java-format msgid "Download already running: {0}" msgstr "Descarcarea deja rulează: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1451 -#: ../java/src/org/klomp/snark/SnarkManager.java:1477 -#: ../java/src/org/klomp/snark/SnarkManager.java:2052 +#: ../java/src/org/klomp/snark/SnarkManager.java:1487 +#: ../java/src/org/klomp/snark/SnarkManager.java:1513 +#: ../java/src/org/klomp/snark/SnarkManager.java:2151 #, java-format msgid "Failed to copy torrent file to {0}" msgstr " Copierea fisieurului torent in {0} a esuat" -#: ../java/src/org/klomp/snark/SnarkManager.java:1828 +#: ../java/src/org/klomp/snark/SnarkManager.java:1927 #, java-format -msgid "Too many files in \"{0}\" ({1}), deleting it!" -msgstr "Prea multe fiÈ™iere în \"{0}\" ({1}), È™tergeti-le!" +msgid "Too many files in \"{0}\" ({1})!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1830 +#: ../java/src/org/klomp/snark/SnarkManager.java:1929 #, java-format -msgid "Torrent file \"{0}\" cannot end in \".torrent\", deleting it!" -msgstr "Torrent \"{0}\" nu se poate termina cu \". Torrent\", È™tergeti!" +msgid "Torrent file \"{0}\" cannot end in \".torrent\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1832 +#: ../java/src/org/klomp/snark/SnarkManager.java:1931 #, java-format -msgid "No pieces in \"{0}\", deleting it!" -msgstr "Nu sunt piese din \"{0}\", È™tergeti!" +msgid "No pieces in \"{0}\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1834 +#: ../java/src/org/klomp/snark/SnarkManager.java:1933 #, java-format -msgid "Too many pieces in \"{0}\", limit is {1}, deleting it!" -msgstr "Prea multe piese în \"{0}\", limita este de {1}, È™tergeti!" +msgid "Too many pieces in \"{0}\", limit is {1}!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1836 +#: ../java/src/org/klomp/snark/SnarkManager.java:1935 #, java-format -msgid "Pieces are too large in \"{0}\" ({1}B), deleting it." -msgstr "Piese sunt prea mari în \"{0}\" ({1} B), È™tergeti." +msgid "Pieces are too large in \"{0}\" ({1}B)!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1837 +#: ../java/src/org/klomp/snark/SnarkManager.java:1936 #, java-format msgid "Limit is {0}B" msgstr "Limita este de {0} B" -#: ../java/src/org/klomp/snark/SnarkManager.java:1839 +#: ../java/src/org/klomp/snark/SnarkManager.java:1938 #, java-format -msgid "Torrent \"{0}\" has no data, deleting it!" -msgstr "Torrent \"{0}\" nu dispune de date, È™terge-o!" +msgid "Torrent \"{0}\" has no data!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1847 +#: ../java/src/org/klomp/snark/SnarkManager.java:1946 #, java-format -msgid "Torrents larger than {0}B are not supported yet, deleting \"{1}\"" -msgstr "Torrents mai mari de {0} B nu sunt acceptate încă, È™tergerea \"{1}\"Torrents mai mari de {0} B nu sunt acceptate încă, È™tergerea \"{1}\"" +msgid "Torrents larger than {0}B are not supported yet \"{1}\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1864 +#: ../java/src/org/klomp/snark/SnarkManager.java:1963 #, java-format msgid "Error: Could not remove the torrent {0}" msgstr "Eroare: Nu am putut È™terge torentul {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1887 -#: ../java/src/org/klomp/snark/SnarkManager.java:1906 +#: ../java/src/org/klomp/snark/SnarkManager.java:1986 +#: ../java/src/org/klomp/snark/SnarkManager.java:2005 #, java-format -msgid "Torrent stopped: \"{0}\"" -msgstr "Torrent oprit: \"{0}\"" +msgid "Torrent stopped: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1926 +#: ../java/src/org/klomp/snark/SnarkManager.java:2025 #, java-format msgid "Torrent removed: \"{0}\"" msgstr "Torrent sters: \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:1934 +#: ../java/src/org/klomp/snark/SnarkManager.java:2033 #, java-format msgid "Adding torrents in {0}" msgstr "Adăugarea torrente în {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1966 +#: ../java/src/org/klomp/snark/SnarkManager.java:2067 #, java-format msgid "Up bandwidth limit is {0} KBps" msgstr "Limita de lățime de bandă la incarcarea este {0} Kbps" -#: ../java/src/org/klomp/snark/SnarkManager.java:1993 +#: ../java/src/org/klomp/snark/SnarkManager.java:2092 #, java-format msgid "Download finished: {0}" msgstr "Descarcare finisata: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2048 +#: ../java/src/org/klomp/snark/SnarkManager.java:2147 #, java-format msgid "Metainfo received for {0}" msgstr "Metainfo primit pentru {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2049 -#: ../java/src/org/klomp/snark/SnarkManager.java:2280 +#: ../java/src/org/klomp/snark/SnarkManager.java:2148 +#: ../java/src/org/klomp/snark/SnarkManager.java:2431 #, java-format msgid "Starting up torrent {0}" msgstr "Pornirea torrent {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2064 +#: ../java/src/org/klomp/snark/SnarkManager.java:2163 #, java-format msgid "Error on torrent {0}" msgstr "Eroare pe torrent {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2127 +#: ../java/src/org/klomp/snark/SnarkManager.java:2264 msgid "Unable to connect to I2P!" msgstr "Nu se poate stabili o conexiune la I2P" -#: ../java/src/org/klomp/snark/SnarkManager.java:2279 +#: ../java/src/org/klomp/snark/SnarkManager.java:2430 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:130 msgid "Opening the I2P tunnel" msgstr "Deschiderea tunelului I2P" -#: ../java/src/org/klomp/snark/SnarkManager.java:2303 +#: ../java/src/org/klomp/snark/SnarkManager.java:2450 msgid "Opening the I2P tunnel and starting all torrents." msgstr "Deschiderea tunelului I2P È™i pornirea tuturor torrentelor." -#: ../java/src/org/klomp/snark/SnarkManager.java:2366 +#: ../java/src/org/klomp/snark/SnarkManager.java:2513 msgid "Stopping all torrents and closing the I2P tunnel." msgstr "Oprirea tuturor torrentelor È™i inchiderea tunelului I2P" -#: ../java/src/org/klomp/snark/SnarkManager.java:2385 +#: ../java/src/org/klomp/snark/SnarkManager.java:2532 msgid "Closing I2P tunnel after notifying trackers." msgstr "ÃŽnchiderea tunelului I2P după notificarea trackere." +#: ../java/src/org/klomp/snark/SnarkManager.java:2594 +#, java-format +msgid "Finished recheck of torrent {0}, now {1} complete" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2596 +#, java-format +msgid "Finished recheck of torrent {0}, unchanged" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2600 +#, java-format +msgid "Error checking the torrent {0}" +msgstr "" + #: ../java/src/org/klomp/snark/TrackerClient.java:245 #, java-format msgid "No valid trackers for {0} - enable opentrackers or DHT?" @@ -453,178 +490,178 @@ msgstr "Torrent deja în coada de aÈ™teptare: {0}" msgid "Torrent at {0} was not valid" msgstr "Torrent la {0} nu a fost valid" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:268 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:311 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:322 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1763 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2662 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:270 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:313 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:324 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1778 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2698 msgid "I2PSnark" msgstr "I2PSnark" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:273 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2149 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2422 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2165 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2446 msgid "Configuration" msgstr "ConfiguraÈ›ie" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:277 msgid "Anonymous BitTorrent Client" msgstr "Client Bittorrent anonim" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:291 msgid "Router is down" msgstr "Router-ul este deactivat" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:306 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:308 msgid "Torrents" msgstr "Torente" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:319 msgid "Refresh page" msgstr "refresh pagina" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:326 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:328 msgid "Forum" msgstr "Forum" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:341 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:343 msgid "Click \"Add torrent\" button to fetch torrent" msgstr "FaceÈ›i clic pe \"Adauga torrent\" pentru a aduce torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:394 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:396 msgid "clear messages" msgstr "stergerea mesajelor" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:449 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2980 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3072 msgid "Status" msgstr "Stare" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2994 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:453 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3086 #, java-format msgid "Sort by {0}" msgstr "Sortează după {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:462 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:464 msgid "Hide Peers" msgstr "Ascunde utilizatori" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:468 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:470 msgid "Show Peers" msgstr "Arată utilizatori" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:491 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2648 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2718 msgid "Torrent" msgstr "Torent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "File type" msgstr "Tip fiÈ™ier" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:509 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 msgid "ETA" msgstr "eta" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:512 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:514 msgid "Estimated time remaining" msgstr "Estimare timp rămas" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:535 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 msgid "RX" msgstr "RX" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:538 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:540 msgid "Downloaded" msgstr "Descărcat" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2818 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2968 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2878 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3060 msgid "Size" msgstr "Dimensiune" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 msgid "TX" msgstr "TX" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2896 msgid "Upload ratio" msgstr "Rată de încărcare" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:569 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:571 msgid "Uploaded" msgstr "ÃŽncărcat" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:581 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 msgid "RX Rate" msgstr "RX Rate" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:584 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:586 msgid "Down Rate" msgstr "Rata de descarcare " #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:596 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 msgid "TX Rate" msgstr "TX Rate" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:599 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:601 msgid "Up Rate" msgstr "Rata de incarcare " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:615 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 msgid "Stop all torrents and the I2P tunnel" msgstr "Opreste toate torrentele È™i tunelul I2P" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:619 msgid "Stop All" msgstr "OpreÈ™te toate" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:629 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 msgid "Start all stopped torrents" msgstr "ÃŽncepeÈ›i toate torrentele oprite" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:633 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:647 msgid "Start All" msgstr "PorneÈ™te toate" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:643 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 msgid "Start all torrents and the I2P tunnel" msgstr "Porneste toate torrentele È™i tunelul I2P" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:668 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:670 msgid "No torrents loaded." msgstr "Niciun torent încărcat." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:674 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 msgid "Totals" msgstr "Totaluri" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:678 #, java-format msgid "1 torrent" msgid_plural "{0} torrents" @@ -632,7 +669,7 @@ msgstr[0] "1 torrent" msgstr[1] "{0} torrente" msgstr[2] "{0} torrentу" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:683 #, java-format msgid "1 connected peer" msgid_plural "{0} connected peers" @@ -640,7 +677,7 @@ msgstr[0] "{0} utilizator conectat " msgstr[1] "{0} utilizatori conectati" msgstr[2] "{0} utilizatori conectati" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:688 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:690 #, java-format msgid "1 DHT peer" msgid_plural "{0} DHT peers" @@ -648,207 +685,202 @@ msgstr[0] "1 partener DHT" msgstr[1] "{0} parteneri DHT" msgstr[2] "{0} parteneri DHT" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:695 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:697 msgid "Dest" msgstr "Dest" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First" msgstr "Primul" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First page" msgstr "P&rima pagină" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Prev" msgstr "Prev" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Previous page" msgstr "Pagina anterioară" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next" msgstr "Următorul" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next page" msgstr "Pagina următoare" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last" msgstr "Ultimul" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last page" msgstr "Ultima pagină" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:960 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:962 msgid "Data directory cannot be created" msgstr "Directorul de date nu poate fi creat" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1176 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:972 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1185 #, java-format msgid "Cannot add torrent {0} inside another torrent: {1}" msgstr "Nu se poate adăuga torrentul {0} în interiorul altui torrent: {1}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:985 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:993 #, java-format msgid "Invalid URL: Must start with \"http://\", \"{0}\", or \"{1}\"" msgstr "URL incorect: trebuie să înceapă cu \"http://\", \"{0}\", sau \"{1}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1026 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1063 #, java-format msgid "Magnet deleted: {0}" msgstr "Magnet sters: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1061 #, java-format -msgid "Torrent file deleted: {0}" -msgstr "FiÈ™ier torrent È™ters: {0}" - -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1053 -#, java-format msgid "Download deleted: {0}" msgstr "Descarcă È™terse: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1070 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1078 #, java-format msgid "Data file deleted: {0}" msgstr "FiÈ™ier data È™ters: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1072 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1089 #, java-format msgid "Data file could not be deleted: {0}" msgstr "FiÈ™ier de date nu a putut fi È™ters: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1097 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1105 #, java-format msgid "Directory could not be deleted: {0}" msgstr "Dosarul nu a putut fi sters {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1112 #, java-format msgid "Directory deleted: {0}" msgstr "Directorii È™terse: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1155 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1164 #, java-format msgid "Cannot add a torrent ending in \".torrent\": {0}" msgstr "Nu se poate adăuga un torrent terminat în \".torrent\": {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1160 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1169 #, java-format msgid "Torrent with this name is already running: {0}" msgstr "Torrentul cu acest nume deja rulează: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1175 #, java-format msgid "Cannot add a torrent including an I2P directory: {0}" msgstr "Nu se poate adăuga un torent ce include un director I2P: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1181 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1190 #, java-format msgid "Cannot add torrent {0} including another torrent: {1}" msgstr "Nu se poate adăuga torrent {0} ce include un alt torrent: {1}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1216 msgid "Error - Cannot include alternate trackers without a primary tracker" msgstr "Eroare - Nu pot conÈ›ine trackere alternative fără un tracker primar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1220 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1229 msgid "Error - Cannot mix private and public trackers in a torrent" msgstr "Eroare - Nu se poate amesteca trackere publice È™i private într-un torent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1251 #, java-format msgid "Torrent created for \"{0}\"" msgstr "Torrent creat pentru \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1244 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 #, java-format msgid "" "Many I2P trackers require you to register new torrents before seeding - " "please do so before starting \"{0}\"" msgstr "Multe trackere I2P cer să vă înregistraÈ›i torrentele noi înainte de seedat - vă rugăm să faceÈ›i acest lucru înainte de a începe \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1255 #, java-format msgid "Error creating a torrent for \"{0}\"" msgstr "Eroare la crearea unui torrent pentru \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1250 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1259 #, java-format msgid "Cannot create a torrent for the nonexistent data: {0}" msgstr "Nu se poate crea un torrent pentru datele inexistente: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1262 msgid "Error creating torrent - you must enter a file or directory" msgstr "Eroare la crearea torrent - trebuie să introduceÈ›i un fiÈ™ier sau director" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2406 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2430 msgid "Delete selected" msgstr "Șterge pe cel ales" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2408 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2432 msgid "Save tracker configuration" msgstr "SalvaÈ›i configuraÈ›ia tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1301 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1310 msgid "Removed" msgstr "Șters" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1333 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2405 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2407 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1342 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2429 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2431 msgid "Add tracker" msgstr "Adaugă tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1356 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1359 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1365 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1368 msgid "Enter valid tracker name and URLs" msgstr "IntroduceÈ›i numele tracker valid È™i URL-uri" #. "<input type=\"reset\" class=\"cancel\" #. value=\"").append(_t("Cancel")).append("\">\n" + -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1361 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2410 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1370 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2434 msgid "Restore defaults" msgstr "RestabileÅŸte implicitele" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1373 msgid "Restored default trackers" msgstr "Trackers implicite restaurate" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1472 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1473 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1485 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1486 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2949 msgid "Checking" msgstr "Se verifică" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1475 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1476 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1489 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2956 msgid "Allocating" msgstr "Alocare" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1499 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1505 msgid "Tracker Error" msgstr "Eroare tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1492 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1522 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1527 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1538 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1543 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1554 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1507 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1537 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1542 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1553 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1558 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1569 #, java-format msgid "1 peer" msgid_plural "{0} peers" @@ -856,366 +888,377 @@ msgstr[0] "1 partener" msgstr[1] "{0} parteneri" msgstr[2] "{0} parteneri" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1502 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1503 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1517 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1518 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2954 msgid "Starting" msgstr "ÃŽncepere" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1511 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1526 msgid "Seeding" msgstr "ÃŽncărcare" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1515 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1529 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1530 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2831 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1544 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2891 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3139 msgid "Complete" msgstr "Complet" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1534 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1535 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1540 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1541 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1550 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1555 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 msgid "OK" msgstr "OK" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1546 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1551 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1552 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1567 msgid "Stalled" msgstr "ÃŽntrerupt" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1557 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1571 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1572 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1575 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1576 msgid "No Peers" msgstr "Nu sunt utilizatori" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1563 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1578 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1579 msgid "Stopped" msgstr "Oprit" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1593 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1608 msgid "Torrent details" msgstr "Detalii torent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1628 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1643 msgid "View files" msgstr "Vizualizare fiÈ™ierilor" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1630 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1645 msgid "Open file" msgstr "Deschide fiÈ™ier" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1682 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 msgid "Stop the torrent" msgstr "OpreÈ™te torentul" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2961 msgid "Stop" msgstr "Stop" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 msgid "Start the torrent" msgstr "PorneÈ™te torentul" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1714 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2963 msgid "Start" msgstr "Start" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1727 msgid "Remove the torrent from the active list, deleting the .torrent file" msgstr "ScoateÈ›i torrent din lista torentelor activi, È™tergem fiÈ™ierul torrent." #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1717 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1732 #, java-format msgid "" "Are you sure you want to delete the file \\''{0}\\'' (downloaded data will " "not be deleted) ?" msgstr "Sigur doriÈ›i să È™tergeÈ›i dosarul \\'' {0} \\'' (datele descărcate nu vor fi È™terse)?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1721 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1736 msgid "Remove" msgstr "Șterge" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1734 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1749 msgid "Delete the .torrent file and the associated data file(s)" msgstr "ȘtergeÈ›i fiÈ™ierul torrent. Și fiÈ™ier(e) de date asociat(e)" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1739 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1754 #, java-format msgid "" "Are you sure you want to delete the torrent \\''{0}\\'' and all downloaded " "data?" msgstr "Sigur doriÈ›i să È™tergeÈ›i torrent \\'' {0} \\'' È™i toate datele descărcate?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1743 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1758 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2388 msgid "Delete" msgstr "Șterge" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1779 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1794 msgid "Unknown" msgstr "Necunoscut" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1791 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1806 msgid "Seed" msgstr "Seed" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1814 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1829 msgid "Uninteresting (The peer has no pieces we need)" msgstr "Neinteresante (partener nu are piese de care avem nevoie)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1816 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1831 msgid "Choked (The peer is not allowing us to request pieces)" msgstr "ÃŽnecat (partener nu ne permite să solicitam bucăți)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1851 msgid "Uninterested (We have no pieces the peer needs)" msgstr "Neinteresat (Nu avem piese de care are nevoie partener)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1838 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1853 msgid "Choking (We are not allowing the peer to request pieces)" msgstr "partenerSufocare (Noi nu permitem partenerului solicitarea bucăților)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1954 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1969 #, java-format msgid "Details at {0} tracker" msgstr "Detalii la tracker {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1971 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1986 msgid "Info" msgstr "Info" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 msgid "Add Torrent" msgstr "Adaugă torent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 msgid "From URL" msgstr "Din URL" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2050 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2065 msgid "" "Enter the torrent file download URL (I2P only), magnet link, maggot link, or" " info hash" msgstr "IntroduceÈ›i URL-ul de descarcare fiÈ™ierilor torrent (I2P numai), link-ul magnet, maggot-link, sau info hash" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2070 msgid "Add torrent" msgstr "Adaugă torent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2074 msgid "Data dir" msgstr "Dir date" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2077 #, java-format msgid "Enter the directory to save the data in (default {0})" msgstr "Introdu directorul în care să se salveze datele (default {0})" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2066 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 #, java-format msgid "You can also copy .torrent files to: {0}." msgstr "De asemenea, puteÈ›i copia fiÈ™iere torrent la: {0}." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2068 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2083 msgid "Removing a .torrent will cause it to stop." msgstr "Stergerea .torrent va face ca acesta să se oprească." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2096 msgid "Create Torrent" msgstr "Creează un torent" #. out.write("From file: <input type=\"file\" name=\"newFile\" size=\"50\" #. value=\"" + newFile + "\" /><br>\n"); -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2084 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2099 msgid "Data to seed" msgstr "Date pentru seedare" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2088 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2103 #, java-format msgid "File or directory to seed (full path or within the directory {0} )" msgstr "FiÈ™ier sau director de seedare (calea completă sau în director {0} )" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2091 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2337 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2106 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2361 msgid "Trackers" msgstr "Trackere" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2093 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2108 msgid "Primary" msgstr "Primar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2095 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2110 msgid "Alternates" msgstr "Alternativă" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2098 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2113 msgid "Create torrent" msgstr "Creează un torent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2116 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2131 msgid "none" msgstr "nici unul" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2153 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2169 msgid "Data directory" msgstr "Dosar cu date" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2158 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 msgid "Files readable by all" msgstr "FiÈ™iere lizibile de către toÈ›i" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2162 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2178 msgid "If checked, other users may access the downloaded files" msgstr "Dacă este bifată, utilizatorii pot accesa fiÈ™ierele descărcate" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2182 msgid "Auto start torrents" msgstr "PorneÈ™te automat torrente" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2170 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2186 msgid "If checked, automatically start torrents that are added" msgstr "Dacă este bifată, începe automat torrentele care sunt adăugate" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2190 +msgid "Smart torrent sorting" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2194 +msgid "If checked, ignore words such as 'the' when sorting" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2198 msgid "Theme" msgstr "Teme" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2188 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2212 msgid "Refresh time" msgstr "Timp de reîmprospătare" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2201 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2225 msgid "Never" msgstr "Niciodată" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2231 msgid "Startup delay" msgstr "întârziere de pornire" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2209 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2233 msgid "minutes" msgstr "minute" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2213 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2237 msgid "Page size" msgstr "Mărimea paginii" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2215 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 msgid "torrents" msgstr "Torente" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 msgid "Total uploader limit" msgstr "Limită totală de încărcare" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2266 msgid "peers" msgstr "Parteneri" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2270 msgid "Up bandwidth limit" msgstr "limita de incarcare de lățime de bandă" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2249 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2273 msgid "Half available bandwidth recommended." msgstr "Jumătate lățime de bandă disponibilă este recomandat." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2251 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2275 msgid "View or change router bandwidth" msgstr "Vizualizeaza sau modifica lățime de bandă router" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2255 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2279 msgid "Use open trackers also" msgstr "UtilizaÈ›i trackere deschise, de asemenea," -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2259 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 msgid "" "If checked, announce torrents to open trackers as well as the tracker listed" " in the torrent file" msgstr "Dacă este bifată, anunta torrente pentru a urmări trackere deschise , precum È™i trackere listate în fiÈ™ierul torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2287 msgid "Enable DHT" msgstr "Activează DHT" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2267 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2291 msgid "If checked, use DHT" msgstr "Dacă este bifată, utilizaÈ›i DHT" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2307 msgid "Inbound Settings" msgstr "Setări de intrare" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2313 msgid "Outbound Settings" msgstr "Setări de ieÈ™ire" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2297 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2321 msgid "I2CP host" msgstr "Portul I2CP" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2302 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2326 msgid "I2CP port" msgstr "Portul I2CP" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2341 msgid "I2CP options" msgstr "OpÈ›iuni I2CP" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2322 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 msgid "Save configuration" msgstr "Salvare configurări" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2342 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2366 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "Name" msgstr "Nume" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2344 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2368 msgid "Website URL" msgstr "URL website" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2370 msgid "Standard" msgstr "Standard" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2348 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2372 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3172 msgid "Open" msgstr "Deschis" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2350 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2374 msgid "Private" msgstr "Privat" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2352 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2376 msgid "Announce URL" msgstr "URL de anuntare" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2396 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2420 msgid "Add" msgstr "Adaugă" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2439 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2463 #, java-format msgid "Invalid magnet URL {0}" msgstr "URL-ul magnet invalid {0}" #. * dummies for translation -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2447 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2471 #, java-format msgid "1 hop" msgid_plural "{0} hops" @@ -1223,7 +1266,7 @@ msgstr[0] "1 hop" msgstr[1] "{0} hop-uri" msgstr[2] "{0} hop-uri" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2448 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2472 #, java-format msgid "1 tunnel" msgid_plural "{0} tunnels" @@ -1231,119 +1274,135 @@ msgstr[0] "1 tunel" msgstr[1] "{0} tunele" msgstr[2] "{0} tunele" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2691 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2728 msgid "Torrent file" msgstr "FiÈ™ier torent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 msgid "Data location" msgstr "LocaÅ£ie date" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2708 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2745 msgid "Info hash" msgstr "InformaÈ›ie index" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2727 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2764 msgid "Primary Tracker" msgstr "Tracker primar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2773 msgid "Tracker List" msgstr "Lista Tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2761 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2798 msgid "Comment" msgstr "Comentariu" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2771 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2812 msgid "Created" msgstr "Creat" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2782 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2823 msgid "Created By" msgstr "Creat de" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2794 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2833 +msgid "Added" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2842 +msgid "Completed" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2854 msgid "Magnet link" msgstr "Legătură Magnet" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2807 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2867 msgid "Private torrent" msgstr "Torrent privat" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2827 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2887 msgid "Completion" msgstr "Completare" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2856 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2916 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 msgid "Remaining" msgstr "Rămas" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2926 msgid "Files" msgstr "FiÈ™iere" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2873 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 msgid "Pieces" msgstr "Piese:" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2879 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2939 msgid "Piece size" msgstr "Dimensiune piesei" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2952 +msgid "Refresh page for results" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2964 +msgid "Force Recheck" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3025 msgid "Directory" msgstr "Dosar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2992 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3084 msgid "Priority" msgstr "Prioritate" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3004 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3096 msgid "Up to higher level directory" msgstr "Spre dosarul de nivel superior" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3038 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3130 msgid "Torrent not found?" msgstr "Torrent nu a fost găsit?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3136 msgid "File not found in torrent?" msgstr "FiÈ™ierul nu a fost găsit în torrent?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3057 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3149 msgid "complete" msgstr "încheiat" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3058 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3150 msgid "remaining" msgstr "Rămas" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3196 msgid "High" msgstr "Ridicat" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3109 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3201 msgid "Normal" msgstr "Normal" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3114 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3206 msgid "Skip" msgstr "Omitere" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3124 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3216 msgid "Set all high" msgstr "Configurează toate ca înalte" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3126 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3218 msgid "Set all normal" msgstr "Configurează toate ca normal" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3128 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3220 msgid "Skip all" msgstr "Omite tot" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3129 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3221 msgid "Save priorities" msgstr "SalvaÈ›i priorități" diff --git a/apps/i2psnark/locale/messages_ru.po b/apps/i2psnark/locale/messages_ru.po index 92a8316792023fe865e3522f0479a17869498bc0..cafbe3c72556014af13a5989ddffe9b9fe725cc1 100644 --- a/apps/i2psnark/locale/messages_ru.po +++ b/apps/i2psnark/locale/messages_ru.po @@ -13,16 +13,17 @@ # mama__1 <inactive+mama__1@transifex.com>, 2013 # Foster Snowhill, 2013 # sr4d <sr4d@bitmessage.ch>, 2014 +# vertnis <vertnis@i2pmail.org>, 2015 # Foster Snowhill, 2013 -# yume, 2014 +# yume, 2014-2015 msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:09+0000\n" -"PO-Revision-Date: 2015-07-17 01:32+0000\n" -"Last-Translator: kytv <killyourtv@i2pmail.org>\n" -"Language-Team: Russian (Russia) (http://www.transifex.com/projects/p/I2P/language/ru_RU/)\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-14 16:31+0000\n" +"Last-Translator: vertnis <vertnis@i2pmail.org>\n" +"Language-Team: Russian (Russia) (http://www.transifex.com/otf/I2P/language/ru_RU/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -34,222 +35,230 @@ msgid "No more torrents running." msgstr "Ðет запущенных торрентов." #: ../java/src/org/klomp/snark/IdleChecker.java:76 -#: ../java/src/org/klomp/snark/SnarkManager.java:2392 -#: ../java/src/org/klomp/snark/SnarkManager.java:2403 +#: ../java/src/org/klomp/snark/SnarkManager.java:2539 +#: ../java/src/org/klomp/snark/SnarkManager.java:2550 msgid "I2P tunnel closed." msgstr "Соединение Ñ I2P закрыто." #: ../java/src/org/klomp/snark/MagnetURI.java:42 #: ../java/src/org/klomp/snark/MagnetURI.java:52 -#: ../java/src/org/klomp/snark/SnarkManager.java:2096 +#: ../java/src/org/klomp/snark/SnarkManager.java:2221 msgid "Magnet" msgstr "Magnet" -#: ../java/src/org/klomp/snark/SnarkManager.java:772 +#: ../java/src/org/klomp/snark/SnarkManager.java:791 #, java-format msgid "Total uploaders limit changed to {0}" msgstr "Ðовое значение лимита количеÑтва Ñлотов отдачи: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:774 +#: ../java/src/org/klomp/snark/SnarkManager.java:793 #, java-format msgid "Minimum total uploaders limit is {0}" msgstr "Минимально допуÑтимое значение Ð´Ð»Ñ ÐºÐ¾Ð»Ð¸Ñ‡ÐµÑтва Ñлотов: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:786 +#: ../java/src/org/klomp/snark/SnarkManager.java:805 #, java-format msgid "Up BW limit changed to {0}KBps" msgstr "Ðовое значение лимита ÑкороÑти отдачи: {0} КБ/Ñ" -#: ../java/src/org/klomp/snark/SnarkManager.java:788 +#: ../java/src/org/klomp/snark/SnarkManager.java:807 #, java-format msgid "Minimum up bandwidth limit is {0}KBps" msgstr "Минимально допуÑтимое значение Ð´Ð»Ñ Ð»Ð¸Ð¼Ð¸Ñ‚Ð° ÑкороÑти отдачи: {0} КБ/Ñ" -#: ../java/src/org/klomp/snark/SnarkManager.java:800 +#: ../java/src/org/klomp/snark/SnarkManager.java:819 #, java-format msgid "Startup delay changed to {0}" msgstr "Задержка запуÑка изменена на {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:811 +#: ../java/src/org/klomp/snark/SnarkManager.java:830 #, java-format msgid "Refresh time changed to {0}" msgstr "Ð’Ñ€ÐµÐ¼Ñ Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¾ на {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:813 +#: ../java/src/org/klomp/snark/SnarkManager.java:832 msgid "Refresh disabled" msgstr "Обновление отключено" -#: ../java/src/org/klomp/snark/SnarkManager.java:829 +#: ../java/src/org/klomp/snark/SnarkManager.java:848 #, java-format msgid "Page size changed to {0}" msgstr "Размер Ñтраницы изменён на {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:838 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:956 +#: ../java/src/org/klomp/snark/SnarkManager.java:857 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:958 msgid "Data directory must be an absolute path" msgstr "Ð”Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ Ð´Ð°Ð½Ð½Ñ‹Ñ… должна быть абÑолютным путём" -#: ../java/src/org/klomp/snark/SnarkManager.java:840 +#: ../java/src/org/klomp/snark/SnarkManager.java:859 msgid "Data directory does not exist" msgstr "Ð”Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ Ð´Ð°Ð½Ð½Ñ‹Ñ… не ÑущеÑтвует" -#: ../java/src/org/klomp/snark/SnarkManager.java:842 +#: ../java/src/org/klomp/snark/SnarkManager.java:861 msgid "Not a directory" msgstr "Ðе директориÑ" -#: ../java/src/org/klomp/snark/SnarkManager.java:844 +#: ../java/src/org/klomp/snark/SnarkManager.java:863 msgid "Unreadable" msgstr "Ðечитаемо" -#: ../java/src/org/klomp/snark/SnarkManager.java:849 +#: ../java/src/org/klomp/snark/SnarkManager.java:868 #, java-format msgid "Data directory changed to {0}" msgstr "Ð”Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ Ð´Ð°Ð½Ð½Ñ‹Ñ… изменена на {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:904 +#: ../java/src/org/klomp/snark/SnarkManager.java:923 msgid "I2CP and tunnel changes will take effect after stopping all torrents" msgstr "Ð˜Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð½Ð°Ñтроек I2CP и туннелей вÑтупÑÑ‚ в Ñилу поÑле оÑтановки вÑех торрентов." -#: ../java/src/org/klomp/snark/SnarkManager.java:908 +#: ../java/src/org/klomp/snark/SnarkManager.java:927 #, java-format msgid "I2CP options changed to {0}" msgstr "Параметры I2CP изменены на {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:914 +#: ../java/src/org/klomp/snark/SnarkManager.java:933 msgid "Disconnecting old I2CP destination" msgstr "Разрываем Ñтарое I2CP Ñоединение" -#: ../java/src/org/klomp/snark/SnarkManager.java:916 +#: ../java/src/org/klomp/snark/SnarkManager.java:935 #, java-format msgid "I2CP settings changed to {0}" msgstr "Ðовые параметры I2CP: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:921 +#: ../java/src/org/klomp/snark/SnarkManager.java:940 msgid "" "Unable to connect with the new settings, reverting to the old I2CP settings" msgstr "Ðе удалоÑÑŒ ÑоединитьÑÑ Ñ Ð¸Ñпользованием новых наÑтроек I2CP, возвращаемÑÑ Ðº Ñтарым наÑтройкам" -#: ../java/src/org/klomp/snark/SnarkManager.java:925 +#: ../java/src/org/klomp/snark/SnarkManager.java:944 msgid "Unable to reconnect with the old settings!" msgstr "Ðе удалоÑÑŒ переÑоединитьÑÑ Ñ Ð¸Ñпользованием Ñтарых наÑтроек I2CP!" -#: ../java/src/org/klomp/snark/SnarkManager.java:927 +#: ../java/src/org/klomp/snark/SnarkManager.java:946 msgid "Reconnected on the new I2CP destination" msgstr "ПереÑоединилиÑÑŒ по новому адреÑу I2CP" -#: ../java/src/org/klomp/snark/SnarkManager.java:934 +#: ../java/src/org/klomp/snark/SnarkManager.java:953 #, java-format msgid "I2CP listener restarted for \"{0}\"" msgstr "I2CP-приёмник перезапущен Ð´Ð»Ñ \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:948 +#: ../java/src/org/klomp/snark/SnarkManager.java:967 msgid "New files will be publicly readable" msgstr "Ðовые файлы будут доÑтупны на чтение публично" -#: ../java/src/org/klomp/snark/SnarkManager.java:950 +#: ../java/src/org/klomp/snark/SnarkManager.java:969 msgid "New files will not be publicly readable" msgstr "Ðовые файлы не будут доÑтупны на чтение публично" -#: ../java/src/org/klomp/snark/SnarkManager.java:957 +#: ../java/src/org/klomp/snark/SnarkManager.java:976 msgid "Enabled autostart" msgstr "ÐвтоÑтарт включен" -#: ../java/src/org/klomp/snark/SnarkManager.java:959 +#: ../java/src/org/klomp/snark/SnarkManager.java:978 msgid "Disabled autostart" msgstr "ÐвтоÑтарт выключен" -#: ../java/src/org/klomp/snark/SnarkManager.java:965 +#: ../java/src/org/klomp/snark/SnarkManager.java:985 +msgid "Enabled smart sort" +msgstr "Включена \"умнаÑ\" Ñортировка" + +#: ../java/src/org/klomp/snark/SnarkManager.java:987 +msgid "Disabled smart sort" +msgstr "Отключена \"умнаÑ\" Ñортировка" + +#: ../java/src/org/klomp/snark/SnarkManager.java:994 msgid "Enabled open trackers - torrent restart required to take effect." msgstr "Включено иÑпользование открытых трекеров. ТребуетÑÑ Ð¿ÐµÑ€ÐµÐ·Ð°Ð¿ÑƒÑк торрента, чтобы Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð²Ñтупили в Ñилу." -#: ../java/src/org/klomp/snark/SnarkManager.java:967 +#: ../java/src/org/klomp/snark/SnarkManager.java:996 msgid "Disabled open trackers - torrent restart required to take effect." msgstr "Отключено иÑпользование открытых трекеров. ТребуетÑÑ Ð¿ÐµÑ€ÐµÐ·Ð°Ð¿ÑƒÑк торрента, чтобы Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð²Ñтупили в Ñилу." -#: ../java/src/org/klomp/snark/SnarkManager.java:974 +#: ../java/src/org/klomp/snark/SnarkManager.java:1003 msgid "Enabled DHT." msgstr "DHT включено." -#: ../java/src/org/klomp/snark/SnarkManager.java:976 +#: ../java/src/org/klomp/snark/SnarkManager.java:1005 msgid "Disabled DHT." msgstr "DHT выключено." -#: ../java/src/org/klomp/snark/SnarkManager.java:978 +#: ../java/src/org/klomp/snark/SnarkManager.java:1007 msgid "DHT change requires tunnel shutdown and reopen" msgstr "Изменение DHT требует повторного Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚Ð¸Ñ Ñ‚ÑƒÐ½Ð½ÐµÐ»Ñ" -#: ../java/src/org/klomp/snark/SnarkManager.java:985 +#: ../java/src/org/klomp/snark/SnarkManager.java:1014 #, java-format msgid "{0} theme loaded, return to main i2psnark page to view." msgstr "{0} тема загружена, вернитеÑÑŒ на оÑновную Ñтраницу i2psnark Ð´Ð»Ñ Ð¿Ñ€Ð¾Ñмотра." -#: ../java/src/org/klomp/snark/SnarkManager.java:995 +#: ../java/src/org/klomp/snark/SnarkManager.java:1024 msgid "Configuration unchanged." msgstr "ÐаÑтройки не изменилиÑÑŒ." -#: ../java/src/org/klomp/snark/SnarkManager.java:1027 +#: ../java/src/org/klomp/snark/SnarkManager.java:1056 msgid "Open Tracker list changed - torrent restart required to take effect." msgstr "Изменен ÑпиÑок открытых трекеров. ТребуетÑÑ Ð¿ÐµÑ€ÐµÐ·Ð°Ð¿ÑƒÑк торрента, чтобы Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð²Ñтупили в Ñилу." -#: ../java/src/org/klomp/snark/SnarkManager.java:1037 +#: ../java/src/org/klomp/snark/SnarkManager.java:1066 msgid "Private tracker list changed - affects newly created torrents only." msgstr "СпиÑок чаÑтных трекеров изменилÑÑ - влиÑет только на заново Ñозданные торренты." -#: ../java/src/org/klomp/snark/SnarkManager.java:1083 +#: ../java/src/org/klomp/snark/SnarkManager.java:1112 #, java-format msgid "Unable to save the config to {0}" msgstr "Ðе удалоÑÑŒ Ñохранить наÑтройки в {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1164 +#: ../java/src/org/klomp/snark/SnarkManager.java:1193 msgid "Connecting to I2P" msgstr "УÑтанавливаетÑÑ Ñоединение Ñ I2P" -#: ../java/src/org/klomp/snark/SnarkManager.java:1167 +#: ../java/src/org/klomp/snark/SnarkManager.java:1196 msgid "Error connecting to I2P - check your I2CP settings!" msgstr "Ошибка ÑÐ¾ÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ Ñ I2P, проверьте наÑтройки I2CP!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1176 -#: ../java/src/org/klomp/snark/SnarkManager.java:2133 +#: ../java/src/org/klomp/snark/SnarkManager.java:1205 +#: ../java/src/org/klomp/snark/SnarkManager.java:2270 #, java-format msgid "Error: Could not add the torrent {0}" msgstr "Ошибка: Ðе удалоÑÑŒ добавить торрент {0}" #. catch this here so we don't try do delete it below -#: ../java/src/org/klomp/snark/SnarkManager.java:1199 +#: ../java/src/org/klomp/snark/SnarkManager.java:1228 #, java-format msgid "Cannot open \"{0}\"" msgstr "Ðе удалоÑÑŒ открыть \"{0}\"" #. TODO - if the existing one is a magnet, delete it and add the metainfo #. instead? -#: ../java/src/org/klomp/snark/SnarkManager.java:1218 -#: ../java/src/org/klomp/snark/SnarkManager.java:1352 -#: ../java/src/org/klomp/snark/SnarkManager.java:1440 +#: ../java/src/org/klomp/snark/SnarkManager.java:1247 +#: ../java/src/org/klomp/snark/SnarkManager.java:1388 +#: ../java/src/org/klomp/snark/SnarkManager.java:1476 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:166 #, java-format msgid "Torrent with this info hash is already running: {0}" msgstr "Торрент Ñ Ñ‚Ð°ÐºÐ¸Ð¼ info hash уже запущен: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1224 +#: ../java/src/org/klomp/snark/SnarkManager.java:1253 #, java-format msgid "ERROR - No I2P trackers in private torrent \"{0}\"" msgstr "ОШИБКР- нет I2P-трекеров в чаÑтном торренте \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:1226 +#: ../java/src/org/klomp/snark/SnarkManager.java:1255 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", will announce to I2P open trackers and" " DHT only." msgstr "Предупреждение - Ðет I2P трекеров в \"{0}\", анонÑирование будет выполнÑтьÑÑ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ на открытых трекерах и в DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:1229 +#: ../java/src/org/klomp/snark/SnarkManager.java:1258 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and open trackers are disabled, will " "announce to DHT only." msgstr "Предупреждение - Ðет I2P трекеров в \"{0}\" и иÑпользование открытых трекеров запрещено, анонÑирование будет выполнÑтьÑÑ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ в DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:1231 +#: ../java/src/org/klomp/snark/SnarkManager.java:1260 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and DHT and open trackers are " @@ -257,34 +266,46 @@ msgid "" "torrent." msgstr "Предупреждение - Ðет I2P трекеров в \"{0}\" и иÑпользование открытых трекеров и DHT запрещено. Следует разрешить их иÑпользование перед запуÑком торрента." -#: ../java/src/org/klomp/snark/SnarkManager.java:1257 +#: ../java/src/org/klomp/snark/SnarkManager.java:1286 #, java-format msgid "Torrent in \"{0}\" is invalid" msgstr "Торрент в \"{0}\" некорректен" -#: ../java/src/org/klomp/snark/SnarkManager.java:1264 +#: ../java/src/org/klomp/snark/SnarkManager.java:1292 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1042 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1069 +#, java-format +msgid "Torrent file deleted: {0}" +msgstr "Удален торрент: {0}" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1295 +#, java-format +msgid "Torrent file moved from {0} to {1}" +msgstr "Торрент файл перемещен из {0} в {1}" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1299 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:193 #, java-format msgid "ERROR - Out of memory, cannot create torrent from {0}" msgstr "ОШИБКР- нехватка памÑти, невозможно Ñоздать торрент из {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1285 +#: ../java/src/org/klomp/snark/SnarkManager.java:1321 #, java-format -msgid "Torrent added and started: \"{0}\"" -msgstr "Торрент добавлен и запущен: \"{0}\"" +msgid "Torrent added and started: {0}" +msgstr "Торрент добавлен и запущен: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1287 +#: ../java/src/org/klomp/snark/SnarkManager.java:1323 #, java-format -msgid "Torrent added: \"{0}\"" -msgstr "Торрент добавлен: \"{0}\"" +msgid "Torrent added: {0}" +msgstr "Добавлен торрент: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1363 +#: ../java/src/org/klomp/snark/SnarkManager.java:1399 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:93 #, java-format msgid "Fetching {0}" msgstr "Получение торрента: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1369 +#: ../java/src/org/klomp/snark/SnarkManager.java:1405 #, java-format msgid "" "Open trackers are disabled and we have no DHT peers. Fetch of {0} may not " @@ -292,131 +313,146 @@ msgid "" "DHT." msgstr "ИÑпользование открытых трекеров запрещено и нет DHT-пиров. Передача {0} не может быть завершена. ЗапуÑтите другой торрент или разрешите иÑпользование открытых трекеров и/или DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:1373 +#: ../java/src/org/klomp/snark/SnarkManager.java:1409 #, java-format msgid "Adding {0}" msgstr "Добавление {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1406 +#: ../java/src/org/klomp/snark/SnarkManager.java:1442 #, java-format msgid "Download already running: {0}" msgstr "Закачка уже запущена: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1451 -#: ../java/src/org/klomp/snark/SnarkManager.java:1477 -#: ../java/src/org/klomp/snark/SnarkManager.java:2052 +#: ../java/src/org/klomp/snark/SnarkManager.java:1487 +#: ../java/src/org/klomp/snark/SnarkManager.java:1513 +#: ../java/src/org/klomp/snark/SnarkManager.java:2151 #, java-format msgid "Failed to copy torrent file to {0}" msgstr "Ðе удалоÑÑŒ Ñкопировать торрент в: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1828 +#: ../java/src/org/klomp/snark/SnarkManager.java:1927 #, java-format -msgid "Too many files in \"{0}\" ({1}), deleting it!" -msgstr "Слишком много файлов в торренте \"{0}\" ({1}), удалÑем его!" +msgid "Too many files in \"{0}\" ({1})!" +msgstr "Слишком много файлов в \"{0}\" ({1})!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1830 +#: ../java/src/org/klomp/snark/SnarkManager.java:1929 #, java-format -msgid "Torrent file \"{0}\" cannot end in \".torrent\", deleting it!" -msgstr "Торрент \"{0}\" Ñодержит единÑтвенный файл заканчивающийÑÑ Ð½Ð° \".torrent\", удалÑем его!" +msgid "Torrent file \"{0}\" cannot end in \".torrent\"!" +msgstr "Торрент файл \"{0}\" не может оканчиватьÑÑ Ð½Ð° \".torrent\"!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1832 +#: ../java/src/org/klomp/snark/SnarkManager.java:1931 #, java-format -msgid "No pieces in \"{0}\", deleting it!" -msgstr "Ð’ торренте \"{0}\" не оказалоÑÑŒ ни одной чаÑти, удалÑем его!" +msgid "No pieces in \"{0}\"!" +msgstr "Ðет чаÑтей в \"{0}\"!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1834 +#: ../java/src/org/klomp/snark/SnarkManager.java:1933 #, java-format -msgid "Too many pieces in \"{0}\", limit is {1}, deleting it!" -msgstr "Слишком много чаÑтей в \"{0}\" (предел — {1}), удалÑем торрент!" +msgid "Too many pieces in \"{0}\", limit is {1}!" +msgstr "Слишком много чаÑтей в \"{0}\", предел {1}!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1836 +#: ../java/src/org/klomp/snark/SnarkManager.java:1935 #, java-format -msgid "Pieces are too large in \"{0}\" ({1}B), deleting it." -msgstr "Слишком крупные чаÑти в \"{0}\" ({1}Б), удалÑем торрент." +msgid "Pieces are too large in \"{0}\" ({1}B)!" +msgstr "Слишком большой размер чаÑти в \"{0}\" ({1}B)!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1837 +#: ../java/src/org/klomp/snark/SnarkManager.java:1936 #, java-format msgid "Limit is {0}B" msgstr "Ðаш предел {0}B" -#: ../java/src/org/klomp/snark/SnarkManager.java:1839 +#: ../java/src/org/klomp/snark/SnarkManager.java:1938 #, java-format -msgid "Torrent \"{0}\" has no data, deleting it!" -msgstr "Торрент \"{0}\" не Ñодержит данных, удалÑем его!" +msgid "Torrent \"{0}\" has no data!" +msgstr "Торрент \"{0}\" не Ñодержит данных!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1847 +#: ../java/src/org/klomp/snark/SnarkManager.java:1946 #, java-format -msgid "Torrents larger than {0}B are not supported yet, deleting \"{1}\"" -msgstr "Торренты крупнее чем {0}Б пока не поддерживаетÑÑ, удалÑем \"{1}\"" +msgid "Torrents larger than {0}B are not supported yet \"{1}\"!" +msgstr "Торренты больше, чем {0} Ð’ не поддерживаютÑÑ \"{1}\"!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1864 +#: ../java/src/org/klomp/snark/SnarkManager.java:1963 #, java-format msgid "Error: Could not remove the torrent {0}" msgstr "Ошибка: Ðевозможно удалить торрент {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1887 -#: ../java/src/org/klomp/snark/SnarkManager.java:1906 +#: ../java/src/org/klomp/snark/SnarkManager.java:1986 +#: ../java/src/org/klomp/snark/SnarkManager.java:2005 #, java-format -msgid "Torrent stopped: \"{0}\"" -msgstr "Торрент оÑтановлен: \"{0}\"" +msgid "Torrent stopped: {0}" +msgstr "Торрент оÑтановлен {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1926 +#: ../java/src/org/klomp/snark/SnarkManager.java:2025 #, java-format msgid "Torrent removed: \"{0}\"" msgstr "Торрент удален: \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:1934 +#: ../java/src/org/klomp/snark/SnarkManager.java:2033 #, java-format msgid "Adding torrents in {0}" msgstr "Добавление торрентов через {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1966 +#: ../java/src/org/klomp/snark/SnarkManager.java:2067 #, java-format msgid "Up bandwidth limit is {0} KBps" msgstr "Ограничение отдачи {0} КБ/Ñ" -#: ../java/src/org/klomp/snark/SnarkManager.java:1993 +#: ../java/src/org/klomp/snark/SnarkManager.java:2092 #, java-format msgid "Download finished: {0}" msgstr "Закачка завершена: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2048 +#: ../java/src/org/klomp/snark/SnarkManager.java:2147 #, java-format msgid "Metainfo received for {0}" msgstr "Метаданные получены Ð´Ð»Ñ {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2049 -#: ../java/src/org/klomp/snark/SnarkManager.java:2280 +#: ../java/src/org/klomp/snark/SnarkManager.java:2148 +#: ../java/src/org/klomp/snark/SnarkManager.java:2431 #, java-format msgid "Starting up torrent {0}" msgstr "ЗапуÑкаем торрент: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2064 +#: ../java/src/org/klomp/snark/SnarkManager.java:2163 #, java-format msgid "Error on torrent {0}" msgstr "Ошибка в торренте {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2127 +#: ../java/src/org/klomp/snark/SnarkManager.java:2264 msgid "Unable to connect to I2P!" msgstr "Ðе удалоÑÑŒ уÑтановить Ñоединение Ñ I2P!" -#: ../java/src/org/klomp/snark/SnarkManager.java:2279 +#: ../java/src/org/klomp/snark/SnarkManager.java:2430 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:130 msgid "Opening the I2P tunnel" msgstr "Открытие I2P туннелÑ" -#: ../java/src/org/klomp/snark/SnarkManager.java:2303 +#: ../java/src/org/klomp/snark/SnarkManager.java:2450 msgid "Opening the I2P tunnel and starting all torrents." msgstr "СоединÑемÑÑ Ñ I2P и запуÑкаем вÑе торренты." -#: ../java/src/org/klomp/snark/SnarkManager.java:2366 +#: ../java/src/org/klomp/snark/SnarkManager.java:2513 msgid "Stopping all torrents and closing the I2P tunnel." msgstr "ОÑтанавливаем вÑе торренты и закрываем Ñоединение Ñ I2P" -#: ../java/src/org/klomp/snark/SnarkManager.java:2385 +#: ../java/src/org/klomp/snark/SnarkManager.java:2532 msgid "Closing I2P tunnel after notifying trackers." msgstr "Закрытие Ñ‚ÑƒÐ½Ð½ÐµÐ»Ñ I2P поÑле ÑƒÐ²ÐµÐ´Ð¾Ð¼Ð»ÐµÐ½Ð¸Ñ Ñ‚Ñ€ÐµÐºÐµÑ€Ð¾Ð²" +#: ../java/src/org/klomp/snark/SnarkManager.java:2594 +#, java-format +msgid "Finished recheck of torrent {0}, now {1} complete" +msgstr "Закончена перепроверка торрента {0}, теперь {1} завершен" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2596 +#, java-format +msgid "Finished recheck of torrent {0}, unchanged" +msgstr "Закончена перепроверка торрента {0}, без изменений" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2600 +#, java-format +msgid "Error checking the torrent {0}" +msgstr "Ошибка проверки торрента {0}" + #: ../java/src/org/klomp/snark/TrackerClient.java:245 #, java-format msgid "No valid trackers for {0} - enable opentrackers or DHT?" @@ -462,178 +498,178 @@ msgstr "Торрент уже в очереди: {0}" msgid "Torrent at {0} was not valid" msgstr "Торрент полученный из {0} некорректен" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:268 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:311 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:322 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1763 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2662 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:270 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:313 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:324 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1778 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2698 msgid "I2PSnark" msgstr "I2PSnark" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:273 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2149 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2422 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2165 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2446 msgid "Configuration" msgstr "ÐаÑтройки" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:277 msgid "Anonymous BitTorrent Client" msgstr "Ðнонимный BitTorrent клиент" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:291 msgid "Router is down" msgstr "Маршрутизатор выключен" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:306 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:308 msgid "Torrents" msgstr "Торренты" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:319 msgid "Refresh page" msgstr "Обновить Ñтраницу" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:326 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:328 msgid "Forum" msgstr "Форум" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:341 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:343 msgid "Click \"Add torrent\" button to fetch torrent" msgstr "Ðажмите \"Добавить торрент\", чтобы получить торрент" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:394 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:396 msgid "clear messages" msgstr "очиÑтить ÑообщениÑ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:449 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2980 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3072 msgid "Status" msgstr "СтатуÑ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2994 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:453 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3086 #, java-format msgid "Sort by {0}" msgstr "Сортировать по {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:462 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:464 msgid "Hide Peers" msgstr "Ñкрыть ÑпиÑок пиров" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:468 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:470 msgid "Show Peers" msgstr "показать ÑпиÑок пиров" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:491 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2648 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2718 msgid "Torrent" msgstr "Торрент" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "File type" msgstr "Тип файла" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:509 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 msgid "ETA" msgstr "ОÑталоÑÑŒ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:512 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:514 msgid "Estimated time remaining" msgstr "Примерное оÑтавшееÑÑ Ð²Ñ€ÐµÐ¼Ñ" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:535 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 msgid "RX" msgstr "ПринÑто" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:538 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:540 msgid "Downloaded" msgstr "Получено" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2818 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2968 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2878 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3060 msgid "Size" msgstr "Размер" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 msgid "TX" msgstr "Отдано" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2896 msgid "Upload ratio" msgstr "КоÑффициент отдачи" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:569 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:571 msgid "Uploaded" msgstr "Отдано" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:581 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 msgid "RX Rate" msgstr "СкороÑть получениÑ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:584 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:586 msgid "Down Rate" msgstr "СкороÑть загрузки" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:596 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 msgid "TX Rate" msgstr "СкороÑть отдачи" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:599 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:601 msgid "Up Rate" msgstr "СкороÑть отдачи" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:615 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 msgid "Stop all torrents and the I2P tunnel" msgstr "ОÑтановить вÑе торренты и закрыть Ñоединение Ñ I2P" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:619 msgid "Stop All" msgstr "ОÑтановить вÑе" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:629 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 msgid "Start all stopped torrents" msgstr "ЗапуÑтить вÑе оÑтановленные торренты" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:633 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:647 msgid "Start All" msgstr "ЗапуÑтить вÑе" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:643 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 msgid "Start all torrents and the I2P tunnel" msgstr "ЗапуÑтить вÑе торренты и открыть Ñоединение Ñ I2P" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:668 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:670 msgid "No torrents loaded." msgstr "Ðет загруженных торрентов." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:674 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 msgid "Totals" msgstr "Ð’Ñего" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:678 #, java-format msgid "1 torrent" msgid_plural "{0} torrents" @@ -642,7 +678,7 @@ msgstr[1] "{0} торрента" msgstr[2] "{0} торрентов" msgstr[3] "{0} торрентов" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:683 #, java-format msgid "1 connected peer" msgid_plural "{0} connected peers" @@ -651,7 +687,7 @@ msgstr[1] "{0} подÑоединенных пиров" msgstr[2] "{0} подÑоединенных пиров" msgstr[3] "{0} подÑоединенных пиров" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:688 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:690 #, java-format msgid "1 DHT peer" msgid_plural "{0} DHT peers" @@ -660,207 +696,202 @@ msgstr[1] "{0} DHT пира" msgstr[2] "{0} DHT пиров" msgstr[3] "{0} DHT пиров" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:695 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:697 msgid "Dest" -msgstr "" +msgstr "ÐÐ´Ñ€ÐµÑ Ð½Ð°Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First" msgstr "Первый" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First page" msgstr "ÐŸÐµÑ€Ð²Ð°Ñ Ñтраница" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Prev" msgstr "Предыдущее" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Previous page" msgstr "ÐŸÑ€ÐµÐ´Ñ‹Ð´ÑƒÑ‰Ð°Ñ Ñтраница" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next" msgstr "Следующее" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next page" msgstr "Ð¡Ð»ÐµÐ´ÑƒÑŽÑ‰Ð°Ñ Ñтраница" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last" msgstr "ПоÑледний" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last page" msgstr "ПоÑледнÑÑ Ñтраница" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:960 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:962 msgid "Data directory cannot be created" msgstr "Ðе удалоÑÑŒ Ñоздать директорию Ð´Ð»Ñ Ñ„Ð°Ð¹Ð»Ð¾Ð²" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1176 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:972 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1185 #, java-format msgid "Cannot add torrent {0} inside another torrent: {1}" msgstr "Ðе могу добавить торрент {0} в ÑоÑтав другого торрента: {1}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:985 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:993 #, java-format msgid "Invalid URL: Must start with \"http://\", \"{0}\", or \"{1}\"" msgstr "Ðекорректный URL: должен начинатьÑÑ Ñ \"http://\", \"{0}\", или \"{1}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1026 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1063 #, java-format msgid "Magnet deleted: {0}" msgstr "Magnet удален: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1061 #, java-format -msgid "Torrent file deleted: {0}" -msgstr "Удален торрент: {0}" - -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1053 -#, java-format msgid "Download deleted: {0}" msgstr "Закачка удалена: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1070 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1078 #, java-format msgid "Data file deleted: {0}" msgstr "Файл удален: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1072 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1089 #, java-format msgid "Data file could not be deleted: {0}" msgstr "Ðе удалоÑÑŒ удалить файл: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1097 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1105 #, java-format msgid "Directory could not be deleted: {0}" msgstr "Каталог не может быть удалён: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1112 #, java-format msgid "Directory deleted: {0}" msgstr "Каталог удалён: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1155 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1164 #, java-format msgid "Cannot add a torrent ending in \".torrent\": {0}" msgstr "Ðе могу добавить окончание торрента в файл \".torrent\": {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1160 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1169 #, java-format msgid "Torrent with this name is already running: {0}" msgstr "Торрент Ñ Ñ‚Ð°ÐºÐ¸Ð¼ именем уже запущен: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1175 #, java-format msgid "Cannot add a torrent including an I2P directory: {0}" msgstr "Ðе могу добавить торрент Ñ I2P директорией: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1181 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1190 #, java-format msgid "Cannot add torrent {0} including another torrent: {1}" msgstr "Ðе могу добавить торрент {0}, включающий в ÑÐµÐ±Ñ Ð´Ñ€ÑƒÐ³Ð¾Ð¹ торрент: {1}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1216 msgid "Error - Cannot include alternate trackers without a primary tracker" msgstr "Ошибка - нельза добавить альтернативные трекеры без оÑновного" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1220 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1229 msgid "Error - Cannot mix private and public trackers in a torrent" msgstr "Ошибка - невозможно объединить приватный и публичные трекеры в торренте" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1251 #, java-format msgid "Torrent created for \"{0}\"" msgstr "Создан торрент Ð´Ð»Ñ \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1244 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 #, java-format msgid "" "Many I2P trackers require you to register new torrents before seeding - " "please do so before starting \"{0}\"" msgstr "Многие I2P трекеры требуют зарегиÑтрировать на них торрент перед началом раздачи — пожалуйÑта проверьте требуетÑÑ Ð»Ð¸ Ñто перед запуÑком \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1255 #, java-format msgid "Error creating a torrent for \"{0}\"" msgstr "Ошибка при Ñоздании торрента длÑ: \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1250 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1259 #, java-format msgid "Cannot create a torrent for the nonexistent data: {0}" msgstr "Ðевозможно Ñоздать торрент Ð´Ð»Ñ Ð½ÐµÑущеÑтвующего файла или директории: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1262 msgid "Error creating torrent - you must enter a file or directory" msgstr "Торрент не Ñоздан — вы должны указать файл или директорию" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2406 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2430 msgid "Delete selected" msgstr "Удалить выбранное" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2408 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2432 msgid "Save tracker configuration" msgstr "Сохранить наÑтройки трекеров" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1301 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1310 msgid "Removed" msgstr "Удален" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1333 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2405 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2407 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1342 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2429 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2431 msgid "Add tracker" msgstr "Добавить трекер" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1356 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1359 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1365 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1368 msgid "Enter valid tracker name and URLs" msgstr "Введите дейÑтвительное название и URL трекера" #. "<input type=\"reset\" class=\"cancel\" #. value=\"").append(_t("Cancel")).append("\">\n" + -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1361 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2410 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1370 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2434 msgid "Restore defaults" msgstr "ВоÑÑтановить Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¿Ð¾-умолчанию" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1373 msgid "Restored default trackers" msgstr "ВоÑÑтановить трекеры по-умолчанию" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1472 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1473 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1485 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1486 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2949 msgid "Checking" msgstr "Проверка" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1475 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1476 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1489 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2956 msgid "Allocating" msgstr "Выделение меÑта" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1499 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1505 msgid "Tracker Error" msgstr "Ошибка Трекера" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1492 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1522 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1527 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1538 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1543 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1554 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1507 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1537 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1542 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1553 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1558 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1569 #, java-format msgid "1 peer" msgid_plural "{0} peers" @@ -869,366 +900,377 @@ msgstr[1] "{0} пира" msgstr[2] "{0} пиров" msgstr[3] "{0} пиров" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1502 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1503 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1517 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1518 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2954 msgid "Starting" msgstr "ЗапуÑкаетÑÑ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1511 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1526 msgid "Seeding" msgstr "РаздаетÑÑ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1515 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1529 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1530 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2831 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1544 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2891 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3139 msgid "Complete" msgstr "Завершен" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1534 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1535 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1540 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1541 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1550 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1555 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 msgid "OK" msgstr "ЗагружаетÑÑ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1546 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1551 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1552 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1567 msgid "Stalled" msgstr "ПроÑтаивает" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1557 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1571 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1572 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1575 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1576 msgid "No Peers" msgstr "Ðет пиров" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1563 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1578 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1579 msgid "Stopped" msgstr "ОÑтановлен" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1593 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1608 msgid "Torrent details" msgstr "ÐŸÐ¾Ð´Ñ€Ð¾Ð±Ð½Ð°Ñ Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1628 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1643 msgid "View files" msgstr "Открыть директорию" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1630 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1645 msgid "Open file" msgstr "Открыть файл" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1682 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 msgid "Stop the torrent" msgstr "ОÑтановить торрент" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2961 msgid "Stop" msgstr "ОÑтановить" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 msgid "Start the torrent" msgstr "ЗапуÑтить торрент" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1714 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2963 msgid "Start" msgstr "ЗапуÑтить" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1727 msgid "Remove the torrent from the active list, deleting the .torrent file" msgstr "Удалить торрент из ÑпиÑка и Ñ Ð´Ð¸Ñка" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1717 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1732 #, java-format msgid "" "Are you sure you want to delete the file \\''{0}\\'' (downloaded data will " "not be deleted) ?" msgstr "Ð’Ñ‹ уверены, что хотите удалить файл \\''{0}\\'' (Ñкачанные данные не будут удалены) ?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1721 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1736 msgid "Remove" msgstr "Удалить" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1734 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1749 msgid "Delete the .torrent file and the associated data file(s)" msgstr "Удалить торрент и Ñтереть загруженные файлы" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1739 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1754 #, java-format msgid "" "Are you sure you want to delete the torrent \\''{0}\\'' and all downloaded " "data?" msgstr "Ð’Ñ‹ дейÑтвительно хотите удалить торрент \\''{0}\\'' и вÑе загруженные файлы?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1743 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1758 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2388 msgid "Delete" msgstr "Стереть" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1779 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1794 msgid "Unknown" msgstr "ÐеизвеÑтный" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1791 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1806 msgid "Seed" msgstr "Сид" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1814 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1829 msgid "Uninteresting (The peer has no pieces we need)" msgstr "Uninteresting (У пира нет нужных нам чаÑтей торрента)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1816 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1831 msgid "Choked (The peer is not allowing us to request pieces)" msgstr "Choked (Ðтот пир не позволÑет нам запрашивать чаÑти торрента)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1851 msgid "Uninterested (We have no pieces the peer needs)" msgstr "Uninterested (У Ð½Ð°Ñ Ð½ÑƒÐ¶Ð½Ñ‹Ñ… Ñтому пиру чаÑтей торрента)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1838 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1853 msgid "Choking (We are not allowing the peer to request pieces)" msgstr "Choking (Мы не позволÑем Ñтому пиру запрашивать у Ð½Ð°Ñ Ñ‡Ð°Ñти торрента)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1954 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1969 #, java-format msgid "Details at {0} tracker" msgstr "Детали на трекере {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1971 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1986 msgid "Info" msgstr "ИнформациÑ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 msgid "Add Torrent" msgstr "Добавить Торрент" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 msgid "From URL" msgstr "Из URL" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2050 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2065 msgid "" "Enter the torrent file download URL (I2P only), magnet link, maggot link, or" " info hash" msgstr "Введите URL Ð´Ð»Ñ ÑÐºÐ°Ñ‡Ð¸Ð²Ð°Ð½Ð¸Ñ torrent-файла (только I2P), magnet-/maggot-ÑÑылку или Ñ…Ñш" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2070 msgid "Add torrent" msgstr "Добавить торрент" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2074 msgid "Data dir" msgstr "Ð”Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ Ð´Ð»Ñ Ñ„Ð°Ð¹Ð»Ð¾Ð²" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2077 #, java-format msgid "Enter the directory to save the data in (default {0})" msgstr "Путь Ð´Ð»Ñ ÑÐ¾Ñ…Ñ€Ð°Ð½ÐµÐ½Ð¸Ñ Ñ„Ð°Ð¹Ð»Ð¾Ð² (по умолчанию {0})" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2066 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 #, java-format msgid "You can also copy .torrent files to: {0}." msgstr "Либо вы можете проÑто Ñкопировать .torrent-файлы в директорию {0}." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2068 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2083 msgid "Removing a .torrent will cause it to stop." msgstr "Удаление .torrent-файла приведёт к оÑтановке торрента." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2096 msgid "Create Torrent" msgstr "Создать Торрент" #. out.write("From file: <input type=\"file\" name=\"newFile\" size=\"50\" #. value=\"" + newFile + "\" /><br>\n"); -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2084 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2099 msgid "Data to seed" msgstr "Файлы Ð´Ð»Ñ Ñ€Ð°Ð·Ð´Ð°Ñ‡Ð¸" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2088 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2103 #, java-format msgid "File or directory to seed (full path or within the directory {0} )" msgstr "Файл или Ð´Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ Ð´Ð»Ñ Ñ€Ð°Ð·Ð´Ð°Ñ‡Ð¸ (полный путь или отноÑительно директории {0} )" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2091 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2337 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2106 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2361 msgid "Trackers" msgstr "Трекеры" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2093 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2108 msgid "Primary" msgstr "ОÑновной" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2095 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2110 msgid "Alternates" msgstr "Ðльтернативный" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2098 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2113 msgid "Create torrent" msgstr "Создать торрент" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2116 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2131 msgid "none" msgstr "нет" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2153 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2169 msgid "Data directory" msgstr "Ð”Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ Ð´Ð»Ñ Ñ„Ð°Ð¹Ð»Ð¾Ð²" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2158 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 msgid "Files readable by all" msgstr "Файлы доÑтупны Ð´Ð»Ñ Ñ‡Ñ‚ÐµÐ½Ð¸Ñ Ð²Ñеми" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2162 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2178 msgid "If checked, other users may access the downloaded files" msgstr "ЕÑли отмечено, другие пользователи могут иметь доÑтуп к Ñкачанным файлам" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2182 msgid "Auto start torrents" msgstr "ÐвтоматичеÑки Ñтартовать торренты" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2170 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2186 msgid "If checked, automatically start torrents that are added" msgstr "ÐвтоматичеÑки запуÑкать торренты поÑле добавлениÑ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2190 +msgid "Smart torrent sorting" +msgstr "\"УмнаÑ\" Ñортировка торрентов" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2194 +msgid "If checked, ignore words such as 'the' when sorting" +msgstr "ЕÑли отмечено, игнорировать такие Ñлова, как 'the' при Ñортировке" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2198 msgid "Theme" msgstr "Тема" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2188 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2212 msgid "Refresh time" msgstr "Ð’Ñ€ÐµÐ¼Ñ Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñа" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2201 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2225 msgid "Never" msgstr "Ðикогда" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2231 msgid "Startup delay" msgstr "Задержка запуÑка" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2209 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2233 msgid "minutes" msgstr "минут" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2213 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2237 msgid "Page size" msgstr "Размер Ñтраницы" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2215 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 msgid "torrents" msgstr "торренты" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 msgid "Total uploader limit" msgstr "Ограничение количеÑтва Ñлотов отдачи" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2266 msgid "peers" msgstr "пиров" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2270 msgid "Up bandwidth limit" msgstr "Ограничение ÑкороÑти отдачи" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2249 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2273 msgid "Half available bandwidth recommended." msgstr "РекомендуетÑÑ Ð¸Ñпользовать половину от доÑтупной пропуÑкной ÑпоÑобноÑти." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2251 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2275 msgid "View or change router bandwidth" msgstr "ПоÑмотреть/наÑтроить Ð¾Ð³Ñ€Ð°Ð½Ð¸Ñ‡ÐµÐ½Ð¸Ñ ÑкороÑти в маршрутизаторе I2P" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2255 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2279 msgid "Use open trackers also" msgstr "Дополнительно иÑпользовать открытые трекеры" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2259 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 msgid "" "If checked, announce torrents to open trackers as well as the tracker listed" " in the torrent file" msgstr "ÐнонÑировать торренты на открытых трекерах, дополнительно к тем, что указаны внутри торрента" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2287 msgid "Enable DHT" msgstr "Включить DHT" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2267 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2291 msgid "If checked, use DHT" msgstr "ЕÑли выбрано, иÑпользуетÑÑ DHT" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2307 msgid "Inbound Settings" msgstr "ВходÑщие туннели" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2313 msgid "Outbound Settings" msgstr "ИÑходÑщие туннели" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2297 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2321 msgid "I2CP host" msgstr "ÐÐ´Ñ€ÐµÑ I2CP" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2302 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2326 msgid "I2CP port" msgstr "Порт I2CP" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2341 msgid "I2CP options" msgstr "Параметры I2CP" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2322 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 msgid "Save configuration" msgstr "Сохранить наÑтройки" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2342 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2366 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "Name" msgstr "ИмÑ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2344 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2368 msgid "Website URL" msgstr "URL Ñайта" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2370 msgid "Standard" msgstr "Стандартный" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2348 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2372 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3172 msgid "Open" msgstr "Открыть" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2350 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2374 msgid "Private" msgstr "ЧаÑтный" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2352 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2376 msgid "Announce URL" msgstr "URL анонÑированиÑ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2396 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2420 msgid "Add" msgstr "Добавить" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2439 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2463 #, java-format msgid "Invalid magnet URL {0}" msgstr "Ðеправильный magnet URL {0}" #. * dummies for translation -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2447 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2471 #, java-format msgid "1 hop" msgid_plural "{0} hops" @@ -1237,7 +1279,7 @@ msgstr[1] "{0} хопа" msgstr[2] "{0} хопов" msgstr[3] "{0} хопов" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2448 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2472 #, java-format msgid "1 tunnel" msgid_plural "{0} tunnels" @@ -1246,119 +1288,135 @@ msgstr[1] "{0} туннелÑ" msgstr[2] "{0} туннелей" msgstr[3] "{0} туннелей" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2691 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2728 msgid "Torrent file" msgstr "Торрент-файл" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 msgid "Data location" msgstr "РаÑположение данных" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2708 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2745 msgid "Info hash" msgstr "Инфо Ñ…Ñш" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2727 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2764 msgid "Primary Tracker" msgstr "Первичный трекер" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2773 msgid "Tracker List" msgstr "СпиÑок трекеров" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2761 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2798 msgid "Comment" msgstr "Комментарий" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2771 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2812 msgid "Created" msgstr "Создан" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2782 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2823 msgid "Created By" msgstr "Создан кем" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2794 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2833 +msgid "Added" +msgstr "Добавлено" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2842 +msgid "Completed" +msgstr "Завершено" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2854 msgid "Magnet link" msgstr "Magnet-ÑÑылка" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2807 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2867 msgid "Private torrent" msgstr "ЧаÑтный Torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2827 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2887 msgid "Completion" msgstr "Загружено" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2856 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2916 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 msgid "Remaining" msgstr "ОÑталоÑÑŒ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2926 msgid "Files" msgstr "Файлов" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2873 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 msgid "Pieces" msgstr "ЧаÑти" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2879 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2939 msgid "Piece size" msgstr "Размер чаÑти" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2952 +msgid "Refresh page for results" +msgstr "Обновите Ñтраницу Ð´Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ Ñ€ÐµÐ·ÑƒÐ»ÑŒÑ‚Ð°Ñ‚Ð¾Ð²" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2964 +msgid "Force Recheck" +msgstr "БыÑÑ‚Ñ€Ð°Ñ Ð¿Ð¾Ð²Ñ‚Ð¾Ñ€Ð½Ð°Ñ Ð¿Ñ€Ð¾Ð²ÐµÑ€ÐºÐ°" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3025 msgid "Directory" msgstr "ДиректориÑ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2992 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3084 msgid "Priority" msgstr "Приоритет" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3004 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3096 msgid "Up to higher level directory" msgstr "Перейти в директорию уровнем выше" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3038 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3130 msgid "Torrent not found?" msgstr "Torrent not found?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3136 msgid "File not found in torrent?" msgstr "File not found in torrent?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3057 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3149 msgid "complete" msgstr "Ñкачано" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3058 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3150 msgid "remaining" msgstr "оÑталоÑÑŒ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3196 msgid "High" msgstr "Ð’Ñ‹Ñокий" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3109 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3201 msgid "Normal" msgstr "Ðормальный" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3114 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3206 msgid "Skip" msgstr "ПропуÑтить" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3124 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3216 msgid "Set all high" msgstr "Ð’Ñем выÑокий приоритет" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3126 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3218 msgid "Set all normal" msgstr "Ð’Ñем нормальный приоритет" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3128 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3220 msgid "Skip all" msgstr "ПропуÑтить вÑе" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3129 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3221 msgid "Save priorities" msgstr "Сохранить приоритеты" diff --git a/apps/i2psnark/locale/messages_sk.po b/apps/i2psnark/locale/messages_sk.po index 339f354268ba93b872c4d520cf51eded7a3158fb..6a7113e70a935f4e7f3a48fd713ba7fce533ea85 100644 --- a/apps/i2psnark/locale/messages_sk.po +++ b/apps/i2psnark/locale/messages_sk.po @@ -9,10 +9,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:09+0000\n" -"PO-Revision-Date: 2015-07-17 01:32+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-05 17:17+0000\n" "Last-Translator: kytv <killyourtv@i2pmail.org>\n" -"Language-Team: Slovak (http://www.transifex.com/projects/p/I2P/language/sk/)\n" +"Language-Team: Slovak (http://www.transifex.com/otf/I2P/language/sk/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -24,222 +24,230 @@ msgid "No more torrents running." msgstr "" #: ../java/src/org/klomp/snark/IdleChecker.java:76 -#: ../java/src/org/klomp/snark/SnarkManager.java:2392 -#: ../java/src/org/klomp/snark/SnarkManager.java:2403 +#: ../java/src/org/klomp/snark/SnarkManager.java:2539 +#: ../java/src/org/klomp/snark/SnarkManager.java:2550 msgid "I2P tunnel closed." msgstr "I2P tunel je zatvorený." #: ../java/src/org/klomp/snark/MagnetURI.java:42 #: ../java/src/org/klomp/snark/MagnetURI.java:52 -#: ../java/src/org/klomp/snark/SnarkManager.java:2096 +#: ../java/src/org/klomp/snark/SnarkManager.java:2221 msgid "Magnet" msgstr "Magnet" -#: ../java/src/org/klomp/snark/SnarkManager.java:772 +#: ../java/src/org/klomp/snark/SnarkManager.java:791 #, java-format msgid "Total uploaders limit changed to {0}" msgstr "Celkový limit uploaderov bol zmenený na {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:774 +#: ../java/src/org/klomp/snark/SnarkManager.java:793 #, java-format msgid "Minimum total uploaders limit is {0}" msgstr "Minimálny celkový limit uploaderov je {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:786 +#: ../java/src/org/klomp/snark/SnarkManager.java:805 #, java-format msgid "Up BW limit changed to {0}KBps" msgstr "Limit nárastu Å P bol zmenený na {0}KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:788 +#: ../java/src/org/klomp/snark/SnarkManager.java:807 #, java-format msgid "Minimum up bandwidth limit is {0}KBps" msgstr "Minimálny limit nárastu Å¡Ãrky pásma je {0}KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:800 +#: ../java/src/org/klomp/snark/SnarkManager.java:819 #, java-format msgid "Startup delay changed to {0}" msgstr "Zdržanie pri spustenà bolo zmenené na {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:811 +#: ../java/src/org/klomp/snark/SnarkManager.java:830 #, java-format msgid "Refresh time changed to {0}" msgstr "ÄŒas refreshu bol zmenený na {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:813 +#: ../java/src/org/klomp/snark/SnarkManager.java:832 msgid "Refresh disabled" msgstr "Refresh zakázaný" -#: ../java/src/org/klomp/snark/SnarkManager.java:829 +#: ../java/src/org/klomp/snark/SnarkManager.java:848 #, java-format msgid "Page size changed to {0}" msgstr "VeľkosÅ¥ stránky bola zmenená na {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:838 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:956 +#: ../java/src/org/klomp/snark/SnarkManager.java:857 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:958 msgid "Data directory must be an absolute path" msgstr "Dátový prieÄinok musà byÅ¥ absolútna cesta" -#: ../java/src/org/klomp/snark/SnarkManager.java:840 +#: ../java/src/org/klomp/snark/SnarkManager.java:859 msgid "Data directory does not exist" msgstr "Dátový prieÄinok neexistuje" -#: ../java/src/org/klomp/snark/SnarkManager.java:842 +#: ../java/src/org/klomp/snark/SnarkManager.java:861 msgid "Not a directory" msgstr "Nie je prieÄinok" -#: ../java/src/org/klomp/snark/SnarkManager.java:844 +#: ../java/src/org/klomp/snark/SnarkManager.java:863 msgid "Unreadable" msgstr "NeÄitateľné" -#: ../java/src/org/klomp/snark/SnarkManager.java:849 +#: ../java/src/org/klomp/snark/SnarkManager.java:868 #, java-format msgid "Data directory changed to {0}" msgstr "Dátový prieÄinok bol zmenený na {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:904 +#: ../java/src/org/klomp/snark/SnarkManager.java:923 msgid "I2CP and tunnel changes will take effect after stopping all torrents" msgstr "Zmeny I2CP a tunelov sa prejavia po zastavenà vÅ¡etkých torrentov" -#: ../java/src/org/klomp/snark/SnarkManager.java:908 +#: ../java/src/org/klomp/snark/SnarkManager.java:927 #, java-format msgid "I2CP options changed to {0}" msgstr "I2CP nastavenia boli zmenené na {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:914 +#: ../java/src/org/klomp/snark/SnarkManager.java:933 msgid "Disconnecting old I2CP destination" msgstr "Odpája sa starý I2CP cieľ" -#: ../java/src/org/klomp/snark/SnarkManager.java:916 +#: ../java/src/org/klomp/snark/SnarkManager.java:935 #, java-format msgid "I2CP settings changed to {0}" msgstr "I2CP nastavenia boli zmenené na {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:921 +#: ../java/src/org/klomp/snark/SnarkManager.java:940 msgid "" "Unable to connect with the new settings, reverting to the old I2CP settings" msgstr "Nie je možné sa pripojiÅ¥ pomocou nových nastavenÃ, vracia sa naspäť k starým I2CP nastaveniam" -#: ../java/src/org/klomp/snark/SnarkManager.java:925 +#: ../java/src/org/klomp/snark/SnarkManager.java:944 msgid "Unable to reconnect with the old settings!" msgstr "Nie je možné sa znova pripojiÅ¥ pomocou starých nastavenÃ!" -#: ../java/src/org/klomp/snark/SnarkManager.java:927 +#: ../java/src/org/klomp/snark/SnarkManager.java:946 msgid "Reconnected on the new I2CP destination" msgstr "Znova sa pripája k novému I2CP cieľu" -#: ../java/src/org/klomp/snark/SnarkManager.java:934 +#: ../java/src/org/klomp/snark/SnarkManager.java:953 #, java-format msgid "I2CP listener restarted for \"{0}\"" msgstr "I2CP listener bol reÅ¡tartovaný pre \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:948 +#: ../java/src/org/klomp/snark/SnarkManager.java:967 msgid "New files will be publicly readable" msgstr "Nové súbory budú verejne Äitateľné" -#: ../java/src/org/klomp/snark/SnarkManager.java:950 +#: ../java/src/org/klomp/snark/SnarkManager.java:969 msgid "New files will not be publicly readable" msgstr "Nové súbory nebudú verejne Äitateľné" -#: ../java/src/org/klomp/snark/SnarkManager.java:957 +#: ../java/src/org/klomp/snark/SnarkManager.java:976 msgid "Enabled autostart" msgstr "Povolené automatické spustenie" -#: ../java/src/org/klomp/snark/SnarkManager.java:959 +#: ../java/src/org/klomp/snark/SnarkManager.java:978 msgid "Disabled autostart" msgstr "Zakázané automatické spustenie" -#: ../java/src/org/klomp/snark/SnarkManager.java:965 +#: ../java/src/org/klomp/snark/SnarkManager.java:985 +msgid "Enabled smart sort" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:987 +msgid "Disabled smart sort" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:994 msgid "Enabled open trackers - torrent restart required to take effect." msgstr "Povolené otvorené stopovaÄe - pre prejavenie efektu sa vyžaduje reÅ¡tart torrentu." -#: ../java/src/org/klomp/snark/SnarkManager.java:967 +#: ../java/src/org/klomp/snark/SnarkManager.java:996 msgid "Disabled open trackers - torrent restart required to take effect." msgstr "Zakázané otvorené stopovaÄe - pre prejavenie efektu sa vyžaduje reÅ¡tart torrentu." -#: ../java/src/org/klomp/snark/SnarkManager.java:974 +#: ../java/src/org/klomp/snark/SnarkManager.java:1003 msgid "Enabled DHT." msgstr "Povolené DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:976 +#: ../java/src/org/klomp/snark/SnarkManager.java:1005 msgid "Disabled DHT." msgstr "Zakázané DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:978 +#: ../java/src/org/klomp/snark/SnarkManager.java:1007 msgid "DHT change requires tunnel shutdown and reopen" msgstr "Zmena DHT vyžaduje vypnutie a znovuotvorenie tunela" -#: ../java/src/org/klomp/snark/SnarkManager.java:985 +#: ../java/src/org/klomp/snark/SnarkManager.java:1014 #, java-format msgid "{0} theme loaded, return to main i2psnark page to view." msgstr "{0} téma bola naÄÃtaná, vráťte sa na hlavnú stránku i2psnark pre zobrazenie." -#: ../java/src/org/klomp/snark/SnarkManager.java:995 +#: ../java/src/org/klomp/snark/SnarkManager.java:1024 msgid "Configuration unchanged." msgstr "Konfigurácia nebola zmenená." -#: ../java/src/org/klomp/snark/SnarkManager.java:1027 +#: ../java/src/org/klomp/snark/SnarkManager.java:1056 msgid "Open Tracker list changed - torrent restart required to take effect." msgstr "Zoznam otvorených stopovaÄov sa zmenil - pre prejavenie efektu sa vyžaduje reÅ¡tart torrentu." -#: ../java/src/org/klomp/snark/SnarkManager.java:1037 +#: ../java/src/org/klomp/snark/SnarkManager.java:1066 msgid "Private tracker list changed - affects newly created torrents only." msgstr "Súkromný zoznam stopovaÄov bol zmenený - to sa bude týkaÅ¥ iba novo vytvorených torrentov." -#: ../java/src/org/klomp/snark/SnarkManager.java:1083 +#: ../java/src/org/klomp/snark/SnarkManager.java:1112 #, java-format msgid "Unable to save the config to {0}" msgstr "Nebolo možné uložiÅ¥ konfiguráciu do {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1164 +#: ../java/src/org/klomp/snark/SnarkManager.java:1193 msgid "Connecting to I2P" msgstr "Pripája sa k I2P" -#: ../java/src/org/klomp/snark/SnarkManager.java:1167 +#: ../java/src/org/klomp/snark/SnarkManager.java:1196 msgid "Error connecting to I2P - check your I2CP settings!" msgstr "Chyba pri pripájanà sa k I2P - skontrolujte si vaÅ¡e I2CP nastavenia!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1176 -#: ../java/src/org/klomp/snark/SnarkManager.java:2133 +#: ../java/src/org/klomp/snark/SnarkManager.java:1205 +#: ../java/src/org/klomp/snark/SnarkManager.java:2270 #, java-format msgid "Error: Could not add the torrent {0}" msgstr "Chyba: Nebolo možné pridaÅ¥ torrent {0}" #. catch this here so we don't try do delete it below -#: ../java/src/org/klomp/snark/SnarkManager.java:1199 +#: ../java/src/org/klomp/snark/SnarkManager.java:1228 #, java-format msgid "Cannot open \"{0}\"" msgstr "Nie je možné otvoriÅ¥ \"{0}\"" #. TODO - if the existing one is a magnet, delete it and add the metainfo #. instead? -#: ../java/src/org/klomp/snark/SnarkManager.java:1218 -#: ../java/src/org/klomp/snark/SnarkManager.java:1352 -#: ../java/src/org/klomp/snark/SnarkManager.java:1440 +#: ../java/src/org/klomp/snark/SnarkManager.java:1247 +#: ../java/src/org/klomp/snark/SnarkManager.java:1388 +#: ../java/src/org/klomp/snark/SnarkManager.java:1476 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:166 #, java-format msgid "Torrent with this info hash is already running: {0}" msgstr "Torrent s týmto info hashom je už spustený: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1224 +#: ../java/src/org/klomp/snark/SnarkManager.java:1253 #, java-format msgid "ERROR - No I2P trackers in private torrent \"{0}\"" msgstr "CHYBA - Žiadne I2P stopovaÄe v súkromnom torrente \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:1226 +#: ../java/src/org/klomp/snark/SnarkManager.java:1255 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", will announce to I2P open trackers and" " DHT only." msgstr "Varovanie - V \"{0}\" nie sú žiadne I2P stopovaÄe, oznámené to bude iba DHT a otvoreným stopovaÄom I2P." -#: ../java/src/org/klomp/snark/SnarkManager.java:1229 +#: ../java/src/org/klomp/snark/SnarkManager.java:1258 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and open trackers are disabled, will " "announce to DHT only." msgstr "Varovanie - V \"{0}\" nie sú žiadne I2P stopovaÄe, priÄom otvorené stopovaÄe sú zakázané, oznámené to bude iba DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:1231 +#: ../java/src/org/klomp/snark/SnarkManager.java:1260 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and DHT and open trackers are " @@ -247,34 +255,46 @@ msgid "" "torrent." msgstr "Varovanie - V \"{0}\" nie sú žiadne I2P stopovaÄe, priÄom otvorené stopovaÄe aj DHT sú zakázané, mali by ste otvorené stopovaÄe alebo DHT pred spustenÃm torrentu povoliÅ¥." -#: ../java/src/org/klomp/snark/SnarkManager.java:1257 +#: ../java/src/org/klomp/snark/SnarkManager.java:1286 #, java-format msgid "Torrent in \"{0}\" is invalid" msgstr "Torrent v \"{0}\" je neplatný" -#: ../java/src/org/klomp/snark/SnarkManager.java:1264 +#: ../java/src/org/klomp/snark/SnarkManager.java:1292 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1042 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1069 +#, java-format +msgid "Torrent file deleted: {0}" +msgstr "Súbor torrentu bol odstránený: {0}" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1295 +#, java-format +msgid "Torrent file moved from {0} to {1}" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1299 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:193 #, java-format msgid "ERROR - Out of memory, cannot create torrent from {0}" msgstr "CHYBA - Nedostatok pamäte, nie je možné vytvoriÅ¥ torrent z {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1285 +#: ../java/src/org/klomp/snark/SnarkManager.java:1321 #, java-format -msgid "Torrent added and started: \"{0}\"" -msgstr "Torrent bol pridaný a spustený: \"{0}\"" +msgid "Torrent added and started: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1287 +#: ../java/src/org/klomp/snark/SnarkManager.java:1323 #, java-format -msgid "Torrent added: \"{0}\"" -msgstr "Torrent bol pridaný: \"{0}\"" +msgid "Torrent added: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1363 +#: ../java/src/org/klomp/snark/SnarkManager.java:1399 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:93 #, java-format msgid "Fetching {0}" msgstr "ZÃskava sa {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1369 +#: ../java/src/org/klomp/snark/SnarkManager.java:1405 #, java-format msgid "" "Open trackers are disabled and we have no DHT peers. Fetch of {0} may not " @@ -282,131 +302,146 @@ msgid "" "DHT." msgstr "Otvorené stopovaÄe sú zakázané a my nemáme žiadnych DHT peerov. ZÃskanie {0} nemusà uspieÅ¥, pokiaľ nespustÃte Äalšà torrent, prÃpadne nepovolÃte otvorené stopovaÄe alebo DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:1373 +#: ../java/src/org/klomp/snark/SnarkManager.java:1409 #, java-format msgid "Adding {0}" msgstr "Pridáva sa {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1406 +#: ../java/src/org/klomp/snark/SnarkManager.java:1442 #, java-format msgid "Download already running: {0}" msgstr "SÅ¥ahovanie je už spustené: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1451 -#: ../java/src/org/klomp/snark/SnarkManager.java:1477 -#: ../java/src/org/klomp/snark/SnarkManager.java:2052 +#: ../java/src/org/klomp/snark/SnarkManager.java:1487 +#: ../java/src/org/klomp/snark/SnarkManager.java:1513 +#: ../java/src/org/klomp/snark/SnarkManager.java:2151 #, java-format msgid "Failed to copy torrent file to {0}" msgstr "Nepodarilo sa skopÃrovaÅ¥ súbor torrentu do {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1828 +#: ../java/src/org/klomp/snark/SnarkManager.java:1927 #, java-format -msgid "Too many files in \"{0}\" ({1}), deleting it!" -msgstr "PrÃliÅ¡ veľa súborov v \"{0}\" ({1}), odstraňuje sa!" +msgid "Too many files in \"{0}\" ({1})!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1830 +#: ../java/src/org/klomp/snark/SnarkManager.java:1929 #, java-format -msgid "Torrent file \"{0}\" cannot end in \".torrent\", deleting it!" -msgstr "Súbor torrentu \"{0}\" nemôže konÄiÅ¥ na \".torrent\", odstraňuje sa!" +msgid "Torrent file \"{0}\" cannot end in \".torrent\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1832 +#: ../java/src/org/klomp/snark/SnarkManager.java:1931 #, java-format -msgid "No pieces in \"{0}\", deleting it!" -msgstr "V \"{0}\" nie sú žiadne kúsky, odstraňuje sa!" +msgid "No pieces in \"{0}\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1834 +#: ../java/src/org/klomp/snark/SnarkManager.java:1933 #, java-format -msgid "Too many pieces in \"{0}\", limit is {1}, deleting it!" -msgstr "V \"{0}\" je prÃliÅ¡ veľa kúskov, limit je {1}, odstraňuje sa!" +msgid "Too many pieces in \"{0}\", limit is {1}!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1836 +#: ../java/src/org/klomp/snark/SnarkManager.java:1935 #, java-format -msgid "Pieces are too large in \"{0}\" ({1}B), deleting it." -msgstr "Kúsky v \"{0}\" ({1}B) sú prÃliÅ¡ veľké, odstraňuje sa." +msgid "Pieces are too large in \"{0}\" ({1}B)!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1837 +#: ../java/src/org/klomp/snark/SnarkManager.java:1936 #, java-format msgid "Limit is {0}B" msgstr "Limit je {0}B" -#: ../java/src/org/klomp/snark/SnarkManager.java:1839 +#: ../java/src/org/klomp/snark/SnarkManager.java:1938 #, java-format -msgid "Torrent \"{0}\" has no data, deleting it!" -msgstr "Torrent \"{0}\" neobsahuje žiadne dáta, odstraňuje sa!" +msgid "Torrent \"{0}\" has no data!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1847 +#: ../java/src/org/klomp/snark/SnarkManager.java:1946 #, java-format -msgid "Torrents larger than {0}B are not supported yet, deleting \"{1}\"" -msgstr "Torrenty väÄÅ¡ie než {0}B zatiaľ nie sú podporované, odstraňuje sa \"{1}\"" +msgid "Torrents larger than {0}B are not supported yet \"{1}\"!" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1864 +#: ../java/src/org/klomp/snark/SnarkManager.java:1963 #, java-format msgid "Error: Could not remove the torrent {0}" msgstr "Chyba: Nebolo možné odstrániÅ¥ torrent {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1887 -#: ../java/src/org/klomp/snark/SnarkManager.java:1906 +#: ../java/src/org/klomp/snark/SnarkManager.java:1986 +#: ../java/src/org/klomp/snark/SnarkManager.java:2005 #, java-format -msgid "Torrent stopped: \"{0}\"" -msgstr "Torrent bol zastavený: \"{0}\"" +msgid "Torrent stopped: {0}" +msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1926 +#: ../java/src/org/klomp/snark/SnarkManager.java:2025 #, java-format msgid "Torrent removed: \"{0}\"" msgstr "Torrent bol odstránený: \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:1934 +#: ../java/src/org/klomp/snark/SnarkManager.java:2033 #, java-format msgid "Adding torrents in {0}" msgstr "Pridávajú sa torrenty do {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1966 +#: ../java/src/org/klomp/snark/SnarkManager.java:2067 #, java-format msgid "Up bandwidth limit is {0} KBps" msgstr "Limit nárastu Å¡Ãrky pásma je {0} KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:1993 +#: ../java/src/org/klomp/snark/SnarkManager.java:2092 #, java-format msgid "Download finished: {0}" msgstr "SÅ¥ahovanie bolo dokonÄené: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2048 +#: ../java/src/org/klomp/snark/SnarkManager.java:2147 #, java-format msgid "Metainfo received for {0}" msgstr "Metainformácie pre {0} boli doruÄené" -#: ../java/src/org/klomp/snark/SnarkManager.java:2049 -#: ../java/src/org/klomp/snark/SnarkManager.java:2280 +#: ../java/src/org/klomp/snark/SnarkManager.java:2148 +#: ../java/src/org/klomp/snark/SnarkManager.java:2431 #, java-format msgid "Starting up torrent {0}" msgstr "Spúšťa sa torrent {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2064 +#: ../java/src/org/klomp/snark/SnarkManager.java:2163 #, java-format msgid "Error on torrent {0}" msgstr "Chyba na torrente {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2127 +#: ../java/src/org/klomp/snark/SnarkManager.java:2264 msgid "Unable to connect to I2P!" msgstr "Nie je možné sa pripojiÅ¥ k I2P!" -#: ../java/src/org/klomp/snark/SnarkManager.java:2279 +#: ../java/src/org/klomp/snark/SnarkManager.java:2430 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:130 msgid "Opening the I2P tunnel" msgstr "Otvára sa I2P tunel" -#: ../java/src/org/klomp/snark/SnarkManager.java:2303 +#: ../java/src/org/klomp/snark/SnarkManager.java:2450 msgid "Opening the I2P tunnel and starting all torrents." msgstr "Otvára sa I2P tunel a spúšťajú sa vÅ¡etky torrenty." -#: ../java/src/org/klomp/snark/SnarkManager.java:2366 +#: ../java/src/org/klomp/snark/SnarkManager.java:2513 msgid "Stopping all torrents and closing the I2P tunnel." msgstr "Zastavujú sa vÅ¡etky torrenty a zatvára sa I2P tunel." -#: ../java/src/org/klomp/snark/SnarkManager.java:2385 +#: ../java/src/org/klomp/snark/SnarkManager.java:2532 msgid "Closing I2P tunnel after notifying trackers." msgstr "Po upozornenà stopovaÄov sa zatvára I2P tunel." +#: ../java/src/org/klomp/snark/SnarkManager.java:2594 +#, java-format +msgid "Finished recheck of torrent {0}, now {1} complete" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2596 +#, java-format +msgid "Finished recheck of torrent {0}, unchanged" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2600 +#, java-format +msgid "Error checking the torrent {0}" +msgstr "" + #: ../java/src/org/klomp/snark/TrackerClient.java:245 #, java-format msgid "No valid trackers for {0} - enable opentrackers or DHT?" @@ -452,178 +487,178 @@ msgstr "Torrent už vo fronte je: {0}" msgid "Torrent at {0} was not valid" msgstr "Torrent na {0} nebol platný." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:268 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:311 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:322 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1763 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2662 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:270 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:313 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:324 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1778 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2698 msgid "I2PSnark" msgstr "I2PSnark" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:273 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2149 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2422 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2165 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2446 msgid "Configuration" msgstr "Konfigurácia" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:277 msgid "Anonymous BitTorrent Client" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:291 msgid "Router is down" msgstr "Router nie je spustený" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:306 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:308 msgid "Torrents" msgstr "Torrenty" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:319 msgid "Refresh page" msgstr "ObnoviÅ¥ stránku" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:326 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:328 msgid "Forum" msgstr "Fórum" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:341 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:343 msgid "Click \"Add torrent\" button to fetch torrent" msgstr "Kliknite na tlaÄidlo \"PridaÅ¥ torrent\" pre zÃskanie torrentu" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:394 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:396 msgid "clear messages" msgstr "zmazaÅ¥ správy" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:449 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2980 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3072 msgid "Status" msgstr "Stav" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2994 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:453 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3086 #, java-format msgid "Sort by {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:462 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:464 msgid "Hide Peers" msgstr "SkryÅ¥ peerov" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:468 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:470 msgid "Show Peers" msgstr "ZobraziÅ¥ peerov" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:491 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2648 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2718 msgid "Torrent" msgstr "Torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "File type" msgstr "" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:509 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 msgid "ETA" msgstr "ETA" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:512 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:514 msgid "Estimated time remaining" msgstr "Odhadovaný zostávajúci Äas" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:535 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 msgid "RX" msgstr "RX" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:538 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:540 msgid "Downloaded" msgstr "Stiahnuté" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2818 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2968 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2878 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3060 msgid "Size" msgstr "VeľkosÅ¥" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 msgid "TX" msgstr "TX" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2896 msgid "Upload ratio" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:569 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:571 msgid "Uploaded" msgstr "Uploadnuté" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:581 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 msgid "RX Rate" msgstr "RX sadzba" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:584 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:586 msgid "Down Rate" msgstr "Dolná sadzba" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:596 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 msgid "TX Rate" msgstr "TX sadzba" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:599 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:601 msgid "Up Rate" msgstr "Horná sadzba" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:615 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 msgid "Stop all torrents and the I2P tunnel" msgstr "ZastaviÅ¥ vÅ¡etky torrenty a I2P tunel" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:619 msgid "Stop All" msgstr "ZastaviÅ¥ vÅ¡etko" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:629 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 msgid "Start all stopped torrents" msgstr "SpustiÅ¥ vÅ¡etky zastavené torrenty" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:633 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:647 msgid "Start All" msgstr "SpustiÅ¥ vÅ¡etko" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:643 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 msgid "Start all torrents and the I2P tunnel" msgstr "SpustiÅ¥ vÅ¡etky torrenty a I2P tunel" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:668 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:670 msgid "No torrents loaded." msgstr "Neboli naÄÃtané žiadne torrenty." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:674 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 msgid "Totals" msgstr "Súhrny" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:678 #, java-format msgid "1 torrent" msgid_plural "{0} torrents" @@ -631,7 +666,7 @@ msgstr[0] "1 torrent" msgstr[1] "{0} torrenty" msgstr[2] "{0} torrentov" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:683 #, java-format msgid "1 connected peer" msgid_plural "{0} connected peers" @@ -639,7 +674,7 @@ msgstr[0] "1 pripojený peer" msgstr[1] "{0} pripojenà peerovia" msgstr[2] "{0} pripojených peerov" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:688 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:690 #, java-format msgid "1 DHT peer" msgid_plural "{0} DHT peers" @@ -647,207 +682,202 @@ msgstr[0] "1 DHT peer" msgstr[1] "{0} DHT peerovia" msgstr[2] "{0} DHT peerov" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:695 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:697 msgid "Dest" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First" msgstr "Prvé" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First page" msgstr "Prvá stránka" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Prev" msgstr "Predchádzajúce" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Previous page" msgstr "Predchádzajúca stránka" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next" msgstr "Nasledujúce" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next page" msgstr "Nasledujúca stránka" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last" msgstr "Posledné" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last page" msgstr "Posledná stránka" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:960 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:962 msgid "Data directory cannot be created" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1176 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:972 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1185 #, java-format msgid "Cannot add torrent {0} inside another torrent: {1}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:985 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:993 #, java-format msgid "Invalid URL: Must start with \"http://\", \"{0}\", or \"{1}\"" msgstr "Neplatná URL: Musà zaÄÃnaÅ¥ na \"http://\", \"{0}\" alebo \"{1}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1026 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1063 #, java-format msgid "Magnet deleted: {0}" msgstr "Magnet bol odstránený: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1061 #, java-format -msgid "Torrent file deleted: {0}" -msgstr "Súbor torrentu bol odstránený: {0}" - -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1053 -#, java-format msgid "Download deleted: {0}" msgstr "SÅ¥ahovanie odstránené: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1070 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1078 #, java-format msgid "Data file deleted: {0}" msgstr "Dátový súbor bol odstránený: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1072 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1089 #, java-format msgid "Data file could not be deleted: {0}" msgstr "Dátový súbor nemohol byÅ¥ odstránený: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1097 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1105 #, java-format msgid "Directory could not be deleted: {0}" msgstr "PrieÄinok nemohol byÅ¥ odstránený: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1112 #, java-format msgid "Directory deleted: {0}" msgstr "PrieÄinok bol odstránený: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1155 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1164 #, java-format msgid "Cannot add a torrent ending in \".torrent\": {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1160 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1169 #, java-format msgid "Torrent with this name is already running: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1175 #, java-format msgid "Cannot add a torrent including an I2P directory: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1181 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1190 #, java-format msgid "Cannot add torrent {0} including another torrent: {1}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1216 msgid "Error - Cannot include alternate trackers without a primary tracker" msgstr "Chyba - Nie je možné zahrnúť alternatÃvne stopovaÄe bez toho primárneho" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1220 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1229 msgid "Error - Cannot mix private and public trackers in a torrent" msgstr "Chyba - Nie je možné zmieÅ¡aÅ¥ v torrente súkromné aj verejné stopovaÄe" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1251 #, java-format msgid "Torrent created for \"{0}\"" msgstr "Pre \"{0}\" bol vytvorený torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1244 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 #, java-format msgid "" "Many I2P trackers require you to register new torrents before seeding - " "please do so before starting \"{0}\"" msgstr "Mnoho I2P stopovaÄov od vás vyžaduje registrovaÅ¥ pred seedovanÃm nové torrenty - prosÃm urobte tak pred spustenÃm \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1255 #, java-format msgid "Error creating a torrent for \"{0}\"" msgstr "Chyba pri vytváranà torrentu pre \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1250 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1259 #, java-format msgid "Cannot create a torrent for the nonexistent data: {0}" msgstr "Nie je možné vytvoriÅ¥ torrent pre neexistujúce dáta: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1262 msgid "Error creating torrent - you must enter a file or directory" msgstr "Chyba pri vytváranà torrentu - musÃte zadaÅ¥ súbor alebo prieÄinok" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2406 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2430 msgid "Delete selected" msgstr "Zvolená možnosÅ¥ odstrániÅ¥" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2408 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2432 msgid "Save tracker configuration" msgstr "UložiÅ¥ konfiguráciu stopovaÄa" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1301 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1310 msgid "Removed" msgstr "Odstránené" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1333 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2405 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2407 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1342 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2429 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2431 msgid "Add tracker" msgstr "PridaÅ¥ stopovaÄ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1356 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1359 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1365 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1368 msgid "Enter valid tracker name and URLs" msgstr "Zadajte platný názov a URL stopovaÄa" #. "<input type=\"reset\" class=\"cancel\" #. value=\"").append(_t("Cancel")).append("\">\n" + -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1361 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2410 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1370 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2434 msgid "Restore defaults" msgstr "ObnoviÅ¥ predvolené nastavenia" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1373 msgid "Restored default trackers" msgstr "ObnoviÅ¥ predvolené stopovaÄe" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1472 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1473 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1485 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1486 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2949 msgid "Checking" msgstr "Kontroluje sa" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1475 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1476 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1489 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2956 msgid "Allocating" msgstr "Alokuje sa" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1499 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1505 msgid "Tracker Error" msgstr "Chyba stopovaÄa" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1492 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1522 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1527 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1538 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1543 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1554 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1507 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1537 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1542 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1553 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1558 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1569 #, java-format msgid "1 peer" msgid_plural "{0} peers" @@ -855,366 +885,377 @@ msgstr[0] "1 peer" msgstr[1] "{0} peerovia" msgstr[2] "{0} peerov" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1502 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1503 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1517 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1518 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2954 msgid "Starting" msgstr "Spúšťa sa" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1511 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1526 msgid "Seeding" msgstr "Seeduje sa" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1515 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1529 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1530 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2831 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1544 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2891 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3139 msgid "Complete" msgstr "DokonÄené" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1534 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1535 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1540 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1541 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1550 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1555 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 msgid "OK" msgstr "OK" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1546 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1551 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1552 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1567 msgid "Stalled" msgstr "Zablokované" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1557 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1571 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1572 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1575 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1576 msgid "No Peers" msgstr "Žiadni peerovia" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1563 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1578 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1579 msgid "Stopped" msgstr "Zastavené" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1593 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1608 msgid "Torrent details" msgstr "Detaily torrentu" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1628 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1643 msgid "View files" msgstr "ZobraziÅ¥ súbory" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1630 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1645 msgid "Open file" msgstr "OtvoriÅ¥ súbor" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1682 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 msgid "Stop the torrent" msgstr "ZastaviÅ¥ torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2961 msgid "Stop" msgstr "ZastaviÅ¥" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 msgid "Start the torrent" msgstr "SpustiÅ¥ torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1714 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2963 msgid "Start" msgstr "SpustiÅ¥" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1727 msgid "Remove the torrent from the active list, deleting the .torrent file" msgstr "OdstrániÅ¥ torrent zo zoznamu aktÃvnych zmazanÃm .torrent súboru." #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1717 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1732 #, java-format msgid "" "Are you sure you want to delete the file \\''{0}\\'' (downloaded data will " "not be deleted) ?" msgstr "Ste si istý, že chcete odstrániÅ¥ súbor \\\"{0}\\\"\n(stiahnuté dáta nebudú odstránené) ?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1721 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1736 msgid "Remove" msgstr "OdstrániÅ¥" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1734 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1749 msgid "Delete the .torrent file and the associated data file(s)" msgstr "OdstrániÅ¥ .torrent súbor a aj prÃsluÅ¡ný dátový súbor(y)" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1739 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1754 #, java-format msgid "" "Are you sure you want to delete the torrent \\''{0}\\'' and all downloaded " "data?" msgstr "Ste si istý, že chcete odstrániÅ¥ torrent \\\"{0}\\\" a s nÃm aj vÅ¡etky stiahnuté dáta?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1743 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1758 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2388 msgid "Delete" msgstr "ZmazaÅ¥" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1779 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1794 msgid "Unknown" msgstr "Neznáme" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1791 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1806 msgid "Seed" msgstr "Seed" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1814 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1829 msgid "Uninteresting (The peer has no pieces we need)" msgstr "NezaujÃmavý (Peer nemá žiadne kúsky, ktoré potrebujeme)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1816 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1831 msgid "Choked (The peer is not allowing us to request pieces)" msgstr "Zapchaný (Peer nám neumožňuje žiadaÅ¥ o kúsky)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1851 msgid "Uninterested (We have no pieces the peer needs)" msgstr "NezaujÃmajúci sa (Nemáme žiadne kúsky, ktoré peer potrebuje)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1838 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1853 msgid "Choking (We are not allowing the peer to request pieces)" msgstr "Zapchaný (Neumožňujeme peerovi žiadaÅ¥ o kúsky)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1954 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1969 #, java-format msgid "Details at {0} tracker" msgstr "Detaily sú v {0} stopovaÄi" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1971 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1986 msgid "Info" msgstr "Informácie" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 msgid "Add Torrent" msgstr "PridaÅ¥ torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 msgid "From URL" msgstr "Z URL" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2050 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2065 msgid "" "Enter the torrent file download URL (I2P only), magnet link, maggot link, or" " info hash" msgstr "Zadajte URL (iba I2P) pre stiahnutie torrentu, magnetový alebo maggotový link, prÃpadne info hash" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2070 msgid "Add torrent" msgstr "PridaÅ¥ torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2074 msgid "Data dir" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2077 #, java-format msgid "Enter the directory to save the data in (default {0})" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2066 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 #, java-format msgid "You can also copy .torrent files to: {0}." msgstr "Môžete tiež skopÃrovaÅ¥ .torrent súbory do: {0}." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2068 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2083 msgid "Removing a .torrent will cause it to stop." msgstr "Odstránenie .torrent spôsobà jeho zastavenie." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2096 msgid "Create Torrent" msgstr "VytvoriÅ¥ torrent" #. out.write("From file: <input type=\"file\" name=\"newFile\" size=\"50\" #. value=\"" + newFile + "\" /><br>\n"); -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2084 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2099 msgid "Data to seed" msgstr "Dáta na seedovanie" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2088 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2103 #, java-format msgid "File or directory to seed (full path or within the directory {0} )" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2091 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2337 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2106 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2361 msgid "Trackers" msgstr "StopovaÄe" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2093 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2108 msgid "Primary" msgstr "Primárne" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2095 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2110 msgid "Alternates" msgstr "AlternatÃvne" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2098 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2113 msgid "Create torrent" msgstr "VytvoriÅ¥ torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2116 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2131 msgid "none" msgstr "žiadne" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2153 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2169 msgid "Data directory" msgstr "Dátový prieÄinok" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2158 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 msgid "Files readable by all" msgstr "Súbory Äitateľné vÅ¡etkými" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2162 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2178 msgid "If checked, other users may access the downloaded files" msgstr "Ak je zaÅ¡krtnuté, ostatnà užÃvatelia budú môcÅ¥ pristupovaÅ¥ k stiahnutým súborom" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2182 msgid "Auto start torrents" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2170 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2186 msgid "If checked, automatically start torrents that are added" msgstr "Ak je zaÅ¡krtnuté, automaticky sa spustia pridané torrenty" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2190 +msgid "Smart torrent sorting" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2194 +msgid "If checked, ignore words such as 'the' when sorting" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2198 msgid "Theme" msgstr "Téma" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2188 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2212 msgid "Refresh time" msgstr "ÄŒas refreshu" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2201 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2225 msgid "Never" msgstr "Nikdy" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2231 msgid "Startup delay" msgstr "Zdržanie pri spustenÃ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2209 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2233 msgid "minutes" msgstr "minúty" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2213 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2237 msgid "Page size" msgstr "VeľkosÅ¥ stránky" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2215 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 msgid "torrents" msgstr "torrentov" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 msgid "Total uploader limit" msgstr "Celkový limit uploaderov" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2266 msgid "peers" msgstr "peerovia" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2270 msgid "Up bandwidth limit" msgstr "Limit nárastu Å¡Ãrky pásma" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2249 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2273 msgid "Half available bandwidth recommended." msgstr "OdporúÄa sa polovica dostupnej Å¡Ãrky pásma." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2251 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2275 msgid "View or change router bandwidth" msgstr "ZobraziÅ¥ alebo zmeniÅ¥ Å¡Ãrku pásma routra" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2255 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2279 msgid "Use open trackers also" msgstr "PoužiÅ¥ aj otvorené stopovaÄe" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2259 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 msgid "" "If checked, announce torrents to open trackers as well as the tracker listed" " in the torrent file" msgstr "Ak je zaÅ¡krtnuté, otvorené stopovaÄe tak isto ako aj stopovaÄe vypÃsané v súbore torrentu sa oboznámia so vÅ¡etkými torrentmi" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2287 msgid "Enable DHT" msgstr "PovoliÅ¥ DHT" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2267 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2291 msgid "If checked, use DHT" msgstr "Ak je zaÅ¡krtnuté, použije sa DHT" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2307 msgid "Inbound Settings" msgstr "Nastavenia prichádzajúcich dát" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2313 msgid "Outbound Settings" msgstr "Nastavenia odchádzajúcich dát" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2297 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2321 msgid "I2CP host" msgstr "I2CP host" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2302 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2326 msgid "I2CP port" msgstr "I2CP port" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2341 msgid "I2CP options" msgstr "I2CP nastavenia" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2322 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 msgid "Save configuration" msgstr "UložiÅ¥ konfiguráciu" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2342 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2366 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "Name" msgstr "Názov" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2344 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2368 msgid "Website URL" msgstr "URL webovej stránky" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2370 msgid "Standard" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2348 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2372 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3172 msgid "Open" msgstr "OtvoriÅ¥" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2350 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2374 msgid "Private" msgstr "Súkromné" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2352 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2376 msgid "Announce URL" msgstr "OznámiÅ¥ URL" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2396 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2420 msgid "Add" msgstr "PridaÅ¥" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2439 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2463 #, java-format msgid "Invalid magnet URL {0}" msgstr "Neplatná magnetová URL {0}" #. * dummies for translation -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2447 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2471 #, java-format msgid "1 hop" msgid_plural "{0} hops" @@ -1222,7 +1263,7 @@ msgstr[0] "1 hop" msgstr[1] "{0} hopy" msgstr[2] "{0} hopov" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2448 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2472 #, java-format msgid "1 tunnel" msgid_plural "{0} tunnels" @@ -1230,119 +1271,135 @@ msgstr[0] "1 tunel" msgstr[1] "{0} tunely" msgstr[2] "{0} tunelov" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2691 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2728 msgid "Torrent file" msgstr "Súbor torrentu" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 msgid "Data location" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2708 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2745 msgid "Info hash" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2727 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2764 msgid "Primary Tracker" msgstr "Primárny stopovaÄ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2773 msgid "Tracker List" msgstr "Zoznam stopovaÄov" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2761 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2798 msgid "Comment" msgstr "Komentár" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2771 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2812 msgid "Created" msgstr "Vytvorené" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2782 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2823 msgid "Created By" msgstr "Vytvorené užÃvateľom" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2794 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2833 +msgid "Added" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2842 +msgid "Completed" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2854 msgid "Magnet link" msgstr "Magnetový link" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2807 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2867 msgid "Private torrent" msgstr "Súkromný torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2827 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2887 msgid "Completion" msgstr "DokonÄenie" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2856 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2916 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 msgid "Remaining" msgstr "Zostávajúce" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2926 msgid "Files" msgstr "Súbory" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2873 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 msgid "Pieces" msgstr "Kúsky" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2879 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2939 msgid "Piece size" msgstr "VeľkosÅ¥ kúsku" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2952 +msgid "Refresh page for results" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2964 +msgid "Force Recheck" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3025 msgid "Directory" msgstr "PrieÄinok" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2992 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3084 msgid "Priority" msgstr "Priorita" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3004 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3096 msgid "Up to higher level directory" msgstr "Hore do prieÄinka vyššej úrovne" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3038 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3130 msgid "Torrent not found?" msgstr "Torrent nenájdený?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3136 msgid "File not found in torrent?" msgstr "Súbor nenájdený v torrente?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3057 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3149 msgid "complete" msgstr "dokonÄiÅ¥" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3058 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3150 msgid "remaining" msgstr "zostávajúcich" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3196 msgid "High" msgstr "Vysoká" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3109 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3201 msgid "Normal" msgstr "Normálna" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3114 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3206 msgid "Skip" msgstr "PreskoÄiÅ¥" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3124 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3216 msgid "Set all high" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3126 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3218 msgid "Set all normal" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3128 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3220 msgid "Skip all" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3129 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3221 msgid "Save priorities" msgstr "UložiÅ¥ priority" diff --git a/apps/i2psnark/locale/messages_sv.po b/apps/i2psnark/locale/messages_sv.po index ec566c4eb56dbb995e0d4ed3118f3fded019af63..60bf28a92bca9fc7788f10fdbc22943cac1f7cc6 100644 --- a/apps/i2psnark/locale/messages_sv.po +++ b/apps/i2psnark/locale/messages_sv.po @@ -5,6 +5,7 @@ # # Translators: # 123hund123 <M8R-ra4r1r@mailinator.com>, 2011 +# Anders Nilsson <locally@devode.se>, 2015 # Calle Rundgren <samaire@samaire.net>, 2013 # ducki2p <ducki2p@gmail.com>, 2011 # cacapo <handelsehorisont@gmail.com>, 2015 @@ -18,10 +19,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:09+0000\n" -"PO-Revision-Date: 2015-07-19 09:58+0000\n" -"Last-Translator: cacapo <handelsehorisont@gmail.com>\n" -"Language-Team: Swedish (Sweden) (http://www.transifex.com/projects/p/I2P/language/sv_SE/)\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-08 21:08+0000\n" +"Last-Translator: Anders Nilsson <locally@devode.se>\n" +"Language-Team: Swedish (Sweden) (http://www.transifex.com/otf/I2P/language/sv_SE/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -30,225 +31,233 @@ msgstr "" #: ../java/src/org/klomp/snark/IdleChecker.java:75 msgid "No more torrents running." -msgstr "Inga mer torrents kör." +msgstr "Inga fler torrents kör." #: ../java/src/org/klomp/snark/IdleChecker.java:76 -#: ../java/src/org/klomp/snark/SnarkManager.java:2392 -#: ../java/src/org/klomp/snark/SnarkManager.java:2403 +#: ../java/src/org/klomp/snark/SnarkManager.java:2539 +#: ../java/src/org/klomp/snark/SnarkManager.java:2550 msgid "I2P tunnel closed." msgstr "I2P-tunneln är stängd." #: ../java/src/org/klomp/snark/MagnetURI.java:42 #: ../java/src/org/klomp/snark/MagnetURI.java:52 -#: ../java/src/org/klomp/snark/SnarkManager.java:2096 +#: ../java/src/org/klomp/snark/SnarkManager.java:2221 msgid "Magnet" msgstr "Magnet" -#: ../java/src/org/klomp/snark/SnarkManager.java:772 +#: ../java/src/org/klomp/snark/SnarkManager.java:791 #, java-format msgid "Total uploaders limit changed to {0}" msgstr "Gräns för totalt antal uppladdare är bytt till {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:774 +#: ../java/src/org/klomp/snark/SnarkManager.java:793 #, java-format msgid "Minimum total uploaders limit is {0}" msgstr "Minsta tillÃ¥tna gräns för uppladdare är {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:786 +#: ../java/src/org/klomp/snark/SnarkManager.java:805 #, java-format msgid "Up BW limit changed to {0}KBps" msgstr "Uppladdningsbandbredd bytt till {0}KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:788 +#: ../java/src/org/klomp/snark/SnarkManager.java:807 #, java-format msgid "Minimum up bandwidth limit is {0}KBps" msgstr "Minsta uppladdningsbandbredd bytt till {0}KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:800 +#: ../java/src/org/klomp/snark/SnarkManager.java:819 #, java-format msgid "Startup delay changed to {0}" msgstr "Fördröjning vid uppstart bytt till {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:811 +#: ../java/src/org/klomp/snark/SnarkManager.java:830 #, java-format msgid "Refresh time changed to {0}" msgstr "Uppdateringstiden ändrad till {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:813 +#: ../java/src/org/klomp/snark/SnarkManager.java:832 msgid "Refresh disabled" msgstr "Uppdatering inaktiverad" -#: ../java/src/org/klomp/snark/SnarkManager.java:829 +#: ../java/src/org/klomp/snark/SnarkManager.java:848 #, java-format msgid "Page size changed to {0}" msgstr "Torrentar per sida ändrat till {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:838 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:956 +#: ../java/src/org/klomp/snark/SnarkManager.java:857 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:958 msgid "Data directory must be an absolute path" msgstr "Datamappen mÃ¥ste vara en absolut sökväg" -#: ../java/src/org/klomp/snark/SnarkManager.java:840 +#: ../java/src/org/klomp/snark/SnarkManager.java:859 msgid "Data directory does not exist" msgstr "Datamappen finns ej" -#: ../java/src/org/klomp/snark/SnarkManager.java:842 +#: ../java/src/org/klomp/snark/SnarkManager.java:861 msgid "Not a directory" msgstr "Inte en mapp" -#: ../java/src/org/klomp/snark/SnarkManager.java:844 +#: ../java/src/org/klomp/snark/SnarkManager.java:863 msgid "Unreadable" msgstr "Oläsbar" -#: ../java/src/org/klomp/snark/SnarkManager.java:849 +#: ../java/src/org/klomp/snark/SnarkManager.java:868 #, java-format msgid "Data directory changed to {0}" msgstr "Datamappen ändrad till {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:904 +#: ../java/src/org/klomp/snark/SnarkManager.java:923 msgid "I2CP and tunnel changes will take effect after stopping all torrents" msgstr "I2CP- och tunnelförändringar kommer träda i kraft efter alla torrentar stoppats" -#: ../java/src/org/klomp/snark/SnarkManager.java:908 +#: ../java/src/org/klomp/snark/SnarkManager.java:927 #, java-format msgid "I2CP options changed to {0}" msgstr "Alternativ för I2CP ändrade till {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:914 +#: ../java/src/org/klomp/snark/SnarkManager.java:933 msgid "Disconnecting old I2CP destination" msgstr "Kopplar ifrÃ¥n gammal I2CP destination" -#: ../java/src/org/klomp/snark/SnarkManager.java:916 +#: ../java/src/org/klomp/snark/SnarkManager.java:935 #, java-format msgid "I2CP settings changed to {0}" msgstr "Inställningar för I2CP ändrade till {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:921 +#: ../java/src/org/klomp/snark/SnarkManager.java:940 msgid "" "Unable to connect with the new settings, reverting to the old I2CP settings" msgstr "Misslyckades med anslutningsförsök med nya inställningar, Ã¥terställer de gamla I2CP inställningarna" -#: ../java/src/org/klomp/snark/SnarkManager.java:925 +#: ../java/src/org/klomp/snark/SnarkManager.java:944 msgid "Unable to reconnect with the old settings!" msgstr "Misslyckades med anslutningsförsök med gamla inställningar!" -#: ../java/src/org/klomp/snark/SnarkManager.java:927 +#: ../java/src/org/klomp/snark/SnarkManager.java:946 msgid "Reconnected on the new I2CP destination" msgstr "Ã…teranslöt mot den nya I2CP destinationen" -#: ../java/src/org/klomp/snark/SnarkManager.java:934 +#: ../java/src/org/klomp/snark/SnarkManager.java:953 #, java-format msgid "I2CP listener restarted for \"{0}\"" msgstr "I2CP-lyssnare omstartad för \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:948 +#: ../java/src/org/klomp/snark/SnarkManager.java:967 msgid "New files will be publicly readable" msgstr "Nya filer kommer vara publikt läsbara" -#: ../java/src/org/klomp/snark/SnarkManager.java:950 +#: ../java/src/org/klomp/snark/SnarkManager.java:969 msgid "New files will not be publicly readable" msgstr "Nya filer kommer inte vara publikt läsbara" -#: ../java/src/org/klomp/snark/SnarkManager.java:957 +#: ../java/src/org/klomp/snark/SnarkManager.java:976 msgid "Enabled autostart" msgstr "Aktiverade automatisk start" -#: ../java/src/org/klomp/snark/SnarkManager.java:959 +#: ../java/src/org/klomp/snark/SnarkManager.java:978 msgid "Disabled autostart" msgstr "Inaktiverade automatisk start" -#: ../java/src/org/klomp/snark/SnarkManager.java:965 +#: ../java/src/org/klomp/snark/SnarkManager.java:985 +msgid "Enabled smart sort" +msgstr "Aktiverade smart sortering" + +#: ../java/src/org/klomp/snark/SnarkManager.java:987 +msgid "Disabled smart sort" +msgstr "Inaktiverade smart sortering" + +#: ../java/src/org/klomp/snark/SnarkManager.java:994 msgid "Enabled open trackers - torrent restart required to take effect." msgstr "Aktiverade publika trackers - torrenten mÃ¥ste startas om för att inställningen ska träda i kraft" -#: ../java/src/org/klomp/snark/SnarkManager.java:967 +#: ../java/src/org/klomp/snark/SnarkManager.java:996 msgid "Disabled open trackers - torrent restart required to take effect." msgstr "Inaktiverade publika trackers - torrenten mÃ¥ste startas om för att inställningen ska träda i kraft" -#: ../java/src/org/klomp/snark/SnarkManager.java:974 +#: ../java/src/org/klomp/snark/SnarkManager.java:1003 msgid "Enabled DHT." msgstr "Aktivera DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:976 +#: ../java/src/org/klomp/snark/SnarkManager.java:1005 msgid "Disabled DHT." msgstr "Inaktiverade DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:978 +#: ../java/src/org/klomp/snark/SnarkManager.java:1007 msgid "DHT change requires tunnel shutdown and reopen" msgstr "Förändring i DHT kräver att tunneln stängs och öppnas igen " -#: ../java/src/org/klomp/snark/SnarkManager.java:985 +#: ../java/src/org/klomp/snark/SnarkManager.java:1014 #, java-format msgid "{0} theme loaded, return to main i2psnark page to view." msgstr "{0} tema laddat, Ã¥tergÃ¥ till huvudvyn för i2psnark." -#: ../java/src/org/klomp/snark/SnarkManager.java:995 +#: ../java/src/org/klomp/snark/SnarkManager.java:1024 msgid "Configuration unchanged." msgstr "Inställningar oförändrade." -#: ../java/src/org/klomp/snark/SnarkManager.java:1027 +#: ../java/src/org/klomp/snark/SnarkManager.java:1056 msgid "Open Tracker list changed - torrent restart required to take effect." msgstr "Listan över publika trackers förändrad - torrenten mÃ¥ste startas om för att inställningen ska träda i kraft" -#: ../java/src/org/klomp/snark/SnarkManager.java:1037 +#: ../java/src/org/klomp/snark/SnarkManager.java:1066 msgid "Private tracker list changed - affects newly created torrents only." msgstr "Privat trackerlista ändrad - pÃ¥verkar bara nyligen skapade torrents" -#: ../java/src/org/klomp/snark/SnarkManager.java:1083 +#: ../java/src/org/klomp/snark/SnarkManager.java:1112 #, java-format msgid "Unable to save the config to {0}" msgstr "Misslyckades med att spara inställningar till {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1164 +#: ../java/src/org/klomp/snark/SnarkManager.java:1193 msgid "Connecting to I2P" msgstr "Ansluter till I2P" -#: ../java/src/org/klomp/snark/SnarkManager.java:1167 +#: ../java/src/org/klomp/snark/SnarkManager.java:1196 msgid "Error connecting to I2P - check your I2CP settings!" msgstr "Problem vid anslutning till I2P - kontrollera dina inställningar för I2CP!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1176 -#: ../java/src/org/klomp/snark/SnarkManager.java:2133 +#: ../java/src/org/klomp/snark/SnarkManager.java:1205 +#: ../java/src/org/klomp/snark/SnarkManager.java:2270 #, java-format msgid "Error: Could not add the torrent {0}" msgstr "Problem: Kunde inte lägga till torrent {0}" #. catch this here so we don't try do delete it below -#: ../java/src/org/klomp/snark/SnarkManager.java:1199 +#: ../java/src/org/klomp/snark/SnarkManager.java:1228 #, java-format msgid "Cannot open \"{0}\"" msgstr "Kan inte öppna \"{0}\"" #. TODO - if the existing one is a magnet, delete it and add the metainfo #. instead? -#: ../java/src/org/klomp/snark/SnarkManager.java:1218 -#: ../java/src/org/klomp/snark/SnarkManager.java:1352 -#: ../java/src/org/klomp/snark/SnarkManager.java:1440 +#: ../java/src/org/klomp/snark/SnarkManager.java:1247 +#: ../java/src/org/klomp/snark/SnarkManager.java:1388 +#: ../java/src/org/klomp/snark/SnarkManager.java:1476 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:166 #, java-format msgid "Torrent with this info hash is already running: {0}" msgstr "Torrent med denna infohash körs redan: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1224 +#: ../java/src/org/klomp/snark/SnarkManager.java:1253 #, java-format msgid "ERROR - No I2P trackers in private torrent \"{0}\"" msgstr "FEL - Inga I2P trackers i den privata torrenten \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:1226 +#: ../java/src/org/klomp/snark/SnarkManager.java:1255 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", will announce to I2P open trackers and" " DHT only." msgstr "Varning - Ingen I2P tracker i \"{0}\", kommer enbart att annonsera till publika I2P trackers och DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:1229 +#: ../java/src/org/klomp/snark/SnarkManager.java:1258 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and open trackers are disabled, will " "announce to DHT only." msgstr "Varning - Ingen I2P tracker i \"{0}\" och publika trackers är inaktiverade, kommer enbart att annonsera till DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:1231 +#: ../java/src/org/klomp/snark/SnarkManager.java:1260 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and DHT and open trackers are " @@ -256,34 +265,46 @@ msgid "" "torrent." msgstr "Varning - Ingen I2P tracker i \"{0}\" och bÃ¥de DHT och publika trackers är inaktiverade, du bör aktivera publika trackers eller DHT innan du startar torrenten. " -#: ../java/src/org/klomp/snark/SnarkManager.java:1257 +#: ../java/src/org/klomp/snark/SnarkManager.java:1286 #, java-format msgid "Torrent in \"{0}\" is invalid" msgstr "Torrent i \"{0}\" är ogiltig" -#: ../java/src/org/klomp/snark/SnarkManager.java:1264 +#: ../java/src/org/klomp/snark/SnarkManager.java:1292 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1042 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1069 +#, java-format +msgid "Torrent file deleted: {0}" +msgstr "Torrentfil borttagen: {0}" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1295 +#, java-format +msgid "Torrent file moved from {0} to {1}" +msgstr "Torrentfil flyttad frÃ¥n {0} till {1}" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1299 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:193 #, java-format msgid "ERROR - Out of memory, cannot create torrent from {0}" msgstr "FEL - Minnet har tagit slut, kan inte skapa torrent frÃ¥n {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1285 +#: ../java/src/org/klomp/snark/SnarkManager.java:1321 #, java-format -msgid "Torrent added and started: \"{0}\"" -msgstr "Torrent tillagd och startad: \"{0}\"" +msgid "Torrent added and started: {0}" +msgstr "Torrent tillagd och startad: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1287 +#: ../java/src/org/klomp/snark/SnarkManager.java:1323 #, java-format -msgid "Torrent added: \"{0}\"" -msgstr "Torrent tillagd: \"{0}\"" +msgid "Torrent added: {0}" +msgstr "Torrent tillagd: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1363 +#: ../java/src/org/klomp/snark/SnarkManager.java:1399 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:93 #, java-format msgid "Fetching {0}" msgstr "Hämtar {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1369 +#: ../java/src/org/klomp/snark/SnarkManager.java:1405 #, java-format msgid "" "Open trackers are disabled and we have no DHT peers. Fetch of {0} may not " @@ -291,131 +312,146 @@ msgid "" "DHT." msgstr "Publika trackers är inaktiverade och vi har inga DHT klienter. Hämtningen av {0} kan kanske inte genomföras innan du startar en annan torrent eller aktiverar publika trackers eller DHT." -#: ../java/src/org/klomp/snark/SnarkManager.java:1373 +#: ../java/src/org/klomp/snark/SnarkManager.java:1409 #, java-format msgid "Adding {0}" msgstr "Lägger till {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1406 +#: ../java/src/org/klomp/snark/SnarkManager.java:1442 #, java-format msgid "Download already running: {0}" msgstr "Hämtar redan: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1451 -#: ../java/src/org/klomp/snark/SnarkManager.java:1477 -#: ../java/src/org/klomp/snark/SnarkManager.java:2052 +#: ../java/src/org/klomp/snark/SnarkManager.java:1487 +#: ../java/src/org/klomp/snark/SnarkManager.java:1513 +#: ../java/src/org/klomp/snark/SnarkManager.java:2151 #, java-format msgid "Failed to copy torrent file to {0}" msgstr "Misslyckades att kopiera torrentfil till {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1828 +#: ../java/src/org/klomp/snark/SnarkManager.java:1927 #, java-format -msgid "Too many files in \"{0}\" ({1}), deleting it!" -msgstr "För mÃ¥nga filer i \"{0}\" ({1}), tar bort den!" +msgid "Too many files in \"{0}\" ({1})!" +msgstr "För mÃ¥nga filer i \"{0}\" ({1})!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1830 +#: ../java/src/org/klomp/snark/SnarkManager.java:1929 #, java-format -msgid "Torrent file \"{0}\" cannot end in \".torrent\", deleting it!" -msgstr "Torrenten \"{0}\" fÃ¥r inte sluta med \".torrent\", tar bort den!" +msgid "Torrent file \"{0}\" cannot end in \".torrent\"!" +msgstr "Torrentfilen \"{0}\" kan inte sluta pÃ¥ \".torrent\"!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1832 +#: ../java/src/org/klomp/snark/SnarkManager.java:1931 #, java-format -msgid "No pieces in \"{0}\", deleting it!" -msgstr "Inga delar i \"{0}\", tar bort den!" +msgid "No pieces in \"{0}\"!" +msgstr "Inga delar i \"{0}\"!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1834 +#: ../java/src/org/klomp/snark/SnarkManager.java:1933 #, java-format -msgid "Too many pieces in \"{0}\", limit is {1}, deleting it!" -msgstr "För mÃ¥nga delar i \"{0}\", gränsen är {1}, tar bort den!" +msgid "Too many pieces in \"{0}\", limit is {1}!" +msgstr "För mÃ¥nga delar i \"{0}\", gränsen är {1}!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1836 +#: ../java/src/org/klomp/snark/SnarkManager.java:1935 #, java-format -msgid "Pieces are too large in \"{0}\" ({1}B), deleting it." -msgstr "För stora delar i \"{0}\" ({1}B), tar bort den!" +msgid "Pieces are too large in \"{0}\" ({1}B)!" +msgstr "Delarna är för stora i \"{0}\" ({1}B)!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1837 +#: ../java/src/org/klomp/snark/SnarkManager.java:1936 #, java-format msgid "Limit is {0}B" msgstr "Gränsen är {0}B" -#: ../java/src/org/klomp/snark/SnarkManager.java:1839 +#: ../java/src/org/klomp/snark/SnarkManager.java:1938 #, java-format -msgid "Torrent \"{0}\" has no data, deleting it!" -msgstr "Torrenten \"{0}\" har ingen data, tar bort den!" +msgid "Torrent \"{0}\" has no data!" +msgstr "Torrent \"{0}\" har ingen data!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1847 +#: ../java/src/org/klomp/snark/SnarkManager.java:1946 #, java-format -msgid "Torrents larger than {0}B are not supported yet, deleting \"{1}\"" -msgstr "Torrentar större än {0}B stöds inte än, tar bort \"{1}\"" +msgid "Torrents larger than {0}B are not supported yet \"{1}\"!" +msgstr "Torrents större än {0}B stöds inte än \"{1}\"!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1864 +#: ../java/src/org/klomp/snark/SnarkManager.java:1963 #, java-format msgid "Error: Could not remove the torrent {0}" msgstr "Fel: Kunde ej ta bort torrenten {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1887 -#: ../java/src/org/klomp/snark/SnarkManager.java:1906 +#: ../java/src/org/klomp/snark/SnarkManager.java:1986 +#: ../java/src/org/klomp/snark/SnarkManager.java:2005 #, java-format -msgid "Torrent stopped: \"{0}\"" -msgstr "Torrent stannad: \"{0}\"" +msgid "Torrent stopped: {0}" +msgstr "Torrent stoppad: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1926 +#: ../java/src/org/klomp/snark/SnarkManager.java:2025 #, java-format msgid "Torrent removed: \"{0}\"" msgstr "Torrent borttagen: \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:1934 +#: ../java/src/org/klomp/snark/SnarkManager.java:2033 #, java-format msgid "Adding torrents in {0}" msgstr "Lägger till torrentar i {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1966 +#: ../java/src/org/klomp/snark/SnarkManager.java:2067 #, java-format msgid "Up bandwidth limit is {0} KBps" msgstr "Upp bandbredds gräns är {0} KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:1993 +#: ../java/src/org/klomp/snark/SnarkManager.java:2092 #, java-format msgid "Download finished: {0}" msgstr "Hämtning klar: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2048 +#: ../java/src/org/klomp/snark/SnarkManager.java:2147 #, java-format msgid "Metainfo received for {0}" msgstr "Metainfo mottagen för {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2049 -#: ../java/src/org/klomp/snark/SnarkManager.java:2280 +#: ../java/src/org/klomp/snark/SnarkManager.java:2148 +#: ../java/src/org/klomp/snark/SnarkManager.java:2431 #, java-format msgid "Starting up torrent {0}" msgstr "Startar torrent {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2064 +#: ../java/src/org/klomp/snark/SnarkManager.java:2163 #, java-format msgid "Error on torrent {0}" msgstr "Fel pÃ¥ torrent {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2127 +#: ../java/src/org/klomp/snark/SnarkManager.java:2264 msgid "Unable to connect to I2P!" msgstr "Misslyckades med att ansluta till I2P" -#: ../java/src/org/klomp/snark/SnarkManager.java:2279 +#: ../java/src/org/klomp/snark/SnarkManager.java:2430 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:130 msgid "Opening the I2P tunnel" msgstr "Öppnar I2P tunneln" -#: ../java/src/org/klomp/snark/SnarkManager.java:2303 +#: ../java/src/org/klomp/snark/SnarkManager.java:2450 msgid "Opening the I2P tunnel and starting all torrents." msgstr "Öppnar I2P-tunneln och startar torrentar." -#: ../java/src/org/klomp/snark/SnarkManager.java:2366 +#: ../java/src/org/klomp/snark/SnarkManager.java:2513 msgid "Stopping all torrents and closing the I2P tunnel." msgstr "Stoppar alla torrentar och stänger I2P-tunneln." -#: ../java/src/org/klomp/snark/SnarkManager.java:2385 +#: ../java/src/org/klomp/snark/SnarkManager.java:2532 msgid "Closing I2P tunnel after notifying trackers." msgstr "Stänger I2P tunnel efter att ha meddelat trackers." +#: ../java/src/org/klomp/snark/SnarkManager.java:2594 +#, java-format +msgid "Finished recheck of torrent {0}, now {1} complete" +msgstr "Avslutade omkontroll av torrent {0}, nu {1} färdig" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2596 +#, java-format +msgid "Finished recheck of torrent {0}, unchanged" +msgstr "Avslutade omkontroll av torrent {0}, oförändrad" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2600 +#, java-format +msgid "Error checking the torrent {0}" +msgstr "Fel vid kontroll av torrent {0}" + #: ../java/src/org/klomp/snark/TrackerClient.java:245 #, java-format msgid "No valid trackers for {0} - enable opentrackers or DHT?" @@ -461,891 +497,913 @@ msgstr "Torrent finns redan i kön: {0}" msgid "Torrent at {0} was not valid" msgstr "Torrent vid {0} var inte giltig" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:268 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:311 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:322 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1763 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2662 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:270 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:313 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:324 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1778 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2698 msgid "I2PSnark" msgstr "I2PSnark" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:273 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2149 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2422 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2165 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2446 msgid "Configuration" msgstr "Inställningar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:277 msgid "Anonymous BitTorrent Client" msgstr "Anonym BitTorrent Klient" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:291 msgid "Router is down" msgstr "Routern är avstängd" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:306 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:308 msgid "Torrents" msgstr "Torrentar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:319 msgid "Refresh page" msgstr "Ladda om sida" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:326 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:328 msgid "Forum" msgstr "Forum" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:341 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:343 msgid "Click \"Add torrent\" button to fetch torrent" msgstr "Klicka pÃ¥ \"Lägg till torrent\" för att hämta en torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:394 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:396 msgid "clear messages" msgstr "rensa meddelandena" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:449 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2980 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3072 msgid "Status" msgstr "Status" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2994 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:453 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3086 #, java-format msgid "Sort by {0}" msgstr "Sortera efter{0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:462 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:464 msgid "Hide Peers" msgstr "Dölj klienter" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:468 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:470 msgid "Show Peers" msgstr "Visa klienter" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:491 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2648 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2718 msgid "Torrent" msgstr "Torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "File type" msgstr "Filtyp" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:509 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 msgid "ETA" msgstr "Förväntas klar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:512 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:514 msgid "Estimated time remaining" msgstr "Uppskattad Ã¥terstÃ¥ende tid" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:535 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 msgid "RX" msgstr "RX" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:538 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:540 msgid "Downloaded" msgstr "Hämtade" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2818 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2968 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2878 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3060 msgid "Size" msgstr "Storlek" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 msgid "TX" msgstr "TX" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2896 msgid "Upload ratio" msgstr "Upload ratio" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:569 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:571 msgid "Uploaded" msgstr "Uppladdat" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:581 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 msgid "RX Rate" msgstr "RX Rate" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:584 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:586 msgid "Down Rate" msgstr "Nerhastighet" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:596 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 msgid "TX Rate" msgstr "TX Rate" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:599 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:601 msgid "Up Rate" msgstr "Upphastighet" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:615 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 msgid "Stop all torrents and the I2P tunnel" msgstr "Stoppa alla torrents och I2P-tunneln" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:619 msgid "Stop All" msgstr "Stoppa alla" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:629 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 msgid "Start all stopped torrents" msgstr "Starta alla stannade torrentar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:633 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:647 msgid "Start All" msgstr "Starta alla" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:643 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 msgid "Start all torrents and the I2P tunnel" msgstr "Starta alla torrents och I2P-tunneln" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:668 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:670 msgid "No torrents loaded." msgstr "Inga torrents laddade." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:674 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 msgid "Totals" msgstr "Totalt" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:678 #, java-format msgid "1 torrent" msgid_plural "{0} torrents" msgstr[0] "1 torrent" msgstr[1] "{0} torrentar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:683 #, java-format msgid "1 connected peer" msgid_plural "{0} connected peers" msgstr[0] "1 ansluten klient" msgstr[1] "{0} anslutna klienter" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:688 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:690 #, java-format msgid "1 DHT peer" msgid_plural "{0} DHT peers" msgstr[0] "1 DHT klient" msgstr[1] "{0} DHT klienter" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:695 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:697 msgid "Dest" msgstr "Destination" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First" msgstr "Första" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First page" msgstr "Första sidan" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Prev" msgstr "BakÃ¥t" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Previous page" msgstr "FöregÃ¥ende sida" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next" msgstr "Nästa" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next page" msgstr "Nästa sida" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last" msgstr "Sista" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last page" msgstr "Sista sidan" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:960 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:962 msgid "Data directory cannot be created" msgstr "Data directory kan inte skapas" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1176 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:972 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1185 #, java-format msgid "Cannot add torrent {0} inside another torrent: {1}" msgstr "Kan inte lägga till torrent{0} inuti annan torrent:{1}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:985 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:993 #, java-format msgid "Invalid URL: Must start with \"http://\", \"{0}\", or \"{1}\"" msgstr "Ogiltig adress: MÃ¥ste inledas med \"http://\", \"{0}\" eller \"{1}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1026 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1063 #, java-format msgid "Magnet deleted: {0}" msgstr "Magnet borttagen: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1061 #, java-format -msgid "Torrent file deleted: {0}" -msgstr "Torrentfil borttagen: {0}" - -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1053 -#, java-format msgid "Download deleted: {0}" msgstr "Hämtning borttagen: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1070 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1078 #, java-format msgid "Data file deleted: {0}" msgstr "Datafil borttagen: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1072 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1089 #, java-format msgid "Data file could not be deleted: {0}" msgstr "Datafil kunde inte tas bort: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1097 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1105 #, java-format msgid "Directory could not be deleted: {0}" msgstr "Katalogen kunde inta tas bort: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1112 #, java-format msgid "Directory deleted: {0}" msgstr "Katalogen bort tagen: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1155 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1164 #, java-format msgid "Cannot add a torrent ending in \".torrent\": {0}" msgstr "Kan inte lägga till en torrent som slutar pÃ¥ \".torrent\":{0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1160 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1169 #, java-format msgid "Torrent with this name is already running: {0}" msgstr "Torrent med detta namn kör redan: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1175 #, java-format msgid "Cannot add a torrent including an I2P directory: {0}" msgstr "Kan inte lägga till en torrent som inkluderar en I2P directory:{0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1181 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1190 #, java-format msgid "Cannot add torrent {0} including another torrent: {1}" msgstr "Kan inte lägga till en torrent{0} som inkluderar en annan torrent{1}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1216 msgid "Error - Cannot include alternate trackers without a primary tracker" msgstr "Fel - Kan inte inkludera alternativa trackers utan en primär tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1220 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1229 msgid "Error - Cannot mix private and public trackers in a torrent" msgstr "Fel - Kan inte blanda privata och publika trackers i samma torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1251 #, java-format msgid "Torrent created for \"{0}\"" msgstr "Torrent skapad för \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1244 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 #, java-format msgid "" "Many I2P trackers require you to register new torrents before seeding - " "please do so before starting \"{0}\"" msgstr "MÃ¥nga I2P trackers kräver att du registrerar nya torrentar innan uppladdningen pÃ¥börjas - gör det innan \"{0}\" startas" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1255 #, java-format msgid "Error creating a torrent for \"{0}\"" msgstr "Misslyckades med att skapa torrent för \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1250 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1259 #, java-format msgid "Cannot create a torrent for the nonexistent data: {0}" msgstr "Kan ej skapa torrent för data som ej finns: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1262 msgid "Error creating torrent - you must enter a file or directory" msgstr "Misslyckades med att skapa torrent - en fil eller mapp mÃ¥ste anges" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2406 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2430 msgid "Delete selected" msgstr "Ta bort valda" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2408 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2432 msgid "Save tracker configuration" msgstr "Spara tracker konfiguration" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1301 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1310 msgid "Removed" msgstr "Borttagen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1333 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2405 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2407 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1342 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2429 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2431 msgid "Add tracker" msgstr "Lägg till tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1356 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1359 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1365 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1368 msgid "Enter valid tracker name and URLs" msgstr "Ange giltigt namn och adresser för trackern " #. "<input type=\"reset\" class=\"cancel\" #. value=\"").append(_t("Cancel")).append("\">\n" + -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1361 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2410 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1370 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2434 msgid "Restore defaults" msgstr "Ã…terställ standardvärden" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1373 msgid "Restored default trackers" msgstr "Ã…terställ standard trackers " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1472 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1473 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1485 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1486 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2949 msgid "Checking" msgstr "Kontrollerar " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1475 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1476 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1489 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2956 msgid "Allocating" msgstr "Allokerar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1499 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1505 msgid "Tracker Error" msgstr "Trackerfel" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1492 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1522 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1527 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1538 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1543 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1554 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1507 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1537 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1542 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1553 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1558 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1569 #, java-format msgid "1 peer" msgid_plural "{0} peers" msgstr[0] "1 klient" msgstr[1] "{0} klienter" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1502 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1503 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1517 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1518 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2954 msgid "Starting" msgstr "Startar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1511 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1526 msgid "Seeding" msgstr "Uppladdning" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1515 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1529 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1530 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2831 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1544 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2891 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3139 msgid "Complete" msgstr "Färdig" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1534 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1535 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1540 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1541 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1550 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1555 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 msgid "OK" msgstr "Ok" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1546 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1551 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1552 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1567 msgid "Stalled" msgstr "Avstannad" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1557 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1571 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1572 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1575 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1576 msgid "No Peers" msgstr "Inga klienter" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1563 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1578 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1579 msgid "Stopped" msgstr "Stoppad" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1593 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1608 msgid "Torrent details" msgstr "Torrentdetaljer" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1628 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1643 msgid "View files" msgstr "Se filer" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1630 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1645 msgid "Open file" msgstr "Öppna fil" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1682 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 msgid "Stop the torrent" msgstr "Stoppa torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2961 msgid "Stop" msgstr "Stoppa" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 msgid "Start the torrent" msgstr "Starta torrenten" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1714 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2963 msgid "Start" msgstr "Starta" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1727 msgid "Remove the torrent from the active list, deleting the .torrent file" msgstr "Ta bort torrenten frÃ¥n den aktiva listan, tar bort .torrent filen" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1717 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1732 #, java-format msgid "" "Are you sure you want to delete the file \\''{0}\\'' (downloaded data will " "not be deleted) ?" msgstr "Är du säker pÃ¥ att du vill radera filen \\''{0}\\' (hämtad data kommer ej raderas) ?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1721 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1736 msgid "Remove" msgstr "Ta bort" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1734 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1749 msgid "Delete the .torrent file and the associated data file(s)" msgstr "Ta bort .torrent filen och tillhörande datafil(er)" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1739 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1754 #, java-format msgid "" "Are you sure you want to delete the torrent \\''{0}\\'' and all downloaded " "data?" msgstr "Är du säker pÃ¥ att du vill ta bort torrenten \"{0}\" och all hämtad data?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1743 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1758 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2388 msgid "Delete" msgstr "Ta bort" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1779 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1794 msgid "Unknown" msgstr "Okänd" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1791 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1806 msgid "Seed" msgstr "Källa" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1814 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1829 msgid "Uninteresting (The peer has no pieces we need)" msgstr "Ointressant (klienten har inga delar vi behöver)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1816 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1831 msgid "Choked (The peer is not allowing us to request pieces)" msgstr "Strypt (klienten lÃ¥ter oss inte be om delar)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1851 msgid "Uninterested (We have no pieces the peer needs)" msgstr "Ointresserad (vi har inga delar klienten behöver)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1838 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1853 msgid "Choking (We are not allowing the peer to request pieces)" msgstr "Stryper (vi lÃ¥ter inte klienten be om delar)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1954 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1969 #, java-format msgid "Details at {0} tracker" msgstr "Detaljer för {0} tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1971 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1986 msgid "Info" msgstr "Info" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 msgid "Add Torrent" msgstr "Lägg till torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 msgid "From URL" msgstr "Adress" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2050 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2065 msgid "" "Enter the torrent file download URL (I2P only), magnet link, maggot link, or" " info hash" msgstr "Ange torrentfilens adress (enbart I2P), magnet-länk, maggot-länk eller infohash" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2070 msgid "Add torrent" msgstr "Lägg till torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2074 msgid "Data dir" msgstr "Data dir" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2077 #, java-format msgid "Enter the directory to save the data in (default {0})" msgstr "Ange katalogen att spara datan i (förval {0})" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2066 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 #, java-format msgid "You can also copy .torrent files to: {0}." msgstr "Du kan även kopiera .torrent filer till: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2068 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2083 msgid "Removing a .torrent will cause it to stop." msgstr "Borttagning av .torrent fil kommer stanna den." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2096 msgid "Create Torrent" msgstr "Skapa torrent" #. out.write("From file: <input type=\"file\" name=\"newFile\" size=\"50\" #. value=\"" + newFile + "\" /><br>\n"); -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2084 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2099 msgid "Data to seed" msgstr "Data att ladda upp" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2088 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2103 #, java-format msgid "File or directory to seed (full path or within the directory {0} )" msgstr "Fil eller katalog att seeda (fullständig sökväg eller inom katalog {0})" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2091 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2337 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2106 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2361 msgid "Trackers" msgstr "Trackers" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2093 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2108 msgid "Primary" msgstr "Primär" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2095 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2110 msgid "Alternates" msgstr "Alternativ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2098 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2113 msgid "Create torrent" msgstr "Skapa torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2116 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2131 msgid "none" msgstr "inga" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2153 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2169 msgid "Data directory" msgstr "Datamapp" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2158 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 msgid "Files readable by all" msgstr "Filer läsbara för alla" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2162 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2178 msgid "If checked, other users may access the downloaded files" msgstr "Välj detta för att ge andra användare tillgÃ¥ng till hämtade filer" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2182 msgid "Auto start torrents" msgstr "Starta torrents automatiskt" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2170 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2186 msgid "If checked, automatically start torrents that are added" msgstr "Välj detta för att automatiskt starta tillagda torrentfiler" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2190 +msgid "Smart torrent sorting" +msgstr "Smart torrent-sortering" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2194 +msgid "If checked, ignore words such as 'the' when sorting" +msgstr "Om valt, ignorera ord som \"the\" vid sortering" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2198 msgid "Theme" msgstr "Tema" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2188 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2212 msgid "Refresh time" msgstr "Uppdateringsintervall" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2201 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2225 msgid "Never" msgstr "Aldrig" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2231 msgid "Startup delay" msgstr "Fördröjning av uppstart" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2209 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2233 msgid "minutes" msgstr "minuter" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2213 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2237 msgid "Page size" msgstr "Per sida" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2215 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 msgid "torrents" msgstr "torrentar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 msgid "Total uploader limit" msgstr "Gräns för totalt antal uppladdare" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2266 msgid "peers" msgstr "klienter" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2270 msgid "Up bandwidth limit" msgstr "Gräns för bandbredd uppÃ¥t" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2249 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2273 msgid "Half available bandwidth recommended." msgstr "Hälften av tillgänglig bandbredd rekommenderas." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2251 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2275 msgid "View or change router bandwidth" msgstr "Se eller ändra routerns bandbredd" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2255 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2279 msgid "Use open trackers also" msgstr "Använd ocksÃ¥ publika trackers" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2259 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 msgid "" "If checked, announce torrents to open trackers as well as the tracker listed" " in the torrent file" msgstr "Välj detta för att annonsera torrentar till publika trackers sÃ¥väl som de listade i torrentfilen" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2287 msgid "Enable DHT" msgstr "Aktivera DHT" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2267 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2291 msgid "If checked, use DHT" msgstr "Välj detta för att använda DHT" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2307 msgid "Inbound Settings" msgstr "Inställningar för inkommande" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2313 msgid "Outbound Settings" msgstr "Inställningar för utgÃ¥ende" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2297 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2321 msgid "I2CP host" msgstr "I2CP-värd" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2302 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2326 msgid "I2CP port" msgstr "I2CP-port" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2341 msgid "I2CP options" msgstr "Alternativ för I2CP" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2322 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 msgid "Save configuration" msgstr "Spara inställningar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2342 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2366 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "Name" msgstr "Namn" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2344 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2368 msgid "Website URL" msgstr "Webbplatsadress" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2370 msgid "Standard" msgstr "Standard" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2348 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2372 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3172 msgid "Open" msgstr "Publik" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2350 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2374 msgid "Private" msgstr "Privat" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2352 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2376 msgid "Announce URL" msgstr "Annonseringsadress" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2396 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2420 msgid "Add" msgstr "Lägg till" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2439 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2463 #, java-format msgid "Invalid magnet URL {0}" msgstr "Ogiltig magnet-adress {0}" #. * dummies for translation -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2447 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2471 #, java-format msgid "1 hop" msgid_plural "{0} hops" msgstr[0] "1 hopp" msgstr[1] "{0} hopp" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2448 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2472 #, java-format msgid "1 tunnel" msgid_plural "{0} tunnels" msgstr[0] "1 tunnel" msgstr[1] "{0} tunnlar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2691 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2728 msgid "Torrent file" msgstr "Torrentfil" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 msgid "Data location" msgstr "Plats för data" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2708 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2745 msgid "Info hash" msgstr "Info hash" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2727 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2764 msgid "Primary Tracker" msgstr "Primär tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2773 msgid "Tracker List" msgstr "Trackerlista" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2761 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2798 msgid "Comment" msgstr "Kommentar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2771 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2812 msgid "Created" msgstr "Skapad" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2782 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2823 msgid "Created By" msgstr "Skapad av" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2794 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2833 +msgid "Added" +msgstr "Tillagd" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2842 +msgid "Completed" +msgstr "Färdig" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2854 msgid "Magnet link" msgstr "Magnet länk" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2807 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2867 msgid "Private torrent" msgstr "Privat torrent" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2827 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2887 msgid "Completion" msgstr "Färdigställning" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2856 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2916 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 msgid "Remaining" msgstr "Kvar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2926 msgid "Files" msgstr "Filer" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2873 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 msgid "Pieces" msgstr "Delar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2879 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2939 msgid "Piece size" msgstr "Delstorlek" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2952 +msgid "Refresh page for results" +msgstr "Ladda om sidan för resultat" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2964 +msgid "Force Recheck" +msgstr "Tvinga omkontroll" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3025 msgid "Directory" msgstr "Mapp" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2992 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3084 msgid "Priority" msgstr "Prioritet" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3004 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3096 msgid "Up to higher level directory" msgstr "Upp till högre mappnivÃ¥" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3038 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3130 msgid "Torrent not found?" msgstr "Torrent hittades ej?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3136 msgid "File not found in torrent?" msgstr "Fil hittades ej i torrent?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3057 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3149 msgid "complete" msgstr "färdig" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3058 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3150 msgid "remaining" msgstr "kvar" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3196 msgid "High" msgstr "Hög" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3109 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3201 msgid "Normal" msgstr "Normal" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3114 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3206 msgid "Skip" msgstr "Hoppa över" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3124 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3216 msgid "Set all high" msgstr "Sätt alla höga" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3126 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3218 msgid "Set all normal" msgstr "Sätt alla normala" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3128 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3220 msgid "Skip all" msgstr "Hoppa över alla" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3129 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3221 msgid "Save priorities" msgstr "Spara prioriteter" diff --git a/apps/i2psnark/locale/messages_vi.po b/apps/i2psnark/locale/messages_vi.po index d7d0e8067cf6849ecd4d95224879a4a214cfbd21..0894f625a8426d70ac7f992c39bfec6650c50d9a 100644 --- a/apps/i2psnark/locale/messages_vi.po +++ b/apps/i2psnark/locale/messages_vi.po @@ -9,10 +9,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:09+0000\n" -"PO-Revision-Date: 2015-07-17 01:32+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-05 17:17+0000\n" "Last-Translator: kytv <killyourtv@i2pmail.org>\n" -"Language-Team: Vietnamese (http://www.transifex.com/projects/p/I2P/language/vi/)\n" +"Language-Team: Vietnamese (http://www.transifex.com/otf/I2P/language/vi/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -24,222 +24,230 @@ msgid "No more torrents running." msgstr "" #: ../java/src/org/klomp/snark/IdleChecker.java:76 -#: ../java/src/org/klomp/snark/SnarkManager.java:2392 -#: ../java/src/org/klomp/snark/SnarkManager.java:2403 +#: ../java/src/org/klomp/snark/SnarkManager.java:2539 +#: ../java/src/org/klomp/snark/SnarkManager.java:2550 msgid "I2P tunnel closed." msgstr "ÄÆ°á»ng hầm I2P đóng lại." #: ../java/src/org/klomp/snark/MagnetURI.java:42 #: ../java/src/org/klomp/snark/MagnetURI.java:52 -#: ../java/src/org/klomp/snark/SnarkManager.java:2096 +#: ../java/src/org/klomp/snark/SnarkManager.java:2221 msgid "Magnet" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:772 +#: ../java/src/org/klomp/snark/SnarkManager.java:791 #, java-format msgid "Total uploaders limit changed to {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:774 +#: ../java/src/org/klomp/snark/SnarkManager.java:793 #, java-format msgid "Minimum total uploaders limit is {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:786 +#: ../java/src/org/klomp/snark/SnarkManager.java:805 #, java-format msgid "Up BW limit changed to {0}KBps" msgstr "Giá»›i hạn băng thông lên đổi thà nh {0}KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:788 +#: ../java/src/org/klomp/snark/SnarkManager.java:807 #, java-format msgid "Minimum up bandwidth limit is {0}KBps" msgstr "Tối thiểu băng thông lên là {0}KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:800 +#: ../java/src/org/klomp/snark/SnarkManager.java:819 #, java-format msgid "Startup delay changed to {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:811 +#: ../java/src/org/klomp/snark/SnarkManager.java:830 #, java-format msgid "Refresh time changed to {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:813 +#: ../java/src/org/klomp/snark/SnarkManager.java:832 msgid "Refresh disabled" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:829 +#: ../java/src/org/klomp/snark/SnarkManager.java:848 #, java-format msgid "Page size changed to {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:838 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:956 +#: ../java/src/org/klomp/snark/SnarkManager.java:857 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:958 msgid "Data directory must be an absolute path" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:840 +#: ../java/src/org/klomp/snark/SnarkManager.java:859 msgid "Data directory does not exist" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:842 +#: ../java/src/org/klomp/snark/SnarkManager.java:861 msgid "Not a directory" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:844 +#: ../java/src/org/klomp/snark/SnarkManager.java:863 msgid "Unreadable" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:849 +#: ../java/src/org/klomp/snark/SnarkManager.java:868 #, java-format msgid "Data directory changed to {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:904 +#: ../java/src/org/klomp/snark/SnarkManager.java:923 msgid "I2CP and tunnel changes will take effect after stopping all torrents" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:908 +#: ../java/src/org/klomp/snark/SnarkManager.java:927 #, java-format msgid "I2CP options changed to {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:914 +#: ../java/src/org/klomp/snark/SnarkManager.java:933 msgid "Disconnecting old I2CP destination" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:916 +#: ../java/src/org/klomp/snark/SnarkManager.java:935 #, java-format msgid "I2CP settings changed to {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:921 +#: ../java/src/org/klomp/snark/SnarkManager.java:940 msgid "" "Unable to connect with the new settings, reverting to the old I2CP settings" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:925 +#: ../java/src/org/klomp/snark/SnarkManager.java:944 msgid "Unable to reconnect with the old settings!" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:927 +#: ../java/src/org/klomp/snark/SnarkManager.java:946 msgid "Reconnected on the new I2CP destination" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:934 +#: ../java/src/org/klomp/snark/SnarkManager.java:953 #, java-format msgid "I2CP listener restarted for \"{0}\"" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:948 +#: ../java/src/org/klomp/snark/SnarkManager.java:967 msgid "New files will be publicly readable" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:950 +#: ../java/src/org/klomp/snark/SnarkManager.java:969 msgid "New files will not be publicly readable" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:957 +#: ../java/src/org/klomp/snark/SnarkManager.java:976 msgid "Enabled autostart" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:959 +#: ../java/src/org/klomp/snark/SnarkManager.java:978 msgid "Disabled autostart" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:965 +#: ../java/src/org/klomp/snark/SnarkManager.java:985 +msgid "Enabled smart sort" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:987 +msgid "Disabled smart sort" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:994 msgid "Enabled open trackers - torrent restart required to take effect." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:967 +#: ../java/src/org/klomp/snark/SnarkManager.java:996 msgid "Disabled open trackers - torrent restart required to take effect." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:974 +#: ../java/src/org/klomp/snark/SnarkManager.java:1003 msgid "Enabled DHT." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:976 +#: ../java/src/org/klomp/snark/SnarkManager.java:1005 msgid "Disabled DHT." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:978 +#: ../java/src/org/klomp/snark/SnarkManager.java:1007 msgid "DHT change requires tunnel shutdown and reopen" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:985 +#: ../java/src/org/klomp/snark/SnarkManager.java:1014 #, java-format msgid "{0} theme loaded, return to main i2psnark page to view." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:995 +#: ../java/src/org/klomp/snark/SnarkManager.java:1024 msgid "Configuration unchanged." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1027 +#: ../java/src/org/klomp/snark/SnarkManager.java:1056 msgid "Open Tracker list changed - torrent restart required to take effect." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1037 +#: ../java/src/org/klomp/snark/SnarkManager.java:1066 msgid "Private tracker list changed - affects newly created torrents only." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1083 +#: ../java/src/org/klomp/snark/SnarkManager.java:1112 #, java-format msgid "Unable to save the config to {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1164 +#: ../java/src/org/klomp/snark/SnarkManager.java:1193 msgid "Connecting to I2P" msgstr "Nối kết và o I2P" -#: ../java/src/org/klomp/snark/SnarkManager.java:1167 +#: ../java/src/org/klomp/snark/SnarkManager.java:1196 msgid "Error connecting to I2P - check your I2CP settings!" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1176 -#: ../java/src/org/klomp/snark/SnarkManager.java:2133 +#: ../java/src/org/klomp/snark/SnarkManager.java:1205 +#: ../java/src/org/klomp/snark/SnarkManager.java:2270 #, java-format msgid "Error: Could not add the torrent {0}" msgstr "" #. catch this here so we don't try do delete it below -#: ../java/src/org/klomp/snark/SnarkManager.java:1199 +#: ../java/src/org/klomp/snark/SnarkManager.java:1228 #, java-format msgid "Cannot open \"{0}\"" msgstr "" #. TODO - if the existing one is a magnet, delete it and add the metainfo #. instead? -#: ../java/src/org/klomp/snark/SnarkManager.java:1218 -#: ../java/src/org/klomp/snark/SnarkManager.java:1352 -#: ../java/src/org/klomp/snark/SnarkManager.java:1440 +#: ../java/src/org/klomp/snark/SnarkManager.java:1247 +#: ../java/src/org/klomp/snark/SnarkManager.java:1388 +#: ../java/src/org/klomp/snark/SnarkManager.java:1476 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:166 #, java-format msgid "Torrent with this info hash is already running: {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1224 +#: ../java/src/org/klomp/snark/SnarkManager.java:1253 #, java-format msgid "ERROR - No I2P trackers in private torrent \"{0}\"" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1226 +#: ../java/src/org/klomp/snark/SnarkManager.java:1255 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", will announce to I2P open trackers and" " DHT only." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1229 +#: ../java/src/org/klomp/snark/SnarkManager.java:1258 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and open trackers are disabled, will " "announce to DHT only." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1231 +#: ../java/src/org/klomp/snark/SnarkManager.java:1260 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and DHT and open trackers are " @@ -247,34 +255,46 @@ msgid "" "torrent." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1257 +#: ../java/src/org/klomp/snark/SnarkManager.java:1286 #, java-format msgid "Torrent in \"{0}\" is invalid" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1264 +#: ../java/src/org/klomp/snark/SnarkManager.java:1292 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1042 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1069 +#, java-format +msgid "Torrent file deleted: {0}" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1295 +#, java-format +msgid "Torrent file moved from {0} to {1}" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1299 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:193 #, java-format msgid "ERROR - Out of memory, cannot create torrent from {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1285 +#: ../java/src/org/klomp/snark/SnarkManager.java:1321 #, java-format -msgid "Torrent added and started: \"{0}\"" +msgid "Torrent added and started: {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1287 +#: ../java/src/org/klomp/snark/SnarkManager.java:1323 #, java-format -msgid "Torrent added: \"{0}\"" +msgid "Torrent added: {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1363 +#: ../java/src/org/klomp/snark/SnarkManager.java:1399 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:93 #, java-format msgid "Fetching {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1369 +#: ../java/src/org/klomp/snark/SnarkManager.java:1405 #, java-format msgid "" "Open trackers are disabled and we have no DHT peers. Fetch of {0} may not " @@ -282,131 +302,146 @@ msgid "" "DHT." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1373 +#: ../java/src/org/klomp/snark/SnarkManager.java:1409 #, java-format msgid "Adding {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1406 +#: ../java/src/org/klomp/snark/SnarkManager.java:1442 #, java-format msgid "Download already running: {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1451 -#: ../java/src/org/klomp/snark/SnarkManager.java:1477 -#: ../java/src/org/klomp/snark/SnarkManager.java:2052 +#: ../java/src/org/klomp/snark/SnarkManager.java:1487 +#: ../java/src/org/klomp/snark/SnarkManager.java:1513 +#: ../java/src/org/klomp/snark/SnarkManager.java:2151 #, java-format msgid "Failed to copy torrent file to {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1828 +#: ../java/src/org/klomp/snark/SnarkManager.java:1927 #, java-format -msgid "Too many files in \"{0}\" ({1}), deleting it!" +msgid "Too many files in \"{0}\" ({1})!" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1830 +#: ../java/src/org/klomp/snark/SnarkManager.java:1929 #, java-format -msgid "Torrent file \"{0}\" cannot end in \".torrent\", deleting it!" +msgid "Torrent file \"{0}\" cannot end in \".torrent\"!" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1832 +#: ../java/src/org/klomp/snark/SnarkManager.java:1931 #, java-format -msgid "No pieces in \"{0}\", deleting it!" +msgid "No pieces in \"{0}\"!" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1834 +#: ../java/src/org/klomp/snark/SnarkManager.java:1933 #, java-format -msgid "Too many pieces in \"{0}\", limit is {1}, deleting it!" +msgid "Too many pieces in \"{0}\", limit is {1}!" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1836 +#: ../java/src/org/klomp/snark/SnarkManager.java:1935 #, java-format -msgid "Pieces are too large in \"{0}\" ({1}B), deleting it." +msgid "Pieces are too large in \"{0}\" ({1}B)!" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1837 +#: ../java/src/org/klomp/snark/SnarkManager.java:1936 #, java-format msgid "Limit is {0}B" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1839 +#: ../java/src/org/klomp/snark/SnarkManager.java:1938 #, java-format -msgid "Torrent \"{0}\" has no data, deleting it!" +msgid "Torrent \"{0}\" has no data!" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1847 +#: ../java/src/org/klomp/snark/SnarkManager.java:1946 #, java-format -msgid "Torrents larger than {0}B are not supported yet, deleting \"{1}\"" +msgid "Torrents larger than {0}B are not supported yet \"{1}\"!" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1864 +#: ../java/src/org/klomp/snark/SnarkManager.java:1963 #, java-format msgid "Error: Could not remove the torrent {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1887 -#: ../java/src/org/klomp/snark/SnarkManager.java:1906 +#: ../java/src/org/klomp/snark/SnarkManager.java:1986 +#: ../java/src/org/klomp/snark/SnarkManager.java:2005 #, java-format -msgid "Torrent stopped: \"{0}\"" +msgid "Torrent stopped: {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1926 +#: ../java/src/org/klomp/snark/SnarkManager.java:2025 #, java-format msgid "Torrent removed: \"{0}\"" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1934 +#: ../java/src/org/klomp/snark/SnarkManager.java:2033 #, java-format msgid "Adding torrents in {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1966 +#: ../java/src/org/klomp/snark/SnarkManager.java:2067 #, java-format msgid "Up bandwidth limit is {0} KBps" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:1993 +#: ../java/src/org/klomp/snark/SnarkManager.java:2092 #, java-format msgid "Download finished: {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:2048 +#: ../java/src/org/klomp/snark/SnarkManager.java:2147 #, java-format msgid "Metainfo received for {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:2049 -#: ../java/src/org/klomp/snark/SnarkManager.java:2280 +#: ../java/src/org/klomp/snark/SnarkManager.java:2148 +#: ../java/src/org/klomp/snark/SnarkManager.java:2431 #, java-format msgid "Starting up torrent {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:2064 +#: ../java/src/org/klomp/snark/SnarkManager.java:2163 #, java-format msgid "Error on torrent {0}" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:2127 +#: ../java/src/org/klomp/snark/SnarkManager.java:2264 msgid "Unable to connect to I2P!" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:2279 +#: ../java/src/org/klomp/snark/SnarkManager.java:2430 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:130 msgid "Opening the I2P tunnel" msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:2303 +#: ../java/src/org/klomp/snark/SnarkManager.java:2450 msgid "Opening the I2P tunnel and starting all torrents." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:2366 +#: ../java/src/org/klomp/snark/SnarkManager.java:2513 msgid "Stopping all torrents and closing the I2P tunnel." msgstr "" -#: ../java/src/org/klomp/snark/SnarkManager.java:2385 +#: ../java/src/org/klomp/snark/SnarkManager.java:2532 msgid "Closing I2P tunnel after notifying trackers." msgstr "" +#: ../java/src/org/klomp/snark/SnarkManager.java:2594 +#, java-format +msgid "Finished recheck of torrent {0}, now {1} complete" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2596 +#, java-format +msgid "Finished recheck of torrent {0}, unchanged" +msgstr "" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2600 +#, java-format +msgid "Error checking the torrent {0}" +msgstr "" + #: ../java/src/org/klomp/snark/TrackerClient.java:245 #, java-format msgid "No valid trackers for {0} - enable opentrackers or DHT?" @@ -452,885 +487,907 @@ msgstr "" msgid "Torrent at {0} was not valid" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:268 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:311 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:322 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1763 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2662 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:270 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:313 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:324 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1778 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2698 msgid "I2PSnark" msgstr "I2PSnark" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:273 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2149 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2422 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2165 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2446 msgid "Configuration" msgstr "Cấu hình" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:277 msgid "Anonymous BitTorrent Client" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:291 msgid "Router is down" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:306 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:308 msgid "Torrents" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:319 msgid "Refresh page" msgstr "Nạp lại trang" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:326 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:328 msgid "Forum" msgstr "Diá»…n đà n" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:341 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:343 msgid "Click \"Add torrent\" button to fetch torrent" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:394 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:396 msgid "clear messages" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:449 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2980 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3072 msgid "Status" msgstr "Tình trạng" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2994 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:453 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3086 #, java-format msgid "Sort by {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:462 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:464 msgid "Hide Peers" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:468 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:470 msgid "Show Peers" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:491 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2648 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2718 msgid "Torrent" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "File type" msgstr "" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:509 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 msgid "ETA" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:512 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:514 msgid "Estimated time remaining" msgstr "" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:535 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 msgid "RX" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:538 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:540 msgid "Downloaded" msgstr "Äã tải xuống" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2818 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2968 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2878 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3060 msgid "Size" msgstr "KÃch thước" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 msgid "TX" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2896 msgid "Upload ratio" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:569 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:571 msgid "Uploaded" msgstr "Äã tải lên" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:581 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 msgid "RX Rate" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:584 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:586 msgid "Down Rate" msgstr "" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:596 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 msgid "TX Rate" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:599 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:601 msgid "Up Rate" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:615 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 msgid "Stop all torrents and the I2P tunnel" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:619 msgid "Stop All" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:629 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 msgid "Start all stopped torrents" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:633 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:647 msgid "Start All" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:643 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 msgid "Start all torrents and the I2P tunnel" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:668 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:670 msgid "No torrents loaded." msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:674 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 msgid "Totals" msgstr "Tổng cá»™ng" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:678 #, java-format msgid "1 torrent" msgid_plural "{0} torrents" msgstr[0] "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:683 #, java-format msgid "1 connected peer" msgid_plural "{0} connected peers" msgstr[0] "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:688 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:690 #, java-format msgid "1 DHT peer" msgid_plural "{0} DHT peers" msgstr[0] "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:695 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:697 msgid "Dest" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First page" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Prev" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Previous page" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next page" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last page" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:960 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:962 msgid "Data directory cannot be created" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1176 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:972 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1185 #, java-format msgid "Cannot add torrent {0} inside another torrent: {1}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:985 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:993 #, java-format msgid "Invalid URL: Must start with \"http://\", \"{0}\", or \"{1}\"" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1026 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1063 #, java-format msgid "Magnet deleted: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1061 #, java-format -msgid "Torrent file deleted: {0}" -msgstr "" - -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1053 -#, java-format msgid "Download deleted: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1070 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1078 #, java-format msgid "Data file deleted: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1072 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1089 #, java-format msgid "Data file could not be deleted: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1097 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1105 #, java-format msgid "Directory could not be deleted: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1112 #, java-format msgid "Directory deleted: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1155 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1164 #, java-format msgid "Cannot add a torrent ending in \".torrent\": {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1160 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1169 #, java-format msgid "Torrent with this name is already running: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1175 #, java-format msgid "Cannot add a torrent including an I2P directory: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1181 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1190 #, java-format msgid "Cannot add torrent {0} including another torrent: {1}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1216 msgid "Error - Cannot include alternate trackers without a primary tracker" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1220 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1229 msgid "Error - Cannot mix private and public trackers in a torrent" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1251 #, java-format msgid "Torrent created for \"{0}\"" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1244 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 #, java-format msgid "" "Many I2P trackers require you to register new torrents before seeding - " "please do so before starting \"{0}\"" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1255 #, java-format msgid "Error creating a torrent for \"{0}\"" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1250 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1259 #, java-format msgid "Cannot create a torrent for the nonexistent data: {0}" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1262 msgid "Error creating torrent - you must enter a file or directory" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2406 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2430 msgid "Delete selected" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2408 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2432 msgid "Save tracker configuration" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1301 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1310 msgid "Removed" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1333 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2405 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2407 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1342 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2429 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2431 msgid "Add tracker" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1356 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1359 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1365 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1368 msgid "Enter valid tracker name and URLs" msgstr "" #. "<input type=\"reset\" class=\"cancel\" #. value=\"").append(_t("Cancel")).append("\">\n" + -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1361 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2410 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1370 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2434 msgid "Restore defaults" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1373 msgid "Restored default trackers" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1472 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1473 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1485 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1486 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2949 msgid "Checking" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1475 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1476 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1489 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2956 msgid "Allocating" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1499 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1505 msgid "Tracker Error" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1492 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1522 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1527 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1538 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1543 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1554 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1507 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1537 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1542 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1553 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1558 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1569 #, java-format msgid "1 peer" msgid_plural "{0} peers" msgstr[0] "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1502 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1503 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1517 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1518 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2954 msgid "Starting" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1511 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1526 msgid "Seeding" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1515 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1529 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1530 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2831 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1544 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2891 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3139 msgid "Complete" msgstr "Hoà n tất" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1534 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1535 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1540 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1541 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1550 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1555 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 msgid "OK" msgstr "OK" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1546 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1551 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1552 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1567 msgid "Stalled" msgstr "Khá»±ng" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1557 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1571 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1572 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1575 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1576 msgid "No Peers" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1563 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1578 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1579 msgid "Stopped" msgstr "Ngưng" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1593 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1608 msgid "Torrent details" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1628 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1643 msgid "View files" msgstr "Xem táºp tin" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1630 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1645 msgid "Open file" msgstr "Mở táºp tin" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1682 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 msgid "Stop the torrent" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2961 msgid "Stop" msgstr "Ngưng" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 msgid "Start the torrent" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1714 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2963 msgid "Start" msgstr "Bắt đầu" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1727 msgid "Remove the torrent from the active list, deleting the .torrent file" msgstr "" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1717 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1732 #, java-format msgid "" "Are you sure you want to delete the file \\''{0}\\'' (downloaded data will " "not be deleted) ?" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1721 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1736 msgid "Remove" msgstr "Bá»" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1734 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1749 msgid "Delete the .torrent file and the associated data file(s)" msgstr "" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1739 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1754 #, java-format msgid "" "Are you sure you want to delete the torrent \\''{0}\\'' and all downloaded " "data?" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1743 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1758 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2388 msgid "Delete" msgstr "Xóa" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1779 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1794 msgid "Unknown" msgstr "Không rõ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1791 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1806 msgid "Seed" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1814 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1829 msgid "Uninteresting (The peer has no pieces we need)" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1816 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1831 msgid "Choked (The peer is not allowing us to request pieces)" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1851 msgid "Uninterested (We have no pieces the peer needs)" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1838 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1853 msgid "Choking (We are not allowing the peer to request pieces)" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1954 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1969 #, java-format msgid "Details at {0} tracker" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1971 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1986 msgid "Info" msgstr "Thông tin" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 msgid "Add Torrent" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 msgid "From URL" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2050 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2065 msgid "" "Enter the torrent file download URL (I2P only), magnet link, maggot link, or" " info hash" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2070 msgid "Add torrent" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2074 msgid "Data dir" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2077 #, java-format msgid "Enter the directory to save the data in (default {0})" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2066 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 #, java-format msgid "You can also copy .torrent files to: {0}." msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2068 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2083 msgid "Removing a .torrent will cause it to stop." msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2096 msgid "Create Torrent" msgstr "" #. out.write("From file: <input type=\"file\" name=\"newFile\" size=\"50\" #. value=\"" + newFile + "\" /><br>\n"); -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2084 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2099 msgid "Data to seed" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2088 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2103 #, java-format msgid "File or directory to seed (full path or within the directory {0} )" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2091 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2337 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2106 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2361 msgid "Trackers" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2093 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2108 msgid "Primary" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2095 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2110 msgid "Alternates" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2098 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2113 msgid "Create torrent" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2116 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2131 msgid "none" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2153 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2169 msgid "Data directory" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2158 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 msgid "Files readable by all" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2162 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2178 msgid "If checked, other users may access the downloaded files" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2182 msgid "Auto start torrents" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2170 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2186 msgid "If checked, automatically start torrents that are added" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2190 +msgid "Smart torrent sorting" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2194 +msgid "If checked, ignore words such as 'the' when sorting" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2198 msgid "Theme" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2188 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2212 msgid "Refresh time" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2201 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2225 msgid "Never" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2231 msgid "Startup delay" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2209 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2233 msgid "minutes" msgstr "phút" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2213 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2237 msgid "Page size" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2215 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 msgid "torrents" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 msgid "Total uploader limit" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2266 msgid "peers" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2270 msgid "Up bandwidth limit" msgstr "Giá»›i hạn băng thông lên" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2249 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2273 msgid "Half available bandwidth recommended." msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2251 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2275 msgid "View or change router bandwidth" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2255 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2279 msgid "Use open trackers also" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2259 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 msgid "" "If checked, announce torrents to open trackers as well as the tracker listed" " in the torrent file" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2287 msgid "Enable DHT" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2267 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2291 msgid "If checked, use DHT" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2307 msgid "Inbound Settings" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2313 msgid "Outbound Settings" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2297 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2321 msgid "I2CP host" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2302 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2326 msgid "I2CP port" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2341 msgid "I2CP options" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2322 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 msgid "Save configuration" msgstr "Lưu cấu hình" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2342 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2366 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "Name" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2344 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2368 msgid "Website URL" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2370 msgid "Standard" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2348 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2372 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3172 msgid "Open" msgstr "Mở" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2350 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2374 msgid "Private" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2352 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2376 msgid "Announce URL" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2396 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2420 msgid "Add" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2439 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2463 #, java-format msgid "Invalid magnet URL {0}" msgstr "" #. * dummies for translation -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2447 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2471 #, java-format msgid "1 hop" msgid_plural "{0} hops" msgstr[0] "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2448 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2472 #, java-format msgid "1 tunnel" msgid_plural "{0} tunnels" msgstr[0] "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2691 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2728 msgid "Torrent file" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 msgid "Data location" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2708 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2745 msgid "Info hash" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2727 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2764 msgid "Primary Tracker" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2773 msgid "Tracker List" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2761 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2798 msgid "Comment" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2771 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2812 msgid "Created" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2782 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2823 msgid "Created By" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2794 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2833 +msgid "Added" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2842 +msgid "Completed" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2854 msgid "Magnet link" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2807 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2867 msgid "Private torrent" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2827 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2887 msgid "Completion" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2856 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2916 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 msgid "Remaining" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2926 msgid "Files" msgstr "Táºp tin" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2873 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 msgid "Pieces" msgstr "Mảnh" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2879 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2939 msgid "Piece size" msgstr "KÃch thước mảnh" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2952 +msgid "Refresh page for results" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2964 +msgid "Force Recheck" +msgstr "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3025 msgid "Directory" msgstr "Danh mục" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2992 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3084 msgid "Priority" msgstr "Ưu tiên" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3004 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3096 msgid "Up to higher level directory" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3038 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3130 msgid "Torrent not found?" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3136 msgid "File not found in torrent?" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3057 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3149 msgid "complete" msgstr "hoà n tất" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3058 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3150 msgid "remaining" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3196 msgid "High" msgstr "Cao" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3109 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3201 msgid "Normal" msgstr "Thưá»ng" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3114 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3206 msgid "Skip" msgstr "Lá»" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3124 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3216 msgid "Set all high" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3126 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3218 msgid "Set all normal" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3128 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3220 msgid "Skip all" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3129 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3221 msgid "Save priorities" msgstr "" diff --git a/apps/i2psnark/locale/messages_zh.po b/apps/i2psnark/locale/messages_zh.po index cb4216a405e9305bdab64c9792a51a4b785e4353..4a78516fcf3c170865256665c0f89cdd8061cbcd 100644 --- a/apps/i2psnark/locale/messages_zh.po +++ b/apps/i2psnark/locale/messages_zh.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:09+0000\n" -"PO-Revision-Date: 2015-07-17 03:01+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-05 19:20+0000\n" "Last-Translator: YF <yfdyh000@gmail.com>\n" -"Language-Team: Chinese (China) (http://www.transifex.com/projects/p/I2P/language/zh_CN/)\n" +"Language-Team: Chinese (China) (http://www.transifex.com/otf/I2P/language/zh_CN/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -28,222 +28,230 @@ msgid "No more torrents running." msgstr "没有更多ç§åæ£åœ¨è¿è¡Œã€‚" #: ../java/src/org/klomp/snark/IdleChecker.java:76 -#: ../java/src/org/klomp/snark/SnarkManager.java:2392 -#: ../java/src/org/klomp/snark/SnarkManager.java:2403 +#: ../java/src/org/klomp/snark/SnarkManager.java:2539 +#: ../java/src/org/klomp/snark/SnarkManager.java:2550 msgid "I2P tunnel closed." msgstr "I2Péš§é“已关é—" #: ../java/src/org/klomp/snark/MagnetURI.java:42 #: ../java/src/org/klomp/snark/MagnetURI.java:52 -#: ../java/src/org/klomp/snark/SnarkManager.java:2096 +#: ../java/src/org/klomp/snark/SnarkManager.java:2221 msgid "Magnet" msgstr "Magnet" -#: ../java/src/org/klomp/snark/SnarkManager.java:772 +#: ../java/src/org/klomp/snark/SnarkManager.java:791 #, java-format msgid "Total uploaders limit changed to {0}" msgstr "æ€»ä¸Šä¼ ç§åæ•°é™åˆ¶å·²æ›´æ–°ä¸º{0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:774 +#: ../java/src/org/klomp/snark/SnarkManager.java:793 #, java-format msgid "Minimum total uploaders limit is {0}" msgstr "æœ€ä½Žä¸Šä¼ ç§åæ•°é™åˆ¶ä¸º{0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:786 +#: ../java/src/org/klomp/snark/SnarkManager.java:805 #, java-format msgid "Up BW limit changed to {0}KBps" msgstr "ä¸Šä¼ å¸¦å®½é™åˆ¶æ”¹ä¸º {0} KB/s" -#: ../java/src/org/klomp/snark/SnarkManager.java:788 +#: ../java/src/org/klomp/snark/SnarkManager.java:807 #, java-format msgid "Minimum up bandwidth limit is {0}KBps" msgstr "最å°ä¸Šä¼ 带宽é™åˆ¶ä¸º {0} KB/s" -#: ../java/src/org/klomp/snark/SnarkManager.java:800 +#: ../java/src/org/klomp/snark/SnarkManager.java:819 #, java-format msgid "Startup delay changed to {0}" msgstr "下载å‰çš„延迟已更新为{0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:811 +#: ../java/src/org/klomp/snark/SnarkManager.java:830 #, java-format msgid "Refresh time changed to {0}" msgstr "刷新时间更新为{0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:813 +#: ../java/src/org/klomp/snark/SnarkManager.java:832 msgid "Refresh disabled" msgstr "刷新已ç¦ç”¨" -#: ../java/src/org/klomp/snark/SnarkManager.java:829 +#: ../java/src/org/klomp/snark/SnarkManager.java:848 #, java-format msgid "Page size changed to {0}" msgstr "页é¢å®¹é‡æ›´æ–°ä¸º{0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:838 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:956 +#: ../java/src/org/klomp/snark/SnarkManager.java:857 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:958 msgid "Data directory must be an absolute path" msgstr "æ•°æ®å˜æ”¾ç›®å½•必须是ç»å¯¹è·¯å¾„" -#: ../java/src/org/klomp/snark/SnarkManager.java:840 +#: ../java/src/org/klomp/snark/SnarkManager.java:859 msgid "Data directory does not exist" msgstr "æ•°æ®å˜æ”¾ç›®å½•ä¸å˜åœ¨" -#: ../java/src/org/klomp/snark/SnarkManager.java:842 +#: ../java/src/org/klomp/snark/SnarkManager.java:861 msgid "Not a directory" msgstr "䏿˜¯æ–‡ä»¶å¤¹" -#: ../java/src/org/klomp/snark/SnarkManager.java:844 +#: ../java/src/org/klomp/snark/SnarkManager.java:863 msgid "Unreadable" msgstr "ä¸å¯è¯»" -#: ../java/src/org/klomp/snark/SnarkManager.java:849 +#: ../java/src/org/klomp/snark/SnarkManager.java:868 #, java-format msgid "Data directory changed to {0}" msgstr "æ•°æ®å˜æ”¾ç›®å½•更新至{0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:904 +#: ../java/src/org/klomp/snark/SnarkManager.java:923 msgid "I2CP and tunnel changes will take effect after stopping all torrents" msgstr "I2CP与隧é“设置的å˜åŒ–在所有ç§ååœæ¢åŽæ‰èƒ½ç”Ÿæ•ˆ" -#: ../java/src/org/klomp/snark/SnarkManager.java:908 +#: ../java/src/org/klomp/snark/SnarkManager.java:927 #, java-format msgid "I2CP options changed to {0}" msgstr "I2CP 选项改为 {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:914 +#: ../java/src/org/klomp/snark/SnarkManager.java:933 msgid "Disconnecting old I2CP destination" msgstr "æ£åœ¨æ–开旧的I2CPç›®æ ‡" -#: ../java/src/org/klomp/snark/SnarkManager.java:916 +#: ../java/src/org/klomp/snark/SnarkManager.java:935 #, java-format msgid "I2CP settings changed to {0}" msgstr "I2CP设置改为{0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:921 +#: ../java/src/org/klomp/snark/SnarkManager.java:940 msgid "" "Unable to connect with the new settings, reverting to the old I2CP settings" msgstr "æ— æ³•é€šè¿‡æ–°è®¾ç½®è¿žæŽ¥ï¼Œæ¢å¤I2CP的旧设置" -#: ../java/src/org/klomp/snark/SnarkManager.java:925 +#: ../java/src/org/klomp/snark/SnarkManager.java:944 msgid "Unable to reconnect with the old settings!" msgstr "æ—§è®¾ç½®ä¹Ÿæ— æ³•è¿žæŽ¥ï¼" -#: ../java/src/org/klomp/snark/SnarkManager.java:927 +#: ../java/src/org/klomp/snark/SnarkManager.java:946 msgid "Reconnected on the new I2CP destination" msgstr "釿–°è¿žæŽ¥æ–°I2CPç›®æ ‡" -#: ../java/src/org/klomp/snark/SnarkManager.java:934 +#: ../java/src/org/klomp/snark/SnarkManager.java:953 #, java-format msgid "I2CP listener restarted for \"{0}\"" msgstr "\"{0}\"çš„I2CP监å¬ç«¯å£å·²å¯åЍ" -#: ../java/src/org/klomp/snark/SnarkManager.java:948 +#: ../java/src/org/klomp/snark/SnarkManager.java:967 msgid "New files will be publicly readable" msgstr "新文件将对公共å¯è¯»" -#: ../java/src/org/klomp/snark/SnarkManager.java:950 +#: ../java/src/org/klomp/snark/SnarkManager.java:969 msgid "New files will not be publicly readable" msgstr "新文件ä¸ä¼šå¯¹å…¬å…±å¯è¯»" -#: ../java/src/org/klomp/snark/SnarkManager.java:957 +#: ../java/src/org/klomp/snark/SnarkManager.java:976 msgid "Enabled autostart" msgstr "å¯ç”¨è‡ªåЍå¯åЍ" -#: ../java/src/org/klomp/snark/SnarkManager.java:959 +#: ../java/src/org/klomp/snark/SnarkManager.java:978 msgid "Disabled autostart" msgstr "ç¦ç”¨è‡ªåЍå¯åЍ" -#: ../java/src/org/klomp/snark/SnarkManager.java:965 +#: ../java/src/org/klomp/snark/SnarkManager.java:985 +msgid "Enabled smart sort" +msgstr "å·²å¯ç”¨æ™ºèƒ½æŽ’åº" + +#: ../java/src/org/klomp/snark/SnarkManager.java:987 +msgid "Disabled smart sort" +msgstr "å·²ç¦ç”¨æ™ºèƒ½æŽ’åº" + +#: ../java/src/org/klomp/snark/SnarkManager.java:994 msgid "Enabled open trackers - torrent restart required to take effect." msgstr "å¯ç”¨OpenTracker-釿–°å¯åЍç§ååŽç”Ÿæ•ˆ" -#: ../java/src/org/klomp/snark/SnarkManager.java:967 +#: ../java/src/org/klomp/snark/SnarkManager.java:996 msgid "Disabled open trackers - torrent restart required to take effect." msgstr "ç¦ç”¨OpenTracker - 釿–°å¯åЍç§ååŽç”Ÿæ•ˆ" -#: ../java/src/org/klomp/snark/SnarkManager.java:974 +#: ../java/src/org/klomp/snark/SnarkManager.java:1003 msgid "Enabled DHT." msgstr "DHT å·²å¯ç”¨" -#: ../java/src/org/klomp/snark/SnarkManager.java:976 +#: ../java/src/org/klomp/snark/SnarkManager.java:1005 msgid "Disabled DHT." msgstr "DHT å·²ç¦ç”¨" -#: ../java/src/org/klomp/snark/SnarkManager.java:978 +#: ../java/src/org/klomp/snark/SnarkManager.java:1007 msgid "DHT change requires tunnel shutdown and reopen" msgstr "DHT 修改生效需è¦å…³é—或é‡å¯ã€‚" -#: ../java/src/org/klomp/snark/SnarkManager.java:985 +#: ../java/src/org/klomp/snark/SnarkManager.java:1014 #, java-format msgid "{0} theme loaded, return to main i2psnark page to view." msgstr "{0} ä¸»é¢˜å·²åŠ è½½ï¼Œæµè§ˆæ•ˆæžœè¯·åˆ° i2psnark 主页。" -#: ../java/src/org/klomp/snark/SnarkManager.java:995 +#: ../java/src/org/klomp/snark/SnarkManager.java:1024 msgid "Configuration unchanged." msgstr "设置未改å˜" -#: ../java/src/org/klomp/snark/SnarkManager.java:1027 +#: ../java/src/org/klomp/snark/SnarkManager.java:1056 msgid "Open Tracker list changed - torrent restart required to take effect." msgstr "OpenTrackeråˆ—è¡¨å·²æ”¹å˜ - 釿–°å¯åЍç§ååŽç”Ÿæ•ˆ" -#: ../java/src/org/klomp/snark/SnarkManager.java:1037 +#: ../java/src/org/klomp/snark/SnarkManager.java:1066 msgid "Private tracker list changed - affects newly created torrents only." msgstr "PT 列表已更改 ï¼ ä»…å¯¹æ–°åˆ›å»ºçš„ç§å有效" -#: ../java/src/org/klomp/snark/SnarkManager.java:1083 +#: ../java/src/org/klomp/snark/SnarkManager.java:1112 #, java-format msgid "Unable to save the config to {0}" msgstr "æ— æ³•ä¿å˜è®¾ç½®åˆ°{0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1164 +#: ../java/src/org/klomp/snark/SnarkManager.java:1193 msgid "Connecting to I2P" msgstr "æ£åœ¨è¿žæŽ¥åˆ°I2P" -#: ../java/src/org/klomp/snark/SnarkManager.java:1167 +#: ../java/src/org/klomp/snark/SnarkManager.java:1196 msgid "Error connecting to I2P - check your I2CP settings!" msgstr "连接I2Pæ—¶å‘生错误 - 请检查I2CP设置!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1176 -#: ../java/src/org/klomp/snark/SnarkManager.java:2133 +#: ../java/src/org/klomp/snark/SnarkManager.java:1205 +#: ../java/src/org/klomp/snark/SnarkManager.java:2270 #, java-format msgid "Error: Could not add the torrent {0}" msgstr "é”™è¯¯ï¼šæ— æ³•æ·»åŠ ç§å{0}" #. catch this here so we don't try do delete it below -#: ../java/src/org/klomp/snark/SnarkManager.java:1199 +#: ../java/src/org/klomp/snark/SnarkManager.java:1228 #, java-format msgid "Cannot open \"{0}\"" msgstr "æ— æ³•æ‰“å¼€ \"{0}\"" #. TODO - if the existing one is a magnet, delete it and add the metainfo #. instead? -#: ../java/src/org/klomp/snark/SnarkManager.java:1218 -#: ../java/src/org/klomp/snark/SnarkManager.java:1352 -#: ../java/src/org/klomp/snark/SnarkManager.java:1440 +#: ../java/src/org/klomp/snark/SnarkManager.java:1247 +#: ../java/src/org/klomp/snark/SnarkManager.java:1388 +#: ../java/src/org/klomp/snark/SnarkManager.java:1476 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:166 #, java-format msgid "Torrent with this info hash is already running: {0}" msgstr "具有相åŒHash链接的ç§å已在下载ä¸:{0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1224 +#: ../java/src/org/klomp/snark/SnarkManager.java:1253 #, java-format msgid "ERROR - No I2P trackers in private torrent \"{0}\"" msgstr "错误 - ç§æœ‰ç§å\"{0}\"ä¸ç¼ºå°‘ I2P Tracker" -#: ../java/src/org/klomp/snark/SnarkManager.java:1226 +#: ../java/src/org/klomp/snark/SnarkManager.java:1255 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", will announce to I2P open trackers and" " DHT only." msgstr "è¦å‘Š - \"{0}\"ä¸ç¼ºå°‘ I2P Tracker,程åºå°†ä»…通过 I2P ä¸çš„å¼€æ”¾å¼ Tracker å’Œ DHT 下载。" -#: ../java/src/org/klomp/snark/SnarkManager.java:1229 +#: ../java/src/org/klomp/snark/SnarkManager.java:1258 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and open trackers are disabled, will " "announce to DHT only." msgstr "è¦å‘Š - \"{0}\"ä¸ç¼ºå°‘ I2P Tracker,已ç¦ç”¨ I2P Open Tracker,程åºå°†ä»…通过 DHT 下载。" -#: ../java/src/org/klomp/snark/SnarkManager.java:1231 +#: ../java/src/org/klomp/snark/SnarkManager.java:1260 #, java-format msgid "" "Warning - No I2P trackers in \"{0}\", and DHT and open trackers are " @@ -251,34 +259,46 @@ msgid "" "torrent." msgstr "è¦å‘Š - \"{0}\"ä¸ç¼ºå°‘ I2P Tracker,已ç¦ç”¨ I2P Open Tracker å’Œ DHT,下载先您需è¦å…ˆå¯ç”¨ OpenTracker 或 DHT 。" -#: ../java/src/org/klomp/snark/SnarkManager.java:1257 +#: ../java/src/org/klomp/snark/SnarkManager.java:1286 #, java-format msgid "Torrent in \"{0}\" is invalid" msgstr "æ— æ•ˆç§å \"{0}\" " -#: ../java/src/org/klomp/snark/SnarkManager.java:1264 +#: ../java/src/org/klomp/snark/SnarkManager.java:1292 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1042 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1069 +#, java-format +msgid "Torrent file deleted: {0}" +msgstr "ç§åæ–‡ä»¶å·²åˆ é™¤:{0}" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1295 +#, java-format +msgid "Torrent file moved from {0} to {1}" +msgstr "ç§å文件已从 {0} 移动到 {1}" + +#: ../java/src/org/klomp/snark/SnarkManager.java:1299 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:193 #, java-format msgid "ERROR - Out of memory, cannot create torrent from {0}" msgstr "错误: 内å˜ä¸è¶³ï¼Œæ— 法为 {0} 创建ç§å。" -#: ../java/src/org/klomp/snark/SnarkManager.java:1285 +#: ../java/src/org/klomp/snark/SnarkManager.java:1321 #, java-format -msgid "Torrent added and started: \"{0}\"" -msgstr "å·²æ·»åŠ å¹¶å¯åЍç§å:\"{0}\"" +msgid "Torrent added and started: {0}" +msgstr "ç§åå·²æ·»åŠ å¹¶å¼€å§‹ï¼š{0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1287 +#: ../java/src/org/klomp/snark/SnarkManager.java:1323 #, java-format -msgid "Torrent added: \"{0}\"" -msgstr "å·²æ·»åŠ ç§å:\"{0}\"" +msgid "Torrent added: {0}" +msgstr "ç§åå·²æ·»åŠ ï¼š{0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1363 +#: ../java/src/org/klomp/snark/SnarkManager.java:1399 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:93 #, java-format msgid "Fetching {0}" msgstr "æ£åœ¨èŽ·å–{0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1369 +#: ../java/src/org/klomp/snark/SnarkManager.java:1405 #, java-format msgid "" "Open trackers are disabled and we have no DHT peers. Fetch of {0} may not " @@ -286,131 +306,146 @@ msgid "" "DHT." msgstr "OpenTracker被ç¦ç”¨ï¼Œç¨‹åºç›®å‰æ²¡æœ‰DHT节点。{0}的下载ä¸ä¼šæˆåŠŸï¼Œç›´åˆ°æ‚¨å¯åЍå¦ä¸€ä¸ªç§å的下载ã€é‡æ–°å¯ç”¨OpenTracker或DHT。" -#: ../java/src/org/klomp/snark/SnarkManager.java:1373 +#: ../java/src/org/klomp/snark/SnarkManager.java:1409 #, java-format msgid "Adding {0}" msgstr "æ£åœ¨æ·»åŠ {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1406 +#: ../java/src/org/klomp/snark/SnarkManager.java:1442 #, java-format msgid "Download already running: {0}" msgstr "å·²ç»åœ¨ä¸‹è½½ä¸:{0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1451 -#: ../java/src/org/klomp/snark/SnarkManager.java:1477 -#: ../java/src/org/klomp/snark/SnarkManager.java:2052 +#: ../java/src/org/klomp/snark/SnarkManager.java:1487 +#: ../java/src/org/klomp/snark/SnarkManager.java:1513 +#: ../java/src/org/klomp/snark/SnarkManager.java:2151 #, java-format msgid "Failed to copy torrent file to {0}" msgstr "æ— æ³•å¤åˆ¶ç§å文件到{0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1828 +#: ../java/src/org/klomp/snark/SnarkManager.java:1927 #, java-format -msgid "Too many files in \"{0}\" ({1}), deleting it!" -msgstr "\"{0}\" ({1}) 嫿œ‰å¤ªå¤šæ–‡ä»¶ï¼Œåˆ 除之!" +msgid "Too many files in \"{0}\" ({1})!" +msgstr "\"{0}\" ({1}) 嫿œ‰å¤ªå¤šæ–‡ä»¶!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1830 +#: ../java/src/org/klomp/snark/SnarkManager.java:1929 #, java-format -msgid "Torrent file \"{0}\" cannot end in \".torrent\", deleting it!" -msgstr "ç§å文件 \"{0}\" ä¸ä»¥ \".torrent\"结尾,æ£åœ¨åˆ 除ï¼" +msgid "Torrent file \"{0}\" cannot end in \".torrent\"!" +msgstr "ç§å文件 \"{0}\" ä¸ä»¥ \".torrent\"结尾!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1832 +#: ../java/src/org/klomp/snark/SnarkManager.java:1931 #, java-format -msgid "No pieces in \"{0}\", deleting it!" -msgstr "\"{0}\" 䏿²¡æœ‰æ•°æ®ç‰‡ï¼Œåˆ 除之!" +msgid "No pieces in \"{0}\"!" +msgstr "\"{0}\" 䏿²¡æœ‰æ–‡ä»¶åˆ†ç‰‡!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1834 +#: ../java/src/org/klomp/snark/SnarkManager.java:1933 #, java-format -msgid "Too many pieces in \"{0}\", limit is {1}, deleting it!" -msgstr "\"{0}\" 䏿–‡ä»¶åˆ†ç‰‡å¤ªå¤šï¼Œé™é¢ä¸º{1}ï¼Œåˆ é™¤ä¹‹ï¼" +msgid "Too many pieces in \"{0}\", limit is {1}!" +msgstr "\"{0}\" 䏿–‡ä»¶åˆ†ç‰‡å¤ªå¤šï¼Œé™é¢ä¸º{1}!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1836 +#: ../java/src/org/klomp/snark/SnarkManager.java:1935 #, java-format -msgid "Pieces are too large in \"{0}\" ({1}B), deleting it." -msgstr "\"{0}\" ({1}B) 䏿–‡ä»¶åˆ†ç‰‡è¿‡å¤§ï¼Œåˆ 除之。" +msgid "Pieces are too large in \"{0}\" ({1}B)!" +msgstr "\"{0}\"({1}B)ä¸åˆ†ç‰‡è¿‡å¤§!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1837 +#: ../java/src/org/klomp/snark/SnarkManager.java:1936 #, java-format msgid "Limit is {0}B" msgstr "é™é¢ä¸º {0}B" -#: ../java/src/org/klomp/snark/SnarkManager.java:1839 +#: ../java/src/org/klomp/snark/SnarkManager.java:1938 #, java-format -msgid "Torrent \"{0}\" has no data, deleting it!" -msgstr "ç§å\"{0}\"䏿— æ•°æ®ï¼Œæ£åœ¨åˆ 除!" +msgid "Torrent \"{0}\" has no data!" +msgstr "ç§å \"{0}\" 䏿— æ•°æ®!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1847 +#: ../java/src/org/klomp/snark/SnarkManager.java:1946 #, java-format -msgid "Torrents larger than {0}B are not supported yet, deleting \"{1}\"" -msgstr "ç›®å‰ä¸æ”¯æŒå¤§äºŽ{0}B çš„ç§å,æ£åœ¨åˆ 除\"{1}\"" +msgid "Torrents larger than {0}B are not supported yet \"{1}\"!" +msgstr "ç›®å‰ä¸æ”¯æŒå¤§äºŽ {0}B çš„ç§å \"{1}\"!" -#: ../java/src/org/klomp/snark/SnarkManager.java:1864 +#: ../java/src/org/klomp/snark/SnarkManager.java:1963 #, java-format msgid "Error: Could not remove the torrent {0}" msgstr "错误:æ— æ³•åˆ é™¤ç§å{0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1887 -#: ../java/src/org/klomp/snark/SnarkManager.java:1906 +#: ../java/src/org/klomp/snark/SnarkManager.java:1986 +#: ../java/src/org/klomp/snark/SnarkManager.java:2005 #, java-format -msgid "Torrent stopped: \"{0}\"" -msgstr "ç§åå·²åœæ¢:\"{0}\"" +msgid "Torrent stopped: {0}" +msgstr "ç§åå·²åœæ¢ï¼š{0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:1926 +#: ../java/src/org/klomp/snark/SnarkManager.java:2025 #, java-format msgid "Torrent removed: \"{0}\"" msgstr "ç§åå·²åˆ é™¤:\"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:1934 +#: ../java/src/org/klomp/snark/SnarkManager.java:2033 #, java-format msgid "Adding torrents in {0}" msgstr "{0} åˆ†é’Ÿå†…å®Œæˆæ·»åŠ " -#: ../java/src/org/klomp/snark/SnarkManager.java:1966 +#: ../java/src/org/klomp/snark/SnarkManager.java:2067 #, java-format msgid "Up bandwidth limit is {0} KBps" msgstr "ä¸Šä¼ å¸¦å®½é™åˆ¶ä¸º {0} KB/s" -#: ../java/src/org/klomp/snark/SnarkManager.java:1993 +#: ../java/src/org/klomp/snark/SnarkManager.java:2092 #, java-format msgid "Download finished: {0}" msgstr "下载已完æˆ: {0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2048 +#: ../java/src/org/klomp/snark/SnarkManager.java:2147 #, java-format msgid "Metainfo received for {0}" msgstr "已获得 {0} çš„ Metainfo" -#: ../java/src/org/klomp/snark/SnarkManager.java:2049 -#: ../java/src/org/klomp/snark/SnarkManager.java:2280 +#: ../java/src/org/klomp/snark/SnarkManager.java:2148 +#: ../java/src/org/klomp/snark/SnarkManager.java:2431 #, java-format msgid "Starting up torrent {0}" msgstr "æ£åœ¨å¯åЍç§å{0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:2064 +#: ../java/src/org/klomp/snark/SnarkManager.java:2163 #, java-format msgid "Error on torrent {0}" msgstr "ç§å {0} å‘生错误" -#: ../java/src/org/klomp/snark/SnarkManager.java:2127 +#: ../java/src/org/klomp/snark/SnarkManager.java:2264 msgid "Unable to connect to I2P!" msgstr "æ— æ³•è¿žæŽ¥è‡³I2P!" -#: ../java/src/org/klomp/snark/SnarkManager.java:2279 +#: ../java/src/org/klomp/snark/SnarkManager.java:2430 #: ../java/src/org/klomp/snark/web/FetchAndAdd.java:130 msgid "Opening the I2P tunnel" msgstr "æ£åœ¨å»ºç«‹ I2P éš§é“" -#: ../java/src/org/klomp/snark/SnarkManager.java:2303 +#: ../java/src/org/klomp/snark/SnarkManager.java:2450 msgid "Opening the I2P tunnel and starting all torrents." msgstr "æ£åœ¨æ‰“å¼€I2Péš§é“å¹¶å¯åŠ¨æ‰€æœ‰ç§å" -#: ../java/src/org/klomp/snark/SnarkManager.java:2366 +#: ../java/src/org/klomp/snark/SnarkManager.java:2513 msgid "Stopping all torrents and closing the I2P tunnel." msgstr "æ£åœ¨åœç”¨æ‰€æœ‰ç§åå¹¶å…³é—I2Péš§é“。" -#: ../java/src/org/klomp/snark/SnarkManager.java:2385 +#: ../java/src/org/klomp/snark/SnarkManager.java:2532 msgid "Closing I2P tunnel after notifying trackers." msgstr "æ£åœ¨å…³é— I2P éš§é“,已通知 Tracker。" +#: ../java/src/org/klomp/snark/SnarkManager.java:2594 +#, java-format +msgid "Finished recheck of torrent {0}, now {1} complete" +msgstr "已完æˆå¯¹ç§å {0} çš„é‡æ–°æ£€æŸ¥ï¼ŒçŽ°åœ¨ {1} 已完æˆ" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2596 +#, java-format +msgid "Finished recheck of torrent {0}, unchanged" +msgstr "已完æˆå¯¹ç§å {0} çš„é‡æ–°æ£€æŸ¥ï¼Œæœªå˜æ›´" + +#: ../java/src/org/klomp/snark/SnarkManager.java:2600 +#, java-format +msgid "Error checking the torrent {0}" +msgstr "检查ç§å {0} 时出错" + #: ../java/src/org/klomp/snark/TrackerClient.java:245 #, java-format msgid "No valid trackers for {0} - enable opentrackers or DHT?" @@ -456,885 +491,907 @@ msgstr "ç§å排队ä¸:{0}" msgid "Torrent at {0} was not valid" msgstr "{0}çš„ç§å䏿œ‰é”™è¯¯" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:268 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:311 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:322 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1763 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2662 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:270 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:313 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:324 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1778 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2698 msgid "I2PSnark" msgstr "I2PSnark" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:273 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2149 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2422 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2165 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2446 msgid "Configuration" msgstr "设置" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:277 msgid "Anonymous BitTorrent Client" msgstr "匿åçš„ BitTorrent 客户端" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:291 msgid "Router is down" msgstr "路由器已关é—" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:306 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:308 msgid "Torrents" msgstr "ç§å" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:319 msgid "Refresh page" msgstr "刷新页é¢" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:326 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:328 msgid "Forum" msgstr "论å›" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:341 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:343 msgid "Click \"Add torrent\" button to fetch torrent" msgstr "点击 \"æ·»åŠ ç§å\" 按钮æ¥èŽ·å–ç§å" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:394 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:396 msgid "clear messages" msgstr "清除消æ¯" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:449 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2980 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3072 msgid "Status" msgstr "状æ€" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:451 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2994 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:453 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3086 #, java-format msgid "Sort by {0}" msgstr "æŽ’åºæŒ‰ {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:462 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:464 msgid "Hide Peers" msgstr "éšè—用户" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:468 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:470 msgid "Show Peers" msgstr "显示用户" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:491 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2648 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2718 msgid "Torrent" msgstr "ç§å" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:495 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "File type" msgstr "文件类型" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:509 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 msgid "ETA" msgstr "预计剩余时间" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:511 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:512 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:513 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:514 msgid "Estimated time remaining" msgstr "预计剩余时间" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:535 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 msgid "RX" msgstr "已接收" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:538 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:540 msgid "Downloaded" msgstr "已下载" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2818 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2968 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2878 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3060 msgid "Size" msgstr "大å°" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 msgid "TX" msgstr "å·²å‘é€" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2896 msgid "Upload ratio" msgstr "ä¸Šä¼ çŽ‡" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:568 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:569 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:570 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:571 msgid "Uploaded" msgstr "å·²ä¸Šä¼ " #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:581 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 msgid "RX Rate" msgstr "接收速度" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:584 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:585 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:586 msgid "Down Rate" msgstr "下载速度" #. Translators: Please keep short or translate as " " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:596 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 msgid "TX Rate" msgstr "å‘é€é€Ÿåº¦" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:598 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:599 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:600 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:601 msgid "Up Rate" msgstr "ä¸Šä¼ é€Ÿåº¦" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:615 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 msgid "Stop all torrents and the I2P tunnel" msgstr "åœæ¢å…¨éƒ¨ç§ååŠI2Péš§é“" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:619 msgid "Stop All" msgstr "åœæ¢å…¨éƒ¨" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:629 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 msgid "Start all stopped torrents" msgstr "å¯åŠ¨æ‰€æœ‰å·²åœæ¢çš„ç§å" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:633 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:647 msgid "Start All" msgstr "å¯åŠ¨å…¨éƒ¨" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:643 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 msgid "Start all torrents and the I2P tunnel" msgstr "å¯åŠ¨å…¨éƒ¨ç§ååŠI2Péš§é“" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:668 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:670 msgid "No torrents loaded." msgstr "未载入任何ç§å" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:674 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 msgid "Totals" msgstr "总计" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:676 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:678 #, java-format msgid "1 torrent" msgid_plural "{0} torrents" msgstr[0] "{0}个ç§å" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:683 #, java-format msgid "1 connected peer" msgid_plural "{0} connected peers" msgstr[0] "{0}个已连接用户" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:688 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:690 #, java-format msgid "1 DHT peer" msgid_plural "{0} DHT peers" msgstr[0] "{0}个DHT节点" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:695 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:697 msgid "Dest" msgstr "ç›®æ ‡" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First" msgstr "首页" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:823 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:825 msgid "First page" msgstr "第一页" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Prev" msgstr "å‰é¡µ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:835 msgid "Previous page" msgstr "上一页" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next" msgstr "下页" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Next page" msgstr "下一页" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last" msgstr "末页" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:874 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:876 msgid "Last page" msgstr "最åŽä¸€é¡µ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:960 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:962 msgid "Data directory cannot be created" msgstr "æ— æ³•åˆ›å»ºæ•°æ®ç›®å½•" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:970 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1176 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:972 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1185 #, java-format msgid "Cannot add torrent {0} inside another torrent: {1}" msgstr "æ— æ³•æ·»åŠ å†…å«å¦ä¸€ä¸ªç§åçš„ç§å {0}:{1}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:985 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:993 #, java-format msgid "Invalid URL: Must start with \"http://\", \"{0}\", or \"{1}\"" msgstr "æ— æ•ˆé“¾æŽ¥ - 链接必须以“http://â€ï¼Œâ€œ{0}â€æˆ–“{1}â€å¼€å¤´" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1026 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1063 #, java-format msgid "Magnet deleted: {0}" msgstr "Magnet å·²åˆ é™¤:{0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1034 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1061 #, java-format -msgid "Torrent file deleted: {0}" -msgstr "ç§åæ–‡ä»¶å·²åˆ é™¤:{0}" - -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1053 -#, java-format msgid "Download deleted: {0}" msgstr "ä¸‹è½½å·²åˆ é™¤: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1070 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1078 #, java-format msgid "Data file deleted: {0}" msgstr "æ•°æ®æ–‡ä»¶å·²åˆ 除:{0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1072 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1089 #, java-format msgid "Data file could not be deleted: {0}" msgstr "æ— æ³•åˆ é™¤æ•°æ®æ–‡ä»¶:{0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1097 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1105 #, java-format msgid "Directory could not be deleted: {0}" msgstr "æ— æ³•åˆ é™¤ç›®å½•:{0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1112 #, java-format msgid "Directory deleted: {0}" msgstr "目录已ç»åˆ 除: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1155 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1164 #, java-format msgid "Cannot add a torrent ending in \".torrent\": {0}" msgstr "æ— æ³•æ·»åŠ ä¸€ä¸ªä»¥ \".torrent\" 结尾的ç§å: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1160 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1169 #, java-format msgid "Torrent with this name is already running: {0}" msgstr "æ¤åç§°çš„ç§å已在è¿è¡Œï¼š{0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1175 #, java-format msgid "Cannot add a torrent including an I2P directory: {0}" msgstr "æ— æ³•æ·»åŠ åŒ…å«ä¸€ä¸ª I2P 目录的ç§å:{0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1181 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1190 #, java-format msgid "Cannot add torrent {0} including another torrent: {1}" msgstr "æ— æ³•æ·»åŠ åŒ…å«å¦ä¸€ä¸ªç§åçš„ç§å {0}:{1}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1216 msgid "Error - Cannot include alternate trackers without a primary tracker" msgstr "错误 - 缺少主Trackeråˆ™æ— æ³•æ·»åŠ æ›¿æ¢Tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1220 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1229 msgid "Error - Cannot mix private and public trackers in a torrent" msgstr "错误 - PT和公共Trackeræ— æ³•åœ¨åŒä¸€ç§å䏿··ç”¨ã€‚" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1251 #, java-format msgid "Torrent created for \"{0}\"" msgstr "ç§å创建æˆåŠŸ\"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1244 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 #, java-format msgid "" "Many I2P trackers require you to register new torrents before seeding - " "please do so before starting \"{0}\"" msgstr "多数I2PTracker需è¦ç”¨æˆ·åœ¨åšç§å‰æ³¨å†Œæ–°ç§å - 请在å¯åЍ \"{0}\"å‰åˆ°æ‰€ä½¿ç”¨çš„Tracker进行注册。" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1255 #, java-format msgid "Error creating a torrent for \"{0}\"" msgstr "创建ç§åæ—¶å‘生错误 \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1250 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1259 #, java-format msgid "Cannot create a torrent for the nonexistent data: {0}" msgstr "æ— æ³•ä¸ºä¸å˜åœ¨çš„æ•°æ®æ–‡ä»¶åˆ›å»ºç§å:{0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1253 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1262 msgid "Error creating torrent - you must enter a file or directory" msgstr "创建ç§åæ—¶å‘生错误 - 必须指定文件或文件夹" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2406 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2430 msgid "Delete selected" msgstr "åˆ é™¤é€‰ä¸é¡¹ç›®" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2408 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1293 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2432 msgid "Save tracker configuration" msgstr "ä¿å˜ Tracker 设置" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1301 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1310 msgid "Removed" msgstr "å·²åˆ é™¤" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1333 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2405 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2407 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1342 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2429 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2431 msgid "Add tracker" msgstr "æ·»åŠ Tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1356 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1359 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1365 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1368 msgid "Enter valid tracker name and URLs" msgstr "请输入有效的 Tracker å称与链接" #. "<input type=\"reset\" class=\"cancel\" #. value=\"").append(_t("Cancel")).append("\">\n" + -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1361 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2410 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1370 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2434 msgid "Restore defaults" msgstr "æ¢å¤é»˜è®¤å€¼" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1373 msgid "Restored default trackers" msgstr "æ¢å¤é»˜è®¤ Tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1472 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1473 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1485 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1486 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2949 msgid "Checking" msgstr "æ£åœ¨æ£€æŸ¥" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1475 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1476 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1489 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2956 msgid "Allocating" msgstr "æ£åœ¨åˆ†é…空间" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1490 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1499 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1505 msgid "Tracker Error" msgstr "Tracker错误" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1492 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1522 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1527 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1538 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1543 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1554 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1507 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1537 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1542 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1553 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1558 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1569 #, java-format msgid "1 peer" msgid_plural "{0} peers" msgstr[0] "{0}个用户" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1502 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1503 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1517 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1518 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2954 msgid "Starting" msgstr "æ£åœ¨å¯åЍ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1511 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1526 msgid "Seeding" msgstr "æ£åšç§" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1515 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1529 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1530 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2831 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1544 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2891 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3139 msgid "Complete" msgstr "完æˆ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1534 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1535 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1540 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1541 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1549 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1550 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1555 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 msgid "OK" msgstr "æ£å¸¸" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1545 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1546 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1551 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1552 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1566 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1567 msgid "Stalled" msgstr "ç‰å¾…" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1556 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1557 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1560 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1561 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1571 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1572 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1575 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1576 msgid "No Peers" msgstr "没有用户" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1563 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1564 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1578 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1579 msgid "Stopped" msgstr "å·²åœç”¨" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1593 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1608 msgid "Torrent details" msgstr "ç§å详情" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1628 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1643 msgid "View files" msgstr "æµè§ˆæ–‡ä»¶" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1630 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1645 msgid "Open file" msgstr "打开文件" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1682 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 msgid "Stop the torrent" msgstr "åœæ¢ç§å" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1684 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2961 msgid "Stop" msgstr "åœæ¢" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1697 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 msgid "Start the torrent" msgstr "å¯åЍç§å" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1714 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2963 msgid "Start" msgstr "å¯åЍ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1712 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1727 msgid "Remove the torrent from the active list, deleting the .torrent file" msgstr "å–æ¶ˆä¸‹è½½ä»»åŠ¡å¹¶åˆ é™¤å¯¹åº”ç§å文件。" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1717 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1732 #, java-format msgid "" "Are you sure you want to delete the file \\''{0}\\'' (downloaded data will " "not be deleted) ?" msgstr "ä½ ç¡®å®šä½ è¦åˆ 除文件 \\“{0} \\†(下载的数æ®ä¸ä¼šè¢«åˆ 除)?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1721 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1736 msgid "Remove" msgstr "移除" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1734 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1749 msgid "Delete the .torrent file and the associated data file(s)" msgstr "åˆ é™¤ç§ååŠæ‰€ä¸‹è½½çš„æ–‡ä»¶" #. Can't figure out how to escape double quotes inside the onclick string. #. Single quotes in translate strings with parameters must be doubled. #. Then the remaining single quote must be escaped -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1739 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1754 #, java-format msgid "" "Are you sure you want to delete the torrent \\''{0}\\'' and all downloaded " "data?" msgstr "您确定è¦åˆ 除ç§å“{0}â€(ä¸‹è½½çš„æ•°æ®æ–‡ä»¶ä¼šä¸€å¹¶è¢«åˆ 除)?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1743 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2364 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1758 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2388 msgid "Delete" msgstr "åˆ é™¤" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1779 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1794 msgid "Unknown" msgstr "未知" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1791 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1806 msgid "Seed" msgstr "ç§å" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1814 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1829 msgid "Uninteresting (The peer has no pieces we need)" msgstr "æ— éœ€è¦éƒ¨åˆ†" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1816 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1831 msgid "Choked (The peer is not allowing us to request pieces)" msgstr "æ‹’ç»è¯·æ±‚" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1851 msgid "Uninterested (We have no pieces the peer needs)" msgstr "æ— éœ€è¦éƒ¨åˆ†" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1838 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1853 msgid "Choking (We are not allowing the peer to request pieces)" msgstr "æ‹’ç»è¯·æ±‚" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1954 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1969 #, java-format msgid "Details at {0} tracker" msgstr "Tracker {0} 上的详细信æ¯" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1971 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1986 msgid "Info" msgstr "ä¿¡æ¯" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 msgid "Add Torrent" msgstr "æ·»åŠ ç§å" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2047 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 msgid "From URL" msgstr "从URL" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2050 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2065 msgid "" "Enter the torrent file download URL (I2P only), magnet link, maggot link, or" " info hash" msgstr "输入ç§å文件的下载链接(仅支æŒI2P内网链接),magnet, maggot é“¾æŽ¥æˆ–ä¿¡æ¯æ•£åˆ—值" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2055 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2070 msgid "Add torrent" msgstr "æ·»åŠ ç§å" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2059 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2074 msgid "Data dir" msgstr "æ•°æ®ç›®å½•" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2062 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2077 #, java-format msgid "Enter the directory to save the data in (default {0})" msgstr "请输入ä¿å˜æ•°æ®çš„目录(默认 {0})" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2066 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 #, java-format msgid "You can also copy .torrent files to: {0}." msgstr "您也å¯ä»¥å°†.torrent文件å¤åˆ¶åˆ°: {0}." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2068 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2083 msgid "Removing a .torrent will cause it to stop." msgstr "移除一个ç§å文件 (.torrent) å°†å¯¼è‡´å®ƒä¸æ¢ã€‚" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2081 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2096 msgid "Create Torrent" msgstr "创建ç§å" #. out.write("From file: <input type=\"file\" name=\"newFile\" size=\"50\" #. value=\"" + newFile + "\" /><br>\n"); -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2084 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2099 msgid "Data to seed" msgstr "åšç§æ•°æ®" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2088 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2103 #, java-format msgid "File or directory to seed (full path or within the directory {0} )" msgstr "è¦åšç§çš„æ–‡ä»¶æˆ–目录(完整路径或包å«åœ¨ {0} 目录ä¸ï¼‰" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2091 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2337 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2106 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2361 msgid "Trackers" msgstr "Tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2093 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2108 msgid "Primary" msgstr "主 Tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2095 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2110 msgid "Alternates" msgstr "备选 Tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2098 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2113 msgid "Create torrent" msgstr "创建ç§å" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2116 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2131 msgid "none" msgstr "æ— " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2153 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2169 msgid "Data directory" msgstr "æ•°æ®æ–‡ä»¶å¤¹" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2158 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 msgid "Files readable by all" msgstr "文件对所有人å¯è¯»" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2162 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2178 msgid "If checked, other users may access the downloaded files" msgstr "选ä¸åŽï¼Œå…¶ä»–用户å¯ä»¥è®¿é—®æ‚¨ä¸‹è½½çš„æ–‡ä»¶ã€‚" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2166 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2182 msgid "Auto start torrents" msgstr "自动开始ç§å" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2170 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2186 msgid "If checked, automatically start torrents that are added" msgstr "选ä¸åŽSnark将自动å¯åŠ¨å·²æ·»åŠ çš„æ‰€æœ‰ç§å。" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2174 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2190 +msgid "Smart torrent sorting" +msgstr "智能ç§å排åº" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2194 +msgid "If checked, ignore words such as 'the' when sorting" +msgstr "如果选ä¸ï¼ŒæŽ’åºæ—¶å¿½ç•¥è¯¸å¦‚ 'the' çš„å•è¯" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2198 msgid "Theme" msgstr "主题" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2188 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2212 msgid "Refresh time" msgstr "刷新时间" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2201 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2225 msgid "Never" msgstr "从ä¸" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2207 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2231 msgid "Startup delay" msgstr "å¯åŠ¨å»¶è¿Ÿ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2209 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2233 msgid "minutes" msgstr "分" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2213 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2237 msgid "Page size" msgstr "页é¢å®¹é‡" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2215 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 msgid "torrents" msgstr "ç§å" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2239 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 msgid "Total uploader limit" msgstr "é™åˆ¶æ€»ä¸Šä¼ ç§å数为" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2242 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2266 msgid "peers" msgstr "用户" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2270 msgid "Up bandwidth limit" msgstr "ä¸Šä¼ å¸¦å®½é™åˆ¶" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2249 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2273 msgid "Half available bandwidth recommended." msgstr "推è设置为å¯ç”¨å¸¦å®½çš„一åŠã€‚" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2251 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2275 msgid "View or change router bandwidth" msgstr "æµè§ˆæˆ–修改路由器带宽" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2255 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2279 msgid "Use open trackers also" msgstr "åŒæ—¶ä½¿ç”¨OpenTracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2259 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 msgid "" "If checked, announce torrents to open trackers as well as the tracker listed" " in the torrent file" msgstr "选择åŽåœ¨OpenTrackeråŠç§å文件ä¸çš„Trackerä¸ŠåŒæ—¶å‘布。" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2263 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2287 msgid "Enable DHT" msgstr "å¯ç”¨ DHT" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2267 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2291 msgid "If checked, use DHT" msgstr "如果选ä¸ï¼Œåˆ™ä½¿ç”¨ DHT。" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2283 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2307 msgid "Inbound Settings" msgstr "入站设置" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2289 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2313 msgid "Outbound Settings" msgstr "出站设置" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2297 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2321 msgid "I2CP host" msgstr "I2CP主机" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2302 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2326 msgid "I2CP port" msgstr "I2CP端å£" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2317 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2341 msgid "I2CP options" msgstr "I2CP选项" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2322 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 msgid "Save configuration" msgstr "ä¿å˜è®¾ç½®" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2342 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2953 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2366 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3045 msgid "Name" msgstr "åç§°" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2344 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2368 msgid "Website URL" msgstr "网站 URL" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2346 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2370 msgid "Standard" msgstr "æ ‡å‡†" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2348 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3080 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2372 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3172 msgid "Open" msgstr "打开" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2350 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2374 msgid "Private" msgstr "ç§æœ‰" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2352 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2376 msgid "Announce URL" msgstr "å‘布 URL" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2396 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2420 msgid "Add" msgstr "æ·»åŠ " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2439 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2463 #, java-format msgid "Invalid magnet URL {0}" msgstr "ç£æ€§é“¾æŽ¥ {0} æ— æ•ˆ" #. * dummies for translation -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2447 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2471 #, java-format msgid "1 hop" msgid_plural "{0} hops" msgstr[0] "{0}è·³" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2448 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2472 #, java-format msgid "1 tunnel" msgid_plural "{0} tunnels" msgstr[0] "{0}éš§é“" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2691 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2728 msgid "Torrent file" msgstr "Torrent文件" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2699 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 msgid "Data location" msgstr "æ•°æ®ä½ç½®" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2708 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2745 msgid "Info hash" msgstr "ä¿¡æ¯å“ˆå¸Œ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2727 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2764 msgid "Primary Tracker" msgstr "主 Tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2736 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2773 msgid "Tracker List" msgstr "Tracker 列表" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2761 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2798 msgid "Comment" msgstr "评论" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2771 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2812 msgid "Created" msgstr "已创建" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2782 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2823 msgid "Created By" msgstr "创建者" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2794 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2833 +msgid "Added" +msgstr "å·²æ·»åŠ " + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2842 +msgid "Completed" +msgstr "已完æˆ" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2854 msgid "Magnet link" msgstr "Magnetç£æ€§é“¾æŽ¥" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2807 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2867 msgid "Private torrent" msgstr "ç§æœ‰ç§å" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2827 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2887 msgid "Completion" msgstr "完æˆ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2856 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2982 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2916 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3074 msgid "Remaining" msgstr "剩余" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2866 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2926 msgid "Files" msgstr "文件" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2873 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 msgid "Pieces" msgstr "åˆ†å—æ•°é‡" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2879 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2939 msgid "Piece size" msgstr "分å—大å°" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2933 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2952 +msgid "Refresh page for results" +msgstr "刷新页é¢èŽ·å–结果" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2964 +msgid "Force Recheck" +msgstr "å¼ºåˆ¶é‡æ–°æ£€æŸ¥" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3025 msgid "Directory" msgstr "文件夹" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:2992 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3084 msgid "Priority" msgstr "优先级" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3004 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3096 msgid "Up to higher level directory" msgstr "上一层文件夹" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3038 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3130 msgid "Torrent not found?" msgstr "ç§å未找到" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3044 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3136 msgid "File not found in torrent?" msgstr "ç§å䏿²¡æœ‰å‘现文件?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3057 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3149 msgid "complete" msgstr "完æˆ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3058 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3150 msgid "remaining" msgstr "剩余" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3104 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3196 msgid "High" msgstr "高" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3109 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3201 msgid "Normal" msgstr "普通" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3114 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3206 msgid "Skip" msgstr "跳过" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3124 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3216 msgid "Set all high" msgstr "设置所有为高" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3126 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3218 msgid "Set all normal" msgstr "设置所有为æ£å¸¸" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3128 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3220 msgid "Skip all" msgstr "忽略所有" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3129 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:3221 msgid "Save priorities" msgstr "ä¿å˜ä¼˜å…ˆçº§" diff --git a/apps/i2psnark/mime.properties b/apps/i2psnark/mime.properties index 7f21bea1c54045b55abf0a7f307b1dc6b9b0ee72..8c884cfed93293f43f0d551856c9709e0a7a3f37 100644 --- a/apps/i2psnark/mime.properties +++ b/apps/i2psnark/mime.properties @@ -3,6 +3,7 @@ 7z = application/x-7z-compressed ape = audio/x-monkeys-audio bz2 = application/x-bzip2 +cue = application/x-cue dmg = application/apple-diskimage epub = application/epub+zip flac = audio/flac @@ -11,6 +12,7 @@ iso = application/x-iso9660-image m4a = audio/mp4a-latm m4b = audio/mp4a-latm m4v = video/x-m4v +mka = audio/x-matroska mkv = video/x-matroska mobi = application/x-mobipocket-ebook mp4 = video/mp4 diff --git a/apps/i2psnark/readme.txt.snark b/apps/i2psnark/readme-snark.txt similarity index 100% rename from apps/i2psnark/readme.txt.snark rename to apps/i2psnark/readme-snark.txt diff --git a/apps/i2psnark/readme-standalone.txt b/apps/i2psnark/readme-standalone.txt index 9bc1ddf66e27ca078979af777cbad14dba2243e3..ced04e941f393be0e0ce10a9dfa2a4027d25537d 100644 --- a/apps/i2psnark/readme-standalone.txt +++ b/apps/i2psnark/readme-standalone.txt @@ -1,6 +1,4 @@ -To run I2PSnark from the command line, run "java -jar lib/i2psnark.jar", but -to run it with the web UI, run "launch-i2psnark". I2PSnark is -GPL'ed software, based on Snark (http://www.klomp.org/) to run on top of I2P -(http://www.i2p2.de/) within a webserver (such as the bundled Jetty from -http://jetty.mortbay.org/). For more information about I2PSnark, get in touch -with the folks at http://forum.i2p2.de/ +i2psnark is packaged as a webapp running in the router console. +Command line and standalone operation of i2psnark are not currently supported. +See http://trac.i2p2.i2p/ticket/1191 or http://trac.i2p2.de/ticket/1191 +for the status of restoring standalone support. diff --git a/apps/i2psnark/readme.txt b/apps/i2psnark/readme.txt index 3970e3cba14d7a58ed94d2a16f0a70e55cf5a131..2680442faeca94bc5f2a2581a07f3839dfb7226f 100644 --- a/apps/i2psnark/readme.txt +++ b/apps/i2psnark/readme.txt @@ -1,11 +1,9 @@ -This is an I2P port of snark [http://klomp.org/snark], a GPL'ed bittorrent client +This is i2psnark, an I2P port of snark http://klomp.org/snark/ , a GPLv2 bittorrent client. +It contains significant enhancements including a web UI and support for +multitorrent, magnet, PEX and DHT. -The build in tracker has been removed for simplicity. +i2psnark is packaged as a webapp running in the router console. -Example usage: - java -jar lib/i2psnark.jar myFile.torrent - -or, a more verbose setting: - java -jar lib/i2psnark.jar --eepproxy 127.0.0.1 4444 \ - --i2cp 127.0.0.1 7654 "inbound.length=2 outbound.length=2" \ - --debug 6 myFile.torrent +See http://i2p-projekt.i2p/en/docs/applications/bittorrent +or https://geti2p.net/en/docs/applications/bittorrent +for the specification of the protocols for bittorrent over I2P. diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/ConnThrottler.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/ConnThrottler.java index c802a999585859359d463a8c0a053e3bae8e1160..26c46e431fd0e372b5c9c0e46de7ead8bd592ec7 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/ConnThrottler.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/ConnThrottler.java @@ -7,14 +7,13 @@ import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; -import java.util.TimeZone; -import net.i2p.I2PAppContext; import net.i2p.data.DataHelper; import net.i2p.data.Hash; import net.i2p.util.Clock; import net.i2p.util.Log; import net.i2p.util.SimpleTimer2; +import net.i2p.util.SystemVersion; /** * Count how often something happens with a particular peer and all peers. @@ -57,9 +56,7 @@ class ConnThrottler { _log = log; // for logging _fmt = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.MEDIUM); - String systemTimeZone = I2PAppContext.getGlobalContext().getProperty("i2p.systemTimeZone"); - if (systemTimeZone != null) - _fmt.setTimeZone(TimeZone.getTimeZone(systemTimeZone)); + _fmt.setTimeZone(SystemVersion.getSystemTimeZone()); new Cleaner(); } diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/GunzipOutputStream.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/GunzipOutputStream.java index e0798567d887fdbd8847c3b4d01d64682a91de6f..6f5a4c3a712815684278d1c9ce676d0a32499885 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/GunzipOutputStream.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/GunzipOutputStream.java @@ -105,7 +105,7 @@ class GunzipOutputStream extends InflaterOutputStream { public long getTotalRead() { try { return inf.getBytesRead(); - } catch (Exception e) { + } catch (RuntimeException e) { return 0; } } @@ -116,7 +116,7 @@ class GunzipOutputStream extends InflaterOutputStream { public long getTotalExpanded() { try { return inf.getBytesWritten(); - } catch (Exception e) { + } catch (RuntimeException e) { // possible NPE in some implementations return 0; } @@ -128,7 +128,7 @@ class GunzipOutputStream extends InflaterOutputStream { public long getRemaining() { try { return inf.getRemaining(); - } catch (Exception e) { + } catch (RuntimeException e) { // possible NPE in some implementations return 0; } @@ -140,7 +140,7 @@ class GunzipOutputStream extends InflaterOutputStream { public boolean getFinished() { try { return inf.finished(); - } catch (Exception e) { + } catch (RuntimeException e) { // possible NPE in some implementations return true; } diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnel.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnel.java index 7c006207558158459b6e03ee312204a91a47c005..e8680e3d31e8de36887120fd0cc10804ca0accd2 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnel.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnel.java @@ -1873,7 +1873,7 @@ public class I2PTunnel extends EventDispatcherImpl implements Logging { try { result.fromByteArray(content); return result; - } catch (Exception ex) { + } catch (RuntimeException ex) { if (log.shouldLog(Log.INFO)) log.info("File is not a binary destination - trying base64"); try { diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelClient.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelClient.java index 93785e32659d957842660dfb0d96ef8c4c3d1989..4b1284cfecae464b554b63f15c597bd8fe595799 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelClient.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelClient.java @@ -3,6 +3,7 @@ */ package net.i2p.i2ptunnel; +import java.io.IOException; import java.net.Socket; import java.net.UnknownHostException; import java.util.ArrayList; @@ -10,6 +11,7 @@ import java.util.List; import java.util.Properties; import java.util.StringTokenizer; +import net.i2p.I2PException; import net.i2p.client.streaming.I2PSocket; import net.i2p.client.streaming.I2PSocketAddress; import net.i2p.data.Destination; @@ -122,7 +124,17 @@ public class I2PTunnelClient extends I2PTunnelClientBase { // we are called from an unlimited thread pool, so run inline //t.start(); t.run(); - } catch (Exception ex) { + } catch (IOException ex) { + if (_log.shouldLog(Log.INFO)) + _log.info("Error connecting", ex); + //l.log("Error connecting: " + ex.getMessage()); + closeSocket(s); + if (i2ps != null) { + synchronized (sockLock) { + mySockets.remove(sockLock); + } + } + } catch (I2PException ex) { if (_log.shouldLog(Log.INFO)) _log.info("Error connecting", ex); //l.log("Error connecting: " + ex.getMessage()); diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java index 4183ce39917fe0906137b3d3a64e851f950a59c5..19ebd8b7c5d5bcec90b2c386d61dc5f8f98a48b9 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java @@ -414,7 +414,7 @@ public class I2PTunnelHTTPClient extends I2PTunnelHTTPClientBase implements Runn _log.debug(getPrefix(requestId) + "First line [" + line + "]"); } - String[] params = line.split(" ", 3); + String[] params = DataHelper.split(line, " ", 3); if(params.length != 3) { break; } @@ -1252,7 +1252,7 @@ public class I2PTunnelHTTPClient extends I2PTunnelHTTPClientBase implements Runn String s = getTunnel().getClientOptions().getProperty(PROP_SSL_OUTPROXIES); if (s == null) return null; - String[] p = s.split("[,; \r\n\t]"); + String[] p = DataHelper.split(s, "[,; \r\n\t]"); if (p.length == 0) return null; // todo doesn't check for "" diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClientBase.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClientBase.java index 5e39cf3b8388df891824c91ed1d03c1ddaf4c4cd..e68e38d6b8504b431a66917775e312fe6cbd901e 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClientBase.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClientBase.java @@ -285,7 +285,7 @@ public abstract class I2PTunnelHTTPClientBase extends I2PTunnelClientBase implem // We send Accept-Charset: UTF-8 in the 407 so hopefully it comes back that way inside the B64 ? try { String dec = new String(decoded, "UTF-8"); - String[] parts = dec.split(":"); + String[] parts = DataHelper.split(dec, ":"); String user = parts[0]; String pw = parts[1]; // first try pw for that user diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelHTTPServer.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelHTTPServer.java index 35dd6f1326d5332200bd6933d25eb56d32b36e1a..2ae6abba466bc56057d7445858210e73d9b7cf80 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelHTTPServer.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelHTTPServer.java @@ -664,7 +664,7 @@ public class I2PTunnelHTTPServer extends I2PTunnelServer { */ @Override protected String filterResponseLine(String line) { - String[] s = line.split(" ", 3); + String[] s = DataHelper.split(line, " ", 3); if (s.length > 1 && (s[1].startsWith("3") || s[1].startsWith("5"))) _dataExpected = 0; @@ -742,7 +742,7 @@ public class I2PTunnelHTTPServer extends I2PTunnelServer { public long getTotalRead() { try { return def.getTotalIn(); - } catch (Exception e) { + } catch (RuntimeException e) { // j2se 1.4.2_08 on linux is sometimes throwing an NPE in the getTotalIn() implementation return 0; } @@ -750,7 +750,7 @@ public class I2PTunnelHTTPServer extends I2PTunnelServer { public long getTotalCompressed() { try { return def.getTotalOut(); - } catch (Exception e) { + } catch (RuntimeException e) { // j2se 1.4.2_08 on linux is sometimes throwing an NPE in the getTotalOut() implementation return 0; } diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelIRCClient.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelIRCClient.java index 7f4c2c22ac45bbf279a814ac9bdffbbc6f51eec2..f53a72cd1221c464f5b9dc2194e6b44de47d1773 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelIRCClient.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelIRCClient.java @@ -8,6 +8,7 @@ import java.util.List; import java.util.Properties; import java.util.StringTokenizer; +import net.i2p.I2PException; import net.i2p.client.streaming.I2PSocket; import net.i2p.client.streaming.I2PSocketAddress; import net.i2p.data.DataHelper; @@ -142,7 +143,7 @@ public class I2PTunnelIRCClient extends I2PTunnelClientBase { // we are called from an unlimited thread pool, so run inline //out.start(); out.run(); - } catch (Exception ex) { + } catch (IOException ex) { // generally NoRouteToHostException if (_log.shouldLog(Log.WARN)) _log.warn("Error connecting", ex); @@ -160,6 +161,23 @@ public class I2PTunnelIRCClient extends I2PTunnelClientBase { mySockets.remove(sockLock); } } + } catch (I2PException ex) { + if (_log.shouldLog(Log.WARN)) + _log.warn("Error connecting", ex); + //l.log("Error connecting: " + ex.getMessage()); + try { + // Send a response so the user doesn't just see a disconnect + // and blame his router or the network. + String name = addr != null ? addr.getHostName() : "undefined"; + String msg = ":" + name + " 499 you :" + ex + "\r\n"; + s.getOutputStream().write(DataHelper.getUTF8(msg)); + } catch (IOException ioe) {} + closeSocket(s); + if (i2ps != null) { + synchronized (sockLock) { + mySockets.remove(sockLock); + } + } } } diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelIRCServer.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelIRCServer.java index 2288c27ec2be9efb4d4e9c89d391d181729d3263..79d974e9061adafa84ea6a6c765dff56cb669f43 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelIRCServer.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelIRCServer.java @@ -13,6 +13,7 @@ import java.util.Properties; import net.i2p.client.streaming.I2PSocket; import net.i2p.crypto.SHA256Generator; +import net.i2p.data.DataHelper; import net.i2p.data.Destination; import net.i2p.data.Hash; import net.i2p.data.Base32; @@ -277,7 +278,7 @@ public class I2PTunnelIRCServer extends I2PTunnelServer implements Runnable { //if (_log.shouldLog(Log.DEBUG)) // _log.debug("Got line: " + s); - String field[]=s.split(" ",5); + String field[] = DataHelper.split(s, " ", 5); String command; int idx=0; diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelOutproxyRunner.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelOutproxyRunner.java index 2ed668b7a4f8c608b1a8a946847c1a55efe32f71..d8d9369a0ae2a0549ac2a05d88c656730813c49b 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelOutproxyRunner.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelOutproxyRunner.java @@ -182,7 +182,7 @@ public class I2PTunnelOutproxyRunner extends I2PAppThread { } catch (IllegalStateException ise) { if (_log.shouldLog(Log.WARN)) _log.warn("gnu?", ise); - } catch (Exception e) { + } catch (RuntimeException e) { if (_log.shouldLog(Log.ERROR)) _log.error("Internal error", e); } finally { diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelRunner.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelRunner.java index 2acd7cfc8b9d60463e03249216e6a4f73c0a7eea..b8bfdaebfe9f25e945e17c5745081c7f2eff0bbd 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelRunner.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelRunner.java @@ -326,7 +326,7 @@ public class I2PTunnelRunner extends I2PAppThread implements I2PSocket.SocketErr // at net.i2p.i2ptunnel.I2PTunnelRunner.run(I2PTunnelRunner.java:167) if (_log.shouldLog(Log.WARN)) _log.warn("gnu?", ise); - } catch (Exception e) { + } catch (RuntimeException e) { if (_log.shouldLog(Log.ERROR)) _log.error("Internal error", e); } finally { diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelServer.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelServer.java index 76a52c32b977b9722339730ef1b34282d23bc0fe..3b9217238337701111b9504dfc7f349ab3a79aee 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelServer.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelServer.java @@ -517,7 +517,7 @@ public class I2PTunnelServer extends I2PTunnelTask implements Runnable { break; } catch(SocketTimeoutException ste) { // ignored, we never set the timeout - } catch (Exception e) { + } catch (RuntimeException e) { // streaming borkage if (_log.shouldLog(Log.ERROR)) _log.error("Uncaught exception accepting", e); diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2Ping.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2Ping.java index dd59042d8f1a1db3bd8e7dfa12b9a71fb20a14ae..da615301e32a776fe0eb4e06576c3586196825fa 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2Ping.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2Ping.java @@ -19,6 +19,7 @@ import net.i2p.I2PException; import net.i2p.client.I2PSession; import net.i2p.client.I2PSessionException; import net.i2p.client.streaming.I2PSocketManager; +import net.i2p.data.DataHelper; import net.i2p.data.Destination; import net.i2p.util.EventDispatcher; import net.i2p.util.I2PAppThread; @@ -93,7 +94,7 @@ public class I2Ping extends I2PTunnelClientBase { int localPort = 0; int remotePort = 0; boolean error = false; - String[] argv = cmd.split(" "); + String[] argv = DataHelper.split(cmd, " "); Getopt g = new Getopt("ping", argv, "t:m:n:chl:f:p:"); int c; while ((c = g.getopt()) != -1) { diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/TunnelController.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/TunnelController.java index d5ca354c59b24efef46a00da5d8f7732a097c7e6..229a4b7d17032165416b45b33331e81ced4eabe8 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/TunnelController.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/TunnelController.java @@ -24,6 +24,7 @@ import net.i2p.util.I2PAppThread; import net.i2p.util.Log; import net.i2p.util.SecureFile; import net.i2p.util.SecureFileOutputStream; +import net.i2p.util.SystemVersion; /** * Coordinate the runtime operation and configuration of a single I2PTunnel. @@ -103,10 +104,17 @@ public class TunnelController implements Logging { * This is guaranteed to be available. * @since 0.9.17 */ - public static final SigType PREFERRED_SIGTYPE = SigType.ECDSA_SHA256_P256.isAvailable() ? - SigType.ECDSA_SHA256_P256 : - SigType.DSA_SHA1; - + public static final SigType PREFERRED_SIGTYPE; + static { + if (SystemVersion.isARM() || SystemVersion.isGNU() || SystemVersion.isAndroid()) { + if (SigType.ECDSA_SHA256_P256.isAvailable()) + PREFERRED_SIGTYPE = SigType.ECDSA_SHA256_P256; + else + PREFERRED_SIGTYPE = SigType.DSA_SHA1; + } else { + PREFERRED_SIGTYPE = SigType.EdDSA_SHA512_Ed25519; + } + } /** * Create a new controller for a tunnel out of the specific config options. @@ -185,8 +193,10 @@ public class TunnelController implements Logging { if (backupDir.isDirectory() || backupDir.mkdir()) { String name = b32 + '-' + I2PAppContext.getGlobalContext().clock().now() + ".dat"; File backup = new File(backupDir, name); - if (FileUtil.copy(keyFile, backup, false, true)) + if (FileUtil.copy(keyFile, backup, false, true)) { + SecureFileOutputStream.setPerms(backup); log("Private key backup saved to " + backup.getAbsolutePath()); + } } } catch (I2PException ie) { if (_log.shouldLog(Log.ERROR)) @@ -230,7 +240,7 @@ public class TunnelController implements Logging { } try { doStartTunnel(); - } catch (Exception e) { + } catch (RuntimeException e) { _log.error("Error starting the tunnel " + getName(), e); log("Error starting the tunnel " + getName() + ": " + e.getMessage()); // if we don't acquire() then the release() in stopTunnel() won't work diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/irc/I2PTunnelDCCClient.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/irc/I2PTunnelDCCClient.java index f5b434e3be058c4d1ecff900da526e27bb4addfb..24ac12e61bfe0abad9ced0713c80f0da62832819 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/irc/I2PTunnelDCCClient.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/irc/I2PTunnelDCCClient.java @@ -6,6 +6,7 @@ package net.i2p.i2ptunnel.irc; import java.net.Socket; import java.io.IOException; +import net.i2p.I2PException; import net.i2p.client.streaming.I2PSocket; import net.i2p.client.streaming.I2PSocketManager; import net.i2p.client.streaming.I2PSocketOptions; @@ -80,7 +81,14 @@ public class I2PTunnelDCCClient extends I2PTunnelClientBase { // we are called from an unlimited thread pool, so run inline //t.start(); t.run(); - } catch (Exception ex) { + } catch (IOException ex) { + _log.error("Could not make DCC connection to " + _dest + ':' + _remotePort, ex); + closeSocket(s); + if (i2ps != null) { + try { i2ps.close(); } catch (IOException ioe) {} + } + notifyEvent(CONNECT_STOP_EVENT, Integer.valueOf(getLocalPort())); + } catch (I2PException ex) { _log.error("Could not make DCC connection to " + _dest + ':' + _remotePort, ex); closeSocket(s); if (i2ps != null) { diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/irc/IRCFilter.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/irc/IRCFilter.java index 3112c9ddaaafc01ec4f9f40b31d101c7bab65214..eef558837e14fca5248a52121420600e8b0a08b6 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/irc/IRCFilter.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/irc/IRCFilter.java @@ -33,7 +33,7 @@ abstract class IRCFilter { */ public static String inboundFilter(String s, StringBuffer expectedPong, DCCHelper helper) { - String field[]=s.split(" ",4); + String field[] = DataHelper.split(s, " ", 4); String command; int idx=0; final String[] allowedCommands = @@ -274,7 +274,7 @@ abstract class IRCFilter { */ public static String outboundFilter(String s, StringBuffer expectedPong, DCCHelper helper) { - String field[]=s.split(" ",3); + String field[] = DataHelper.split(s, " ",3); if(field[0].length()==0) return null; // W T F? @@ -420,7 +420,7 @@ abstract class IRCFilter { int ctcp = msg.indexOf(0x01); if (ctcp > 0) msg = msg.substring(0, ctcp); - String[] args = msg.split(" ", 5); + String[] args = DataHelper.split(msg, " ", 5); if (args.length <= 0) return null; String type = args[0]; @@ -512,7 +512,7 @@ abstract class IRCFilter { int ctcp = msg.indexOf(0x01); if (ctcp > 0) msg = msg.substring(0, ctcp); - String[] args = msg.split(" ", 5); + String[] args = DataHelper.split(msg, " ", 5); if (args.length <= 0) return null; String type = args[0]; diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/localServer/LocalHTTPServer.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/localServer/LocalHTTPServer.java index 15e67de7457fccee0112f89a573c7b1116f32112..bd84ac9ee1eaca9f30637e5c40103ca52e7718b9 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/localServer/LocalHTTPServer.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/localServer/LocalHTTPServer.java @@ -14,6 +14,7 @@ import java.util.StringTokenizer; import net.i2p.I2PAppContext; import net.i2p.client.naming.NamingService; import net.i2p.data.DataFormatException; +import net.i2p.data.DataHelper; import net.i2p.data.Destination; import net.i2p.i2ptunnel.I2PTunnelHTTPClient; import net.i2p.util.FileUtil; @@ -165,7 +166,8 @@ public abstract class LocalHTTPServer { Properties nsOptions = new Properties(); nsOptions.setProperty("list", book); if (referer != null && referer.startsWith("http")) { - String from = "<a href=\"" + referer + "\">" + referer + "</a>"; + String ref = DataHelper.escapeHTML(referer); + String from = "<a href=\"" + ref + "\">" + ref + "</a>"; nsOptions.setProperty("s", _t("Added via address helper from {0}", from)); } else { nsOptions.setProperty("s", _t("Added via address helper")); diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/ui/GeneralHelper.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/ui/GeneralHelper.java index b2b38398eb71e919759f5d8d5d01385915b48c38..eb481f6ea61e28303651a6df1d786f5c27b04303 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/ui/GeneralHelper.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/ui/GeneralHelper.java @@ -9,6 +9,7 @@ import java.util.Properties; import java.util.TreeMap; import net.i2p.I2PAppContext; +import net.i2p.I2PException; import net.i2p.client.I2PClient; import net.i2p.crypto.SigType; import net.i2p.data.DataHelper; @@ -341,7 +342,8 @@ public class GeneralHelper { rv = pkf.getDestination(); if (rv != null) return rv; - } catch (Exception e) {} + } catch (I2PException e) { + } catch (IOException e) {} } } return null; diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/EditBean.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/EditBean.java index fb9b137b22755d0deecb24b23ac7e186522abd6b..d960dc93a29c6542a58d3c3120e57a1f7785318c 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/EditBean.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/EditBean.java @@ -8,8 +8,11 @@ package net.i2p.i2ptunnel.web; * */ +import java.io.IOException; import java.util.List; import java.util.Set; + +import net.i2p.I2PException; import net.i2p.crypto.SigType; import net.i2p.data.Base64; import net.i2p.data.DataHelper; @@ -87,7 +90,8 @@ public class EditBean extends IndexBean { //System.err.println("Signing " + spoof + " with " + Base64.encode(privKey.getData())); Signature sig = _context.dsa().sign(spoof.getBytes("UTF-8"), privKey); return Base64.encode(sig.getData()); - } catch (Exception e) {} + } catch (I2PException e) { + } catch (IOException e) {} } return ""; } diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/IndexBean.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/IndexBean.java index 15eb3f29ee57a1fc6f3951f4a432e2f3451cf2be..2f2509c08aac98e2726f8b1421e259e7df261d86 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/IndexBean.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/IndexBean.java @@ -9,12 +9,14 @@ package net.i2p.i2ptunnel.web; */ import java.io.File; +import java.io.IOException; import java.util.ArrayList; import java.util.List; import java.util.Locale; import java.util.Properties; import net.i2p.I2PAppContext; +import net.i2p.I2PException; import net.i2p.app.ClientAppManager; import net.i2p.app.Outproxy; import net.i2p.data.Certificate; @@ -266,7 +268,7 @@ public class IndexBean { if (_action != null) { try { buf.append(processAction()).append('\n'); - } catch (Exception e) { + } catch (RuntimeException e) { _log.log(Log.CRIT, "Error processing " + _action, e); buf.append("Error: ").append(e.toString()).append('\n'); } @@ -972,7 +974,9 @@ public class IndexBean { PrivateKeyFile pkf = new PrivateKeyFile(keyFile); try { pkf.createIfAbsent(); - } catch (Exception e) { + } catch (I2PException e) { + return "Create private key file failed: " + e; + } catch (IOException e) { return "Create private key file failed: " + e; } switch (_certType) { @@ -1011,7 +1015,9 @@ public class IndexBean { try { pkf.write(); newdest = pkf.getDestination(); - } catch (Exception e) { + } catch (I2PException e) { + return "Modification failed: " + e; + } catch (IOException e) { return "Modification failed: " + e; } return "Destination modified - " + diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/Messages.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/Messages.java index 89e2bfc431b10bfa060dbb21c3b042723dbc3420..88911b041decbb359357b4b1c7b291a20912f38f 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/Messages.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/Messages.java @@ -32,7 +32,7 @@ public class Messages { * The {0} will be replaced by the parameter. * Single quotes must be doubled, i.e. ' -> '' in the string. * @param o parameter, not translated. - * To tranlslate parameter also, use _t("foo {0} bar", _t("baz")) + * To translate parameter also, use _t("foo {0} bar", _t("baz")) * Do not double the single quotes in the parameter. * Use autoboxing to call with ints, longs, floats, etc. */ diff --git a/apps/i2ptunnel/jsp/editClient.jsp b/apps/i2ptunnel/jsp/editClient.jsp index 5fbc62dd44ec3e55b9e2c17fd23b8b7cab3423d8..b09b2ed545811b4025fe117142cc4dba06a83a34 100644 --- a/apps/i2ptunnel/jsp/editClient.jsp +++ b/apps/i2ptunnel/jsp/editClient.jsp @@ -56,7 +56,7 @@ input.default { width: 1px; height: 1px; visibility: hidden; } %><h4><%=intl._t("New proxy settings")%></h4><% } %> <input type="hidden" name="tunnel" value="<%=curTunnel%>" /> - <input type="hidden" name="nonce" value="<%=editBean.getNextNonce()%>" /> + <input type="hidden" name="nonce" value="<%=net.i2p.i2ptunnel.web.IndexBean.getNextNonce()%>" /> <input type="hidden" name="type" value="<%=tunnelType%>" /> <% // these are four keys that are generated automatically on first save, @@ -268,7 +268,12 @@ input.default { width: 1px; height: 1px; visibility: hidden; } <option value="1"<%=(tunnelDepth == 1 ? " selected=\"selected\"" : "") %>><%=intl._t("1 hop tunnel (low anonymity)")%></option> <option value="2"<%=(tunnelDepth == 2 ? " selected=\"selected\"" : "") %>><%=intl._t("2 hop tunnel (medium anonymity)")%></option> <option value="3"<%=(tunnelDepth == 3 ? " selected=\"selected\"" : "") %>><%=intl._t("3 hop tunnel (high anonymity)")%></option> - <% if (tunnelDepth > 3) { + <% if (editBean.isAdvanced()) { + %><option value="4"<%=(tunnelDepth == 4 ? " selected=\"selected\"" : "") %>>4 hop tunnel</option> + <option value="5"<%=(tunnelDepth == 5 ? " selected=\"selected\"" : "") %>>5 hop tunnel</option> + <option value="6"<%=(tunnelDepth == 6 ? " selected=\"selected\"" : "") %>>6 hop tunnel</option> + <option value="7"<%=(tunnelDepth == 7 ? " selected=\"selected\"" : "") %>>7 hop tunnel</option> + <% } else if (tunnelDepth > 3) { %> <option value="<%=tunnelDepth%>" selected="selected"><%=tunnelDepth%> <%=intl._t("hop tunnel (very poor performance)")%></option> <% } %></select> diff --git a/apps/i2ptunnel/jsp/editServer.jsp b/apps/i2ptunnel/jsp/editServer.jsp index 4a0a7eabfb89ac44f8be800f6ada651543a2a73e..22810a2eebad638e4a9fecd64f3a15de8d64b27c 100644 --- a/apps/i2ptunnel/jsp/editServer.jsp +++ b/apps/i2ptunnel/jsp/editServer.jsp @@ -56,7 +56,7 @@ input.default { width: 1px; height: 1px; visibility: hidden; } %><h4><%=intl._t("New server settings")%></h4><% } %> <input type="hidden" name="tunnel" value="<%=curTunnel%>" /> - <input type="hidden" name="nonce" value="<%=editBean.getNextNonce()%>" /> + <input type="hidden" name="nonce" value="<%=net.i2p.i2ptunnel.web.IndexBean.getNextNonce()%>" /> <input type="hidden" name="type" value="<%=tunnelType%>" /> <% // these are four keys that are generated automatically on first save, @@ -272,7 +272,12 @@ input.default { width: 1px; height: 1px; visibility: hidden; } <option value="1"<%=(tunnelDepth == 1 ? " selected=\"selected\"" : "") %>><%=intl._t("1 hop tunnel (low anonymity)")%></option> <option value="2"<%=(tunnelDepth == 2 ? " selected=\"selected\"" : "") %>><%=intl._t("2 hop tunnel (medium anonymity)")%></option> <option value="3"<%=(tunnelDepth == 3 ? " selected=\"selected\"" : "") %>><%=intl._t("3 hop tunnel (high anonymity)")%></option> - <% if (tunnelDepth > 3) { + <% if (editBean.isAdvanced()) { + %><option value="4"<%=(tunnelDepth == 4 ? " selected=\"selected\"" : "") %>>4 hop tunnel</option> + <option value="5"<%=(tunnelDepth == 5 ? " selected=\"selected\"" : "") %>>5 hop tunnel</option> + <option value="6"<%=(tunnelDepth == 6 ? " selected=\"selected\"" : "") %>>6 hop tunnel</option> + <option value="7"<%=(tunnelDepth == 7 ? " selected=\"selected\"" : "") %>>7 hop tunnel</option> + <% } else if (tunnelDepth > 3) { %> <option value="<%=tunnelDepth%>" selected="selected"><%=tunnelDepth%> <%=intl._t("hop tunnel (very poor performance)")%></option> <% } %></select> diff --git a/apps/i2ptunnel/jsp/index.jsp b/apps/i2ptunnel/jsp/index.jsp index da05b233a151f378adf0f298ba7781213af21c5d..9e2c06492259731dd01f761743c8a865ef904442 100644 --- a/apps/i2ptunnel/jsp/index.jsp +++ b/apps/i2ptunnel/jsp/index.jsp @@ -60,6 +60,7 @@ <% if (indexBean.isInitialized()) { + String nextNonce = net.i2p.i2ptunnel.web.IndexBean.getNextNonce(); %> <div id="globalOperationsPanel" class="panel"> @@ -67,12 +68,12 @@ <div class="footer"> <div class="toolbox"> <a class="control" href="wizard"><%=intl._t("Tunnel Wizard")%></a> - <a class="control" href="list?nonce=<%=indexBean.getNextNonce()%>&action=Stop%20all"><%=intl._t("Stop All")%></a> - <a class="control" href="list?nonce=<%=indexBean.getNextNonce()%>&action=Start%20all"><%=intl._t("Start All")%></a> - <a class="control" href="list?nonce=<%=indexBean.getNextNonce()%>&action=Restart%20all"><%=intl._t("Restart All")%></a> + <a class="control" href="list?nonce=<%=nextNonce%>&action=Stop%20all"><%=intl._t("Stop All")%></a> + <a class="control" href="list?nonce=<%=nextNonce%>&action=Start%20all"><%=intl._t("Start All")%></a> + <a class="control" href="list?nonce=<%=nextNonce%>&action=Restart%20all"><%=intl._t("Restart All")%></a> <%-- //this is really bad because it stops and restarts all tunnels, which is probably not what you want - <a class="control" href="list?nonce=<%=indexBean.getNextNonce()%>&action=Reload%20configuration"><%=intl._t("Reload Config")%></a> + <a class="control" href="list?nonce=<%=nextNonce%>&action=Reload%20configuration"><%=intl._t("Reload Config")%></a> --%> </div> </div> @@ -152,17 +153,17 @@ switch (indexBean.getTunnelStatus(curServer)) { case IndexBean.STARTING: %><div class="statusStarting text"><%=intl._t("Starting...")%></div> - <a class="control" title="Stop this Tunnel" href="list?nonce=<%=indexBean.getNextNonce()%>&action=stop&tunnel=<%=curServer%>"><%=intl._t("Stop")%></a> + <a class="control" title="Stop this Tunnel" href="list?nonce=<%=nextNonce%>&action=stop&tunnel=<%=curServer%>"><%=intl._t("Stop")%></a> <% break; case IndexBean.RUNNING: %><div class="statusRunning text"><%=intl._t("Running")%></div> - <a class="control" title="Stop this Tunnel" href="list?nonce=<%=indexBean.getNextNonce()%>&action=stop&tunnel=<%=curServer%>"><%=intl._t("Stop")%></a> + <a class="control" title="Stop this Tunnel" href="list?nonce=<%=nextNonce%>&action=stop&tunnel=<%=curServer%>"><%=intl._t("Stop")%></a> <% break; case IndexBean.NOT_RUNNING: %><div class="statusNotRunning text"><%=intl._t("Stopped")%></div> - <a class="control" title="Start this Tunnel" href="list?nonce=<%=indexBean.getNextNonce()%>&action=start&tunnel=<%=curServer%>"><%=intl._t("Start")%></a> + <a class="control" title="Start this Tunnel" href="list?nonce=<%=nextNonce%>&action=start&tunnel=<%=curServer%>"><%=intl._t("Start")%></a> <% break; } @@ -275,22 +276,22 @@ switch (indexBean.getTunnelStatus(curClient)) { case IndexBean.STARTING: %><div class="statusStarting text"><%=intl._t("Starting...")%></div> - <a class="control" title="Stop this Tunnel" href="list?nonce=<%=indexBean.getNextNonce()%>&action=stop&tunnel=<%=curClient%>"><%=intl._t("Stop")%></a> + <a class="control" title="Stop this Tunnel" href="list?nonce=<%=nextNonce%>&action=stop&tunnel=<%=curClient%>"><%=intl._t("Stop")%></a> <% break; case IndexBean.STANDBY: %><div class="statusStarting text"><%=intl._t("Standby")%></div> - <a class="control" title="Stop this Tunnel" href="list?nonce=<%=indexBean.getNextNonce()%>&action=stop&tunnel=<%=curClient%>"><%=intl._t("Stop")%></a> + <a class="control" title="Stop this Tunnel" href="list?nonce=<%=nextNonce%>&action=stop&tunnel=<%=curClient%>"><%=intl._t("Stop")%></a> <% break; case IndexBean.RUNNING: %><div class="statusRunning text"><%=intl._t("Running")%></div> - <a class="control" title="Stop this Tunnel" href="list?nonce=<%=indexBean.getNextNonce()%>&action=stop&tunnel=<%=curClient%>"><%=intl._t("Stop")%></a> + <a class="control" title="Stop this Tunnel" href="list?nonce=<%=nextNonce%>&action=stop&tunnel=<%=curClient%>"><%=intl._t("Stop")%></a> <% break; case IndexBean.NOT_RUNNING: %><div class="statusNotRunning text"><%=intl._t("Stopped")%></div> - <a class="control" title="Start this Tunnel" href="list?nonce=<%=indexBean.getNextNonce()%>&action=start&tunnel=<%=curClient%>"><%=intl._t("Start")%></a> + <a class="control" title="Start this Tunnel" href="list?nonce=<%=nextNonce%>&action=start&tunnel=<%=curClient%>"><%=intl._t("Start")%></a> <% break; } diff --git a/apps/i2ptunnel/jsp/wizard.jsp b/apps/i2ptunnel/jsp/wizard.jsp index 6541ffc17546aaa9f31f83d29bc6d998963a3bcb..fefd8a8772ec46bd42ff998aa1912c5374b5fe24 100644 --- a/apps/i2ptunnel/jsp/wizard.jsp +++ b/apps/i2ptunnel/jsp/wizard.jsp @@ -92,7 +92,7 @@ } %> <input type="hidden" name="page" value="<%=curPage%>" /> <input type="hidden" name="tunnel" value="null" /> - <input type="hidden" name="nonce" value="<%=editBean.getNextNonce()%>" /> + <input type="hidden" name="nonce" value="<%=net.i2p.i2ptunnel.web.IndexBean.getNextNonce()%>" /> </div> <div class="separator"> diff --git a/apps/i2ptunnel/locale-proxy/messages_en.po b/apps/i2ptunnel/locale-proxy/messages_en.po index 02c652c096dbfd8877391f4ea89e2a82855511b9..4ef9b33af6f8e52a1544efe5cc8aeced971208d5 100644 --- a/apps/i2ptunnel/locale-proxy/messages_en.po +++ b/apps/i2ptunnel/locale-proxy/messages_en.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: I2P i2ptunnel\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-05-14 08:33+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" "PO-Revision-Date: 2010-06-15 14:09+0100\n" "Last-Translator: duck <duck@mail.i2p>\n" "Language-Team: duck <duck@mail.i2p>\n" @@ -449,39 +449,39 @@ msgid "" "\"{1}\">here</a>." msgstr "" -#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1119 +#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1121 msgid "Destination lease set not found" msgstr "" -#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1271 +#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1273 msgid "Host" msgstr "" -#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1275 +#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1277 msgid "Base 32" msgstr "" -#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1279 +#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1281 msgid "Destination" msgstr "" -#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1285 +#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1287 #, java-format msgid "Continue to {0} without saving" msgstr "" -#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1291 +#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1293 #, java-format msgid "Save {0} to router address book and continue to website" msgstr "" #. only blockfile supports multiple books -#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1294 +#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1296 #, java-format msgid "Save {0} to master address book and continue to website" msgstr "" -#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1295 +#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1297 #, java-format msgid "Save {0} to private address book and continue to website" msgstr "" diff --git a/apps/i2ptunnel/locale-proxy/messages_ru.po b/apps/i2ptunnel/locale-proxy/messages_ru.po index 8fb3167b79b3f376ef52b9d45184c30f267afa7e..fe8e1e1df9efb4b802e77f9333ad9921f36145f0 100644 --- a/apps/i2ptunnel/locale-proxy/messages_ru.po +++ b/apps/i2ptunnel/locale-proxy/messages_ru.po @@ -17,10 +17,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-05-14 08:33+0000\n" -"PO-Revision-Date: 2015-05-06 20:09+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-15 12:23+0000\n" "Last-Translator: brianhopes <voganc-12@live.ru>\n" -"Language-Team: Russian (Russia) (http://www.transifex.com/projects/p/I2P/language/ru_RU/)\n" +"Language-Team: Russian (Russia) (http://www.transifex.com/otf/I2P/language/ru_RU/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -460,39 +460,39 @@ msgid "" "click <a href=\"{1}\">here</a>." msgstr "Ð”Ð»Ñ Ð¿ÐµÑ€ÐµÑ…Ð¾Ð´Ð° по ÑÑылке из локальной адреÑной книги, нажмите <a href=\"{0}\">здеÑÑŒ</a>. Ð”Ð»Ñ Ð¿ÐµÑ€ÐµÑ…Ð¾Ð´Ð° по новой addresshelper-ÑÑылке, нажмите <a href=\"{1}\">здеÑÑŒ</a>." -#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1119 +#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1121 msgid "Destination lease set not found" msgstr "LeaseSet Ð´Ð»Ñ Ð°Ð´Ñ€ÐµÑа Ð½Ð°Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð½Ðµ найден" -#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1271 +#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1273 msgid "Host" msgstr "ÐдреÑ" -#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1275 +#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1277 msgid "Base 32" msgstr "Base 32" -#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1279 +#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1281 msgid "Destination" msgstr "ÐÐ´Ñ€ÐµÑ Ð½Ð°Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ" -#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1285 +#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1287 #, java-format msgid "Continue to {0} without saving" msgstr "Продолжить переход к {0} без ÑохранениÑ" -#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1291 +#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1293 #, java-format msgid "Save {0} to router address book and continue to website" msgstr "Сохранить {0} в адреÑную книгу маршрутизатора и перейти к Ñайту" #. only blockfile supports multiple books -#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1294 +#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1296 #, java-format msgid "Save {0} to master address book and continue to website" msgstr "Сохранить {0} в оÑновную адреÑную книгу и перейти к Ñайту" -#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1295 +#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1297 #, java-format msgid "Save {0} to private address book and continue to website" msgstr "Сохранить {0} в приватную адреÑную книгу и перейти к Ñайту" diff --git a/apps/i2ptunnel/locale-proxy/messages_sv.po b/apps/i2ptunnel/locale-proxy/messages_sv.po index d5680b9af5dbb5a225789e12b416bb5516a7c9cf..38c878e7faf974e50295ed60ae664c37ecfc76c8 100644 --- a/apps/i2ptunnel/locale-proxy/messages_sv.po +++ b/apps/i2ptunnel/locale-proxy/messages_sv.po @@ -4,6 +4,7 @@ # To contribute translations, see http://www.i2p2.de/newdevelopers # # Translators: +# Anders Nilsson <locally@devode.se>, 2015 # Calle Rundgren <samaire@samaire.net>, 2013 # cacapo <handelsehorisont@gmail.com>, 2015 # hottuna <i2p@robertfoss.se>, 2013 @@ -13,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-05-14 08:33+0000\n" -"PO-Revision-Date: 2015-06-06 18:32+0000\n" -"Last-Translator: cacapo <handelsehorisont@gmail.com>\n" -"Language-Team: Swedish (Sweden) (http://www.transifex.com/projects/p/I2P/language/sv_SE/)\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-08 21:24+0000\n" +"Last-Translator: Anders Nilsson <locally@devode.se>\n" +"Language-Team: Swedish (Sweden) (http://www.transifex.com/otf/I2P/language/sv_SE/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -281,7 +282,7 @@ msgstr "Webbsidan var inte nÃ¥bar." msgid "" "The website is offline, there is network congestion, or your router is not " "yet well-integrated with peers." -msgstr "Webbsidan är offline, nätverket är under stor belastning eller sÃ¥ är din router inte välintegrerad med peers." +msgstr "Webbsidan är offline, nätverket är under stor belastning eller sÃ¥ är din router inte välintegrerad med noder." #: ../java/build/Proxy.java:106 ../java/build/Proxy.java:112 msgid "Warning: Invalid Destination" @@ -410,7 +411,7 @@ msgstr "HTTP Utproxyn hittades ej." msgid "" "It is offline, there is network congestion, or your router is not yet well-" "integrated with peers." -msgstr "Den är antingen offline, nätverket är under stor belastning eller sÃ¥ är din router ännu inte väl integrerad med peers." +msgstr "Den är antingen offline, nätverket är under stor belastning eller sÃ¥ är din router ännu inte väl integrerad med noder." #: ../java/build/Proxy.java:196 msgid "Proxy Authorization Required" @@ -456,39 +457,39 @@ msgid "" "click <a href=\"{1}\">here</a>." msgstr "För att besöka mÃ¥let i din värd databas href=\"{0}\"> klicka <a här </ a>. För att besöka de motstridiga hjälpaddresserna,<a href=\"{1}\"> klicka <a här </ a>." -#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1119 +#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1121 msgid "Destination lease set not found" msgstr "Destinationens leaseset kunde inte hittas" -#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1271 +#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1273 msgid "Host" msgstr "Värd" -#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1275 +#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1277 msgid "Base 32" msgstr "Bas 32" -#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1279 +#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1281 msgid "Destination" msgstr "MÃ¥l" -#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1285 +#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1287 #, java-format msgid "Continue to {0} without saving" msgstr "Fortsätt till {0} utan att spara" -#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1291 +#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1293 #, java-format msgid "Save {0} to router address book and continue to website" msgstr "Spara {0} till routerns adressbok och fortsätt till webbsidan." #. only blockfile supports multiple books -#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1294 +#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1296 #, java-format msgid "Save {0} to master address book and continue to website" msgstr "Spara {0} till huvudadressboken och fortsätt till webbsidan." -#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1295 +#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:1297 #, java-format msgid "Save {0} to private address book and continue to website" msgstr "Spara {0} till privata adressboken och fortsätt till webbsidan." diff --git a/apps/i2ptunnel/locale/messages_en.po b/apps/i2ptunnel/locale/messages_en.po index 5ab4c6e7d0bc072b17fa4c363fc16e3b960670b4..d23b3613361b07f4155dd790ee99d51c5baabbfc 100644 --- a/apps/i2ptunnel/locale/messages_en.po +++ b/apps/i2ptunnel/locale/messages_en.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: I2P i2ptunnel\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-03-29 14:30+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" "PO-Revision-Date: 2010-06-15 14:09+0100\n" "Last-Translator: duck <duck@mail.i2p>\n" "Language-Team: duck <duck@mail.i2p>\n" @@ -146,7 +146,7 @@ msgid "HTTP bidir" msgstr "" #: ../java/src/net/i2p/i2ptunnel/web/IndexBean.java:445 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:317 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:318 msgid "Host not set" msgstr "" @@ -174,25 +174,25 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:162 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:162 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:128 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:142 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:273 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:288 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:129 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:143 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:274 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:289 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/wizard_jsp.java:329 msgid "Name" msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:166 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:166 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:277 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:306 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:278 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:307 msgid "Type" msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:170 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:170 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:257 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:426 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:258 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:427 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/wizard_jsp.java:333 msgid "Description" msgstr "" @@ -441,8 +441,8 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:451 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:198 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:443 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:275 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:297 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:276 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:298 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/wizard_jsp.java:437 msgid "Port" msgstr "" @@ -722,86 +722,86 @@ msgstr "" msgid "Refresh" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:111 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:112 msgid "Tunnel Wizard" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:115 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:116 msgid "Stop All" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:119 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:120 msgid "Start All" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:123 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:124 msgid "Restart All" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:126 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:127 msgid "I2P Hidden Services" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:130 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:151 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:131 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:152 msgid "Points at" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:132 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:184 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:188 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:133 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:185 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:189 msgid "Preview" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:134 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:208 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:281 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:324 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:135 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:209 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:282 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:325 msgid "Status" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:194 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:195 msgid "Base32 Address" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:202 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:203 msgid "No Preview" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:215 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:331 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:216 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:332 msgid "Starting..." msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:222 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:236 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:338 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:352 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:366 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:223 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:237 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:339 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:353 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:367 msgid "Stop" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:229 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:359 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:230 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:360 msgid "Running" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:243 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:373 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:244 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:374 msgid "Stopped" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:250 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:380 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:251 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:381 msgid "Start" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:265 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:266 msgid "New hidden service" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:267 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:436 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:268 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:437 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/wizard_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/wizard_jsp.java:268 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/wizard_jsp.java:298 @@ -810,41 +810,41 @@ msgstr "" msgid "Standard" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:269 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:438 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:270 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:439 msgid "Create" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:271 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:272 msgid "I2P Client Tunnels" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:279 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:310 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:280 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:311 msgid "Interface" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:345 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:346 msgid "Standby" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:389 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:390 msgid "Outproxy" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:392 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:393 msgid "Destination" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:399 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:400 msgid "internal plugin" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:418 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:419 msgid "none" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:434 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:435 msgid "New client tunnel" msgstr "" diff --git a/apps/i2ptunnel/locale/messages_nl.po b/apps/i2ptunnel/locale/messages_nl.po index 35077a930f0fdf9070aac81649fdc0850f29f5d6..60053da4d0cbcf24a367ce95762d77d74d654563 100644 --- a/apps/i2ptunnel/locale/messages_nl.po +++ b/apps/i2ptunnel/locale/messages_nl.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-03-29 14:30+0000\n" -"PO-Revision-Date: 2015-03-29 14:31+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-07 10:02+0000\n" "Last-Translator: kytv <killyourtv@i2pmail.org>\n" -"Language-Team: Dutch (http://www.transifex.com/projects/p/I2P/language/nl/)\n" +"Language-Team: Dutch (http://www.transifex.com/otf/I2P/language/nl/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -151,7 +151,7 @@ msgid "HTTP bidir" msgstr "HTTP bidir" #: ../java/src/net/i2p/i2ptunnel/web/IndexBean.java:445 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:317 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:318 msgid "Host not set" msgstr "Host niet opgegeven" @@ -179,25 +179,25 @@ msgstr "Nieuwe proxy instellingen" #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:162 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:162 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:128 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:142 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:273 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:288 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:129 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:143 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:274 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:289 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/wizard_jsp.java:329 msgid "Name" msgstr "Naam" #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:166 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:166 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:277 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:306 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:278 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:307 msgid "Type" msgstr "Type" #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:170 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:170 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:257 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:426 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:258 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:427 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/wizard_jsp.java:333 msgid "Description" msgstr "Omschrijving" @@ -446,8 +446,8 @@ msgstr "Host" #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:451 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:198 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:443 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:275 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:297 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:276 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:298 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/wizard_jsp.java:437 msgid "Port" msgstr "Poort" @@ -727,86 +727,86 @@ msgstr "Statusberichten" msgid "Refresh" msgstr "Verversen" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:111 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:112 msgid "Tunnel Wizard" msgstr "Tunnel-setup" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:115 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:116 msgid "Stop All" msgstr "Alles stoppen" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:119 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:120 msgid "Start All" msgstr "Alles starten" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:123 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:124 msgid "Restart All" msgstr "Alles herstarten" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:126 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:127 msgid "I2P Hidden Services" msgstr "I2P verborgen diensten" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:130 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:151 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:131 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:152 msgid "Points at" msgstr "Verwijst naar" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:132 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:184 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:188 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:133 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:185 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:189 msgid "Preview" msgstr "Voorbeeld" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:134 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:208 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:281 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:324 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:135 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:209 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:282 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:325 msgid "Status" msgstr "Status" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:194 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:195 msgid "Base32 Address" msgstr "Base32-adres" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:202 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:203 msgid "No Preview" msgstr "Geen voorbeeld" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:215 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:331 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:216 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:332 msgid "Starting..." msgstr "Bezig met starten..." -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:222 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:236 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:338 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:352 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:366 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:223 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:237 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:339 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:353 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:367 msgid "Stop" msgstr "Stop" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:229 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:359 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:230 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:360 msgid "Running" msgstr "Draait" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:243 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:373 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:244 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:374 msgid "Stopped" msgstr "Gestopt" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:250 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:380 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:251 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:381 msgid "Start" msgstr "Start" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:265 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:266 msgid "New hidden service" msgstr "Nieuwe verborgen dienst" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:267 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:436 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:268 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:437 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/wizard_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/wizard_jsp.java:268 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/wizard_jsp.java:298 @@ -815,41 +815,41 @@ msgstr "Nieuwe verborgen dienst" msgid "Standard" msgstr "Standaard" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:269 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:438 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:270 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:439 msgid "Create" msgstr "Aanmaken" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:271 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:272 msgid "I2P Client Tunnels" msgstr "I2P cliënt-tunnels" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:279 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:310 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:280 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:311 msgid "Interface" msgstr "Interface" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:345 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:346 msgid "Standby" msgstr "Stand-by" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:389 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:390 msgid "Outproxy" msgstr "Uitgaande proxy" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:392 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:393 msgid "Destination" msgstr "Destination" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:399 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:400 msgid "internal plugin" msgstr "interne plugin" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:418 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:419 msgid "none" msgstr "geen" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:434 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:435 msgid "New client tunnel" msgstr "Nieuwe cliënt-tunnel" diff --git a/apps/i2ptunnel/locale/messages_pt.po b/apps/i2ptunnel/locale/messages_pt.po index 9e22d253e2e157a7fb441a428cf8b38dceeac174..10a60bef3bdb0df52c9ba26ae682d87ce130055f 100644 --- a/apps/i2ptunnel/locale/messages_pt.po +++ b/apps/i2ptunnel/locale/messages_pt.po @@ -12,10 +12,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-03-29 14:30+0000\n" -"PO-Revision-Date: 2015-03-29 14:31+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-09 03:40+0000\n" "Last-Translator: kytv <killyourtv@i2pmail.org>\n" -"Language-Team: Portuguese (http://www.transifex.com/projects/p/I2P/language/pt/)\n" +"Language-Team: Portuguese (http://www.transifex.com/otf/I2P/language/pt/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -150,7 +150,7 @@ msgid "HTTP bidir" msgstr "HTTP bidir" #: ../java/src/net/i2p/i2ptunnel/web/IndexBean.java:445 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:317 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:318 msgid "Host not set" msgstr "Host por definir" @@ -162,7 +162,7 @@ msgstr "Endereço inválido" #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:82 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:85 msgid "Hidden Services Manager" -msgstr "" +msgstr "Gerenciador de Serviços Ocultos" #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:86 msgid "Edit Client Tunnel" @@ -178,25 +178,25 @@ msgstr "Novas definições da proxy" #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:162 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:162 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:128 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:142 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:273 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:288 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:129 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:143 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:274 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:289 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/wizard_jsp.java:329 msgid "Name" msgstr "Nome" #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:166 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:166 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:277 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:306 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:278 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:307 msgid "Type" msgstr "Tipo" #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:170 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:170 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:257 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:426 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:258 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:427 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/wizard_jsp.java:333 msgid "Description" msgstr "Descrição" @@ -445,8 +445,8 @@ msgstr "Host" #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:451 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:198 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:443 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:275 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:297 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:276 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:298 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/wizard_jsp.java:437 msgid "Port" msgstr "Porta" @@ -726,86 +726,86 @@ msgstr "Mensagens de status" msgid "Refresh" msgstr "Atualizar" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:111 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:112 msgid "Tunnel Wizard" msgstr "Assistente de Túneis" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:115 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:116 msgid "Stop All" msgstr "Parar Todos" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:119 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:120 msgid "Start All" msgstr "Iniciar Todos" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:123 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:124 msgid "Restart All" msgstr "Reiniciar Todos" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:126 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:127 msgid "I2P Hidden Services" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:130 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:151 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:131 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:152 msgid "Points at" msgstr "Aponta para" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:132 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:184 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:188 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:133 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:185 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:189 msgid "Preview" msgstr "Visualizar" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:134 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:208 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:281 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:324 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:135 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:209 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:282 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:325 msgid "Status" msgstr "Status" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:194 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:195 msgid "Base32 Address" msgstr "Endereço Base32" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:202 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:203 msgid "No Preview" msgstr "Sem visualização" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:215 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:331 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:216 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:332 msgid "Starting..." msgstr "Iniciando..." -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:222 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:236 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:338 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:352 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:366 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:223 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:237 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:339 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:353 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:367 msgid "Stop" msgstr "Parar" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:229 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:359 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:230 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:360 msgid "Running" msgstr "Executando" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:243 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:373 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:244 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:374 msgid "Stopped" msgstr "Parado" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:250 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:380 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:251 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:381 msgid "Start" msgstr "Iniciar" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:265 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:266 msgid "New hidden service" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:267 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:436 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:268 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:437 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/wizard_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/wizard_jsp.java:268 #: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/wizard_jsp.java:298 @@ -814,41 +814,41 @@ msgstr "" msgid "Standard" msgstr "Padrão" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:269 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:438 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:270 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:439 msgid "Create" msgstr "Criar" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:271 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:272 msgid "I2P Client Tunnels" msgstr "Túneis de cliente I2P" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:279 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:310 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:280 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:311 msgid "Interface" msgstr "Interface" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:345 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:346 msgid "Standby" msgstr "Em espera" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:389 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:390 msgid "Outproxy" msgstr "Proxy de saÃda" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:392 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:393 msgid "Destination" msgstr "Destino" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:399 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:400 msgid "internal plugin" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:418 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:419 msgid "none" msgstr "nenhum" -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:434 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:435 msgid "New client tunnel" msgstr "Novo túnel de cliente" diff --git a/apps/jetty/build.xml b/apps/jetty/build.xml index 2fad37dfafe9fe236bea7bb9125e3506bd78aa35..b1fdbcd461996716c13d2e4277b6bf07d2c1c9b6 100644 --- a/apps/jetty/build.xml +++ b/apps/jetty/build.xml @@ -149,9 +149,14 @@ <!-- commons-logging.jar not in Jetty 6 but we have it in launch4j so copy it over, needed for old plugins and things. We add tomcat-juli below. --> + <!-- + * Removed in 0.9.24, see ticket #1679 + * Jetty now uses tomcat-juli (added below to commons-logging.jar), not commons-logging proper, + * and no known plugins use it either. <jar destfile="jettylib/commons-logging.jar" filesetmanifest="mergewithoutmain" > <zipfileset excludes="META-INF/LICENSE.txt META-INF/NOTICE.txt" src="../../installer/lib/launch4j/lib/commons-logging.jar" /> </jar> + --> <ant target="copyTomcatLib" /> </target> diff --git a/apps/jetty/java/src/net/i2p/jetty/JettyStart.java b/apps/jetty/java/src/net/i2p/jetty/JettyStart.java index 6cac1cbae60346064bb24f418772b0225424ba86..79fec449c723672239764cc8f0bd69dabba5bd4c 100644 --- a/apps/jetty/java/src/net/i2p/jetty/JettyStart.java +++ b/apps/jetty/java/src/net/i2p/jetty/JettyStart.java @@ -26,6 +26,7 @@ import java.util.Properties; import net.i2p.I2PAppContext; import net.i2p.app.*; import static net.i2p.app.ClientAppState.*; +import net.i2p.util.I2PAppThread; import net.i2p.util.PortMapper; import org.eclipse.jetty.server.Connector; @@ -72,6 +73,7 @@ public class JettyStart implements ClientApp { /** * Modified from XmlConfiguration.main() */ + @SuppressWarnings({"unchecked", "rawtypes"}) public void parseArgs(String[] args) throws Exception { Properties properties=new Properties(); XmlConfiguration last=null; @@ -108,7 +110,7 @@ public class JettyStart implements ClientApp { } } - private class Starter extends Thread { + private class Starter extends I2PAppThread { public Starter() { super("JettyStarter"); changeState(STARTING); @@ -160,7 +162,7 @@ public class JettyStart implements ClientApp { } } - private class Stopper extends Thread { + private class Stopper extends I2PAppThread { public Stopper() { super("JettyStopper"); changeState(STOPPING); diff --git a/apps/jetty/java/src/net/i2p/servlet/filters/XSSRequestWrapper.java b/apps/jetty/java/src/net/i2p/servlet/filters/XSSRequestWrapper.java index b8b8d39919984a5d3cc7289040401c683e951e64..8d16e5953a6a8c29e1a5916ac17de6f6938c255c 100644 --- a/apps/jetty/java/src/net/i2p/servlet/filters/XSSRequestWrapper.java +++ b/apps/jetty/java/src/net/i2p/servlet/filters/XSSRequestWrapper.java @@ -84,10 +84,10 @@ public class XSSRequestWrapper extends HttpServletRequestWrapper { * Parameter names starting with "nofilter_" will not be filtered. */ @Override - public Map getParameterMap() { - Map rv = new HashMap(); - for (Enumeration keys = getParameterNames(); keys.hasMoreElements(); ) { - String k = (String) keys.nextElement(); + public Map<String, String[]> getParameterMap() { + Map<String, String[]> rv = new HashMap<String, String[]>(); + for (Enumeration<String> keys = getParameterNames(); keys.hasMoreElements(); ) { + String k = keys.nextElement(); String[] v = getParameterValues(k); if (v != null) rv.put(k, v); diff --git a/apps/jetty/java/src/org/mortbay/servlet/MultiPartRequest.java b/apps/jetty/java/src/org/mortbay/servlet/MultiPartRequest.java index 1c964b8f1974d9c84e5f445d15f7ecb06331195a..1cc3973fdb9d8301839e9690a401b25f20a5ba33 100644 --- a/apps/jetty/java/src/org/mortbay/servlet/MultiPartRequest.java +++ b/apps/jetty/java/src/org/mortbay/servlet/MultiPartRequest.java @@ -219,6 +219,7 @@ public class MultiPartRequest } /* ------------------------------------------------------------ */ + @SuppressWarnings("rawtypes") public Hashtable[] getMultipleParams(String name) { List<Object> parts = _partMap.getValues(name); diff --git a/apps/jetty/java/src/org/mortbay/util/ByteArrayPool.java b/apps/jetty/java/src/org/mortbay/util/ByteArrayPool.java index 9a3f088fb6424798592105c59c8cd0f33e5de7f5..0c98dded196d1b7815315ef19fd330da7e124b65 100644 --- a/apps/jetty/java/src/org/mortbay/util/ByteArrayPool.java +++ b/apps/jetty/java/src/org/mortbay/util/ByteArrayPool.java @@ -29,7 +29,7 @@ public class ByteArrayPool public static final int __POOL_SIZE= Integer.getInteger("org.mortbay.util.ByteArrayPool.pool_size",8).intValue(); - public static final ThreadLocal __pools=new BAThreadLocal(); + public static final ThreadLocal<byte[][]> __pools = new BAThreadLocal(); public static final AtomicInteger __slot = new AtomicInteger(); /* ------------------------------------------------------------ */ @@ -39,7 +39,7 @@ public class ByteArrayPool */ public static byte[] getByteArray(int size) { - byte[][] pool = (byte[][])__pools.get(); + byte[][] pool = __pools.get(); boolean full=true; for (int i=pool.length;i-->0;) { @@ -63,7 +63,7 @@ public class ByteArrayPool /* ------------------------------------------------------------ */ public static byte[] getByteArrayAtLeast(int minSize) { - byte[][] pool = (byte[][])__pools.get(); + byte[][] pool = __pools.get(); for (int i=pool.length;i-->0;) { if (pool[i]!=null && pool[i].length>=minSize) @@ -84,7 +84,7 @@ public class ByteArrayPool if (b==null) return; - byte[][] pool = (byte[][])__pools.get(); + byte[][] pool = __pools.get(); for (int i=pool.length;i-->0;) { if (pool[i]==null) @@ -103,9 +103,10 @@ public class ByteArrayPool /* ------------------------------------------------------------ */ /* ------------------------------------------------------------ */ - private static final class BAThreadLocal extends ThreadLocal + private static final class BAThreadLocal extends ThreadLocal<byte[][]> { - protected Object initialValue() + @Override + protected byte[][] initialValue() { return new byte[__POOL_SIZE][]; } diff --git a/apps/ministreaming/java/src/net/i2p/client/streaming/I2PSocketEepGet.java b/apps/ministreaming/java/src/net/i2p/client/streaming/I2PSocketEepGet.java index 1b67bd2261ede4089c1018e36541057a28d64f68..bd82c12f3a7eb08a74424daba45bad73aa472e3d 100644 --- a/apps/ministreaming/java/src/net/i2p/client/streaming/I2PSocketEepGet.java +++ b/apps/ministreaming/java/src/net/i2p/client/streaming/I2PSocketEepGet.java @@ -5,7 +5,8 @@ import java.io.IOException; import java.io.OutputStream; import java.net.MalformedURLException; import java.net.UnknownHostException; -import java.net.URL; +import java.net.URI; +import java.net.URISyntaxException; import java.util.Locale; import java.util.Properties; @@ -112,9 +113,11 @@ public class I2PSocketEepGet extends EepGet { if (_socket != null) try { _socket.close(); } catch (IOException ioe) {} try { - URL url = new URL(_actualURL); - if ("http".equals(url.getProtocol())) { + URI url = new URI(_actualURL); + if ("http".equals(url.getScheme())) { String host = url.getHost(); + if (host == null) + throw new MalformedURLException("no hostname: " + _actualURL); int port = url.getPort(); if (port <= 0 || port > 65535) port = 80; @@ -123,13 +126,16 @@ public class I2PSocketEepGet extends EepGet { // Rewrite the url to strip out the /i2p/, // as the naming service accepts B64KEY (but not B64KEY.i2p atm) if ("i2p".equals(host)) { - String file = url.getFile(); + String file = url.getRawPath(); try { int slash = 1 + file.substring(1).indexOf("/"); host = file.substring(1, slash); _actualURL = "http://" + host + file.substring(slash); + String query = url.getRawQuery(); + if (query != null) + _actualURL = _actualURL + '?' + query; } catch (IndexOutOfBoundsException ioobe) { - throw new IOException("Bad /i2p/ format: " + _actualURL); + throw new MalformedURLException("Bad /i2p/ format: " + _actualURL); } } @@ -173,12 +179,14 @@ public class I2PSocketEepGet extends EepGet { opts.setPort(port); _socket = _socketManager.connect(dest, opts); } else { - throw new IOException("Unsupported protocol: " + _actualURL); + throw new MalformedURLException("Unsupported protocol: " + _actualURL); } - } catch (MalformedURLException mue) { - throw new IOException("Request URL is invalid: " + _actualURL); + } catch (URISyntaxException use) { + IOException ioe = new MalformedURLException("Bad URL"); + ioe.initCause(use); + throw ioe; } catch (I2PException ie) { - throw new IOException(ie.toString()); + throw new IOException("I2P error", ie); } _proxyIn = _socket.getInputStream(); @@ -202,10 +210,17 @@ public class I2PSocketEepGet extends EepGet { @Override protected String getRequest() throws IOException { StringBuilder buf = new StringBuilder(2048); - URL url = new URL(_actualURL); + URI url; + try { + url = new URI(_actualURL); + } catch (URISyntaxException use) { + IOException ioe = new MalformedURLException("Bad URL"); + ioe.initCause(use); + throw ioe; + } //String host = url.getHost(); - String path = url.getPath(); - String query = url.getQuery(); + String path = url.getRawPath(); + String query = url.getRawQuery(); if (query != null) path = path + '?' + query; if (!path.startsWith("/")) @@ -232,6 +247,8 @@ public class I2PSocketEepGet extends EepGet { if(!uaOverridden) buf.append("User-Agent: " + USER_AGENT + "\r\n"); buf.append("\r\n"); + if (_log.shouldDebug()) + _log.debug("Request: [" + buf.toString() + "]"); return buf.toString(); } @@ -264,7 +281,7 @@ public class I2PSocketEepGet extends EepGet { url = args[i]; } } - } catch (Exception e) { + } catch (RuntimeException e) { e.printStackTrace(); usage(); return; diff --git a/apps/ministreaming/java/src/net/i2p/client/streaming/I2PSocketManagerFactory.java b/apps/ministreaming/java/src/net/i2p/client/streaming/I2PSocketManagerFactory.java index 863c5d31a84f72cdbbd5e8c8bf08f52b20d2cc44..4e6d3b51fa7013e65a6de7c78f723c2d6bd4fd11 100644 --- a/apps/ministreaming/java/src/net/i2p/client/streaming/I2PSocketManagerFactory.java +++ b/apps/ministreaming/java/src/net/i2p/client/streaming/I2PSocketManagerFactory.java @@ -195,7 +195,9 @@ public class I2PSocketManagerFactory { ByteArrayOutputStream keyStream = new ByteArrayOutputStream(1024); try { client.createDestination(keyStream, getSigType(opts)); - } catch (Exception e) { + } catch (I2PException e) { + throw new I2PSessionException("Error creating keys", e); + } catch (IOException e) { throw new I2PSessionException("Error creating keys", e); } myPrivateKeyStream = new ByteArrayInputStream(keyStream.toByteArray()); @@ -256,9 +258,9 @@ public class I2PSocketManagerFactory { Class<?> cls = Class.forName(classname); if (!I2PSocketManager.class.isAssignableFrom(cls)) throw new IllegalArgumentException(classname + " is not an I2PSocketManager"); - Constructor<I2PSocketManager> con = (Constructor<I2PSocketManager>) - cls.getConstructor(new Class[] {I2PAppContext.class, I2PSession.class, Properties.class, String.class}); - I2PSocketManager mgr = con.newInstance(new Object[] {context, session, opts, name}); + Constructor<?> con = + cls.getConstructor(I2PAppContext.class, I2PSession.class, Properties.class, String.class); + I2PSocketManager mgr = (I2PSocketManager) con.newInstance(new Object[] {context, session, opts, name}); return mgr; } catch (Throwable t) { getLog().log(Log.CRIT, "Error loading " + classname, t); diff --git a/apps/routerconsole/java/src/net/i2p/router/news/NewsManager.java b/apps/routerconsole/java/src/net/i2p/router/news/NewsManager.java index 9f21bf93cd72339a8a626739e7fb49f7bfba997e..44c2fcdc741e5cd98db8c108af9101fe39716cb4 100644 --- a/apps/routerconsole/java/src/net/i2p/router/news/NewsManager.java +++ b/apps/routerconsole/java/src/net/i2p/router/news/NewsManager.java @@ -10,15 +10,16 @@ import java.util.ArrayList; import java.util.Collections; import java.util.Date; import java.util.List; -import java.util.TimeZone; import net.i2p.I2PAppContext; +import net.i2p.app.ClientApp; import net.i2p.app.ClientAppManager; import net.i2p.app.ClientAppState; import static net.i2p.app.ClientAppState.*; -import net.i2p.router.app.RouterApp; +import net.i2p.data.DataHelper; import net.i2p.util.FileUtil; import net.i2p.util.Log; +import net.i2p.util.SystemVersion; import net.i2p.util.TranslateReader; import org.cybergarage.xml.Node; @@ -30,7 +31,7 @@ import org.cybergarage.xml.Node; * * @since 0.9.23 */ -public class NewsManager implements RouterApp { +public class NewsManager implements ClientApp { private final I2PAppContext _context; private final Log _log; @@ -64,7 +65,7 @@ public class NewsManager implements RouterApp { */ public synchronized List<NewsEntry> getEntries() { if (!_currentNews.isEmpty()) - return new ArrayList(_currentNews); + return new ArrayList<NewsEntry>(_currentNews); // load old news.xml if (_log.shouldWarn()) _log.warn("no real XML, falling back to news.xml"); @@ -233,9 +234,7 @@ public class NewsManager implements RouterApp { // Doesn't work if the date has a : in it, but SHORT hopefully does not DateFormat fmt = DateFormat.getDateInstance(DateFormat.SHORT); // the router sets the JVM time zone to UTC but saves the original here so we can get it - String systemTimeZone = _context.getProperty("i2p.systemTimeZone"); - if (systemTimeZone != null) - fmt.setTimeZone(TimeZone.getTimeZone(systemTimeZone)); + fmt.setTimeZone(SystemVersion.getSystemTimeZone(_context)); try { Date date = fmt.parse(newsContent.substring(0, colon)); entry.updated = date.getTime(); diff --git a/apps/routerconsole/java/src/net/i2p/router/update/ConsoleUpdateManager.java b/apps/routerconsole/java/src/net/i2p/router/update/ConsoleUpdateManager.java index 7999b2b47e6d88f5c8bdd8bd32d85d3d1323cc37..d34492294b0a5e448dbf8d1ddeb7efb784f9d71c 100644 --- a/apps/routerconsole/java/src/net/i2p/router/update/ConsoleUpdateManager.java +++ b/apps/routerconsole/java/src/net/i2p/router/update/ConsoleUpdateManager.java @@ -39,6 +39,7 @@ import net.i2p.util.ConcurrentHashSet; import net.i2p.util.FileUtil; import net.i2p.util.Log; import net.i2p.util.SimpleTimer; +import net.i2p.util.SystemVersion; import net.i2p.util.VersionComparator; /** @@ -184,7 +185,11 @@ public class ConsoleUpdateManager implements UpdateManager, RouterApp { if (newVersion != null) { List<URI> updateSources = uuh.getUpdateSources(); if (updateSources != null) { - VersionAvailable newVA = new VersionAvailable(newVersion, "", HTTP, updateSources); + VersionAvailable newVA; + if (SystemVersion.isJava7()) + newVA = new VersionAvailable(newVersion, "", HTTP, updateSources); + else + newVA = new VersionAvailable(newVersion, "Requires Java 7"); _available.put(new UpdateItem(ROUTER_UNSIGNED, ""), newVA); } } @@ -197,7 +202,11 @@ public class ConsoleUpdateManager implements UpdateManager, RouterApp { if (VersionComparator.comp(newVersion, RouterVersion.FULL_VERSION) > 0) { List<URI> updateSources = dsuh.getUpdateSources(); if (updateSources != null) { - VersionAvailable newVA = new VersionAvailable(newVersion, "", HTTP, updateSources); + VersionAvailable newVA; + if (SystemVersion.isJava7()) + newVA = new VersionAvailable(newVersion, "", HTTP, updateSources); + else + newVA = new VersionAvailable(newVersion, "Requires Java 7"); _available.put(new UpdateItem(ROUTER_DEV_SU3, ""), newVA); } } else { @@ -846,6 +855,14 @@ public class ConsoleUpdateManager implements UpdateManager, RouterApp { _available.put(ui, newVA); shouldUpdate = true; } + + // save across restarts + if (type == ROUTER_UNSIGNED) { + _context.router().saveConfig(PROP_UNSIGNED_AVAILABLE, newVersion); + } else if (type == ROUTER_DEV_SU3) { + _context.router().saveConfig(PROP_DEV_SU3_AVAILABLE, newVersion); + } + if (!shouldUpdate) return false; @@ -857,12 +874,6 @@ public class ConsoleUpdateManager implements UpdateManager, RouterApp { case ROUTER_UNSIGNED: case ROUTER_DEV_SU3: - // save across restarts - String prop = type == ROUTER_UNSIGNED ? PROP_UNSIGNED_AVAILABLE - : PROP_DEV_SU3_AVAILABLE; - _context.router().saveConfig(prop, newVersion); - // fall through - case ROUTER_SIGNED: case ROUTER_SIGNED_SU3: if (shouldInstall() && diff --git a/apps/routerconsole/java/src/net/i2p/router/update/DevSU3UpdateChecker.java b/apps/routerconsole/java/src/net/i2p/router/update/DevSU3UpdateChecker.java index 8c5eeed54691d3e1709a96eec2c081b578462ec2..4c5cd902b13105cac40fe80b3380a6579448e8c9 100644 --- a/apps/routerconsole/java/src/net/i2p/router/update/DevSU3UpdateChecker.java +++ b/apps/routerconsole/java/src/net/i2p/router/update/DevSU3UpdateChecker.java @@ -10,8 +10,10 @@ import net.i2p.router.RouterContext; import net.i2p.router.RouterVersion; import net.i2p.router.web.ConfigUpdateHandler; import net.i2p.update.*; +import net.i2p.util.Log; import net.i2p.util.PartialEepGet; import net.i2p.util.PortMapper; +import net.i2p.util.SystemVersion; import net.i2p.util.VersionComparator; /** @@ -73,8 +75,15 @@ class DevSU3UpdateChecker extends UpdateRunner { String newVersion = TrustedUpdate.getVersionString(new ByteArrayInputStream(_baos.toByteArray())); boolean newer = VersionComparator.comp(newVersion, RouterVersion.FULL_VERSION) > 0; if (newer) { - _mgr.notifyVersionAvailable(this, _currentURI, UpdateType.ROUTER_DEV_SU3, "", UpdateMethod.HTTP, + if (SystemVersion.isJava7()) { + _mgr.notifyVersionAvailable(this, _currentURI, UpdateType.ROUTER_DEV_SU3, "", UpdateMethod.HTTP, _urls, newVersion, RouterVersion.FULL_VERSION); + } else { + String ourJava = System.getProperty("java.version"); + String msg = _mgr._t("Requires Java version {0} but installed Java version is {1}", "1.7", ourJava); + _log.logAlways(Log.WARN, "Cannot update to version " + newVersion + ": " + msg); + _mgr.notifyVersionConstraint(this, _currentURI, UpdateType.ROUTER_DEV_SU3, "", newVersion, msg); + } } else { //updateStatus("<b>" + _t("No new version found at {0}", linkify(url)) + "</b>"); if (_log.shouldWarn()) diff --git a/apps/routerconsole/java/src/net/i2p/router/update/NewsFetcher.java b/apps/routerconsole/java/src/net/i2p/router/update/NewsFetcher.java index 66799737dbf6ea44355f6a0d0fa8978d5a9f7e3f..f57d6d7c0dd24c6927266c2886c889cf551e9e01 100644 --- a/apps/routerconsole/java/src/net/i2p/router/update/NewsFetcher.java +++ b/apps/routerconsole/java/src/net/i2p/router/update/NewsFetcher.java @@ -19,7 +19,6 @@ import java.util.List; import java.util.Locale; import java.util.Map; import java.util.StringTokenizer; -import java.util.TimeZone; import net.i2p.app.ClientAppManager; import net.i2p.crypto.SU3File; @@ -44,6 +43,7 @@ import net.i2p.util.PortMapper; import net.i2p.util.ReusableGZIPInputStream; import net.i2p.util.SecureFileOutputStream; import net.i2p.util.SSLEepGet; +import net.i2p.util.SystemVersion; import net.i2p.util.Translate; import net.i2p.util.VersionComparator; @@ -226,6 +226,18 @@ class NewsFetcher extends UpdateRunner { _mgr.notifyVersionConstraint(this, _currentURI, ROUTER_SIGNED, "", ver, msg); return; } + if (!FileUtil.isPack200Supported()) { + String msg = _mgr._t("No Pack200 support in Java runtime."); + _log.logAlways(Log.WARN, "Cannot update to version " + ver + ": " + msg); + _mgr.notifyVersionConstraint(this, _currentURI, ROUTER_SIGNED, "", ver, msg); + return; + } + if (!ConfigUpdateHandler.USE_SU3_UPDATE) { + String msg = _mgr._t("No update certificates installed."); + _log.logAlways(Log.WARN, "Cannot update to version " + ver + ": " + msg); + _mgr.notifyVersionConstraint(this, _currentURI, ROUTER_SIGNED, "", ver, msg); + return; + } String minRouter = args.get(MIN_VERSION_KEY); if (minRouter != null) { if (VersionComparator.comp(RouterVersion.VERSION, minRouter) < 0) { @@ -252,7 +264,7 @@ class NewsFetcher extends UpdateRunner { // TODO clearnet URLs, notify with HTTP_CLEARNET and/or HTTPS_CLEARNET Map<UpdateMethod, List<URI>> sourceMap = new HashMap<UpdateMethod, List<URI>>(4); // Must do su3 first - if (ConfigUpdateHandler.USE_SU3_UPDATE) { + //if (ConfigUpdateHandler.USE_SU3_UPDATE) { sourceMap.put(HTTP, _mgr.getUpdateURLs(ROUTER_SIGNED_SU3, "", HTTP)); addMethod(TORRENT, args.get(SU3_KEY), sourceMap); addMethod(HTTP_CLEARNET, args.get(CLEARNET_HTTP_SU3_KEY), sourceMap); @@ -261,14 +273,14 @@ class NewsFetcher extends UpdateRunner { _mgr.notifyVersionAvailable(this, _currentURI, ROUTER_SIGNED_SU3, "", sourceMap, ver, ""); sourceMap.clear(); - } - // now do sud/su2 - sourceMap.put(HTTP, _mgr.getUpdateURLs(ROUTER_SIGNED, "", HTTP)); - String key = FileUtil.isPack200Supported() ? SU2_KEY : SUD_KEY; - addMethod(TORRENT, args.get(key), sourceMap); + //} + // now do sud/su2 - DISABLED + //sourceMap.put(HTTP, _mgr.getUpdateURLs(ROUTER_SIGNED, "", HTTP)); + //String key = FileUtil.isPack200Supported() ? SU2_KEY : SUD_KEY; + //addMethod(TORRENT, args.get(key), sourceMap); // notify about all sources at once - _mgr.notifyVersionAvailable(this, _currentURI, ROUTER_SIGNED, - "", sourceMap, ver, ""); + //_mgr.notifyVersionAvailable(this, _currentURI, ROUTER_SIGNED, + // "", sourceMap, ver, ""); } else { if (_log.shouldLog(Log.DEBUG)) _log.debug("Our version is current"); @@ -415,9 +427,8 @@ class NewsFetcher extends UpdateRunner { if (_tempFile.exists() && _tempFile.length() > 0) { File from; - // TODO check magic number instead? - // But then a corrupt file would be displayed as-is... - if (url.endsWith(".su3") || url.contains(".su3?")) { + // sud/su2 disabled + //if (url.endsWith(".su3") || url.contains(".su3?")) { try { from = processSU3(); } catch (IOException ioe) { @@ -425,9 +436,9 @@ class NewsFetcher extends UpdateRunner { _tempFile.delete(); return; } - } else { - from = _tempFile; - } + //} else { + // from = _tempFile; + //} boolean copied = FileUtil.rename(from, _newsFile); _tempFile.delete(); if (copied) { @@ -579,9 +590,7 @@ class NewsFetcher extends UpdateRunner { return; DateFormat fmt = DateFormat.getDateInstance(DateFormat.SHORT); // the router sets the JVM time zone to UTC but saves the original here so we can get it - String systemTimeZone = _context.getProperty("i2p.systemTimeZone"); - if (systemTimeZone != null) - fmt.setTimeZone(TimeZone.getTimeZone(systemTimeZone)); + fmt.setTimeZone(SystemVersion.getSystemTimeZone(_context)); for (NewsEntry e : entries) { if (e.title == null || e.content == null) continue; diff --git a/apps/routerconsole/java/src/net/i2p/router/update/UnsignedUpdateChecker.java b/apps/routerconsole/java/src/net/i2p/router/update/UnsignedUpdateChecker.java index 5d3a45695c5c9638c8e5717ce335054246549164..02406e4189f65504d84d6233152b80fa36bb6a5f 100644 --- a/apps/routerconsole/java/src/net/i2p/router/update/UnsignedUpdateChecker.java +++ b/apps/routerconsole/java/src/net/i2p/router/update/UnsignedUpdateChecker.java @@ -8,7 +8,9 @@ import net.i2p.router.util.RFC822Date; import net.i2p.router.web.ConfigUpdateHandler; import net.i2p.update.*; import net.i2p.util.EepHead; +import net.i2p.util.Log; import net.i2p.util.PortMapper; +import net.i2p.util.SystemVersion; /** * Does a simple EepHead to get the last-modified header. @@ -76,9 +78,17 @@ class UnsignedUpdateChecker extends UpdateRunner { if (modtime <= 0) return false; if (_ms <= 0) return false; if (modtime > _ms) { - _unsignedUpdateAvailable = true; - _mgr.notifyVersionAvailable(this, _urls.get(0), getType(), "", getMethod(), _urls, - Long.toString(modtime), ""); + String newVersion = Long.toString(modtime); + if (SystemVersion.isJava7()) { + _unsignedUpdateAvailable = true; + _mgr.notifyVersionAvailable(this, _urls.get(0), getType(), "", getMethod(), _urls, + newVersion, ""); + } else { + String ourJava = System.getProperty("java.version"); + String msg = _mgr._t("Requires Java version {0} but installed Java version is {1}", "1.7", ourJava); + _log.logAlways(Log.WARN, "Cannot update to version " + newVersion + ": " + msg); + _mgr.notifyVersionConstraint(this, _urls.get(0), getType(), "", newVersion, msg); + } } } return true; diff --git a/apps/routerconsole/java/src/net/i2p/router/web/BanlistRenderer.java b/apps/routerconsole/java/src/net/i2p/router/web/BanlistRenderer.java index 432da4d67cea90186bedaf81dcc7bcfe6ff7f097..83209b577df6e4ee09f2c89652471ad966aadcfd 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/BanlistRenderer.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/BanlistRenderer.java @@ -101,7 +101,7 @@ public class BanlistRenderer { * The {0} will be replaced by the parameter. * Single quotes must be doubled, i.e. ' -> '' in the string. * @param o parameter, not translated. - * To tranlslate parameter also, use _t("foo {0} bar", _t("baz")) + * To translate parameter also, use _t("foo {0} bar", _t("baz")) * Do not double the single quotes in the parameter. * Use autoboxing to call with ints, longs, floats, etc. */ diff --git a/apps/routerconsole/java/src/net/i2p/router/web/CSSHelper.java b/apps/routerconsole/java/src/net/i2p/router/web/CSSHelper.java index 7870363b57fbfe195329db1572d6c4e426866abe..2218f06a7d3f89b78f1946bc70cdd09fdb23e3c1 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/CSSHelper.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/CSSHelper.java @@ -107,7 +107,7 @@ public class CSSHelper extends HelperBase { if (Integer.parseInt(r) < MIN_REFRESH) r = "" + MIN_REFRESH; _context.router().saveConfig(PROP_REFRESH, r); - } catch (Exception e) { + } catch (RuntimeException e) { } } @@ -117,7 +117,7 @@ public class CSSHelper extends HelperBase { try { if (Integer.parseInt(r) < MIN_REFRESH) r = "" + MIN_REFRESH; - } catch (Exception e) { + } catch (RuntimeException e) { r = "" + MIN_REFRESH; } return r; 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 13b080001885b798f4b3675b8dbbfc1ebd7c1290..b216ed3ff684a388514cf3bab15fdcf4a7588b7c 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/ConfigClientsHandler.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/ConfigClientsHandler.java @@ -244,7 +244,7 @@ public class ConfigClientsHandler extends FormHandler { // edit of an existing entry if (_context.getBooleanProperty(ConfigClientsHelper.PROP_ENABLE_CLIENT_CHANGE) || isAdvanced()) { - String desc = getJettyString("desc" + cur); + String desc = getJettyString("nofilter_desc" + cur); if (desc != null) { int spc = desc.indexOf(" "); String clss = desc; @@ -255,7 +255,7 @@ public class ConfigClientsHandler extends FormHandler { } ca.className = clss; ca.args = args; - ca.clientName = getJettyString("name" + cur); + ca.clientName = getJettyString("nofilter_name" + cur); } } } @@ -264,7 +264,7 @@ public class ConfigClientsHandler extends FormHandler { if (_context.getBooleanProperty(ConfigClientsHelper.PROP_ENABLE_CLIENT_CHANGE) || isAdvanced()) { int newClient = clients.size(); - String newDesc = getJettyString("desc" + newClient); + String newDesc = getJettyString("nofilter_desc" + newClient); if (newDesc != null && newDesc.trim().length() > 0) { // new entry int spc = newDesc.indexOf(" "); @@ -274,10 +274,10 @@ public class ConfigClientsHandler extends FormHandler { clss = newDesc.substring(0, spc); args = newDesc.substring(spc + 1); } - String name = getJettyString("name" + newClient); + String name = getJettyString("nofilter_name" + newClient); if (name == null || name.trim().length() <= 0) name = "new client"; ClientAppConfig ca = new ClientAppConfig(clss, name, args, 2*60*1000, - _settings.get(newClient + ".enabled") != null); + _settings.get(newClient + ".enabled") == null); // true for disabled clients.add(ca); addFormNotice(_t("New client added") + ": " + name + " (" + clss + ")."); } diff --git a/apps/routerconsole/java/src/net/i2p/router/web/ConfigClientsHelper.java b/apps/routerconsole/java/src/net/i2p/router/web/ConfigClientsHelper.java index c0e4df15828d5df2c52ea6abdccec3252d7d5bbd..de4e85f8be147fd1f4a8f266ef7b9fc940c179b1 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/ConfigClientsHelper.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/ConfigClientsHelper.java @@ -151,7 +151,7 @@ public class ConfigClientsHelper extends HelperBase { //"webConsole".equals(ca.clientName) || "Web console".equals(ca.clientName), false, RouterConsoleRunner.class.getName().equals(ca.className), // description - ca.className + ((ca.args != null) ? " " + ca.args : ""), + DataHelper.escapeHTML(ca.className + ((ca.args != null) ? " " + ca.args : "")), // edit allowEdit && (""+cur).equals(_edit), // show edit button, show update button @@ -212,7 +212,7 @@ public class ConfigClientsHelper extends HelperBase { boolean isRunning = WebAppStarter.isWebAppRunning(app); renderForm(buf, app, app, !"addressbook".equals(app), "true".equals(val), RouterConsoleRunner.ROUTERCONSOLE.equals(app), - RouterConsoleRunner.ROUTERCONSOLE.equals(app), app + ".war", + RouterConsoleRunner.ROUTERCONSOLE.equals(app), DataHelper.escapeHTML(app + ".war"), false, false, false, isRunning, false, !isRunning); } } @@ -316,29 +316,31 @@ public class ConfigClientsHelper extends HelperBase { /** * Misnamed, renders a single line in a table for a single client/webapp/plugin. * - * ro trumps edit and showEditButton + * @param name will be escaped here + * @param ro trumps edit and showEditButton + * @param escapedDesc description, must be HTML escaped, except for plugins */ private void renderForm(StringBuilder buf, String index, String name, boolean urlify, - boolean enabled, boolean ro, boolean preventDisable, String desc, boolean edit, + boolean enabled, boolean ro, boolean preventDisable, String escapedDesc, boolean edit, boolean showEditButton, boolean showUpdateButton, boolean showStopButton, boolean showDeleteButton, boolean showStartButton) { - String escapeddesc = DataHelper.escapeHTML(desc); + String escapedName = DataHelper.escapeHTML(name); buf.append("<tr><td class=\"mediumtags\" align=\"right\" width=\"25%\">"); if (urlify && enabled) { String link = "/"; if (! RouterConsoleRunner.ROUTERCONSOLE.equals(name)) - link += name + "/"; - buf.append("<a href=\"").append(link).append("\">").append(_t(name)).append("</a>"); + link += escapedName + "/"; + buf.append("<a href=\"").append(link).append("\">").append(_t(escapedName)).append("</a>"); } else if (edit && !ro) { - buf.append("<input type=\"text\" name=\"name").append(index).append("\" value=\""); + buf.append("<input type=\"text\" name=\"nofilter_name").append(index).append("\" value=\""); if (name.length() > 0) - buf.append(_t(name)); + buf.append(_t(escapedName)); buf.append("\" >"); } else { if (name.length() > 0) - buf.append(_t(name)); + buf.append(_t(escapedName)); } - buf.append("</td><td align=\"center\" width=\"10%\"><input type=\"checkbox\" class=\"optbox\" name=\"").append(index).append(".enabled\" value=\"true\" "); + buf.append("</td><td align=\"center\" width=\"10%\"><input type=\"checkbox\" class=\"optbox\" name=\"").append(index).append(".enabled\""); if (enabled) { buf.append("checked=\"checked\" "); if (ro || preventDisable) @@ -366,17 +368,17 @@ public class ConfigClientsHelper extends HelperBase { if (showDeleteButton && (!edit) && !ro) { buf.append("<button type=\"submit\" class=\"Xdelete\" name=\"action\" value=\"Delete ").append(index) .append("\" onclick=\"if (!confirm('") - .append(_t("Are you sure you want to delete {0}?", _t(name))) + .append(_t("Are you sure you want to delete {0}?", _t(escapedName))) .append("')) { return false; }\">") .append(_t("Delete")).append("<span class=hide> ").append(index).append("</span></button>"); } buf.append("</td><td align=\"left\" width=\"50%\">"); if (edit && !ro) { - buf.append("<input type=\"text\" size=\"80\" spellcheck=\"false\" name=\"desc").append(index).append("\" value=\""); - buf.append(escapeddesc); + buf.append("<input type=\"text\" size=\"80\" spellcheck=\"false\" name=\"nofilter_desc").append(index).append("\" value=\""); + buf.append(escapedDesc); buf.append("\" >"); } else { - buf.append(desc); + buf.append(escapedDesc); } buf.append("</td></tr>\n"); } diff --git a/apps/routerconsole/java/src/net/i2p/router/web/ConfigLoggingHandler.java b/apps/routerconsole/java/src/net/i2p/router/web/ConfigLoggingHandler.java index e902e9c72fb2c3eccfb32c3544df5565a75ce4ab..5c65011a091c94fa1a2483154bda8daada34a24a 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/ConfigLoggingHandler.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/ConfigLoggingHandler.java @@ -4,6 +4,8 @@ import java.io.ByteArrayInputStream; import java.io.IOException; import java.util.Properties; +import net.i2p.util.LogManager; + /** * Handler to deal with form submissions from the logging config form and act * upon the values. @@ -113,7 +115,7 @@ public class ConfigLoggingHandler extends FormHandler { } if (_fileSize != null) { - int newBytes = _context.logManager().getFileSize(_fileSize); + int newBytes = LogManager.getFileSize(_fileSize); int oldBytes = _context.logManager().getFileSize(); if (newBytes > 0) { if (oldBytes != newBytes) { diff --git a/apps/routerconsole/java/src/net/i2p/router/web/ConfigNetHelper.java b/apps/routerconsole/java/src/net/i2p/router/web/ConfigNetHelper.java index c3abb58f540f80a7bc8b3b198821b9f30f4cd149..fbb94ddefcec1ae9ed0503e7e62ca95b02339601 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/ConfigNetHelper.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/ConfigNetHelper.java @@ -207,7 +207,7 @@ public class ConfigNetHelper extends HelperBase { configs = Collections.emptySet(); } else { configs = new HashSet<String>(4); - String[] ca = cs.split("[,; \r\n\t]"); + String[] ca = DataHelper.split(cs, "[,; \r\n\t]"); for (int i = 0; i < ca.length; i++) { String c = ca[i]; if (c.length() > 0) { 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 6ea3842a819a21e4b72b8b9efd9e3a88a2362d4f..47f9e3f1bd74fbe946971c6fae4dead5fea2ea70 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/ConfigPeerHandler.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/ConfigPeerHandler.java @@ -42,12 +42,12 @@ public class ConfigPeerHandler extends FormHandler { PeerProfile prof = _context.profileOrganizer().getProfile(h); if (prof != null) { try { - prof.setSpeedBonus(Long.parseLong(_speed)); + prof.setSpeedBonus(Integer.parseInt(_speed)); } catch (NumberFormatException nfe) { addFormError(_t("Bad speed value")); } try { - prof.setCapacityBonus(Long.parseLong(_capacity)); + prof.setCapacityBonus(Integer.parseInt(_capacity)); } catch (NumberFormatException nfe) { addFormError(_t("Bad capacity value")); } diff --git a/apps/routerconsole/java/src/net/i2p/router/web/ConfigReseedHandler.java b/apps/routerconsole/java/src/net/i2p/router/web/ConfigReseedHandler.java index f7d03555e040d7e77301f11de05ceab26ec0fc86..ab5e83408177504c6434746e179bddb036219d4e 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/ConfigReseedHandler.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/ConfigReseedHandler.java @@ -2,8 +2,8 @@ package net.i2p.router.web; import java.io.InputStream; import java.io.IOException; -import java.net.URL; -import java.net.MalformedURLException; +import java.net.URI; +import java.net.URISyntaxException; import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -37,10 +37,10 @@ public class ConfigReseedHandler extends FormHandler { addFormError(_t("You must enter a URL")); return; } - URL url; + URI url; try { - url = new URL(val); - } catch (MalformedURLException mue) { + url = new URI(val); + } catch (URISyntaxException mue) { addFormError(_t("Bad URL {0}", val)); return; } diff --git a/apps/routerconsole/java/src/net/i2p/router/web/ConfigSummaryHandler.java b/apps/routerconsole/java/src/net/i2p/router/web/ConfigSummaryHandler.java index 7747d22b2eb118551063d7e8b6a482d7e893bb81..1f75c3c82c64f8c6a6ecc1d7223568ce7a44486e 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/ConfigSummaryHandler.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/ConfigSummaryHandler.java @@ -108,7 +108,7 @@ public class ConfigSummaryHandler extends FormHandler { } } } else if (moving) { - String parts[] = _action.split("_"); + String parts[] = DataHelper.split(_action, "_"); try { int from = Integer.parseInt(parts[1]); int to = 0; diff --git a/apps/routerconsole/java/src/net/i2p/router/web/ConfigUpdateHandler.java b/apps/routerconsole/java/src/net/i2p/router/web/ConfigUpdateHandler.java index 744d996835addb0e419863bd4fb6f5e4bc718e5b..f1253889bd8677adc49799296ea96a1fe74e7a8c 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/ConfigUpdateHandler.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/ConfigUpdateHandler.java @@ -88,8 +88,8 @@ public class ConfigUpdateHandler extends FormHandler { "http://stats.i2p/i2p/i2pupdate.su2\r\n" + // "http://www.i2p2.i2p/_static/i2pupdate.su2\r\n" + "http://update.dg.i2p/files/i2pupdate.su2\r\n" + - "http://update.killyourtv.i2p/i2pupdate.su2\r\n" + - "http://update.postman.i2p/i2pupdate.su2" ; + "http://update.killyourtv.i2p/i2pupdate.su2\r\n" ; + // "http://update.postman.i2p/i2pupdate.su2" ; private static final String NO_PACK200_URLS = "http://echelon.i2p/i2p/i2pupdate.sud\r\n" + @@ -98,8 +98,8 @@ public class ConfigUpdateHandler extends FormHandler { "http://stats.i2p/i2p/i2pupdate.sud\r\n" + // "http://www.i2p2.i2p/_static/i2pupdate.sud\r\n" + "http://update.dg.i2p/files/i2pupdate.sud\r\n" + - "http://update.killyourtv.i2p/i2pupdate.sud\r\n" + - "http://update.postman.i2p/i2pupdate.sud" ; + "http://update.killyourtv.i2p/i2pupdate.sud\r\n" ; + // "http://update.postman.i2p/i2pupdate.sud" ; /** * These are only for .sud and .su2. @@ -132,8 +132,8 @@ public class ConfigUpdateHandler extends FormHandler { "http://stats.i2p/i2p/i2pupdate.su3\r\n" + // "http://www.i2p2.i2p/_static/i2pupdate.su3\r\n" + "http://update.dg.i2p/files/i2pupdate.su3\r\n" + - "http://update.killyourtv.i2p/i2pupdate.su3\r\n" + - "http://update.postman.i2p/i2pupdate.su3" ; + "http://update.killyourtv.i2p/i2pupdate.su3\r\n" ; + // "http://update.postman.i2p/i2pupdate.su3" ; /** * Empty string if disabled. Cannot be overridden by config. diff --git a/apps/routerconsole/java/src/net/i2p/router/web/EventLogHelper.java b/apps/routerconsole/java/src/net/i2p/router/web/EventLogHelper.java index f42e1cd6e25d1a6fa7a7e9210e2b12143ff85813..9dd7892f2801fadcb57b7b1e4ecba18d8c4d93f2 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/EventLogHelper.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/EventLogHelper.java @@ -12,11 +12,11 @@ import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; -import java.util.TimeZone; import java.util.TreeMap; import net.i2p.data.DataHelper; import net.i2p.router.util.EventLog; +import net.i2p.util.SystemVersion; /** * /events.jsp @@ -189,9 +189,7 @@ public class EventLogHelper extends FormHandler { SimpleDateFormat fmt = (SimpleDateFormat) DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.MEDIUM); // the router sets the JVM time zone to UTC but saves the original here so we can get it - String systemTimeZone = _context.getProperty("i2p.systemTimeZone"); - if (systemTimeZone != null) - fmt.setTimeZone(TimeZone.getTimeZone(systemTimeZone)); + fmt.setTimeZone(SystemVersion.getSystemTimeZone(_context)); List<Map.Entry<Long, String>> entries = new ArrayList<Map.Entry<Long, String>>(events.entrySet()); Collections.reverse(entries); @@ -202,7 +200,7 @@ public class EventLogHelper extends FormHandler { buf.append(fmt.format(new Date(time))); buf.append("</td><td>"); if (isAll) { - String[] s = event.split(" ", 2); + String[] s = DataHelper.split(event, " ", 2); String xs = _xevents.get(s[0]); if (xs == null) xs = s[0]; diff --git a/apps/routerconsole/java/src/net/i2p/router/web/FormHandler.java b/apps/routerconsole/java/src/net/i2p/router/web/FormHandler.java index 1b2dabb3a77ca98152d158e166f107826adf5f24..dfec5d9cb6991233293dc51b129112e865b7ff0d 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/FormHandler.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/FormHandler.java @@ -23,6 +23,7 @@ public abstract class FormHandler { protected RouterContext _context; protected Log _log; /** Not for multipart/form-data, will be null */ + @SuppressWarnings("rawtypes") protected Map _settings; /** Only for multipart/form-data. Warning, parameters are NOT XSS filtered */ protected RequestWrapper _requestWrapper; @@ -63,6 +64,7 @@ public abstract class FormHandler { * * @since 0.9.4 consolidated from numerous FormHandlers */ + @SuppressWarnings({"rawtypes", "unchecked"}) public void setSettings(Map settings) { _settings = new HashMap(settings); } /** @@ -303,7 +305,7 @@ public abstract class FormHandler { * The {0} will be replaced by the parameter. * Single quotes must be doubled, i.e. ' -> '' in the string. * @param o parameter, not translated. - * To tranlslate parameter also, use _t("foo {0} bar", _t("baz")) + * To translate parameter also, use _t("foo {0} bar", _t("baz")) * Do not double the single quotes in the parameter. * Use autoboxing to call with ints, longs, floats, etc. */ diff --git a/apps/routerconsole/java/src/net/i2p/router/web/HelperBase.java b/apps/routerconsole/java/src/net/i2p/router/web/HelperBase.java index 1c14848dcf7ea70c29750dba1ab38a169babc851..4256cba3fc4788f3fbd8d655f6a941821d3096de 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/HelperBase.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/HelperBase.java @@ -56,7 +56,7 @@ public abstract class HelperBase { * The {0} will be replaced by the parameter. * Single quotes must be doubled, i.e. ' -> '' in the string. * @param o parameter, not translated. - * To tranlslate parameter also, use _t("foo {0} bar", _t("baz")) + * To translate parameter also, use _t("foo {0} bar", _t("baz")) * Do not double the single quotes in the parameter. * Use autoboxing to call with ints, longs, floats, etc. */ diff --git a/apps/routerconsole/java/src/net/i2p/router/web/HomeHelper.java b/apps/routerconsole/java/src/net/i2p/router/web/HomeHelper.java index d9a8de3011e44e3839a8d7a9e31e18310ff5db82..801d5d5ebbfb05f62842583d514cd75c24d217a5 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/HomeHelper.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/HomeHelper.java @@ -25,6 +25,7 @@ public class HomeHelper extends HelperBase { static final String PROP_OLDHOME = "routerconsole.oldHomePage"; private static final String PROP_SEARCH = "routerconsole.showSearch"; + // No commas allowed in text strings! static final String DEFAULT_SERVICES = _x("Addressbook") + S + _x("Manage your I2P hosts file here (I2P domain name resolution)") + S + "/dns" + S + I + "book_addresses.png" + S + _x("Configure Bandwidth") + S + _x("I2P Bandwidth Configuration") + S + "/config" + S + I + "action_log.png" + S + @@ -37,6 +38,7 @@ public class HomeHelper extends HelperBase { _x("Website") + S + _x("Local web server") + S + "http://127.0.0.1:7658/" + S + I + "server_32x32.png" + S + ""; + // No commas allowed in text strings! static final String DEFAULT_FAVORITES = "anoncoin.i2p" + S + _x("The Anoncoin project") + S + "http://anoncoin.i2p/" + S + I + "anoncoin_32.png" + S + _x("Bug Reports") + S + _x("Bug tracker") + S + "http://trac.i2p2.i2p/report/1" + S + I + "bug.png" + S + @@ -44,10 +46,12 @@ public class HomeHelper extends HelperBase { _x("Dev Forum") + S + _x("Development forum") + S + "http://zzz.i2p/" + S + I + "group_gear.png" + S + _x("diftracker") + S + _x("Bittorrent tracker") + S + "http://diftracker.i2p/" + S + I + "magnet.png" + S + "echelon.i2p" + S + _x("I2P Applications") + S + "http://echelon.i2p/" + S + I + "box_open.png" + S + + "exchanged.i2p" + S + _x("Anonymous cryptocurrency exchange") + S + "http://exchanged.i2p/" + S + I + "exchanged.png" + S + _x("FAQ") + S + _x("Frequently Asked Questions") + S + "http://i2p-projekt.i2p/faq" + S + I + "question.png" + S + _x("Forum") + S + _x("Community forum") + S + "http://forum.i2p/" + S + I + "group.png" + S + _x("Anonymous Git Hosting") + S + _x("A public anonymous Git hosting site - supports pulling via Git and HTTP and pushing via SSH") + S + "http://git.repo.i2p/" + S + I + "git-logo.png" + S + "hiddengate.i2p" + S + _x("HiddenGate") + S + "http://hiddengate.i2p/" + S + I + "hglogo32.png" + S + + _x("I2P Wiki") + S + _x("Anonymous wiki - share the knowledge") + S + "http://i2pwiki.i2p/" + S + I + "i2pwiki_logo.png" + S + "Ident " + _x("Microblog") + S + _x("Your premier microblogging service on I2P") + S + "http://id3nt.i2p/" + S + I + "ident_icon_blue.png" + S + _x("Javadocs") + S + _x("Technical documentation") + S + "http://i2p-javadocs.i2p/" + S + I + "education.png" + S + //"jisko.i2p" + S + _x("Simple and fast microblogging website") + S + "http://jisko.i2p/" + S + I + "jisko_console_icon.png" + S + @@ -55,10 +59,11 @@ public class HomeHelper extends HelperBase { "killyourtv.i2p" + S + _x("Debian and Tahoe-LAFS repositories") + S + "http://killyourtv.i2p/" + S + I + "television_delete.png" + S + _x("Free Web Hosting") + S + _x("Free eepsite hosting with PHP and MySQL") + S + "http://open4you.i2p/" + S + I + "open4you-logo.png" + S + _x("Pastebin") + S + _x("I2P Pastebin") + S + "http://pastethis.i2p/" + S + I + "paste_plain.png" + S + - "Planet I2P" + S + _x("I2P News") + S + "http://planet.i2p/" + S + I + "world.png" + S + + _x("Planet I2P") + S + _x("I2P News") + S + "http://planet.i2p/" + S + I + "world.png" + S + _x("Plugins") + S + _x("Add-on directory") + S + "http://plugins.i2p/" + S + I + "plugin.png" + S + _x("Postman's Tracker") + S + _x("Bittorrent tracker") + S + "http://tracker2.postman.i2p/" + S + I + "magnet.png" + S + _x("Project Website") + S + _x("I2P home page") + S + "http://i2p-projekt.i2p/" + S + I + "info_rhombus.png" + S + + _x("Russian News Feed") + S + "lenta.i2p" + S + "http://lenta.i2p/" + S + I + "lenta_main_logo.png" + S + //"Salt" + S + "salt.i2p" + S + "http://salt.i2p/" + S + I + "salt_console.png" + S + "stats.i2p" + S + _x("I2P Network Statistics") + S + "http://stats.i2p/cgi-bin/dashboard.cgi" + S + I + "chart_line.png" + S + _x("Technical Docs") + S + _x("Technical documentation") + S + "http://i2p-projekt.i2p/how" + S + I + "education.png" + S + @@ -99,7 +104,7 @@ public class HomeHelper extends HelperBase { public String getConfigHome() { boolean oldHome = _context.getBooleanProperty(PROP_OLDHOME); - return oldHome ? "checked=\"true\"" : ""; + return oldHome ? "checked=\"checked\"" : ""; } public String getProxyStatus() { @@ -130,8 +135,10 @@ public class HomeHelper extends HelperBase { return renderConfig(apps); } + private static final String SS = Character.toString(S); + static Collection<App> buildApps(RouterContext ctx, String config) { - String[] args = config.split("" + S); + String[] args = DataHelper.split(config, SS); Set<App> apps = new TreeSet<App>(new AppComparator()); for (int i = 0; i < args.length - 3; i += 4) { String name = Messages.getString(args[i], ctx); @@ -144,7 +151,7 @@ public class HomeHelper extends HelperBase { } static Collection<App> buildSearchApps(String config) { - String[] args = config.split("" + S); + String[] args = DataHelper.split(config, SS); Set<App> apps = new TreeSet<App>(new AppComparator()); for (int i = 0; i < args.length - 1; i += 2) { String name = args[i]; diff --git a/apps/routerconsole/java/src/net/i2p/router/web/LocaleWebAppHandler.java b/apps/routerconsole/java/src/net/i2p/router/web/LocaleWebAppHandler.java index 74ce11a197abd4fdb68c489e55d2a19304845316..1343a88cd211f89b512a1e34da72ef1640103d95 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/LocaleWebAppHandler.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/LocaleWebAppHandler.java @@ -83,6 +83,7 @@ public class LocaleWebAppHandler extends HandlerWrapper if (lang != null && lang.length() > 0 && !lang.equals("en")) { String testPath = pathInContext.substring(0, len - 4) + '_' + lang + ".jsp"; // Do we have a servlet for the new path that isn't the catchall *.jsp? + @SuppressWarnings("rawtypes") Map.Entry servlet = _wac.getServletHandler().getHolderEntry(testPath); if (servlet != null) { String servletPath = (String) servlet.getKey(); @@ -130,7 +131,7 @@ public class LocaleWebAppHandler extends HandlerWrapper /** * Mysteriously removed from Jetty 7 */ - private void setInitParams(Map params) { + private void setInitParams(Map<?,?> params) { setInitParams(_wac, params); } @@ -138,7 +139,7 @@ public class LocaleWebAppHandler extends HandlerWrapper * @since Jetty 7 */ public static void setInitParams(WebAppContext context, Map<?,?> params) { - for (Map.Entry e : params.entrySet()) { + for (Map.Entry<?,?> e : params.entrySet()) { context.setInitParameter((String)e.getKey(), (String)e.getValue()); } } diff --git a/apps/routerconsole/java/src/net/i2p/router/web/Messages.java b/apps/routerconsole/java/src/net/i2p/router/web/Messages.java index e138c0ffdec763df3ee5b1239058426718a913fc..ad3543085fb751c204622fe5f52ac2938f2c3009 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/Messages.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/Messages.java @@ -24,7 +24,7 @@ public class Messages extends Translate { * The {0} will be replaced by the parameter. * Single quotes must be doubled, i.e. ' -> '' in the string. * @param o parameter, not translated. - * To tranlslate parameter also, use _t("foo {0} bar", _t("baz")) + * To translate parameter also, use _t("foo {0} bar", _t("baz")) * Do not double the single quotes in the parameter. * Use autoboxing to call with ints, longs, floats, etc. */ diff --git a/apps/routerconsole/java/src/net/i2p/router/web/NetDbHelper.java b/apps/routerconsole/java/src/net/i2p/router/web/NetDbHelper.java index 808297fb53c53ec5de809b3585191c9dee720c85..ba977a6e8005b78a1fd78bfd747bb47119be3117 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/NetDbHelper.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/NetDbHelper.java @@ -19,7 +19,8 @@ public class NetDbHelper extends HelperBase { _x("All Routers"), // 3 _x("All Routers with Full Stats"), // 4 "LeaseSet Debug", // 5 - _x("LeaseSets") }; // 6 + _x("LeaseSets"), // 6 + "Sybil" }; // 7 private static final String links[] = {"", // 0 @@ -28,7 +29,8 @@ public class NetDbHelper extends HelperBase { "?f=2", // 3 "?f=1", // 4 "?l=2", // 5 - "?l=1" }; // 6 + "?l=1", // 6 + "?f=3" }; // 7 public void setRouter(String r) { if (r != null) @@ -77,6 +79,8 @@ public class NetDbHelper extends HelperBase { renderer.renderRouterInfoHTML(_out, _routerPrefix, _version, _country); else if (_lease) renderer.renderLeaseSetHTML(_out, _debug); + else if (_full == 3) + (new SybilRenderer(_context)).getNetDbSummary(_out); else renderer.renderStatusHTML(_out, _full); } catch (IOException ioe) { @@ -101,6 +105,8 @@ public class NetDbHelper extends HelperBase { return 3; if (_full == 1) return 4; + if (_full == 3) + return 7; return 0; } @@ -119,7 +125,7 @@ public class NetDbHelper extends HelperBase { for (int i = 0; i < titles.length; i++) { if (i == 2 && tab != 2) continue; // can't nav to lookup - if (i == 5 && !_context.getBooleanProperty(PROP_ADVANCED)) + if ((i == 5 || i == 7) && !_context.getBooleanProperty(PROP_ADVANCED)) continue; if (i == tab) { // we are there diff --git a/apps/routerconsole/java/src/net/i2p/router/web/NetDbRenderer.java b/apps/routerconsole/java/src/net/i2p/router/web/NetDbRenderer.java index ff6b092a2c0648764cc6af698114edc2215034cb..c9a34ece06d5e9f7764d32e6b9b95b0a3fc84fef 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/NetDbRenderer.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/NetDbRenderer.java @@ -40,7 +40,7 @@ import net.i2p.util.ObjectCounter; import net.i2p.util.Translate; import net.i2p.util.VersionComparator; -public class NetDbRenderer { +class NetDbRenderer { private final RouterContext _context; public NetDbRenderer (RouterContext ctx) { @@ -69,7 +69,7 @@ public class NetDbRenderer { _us = us; } public int compare(LeaseSet l, LeaseSet r) { - return HashDistance.getDistance(_us, l.getRoutingKey()).subtract(HashDistance.getDistance(_us, r.getRoutingKey())).signum(); + return HashDistance.getDistance(_us, l.getRoutingKey()).compareTo(HashDistance.getDistance(_us, r.getRoutingKey())); } } @@ -266,7 +266,7 @@ public class NetDbRenderer { * http://forums.sun.com/thread.jspa?threadID=597652 * @since 0.7.14 */ - private static double biLog2(BigInteger a) { + public static double biLog2(BigInteger a) { int b = a.bitLength() - 1; double c = 0; double d = 0.5; @@ -555,7 +555,7 @@ public class NetDbRenderer { * The {0} will be replaced by the parameter. * Single quotes must be doubled, i.e. ' -> '' in the string. * @param o parameter, not translated. - * To tranlslate parameter also, use _t("foo {0} bar", _t("baz")) + * To translate parameter also, use _t("foo {0} bar", _t("baz")) * Do not double the single quotes in the parameter. * Use autoboxing to call with ints, longs, floats, etc. */ diff --git a/apps/routerconsole/java/src/net/i2p/router/web/NewsFeedHelper.java b/apps/routerconsole/java/src/net/i2p/router/web/NewsFeedHelper.java index 357887f9e7e9d835cd9b0f24e046f09bf4abac8a..5eaa3e3625ce662be63c37f1fd2226d9f8a8bbbb 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/NewsFeedHelper.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/NewsFeedHelper.java @@ -4,13 +4,13 @@ import java.text.DateFormat; import java.util.Collections; import java.util.Date; import java.util.List; -import java.util.TimeZone; import net.i2p.I2PAppContext; import net.i2p.app.ClientAppManager; import net.i2p.data.DataHelper; import net.i2p.router.news.NewsEntry; import net.i2p.router.news.NewsManager; +import net.i2p.util.SystemVersion; /** @@ -56,9 +56,7 @@ public class NewsFeedHelper extends HelperBase { if (!entries.isEmpty()) { DateFormat fmt = DateFormat.getDateInstance(DateFormat.SHORT); // the router sets the JVM time zone to UTC but saves the original here so we can get it - String systemTimeZone = ctx.getProperty("i2p.systemTimeZone"); - if (systemTimeZone != null) - fmt.setTimeZone(TimeZone.getTimeZone(systemTimeZone)); + fmt.setTimeZone(SystemVersion.getSystemTimeZone(ctx)); int i = 0; for (NewsEntry entry : entries) { if (i++ < start) diff --git a/apps/routerconsole/java/src/net/i2p/router/web/NewsHelper.java b/apps/routerconsole/java/src/net/i2p/router/web/NewsHelper.java index 5b068f4b1e1d6978b0233dc0f55fddae660d9a99..ee353925a5e9759e3f08cd476ff69fbef5a0acf7 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/NewsHelper.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/NewsHelper.java @@ -99,6 +99,28 @@ public class NewsHelper extends ContentHelper { return mgr.getUpdateConstraint(ROUTER_SIGNED, ""); } + /** + * Translated message about new version available but constrained + * @return null if none + * @since 0.9.23 + */ + public static String unsignedUpdateConstraint() { + ConsoleUpdateManager mgr = ConsoleUpdateManager.getInstance(); + if (mgr == null) return null; + return mgr.getUpdateConstraint(ROUTER_UNSIGNED, ""); + } + + /** + * Translated message about new version available but constrained + * @return null if none + * @since 0.9.23 + */ + public static String devSU3UpdateConstraint() { + ConsoleUpdateManager mgr = ConsoleUpdateManager.getInstance(); + if (mgr == null) return null; + return mgr.getUpdateConstraint(ROUTER_DEV_SU3, ""); + } + /** * Release update only. * Already downloaded but not installed version. diff --git a/apps/routerconsole/java/src/net/i2p/router/web/PluginStarter.java b/apps/routerconsole/java/src/net/i2p/router/web/PluginStarter.java index 608de2aea317e96976d4a3f12cb341acdba3bdb5..2af0d5df46e56c33bcccf93d1afb0a4b3e6e6e9b 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/PluginStarter.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/PluginStarter.java @@ -264,6 +264,7 @@ public class PluginStarter implements Runnable { * @return true on success * @throws just about anything, caller would be wise to catch Throwable */ + @SuppressWarnings("deprecation") public static boolean startPlugin(RouterContext ctx, String appName) throws Exception { Log log = ctx.logManager().getLog(PluginStarter.class); File pluginDir = new File(ctx.getConfigDir(), PLUGIN_DIR + '/' + appName); @@ -344,9 +345,11 @@ public class PluginStarter implements Runnable { if (tfiles != null) { for (int i = 0; i < tfiles.length; i++) { String name = tfiles[i].getName(); - if (tfiles[i].isDirectory() && (!Arrays.asList(STANDARD_THEMES).contains(tfiles[i]))) + if (tfiles[i].isDirectory() && (!Arrays.asList(STANDARD_THEMES).contains(tfiles[i]))) { + // deprecated ctx.router().setConfigSetting(ConfigUIHelper.PROP_THEME_PFX + name, tfiles[i].getAbsolutePath()); // we don't need to save + } } } @@ -420,7 +423,7 @@ public class PluginStarter implements Runnable { addPath(f.toURI().toURL()); log.error("INFO: Adding translation plugin to classpath: " + f); added = true; - } catch (Exception e) { + } catch (RuntimeException e) { log.error("Plugin " + appName + " bad classpath element: " + f, e); } } @@ -543,7 +546,7 @@ public class PluginStarter implements Runnable { boolean deleted = FileUtil.rmdir(pluginDir, false); Properties props = pluginProperties(); - for (Iterator iter = props.keySet().iterator(); iter.hasNext(); ) { + for (Iterator<?> iter = props.keySet().iterator(); iter.hasNext(); ) { String name = (String)iter.next(); if (name.startsWith(PREFIX + appName + '.')) iter.remove(); @@ -958,7 +961,7 @@ public class PluginStarter implements Runnable { urls.add(f.toURI().toURL()); if (log.shouldLog(Log.WARN)) log.warn("INFO: Adding plugin to classpath: " + f); - } catch (Exception e) { + } catch (IOException e) { log.error("Plugin client " + clientName + " bad classpath element: " + f, e); } } @@ -973,7 +976,7 @@ public class PluginStarter implements Runnable { private static void addPath(URL u) throws Exception { URLClassLoader urlClassLoader = (URLClassLoader) ClassLoader.getSystemClassLoader(); Class<URLClassLoader> urlClass = URLClassLoader.class; - Method method = urlClass.getDeclaredMethod("addURL", new Class[]{URL.class}); + Method method = urlClass.getDeclaredMethod("addURL", URL.class); method.setAccessible(true); method.invoke(urlClassLoader, new Object[]{u}); } diff --git a/apps/routerconsole/java/src/net/i2p/router/web/ProfileOrganizerRenderer.java b/apps/routerconsole/java/src/net/i2p/router/web/ProfileOrganizerRenderer.java index 2cb7e311f2cce2a8ee39c654137aea1950d63b8a..b43fd2518012e0f5eae2203005e455dba492e372 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/ProfileOrganizerRenderer.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/ProfileOrganizerRenderer.java @@ -47,7 +47,9 @@ class ProfileOrganizerRenderer { int standard = 0; for (Hash peer : peers) { if (_organizer.getUs().equals(peer)) continue; - PeerProfile prof = _organizer.getProfile(peer); + PeerProfile prof = _organizer.getProfileNonblocking(peer); + if (prof == null) + continue; if (mode == 2) { RouterInfo info = _context.netDb().lookupRouterInfoLocally(peer); if (info != null && info.getCapabilities().indexOf("f") >= 0) @@ -364,6 +366,9 @@ class ProfileOrganizerRenderer { private String formatInterval(long now, long then) { if (then <= 0) return _t(NA); + // avoid 0 or negative + if (now <= then) + return DataHelper.formatDuration2(1); return DataHelper.formatDuration2(now - then); } diff --git a/apps/routerconsole/java/src/net/i2p/router/web/RouterConsoleRunner.java b/apps/routerconsole/java/src/net/i2p/router/web/RouterConsoleRunner.java index 91483b97fc86b3effff4d5e91a5a20aa0be68410..8841073f5f6450133956c22244661b84971d8b94 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/RouterConsoleRunner.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/RouterConsoleRunner.java @@ -299,12 +299,12 @@ public class RouterConsoleRunner implements RouterApp { log.logAlways(net.i2p.util.Log.WARN, s); System.out.println("Warning: " + s); if (noJava7) { - s = "Java 7 will be required by mid-2015, please upgrade soon"; + s = "Java 7 will be required by late 2015, please upgrade soon"; log.logAlways(net.i2p.util.Log.WARN, s); System.out.println("Warning: " + s); } if (noPack200) { - s = "Pack200 will be required by mid-2015, please upgrade Java soon"; + s = "Pack200 will be required by late 2015, please upgrade Java soon"; log.logAlways(net.i2p.util.Log.WARN, s); System.out.println("Warning: " + s); } @@ -630,8 +630,9 @@ public class RouterConsoleRunner implements RouterApp { } } if (error) { + String port = (_listenPort != null) ? _listenPort : ((_sslListenPort != null) ? _sslListenPort : "7657"); System.err.println("WARNING: Error starting one or more listeners of the Router Console server.\n" + - "If your console is still accessible at http://127.0.0.1:" + _listenPort + "/,\n" + + "If your console is still accessible at http://127.0.0.1:" + port + "/,\n" + "this may be a problem only with binding to the IPV6 address ::1.\n" + "If so, you may ignore this error, or remove the\n" + "\"::1,\" in the \"clientApp.0.args\" line of the clients.config file."); diff --git a/apps/routerconsole/java/src/net/i2p/router/web/SearchHelper.java b/apps/routerconsole/java/src/net/i2p/router/web/SearchHelper.java index e04809d6f3a338cc82e239285c8bfb02fae57045..b9e40f95968ea8816647688366ab57e07dfcf3fd 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/SearchHelper.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/SearchHelper.java @@ -43,9 +43,11 @@ public class SearchHelper extends HelperBase { _query = s; } + private static final String SS = Character.toString(S); + private void buildEngineMap() { String config = _context.getProperty(PROP_ENGINES, ENGINES_DEFAULT); - String[] args = config.split("" + S); + String[] args = DataHelper.split(config, SS); for (int i = 0; i < args.length - 1; i += 2) { String name = args[i]; String url = args[i+1]; diff --git a/apps/routerconsole/java/src/net/i2p/router/web/SummaryBarRenderer.java b/apps/routerconsole/java/src/net/i2p/router/web/SummaryBarRenderer.java index 29223c7bf64ccac5ce52cc624891ff0e10f7efcc..07664b2ee4aedb135a154cff463f8540eb5af7f7 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/SummaryBarRenderer.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/SummaryBarRenderer.java @@ -9,7 +9,6 @@ import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; -import java.util.TimeZone; import net.i2p.app.ClientAppManager; import net.i2p.crypto.SigType; @@ -18,6 +17,7 @@ import net.i2p.router.RouterContext; import net.i2p.router.news.NewsEntry; import net.i2p.router.news.NewsManager; import net.i2p.util.PortMapper; +import net.i2p.util.SystemVersion; /** * Refactored from summarynoframe.jsp to save ~100KB @@ -345,6 +345,13 @@ public class SummaryBarRenderer { .append(_t("Warning: ECDSA is not available. Update your Java or OS")) .append("</a></h4>\n"); } + if (!SystemVersion.isJava7()) { + buf.append("<hr><h4>") + .append(_t("Warning: Java version {0} is no longer supported by I2P.", System.getProperty("java.version"))) + .append(' ') + .append(_t("Update Java to version {0} or higher to receive I2P updates.", "7")) + .append("</h4>\n"); + } return buf.toString(); } @@ -626,9 +633,7 @@ public class SummaryBarRenderer { buf.append("<ul>\n"); DateFormat fmt = DateFormat.getDateInstance(DateFormat.SHORT); // the router sets the JVM time zone to UTC but saves the original here so we can get it - String systemTimeZone = _context.getProperty("i2p.systemTimeZone"); - if (systemTimeZone != null) - fmt.setTimeZone(TimeZone.getTimeZone(systemTimeZone)); + fmt.setTimeZone(SystemVersion.getSystemTimeZone(_context)); int i = 0; final int max = 2; for (NewsEntry entry : entries) { @@ -665,6 +670,11 @@ public class SummaryBarRenderer { return Messages.getString(s, _context); } + /** @since 0.9.23 */ + private String _t(String s, Object o) { + return Messages.getString(s, o, _context); + } + /** * Where the translation is to two words or more, * prevent splitting across lines diff --git a/apps/routerconsole/java/src/net/i2p/router/web/SummaryHelper.java b/apps/routerconsole/java/src/net/i2p/router/web/SummaryHelper.java index 88a0e43d95c8136f2717d7efe5a85b76483022e2..75a55709fa03288818877c3f80238a50578d0039 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/SummaryHelper.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/SummaryHelper.java @@ -724,6 +724,8 @@ public class SummaryHelper extends HelperBase { boolean unsignedAvail = unsignedUpdateAvailable(); boolean devSU3Avail = devSU3UpdateAvailable(); String constraint = avail ? NewsHelper.updateConstraint() : null; + String unsignedConstraint = unsignedAvail ? NewsHelper.unsignedUpdateConstraint() : null; + String devSU3Constraint = devSU3Avail ? NewsHelper.devSU3UpdateConstraint() : null; if (avail && constraint != null && !NewsHelper.isUpdateInProgress() && !_context.router().gracefulShutdownInProgress()) { @@ -736,6 +738,30 @@ public class SummaryHelper extends HelperBase { buf.append(constraint).append("</b></h4>"); avail = false; } + if (unsignedAvail && unsignedConstraint != null && + !NewsHelper.isUpdateInProgress() && + !_context.router().gracefulShutdownInProgress()) { + if (needSpace) + buf.append("<hr>"); + else + needSpace = true; + buf.append("<h4><b>").append(_t("Update available")).append(":<br>"); + buf.append(_t("Version {0}", getUnsignedUpdateVersion())).append("<br>"); + buf.append(unsignedConstraint).append("</b></h4>"); + unsignedAvail = false; + } + if (devSU3Avail && devSU3Constraint != null && + !NewsHelper.isUpdateInProgress() && + !_context.router().gracefulShutdownInProgress()) { + if (needSpace) + buf.append("<hr>"); + else + needSpace = true; + buf.append("<h4><b>").append(_t("Update available")).append(":<br>"); + buf.append(_t("Version {0}", getDevSU3UpdateVersion())).append("<br>"); + buf.append(devSU3Constraint).append("</b></h4>"); + devSU3Avail = false; + } if ((avail || unsignedAvail || devSU3Avail) && !NewsHelper.isUpdateInProgress() && !_context.router().gracefulShutdownInProgress() && @@ -835,6 +861,8 @@ public class SummaryHelper extends HelperBase { public void storeNewsHelper(NewsHelper n) { _newshelper = n; } public NewsHelper getNewsHelper() { return _newshelper; } + private static final String SS = Character.toString(S); + public List<String> getSummaryBarSections(String page) { String config = ""; if ("home".equals(page)) { @@ -844,7 +872,7 @@ public class SummaryHelper extends HelperBase { if (config == null) config = _context.getProperty(PROP_SUMMARYBAR + "default", DEFAULT_FULL); } - return Arrays.asList(config.split("" + S)); + return Arrays.asList(DataHelper.split(config, SS)); } static void saveSummaryBarSections(RouterContext ctx, String page, Map<Integer, String> sections) { diff --git a/apps/routerconsole/java/src/net/i2p/router/web/SybilRenderer.java b/apps/routerconsole/java/src/net/i2p/router/web/SybilRenderer.java new file mode 100644 index 0000000000000000000000000000000000000000..2a6fa5c1f1640e293443d71dcca24dd5193202fd --- /dev/null +++ b/apps/routerconsole/java/src/net/i2p/router/web/SybilRenderer.java @@ -0,0 +1,776 @@ +package net.i2p.router.web; + +import java.io.IOException; +import java.io.Serializable; +import java.io.Writer; +import java.math.BigInteger; +import java.text.DecimalFormat; +import java.util.ArrayList; +import java.util.Collections; +import java.util.Comparator; +import java.util.Date; +import java.util.HashMap; +import java.util.List; +import java.util.Locale; +import java.util.Map; +import java.util.Set; + +import net.i2p.data.DataHelper; +import net.i2p.data.Destination; +import net.i2p.data.Hash; +import net.i2p.data.LeaseSet; +import net.i2p.data.router.RouterAddress; +import net.i2p.data.router.RouterInfo; +import net.i2p.data.router.RouterKeyGenerator; +import net.i2p.router.RouterContext; +import net.i2p.router.TunnelPoolSettings; +import net.i2p.router.peermanager.DBHistory; +import net.i2p.router.peermanager.PeerProfile; +import net.i2p.router.tunnel.pool.TunnelPool; +import net.i2p.router.util.HashDistance; +import net.i2p.util.Log; +import net.i2p.util.ObjectCounter; +import net.i2p.util.Translate; +import net.i2p.util.VersionComparator; + +/** + * For debugging only. + * Parts may later move to router as a periodic monitor. + * Adapted from NetDbRenderer. + * + * @since 0.9.24 + * + */ +class SybilRenderer { + + private final RouterContext _context; + + private static final int PAIRMAX = 20; + private static final int MAX = 10; + // multiplied by size - 1, will also get POINTS24 added + private static final double POINTS32 = 5.0; + // multiplied by size - 1, will also get POINTS16 added + private static final double POINTS24 = 5.0; + // multiplied by size - 1 + private static final double POINTS16 = 0.25; + private static final double POINTS_FAMILY = -2.0; + private static final double MIN_CLOSE = 242.0; + private static final double OUR_KEY_FACTOR = 4.0; + private static final double MIN_DISPLAY_POINTS = 3.0; + + public SybilRenderer(RouterContext ctx) { + _context = ctx; + } + + /** + * Entry point + */ + public String getNetDbSummary(Writer out) throws IOException { + renderRouterInfoHTML(out, (String)null); + return ""; + } + + private static class RouterInfoRoutingKeyComparator implements Comparator<RouterInfo>, Serializable { + private final Hash _us; + /** @param us ROUTING KEY */ + public RouterInfoRoutingKeyComparator(Hash us) { + _us = us; + } + public int compare(RouterInfo l, RouterInfo r) { + return HashDistance.getDistance(_us, l.getHash()).compareTo(HashDistance.getDistance(_us, r.getHash())); + } + } + + /** + * A total score and a List of reason Strings + */ + private static class Points implements Comparable<Points> { + private double points; + private final List<String> reasons; + /** @param us ROUTING KEY */ + public Points(double points, String reason) { + this.points = points; + reasons = new ArrayList<String>(4); + reasons.add(reason); + } + public int compareTo(Points r) { + if (points > r.points) + return 1; + if (points < r.points) + return -1; + return 0; + } + } + + private static class PointsComparator implements Comparator<Hash>, Serializable { + private final Map<Hash, Points> _points; + /** @param us ROUTING KEY */ + public PointsComparator(Map<Hash, Points> points) { + _points = points; + } + public int compare(Hash l, Hash r) { + // reverse + return _points.get(r).compareTo(_points.get(l)); + } + } + + private static void addPoints(Map<Hash, Points> points, Hash h, double d, String reason) { + DecimalFormat fmt = new DecimalFormat("#0.00"); + Points dd = points.get(h); + if (dd != null) { + dd.points += d; + dd.reasons.add("<b>" + fmt.format(d) + ":</b> " + reason); + } else { + points.put(h, new Points(d, "<b>" + fmt.format(d) + ":</b> " + reason)); + } + } + + /** + * The whole thing + * + * @param routerPrefix ignored + */ + private void renderRouterInfoHTML(Writer out, String routerPrefix) throws IOException { + Set<Hash> ffs = _context.peerManager().getPeersByCapability('f'); + List<RouterInfo> ris = new ArrayList<RouterInfo>(ffs.size()); + Hash us = _context.routerHash(); + Hash ourRKey = _context.router().getRouterInfo().getRoutingKey(); + for (Hash ff : ffs) { + if (ff.equals(us)) + continue; + RouterInfo ri = _context.netDb().lookupRouterInfoLocally(ff); + if (ri != null) + ris.add(ri); + } + if (ris.isEmpty()) { + out.write("<h3>No known floodfills</h3>"); + return; + } + + StringBuilder buf = new StringBuilder(4*1024); + buf.append("<p><b>This is an experimental network database tool for debugging and analysis. Do not panic even if you see warnings below. " + + "Possible \"threats\" are summarized at the bottom, however these are unlikely to be real threats. " + + "If you see anything you would like to discuss with the devs, contact us on IRC #i2p-dev.</b></p>"); + renderRouterInfo(buf, _context.router().getRouterInfo(), null, true, false); + buf.append("<h3>Known Floodfills: ").append(ris.size()).append("</h3>"); + + double tot = 0; + int count = 200; + byte[] b = new byte[32]; + for (int i = 0; i < count; i++) { + _context.random().nextBytes(b); + Hash h = new Hash(b); + double d = closestDistance(h, ris); + tot += d; + } + DecimalFormat fmt = new DecimalFormat("#0.00"); + double avgMinDist = tot / count; + buf.append("<p>Average closest floodfill distance: " + fmt.format(avgMinDist) + "</p>"); + buf.append("<p>Routing Data: \"").append(DataHelper.getUTF8(_context.routerKeyGenerator().getModData())) + .append("\" Last Changed: ").append(new Date(_context.routerKeyGenerator().getLastChanged())); + buf.append("</p><p>Next Routing Data: \"").append(DataHelper.getUTF8(_context.routerKeyGenerator().getNextModData())) + .append("\" Rotates in: ").append(DataHelper.formatDuration(_context.routerKeyGenerator().getTimeTillMidnight())); + buf.append("</p>"); + + Map<Hash, Points> points = new HashMap<Hash, Points>(64); + + // IP analysis + renderIPGroupsFamily(out, buf, ris, points); + renderIPGroups32(out, buf, ris, points); + renderIPGroups24(out, buf, ris, points); + renderIPGroups16(out, buf, ris, points); + + // Pairwise distance analysis + renderPairDistance(out, buf, ris, points); + + // Distance to our router analysis + buf.append("<h3>Closest Floodfills to Our Routing Key (Where we Store our RI)</h3>"); + renderRouterInfoHTML(out, buf, ourRKey, avgMinDist, ris, points); + RouterKeyGenerator rkgen = _context.routerKeyGenerator(); + Hash nkey = rkgen.getNextRoutingKey(us); + buf.append("<h3>Closest Floodfills to Tomorrow's Routing Key (Where we will Store our RI)</h3>"); + renderRouterInfoHTML(out, buf, nkey, avgMinDist, ris, points); + + buf.append("<h3>Closest Floodfills to Our Router Hash (DHT Neighbors if we are Floodfill)</h3>"); + renderRouterInfoHTML(out, buf, us, avgMinDist, ris, points); + + // Distance to our published destinations analysis + Map<Hash, TunnelPool> clientInboundPools = _context.tunnelManager().getInboundClientPools(); + List<Hash> destinations = new ArrayList<Hash>(clientInboundPools.keySet()); + boolean debug = _context.getBooleanProperty(HelperBase.PROP_ADVANCED); + for (Hash client : destinations) { + boolean isLocal = _context.clientManager().isLocal(client); + if (!isLocal) + continue; + if (! _context.clientManager().shouldPublishLeaseSet(client)) + continue; + LeaseSet ls = _context.netDb().lookupLeaseSetLocally(client); + if (ls == null) + continue; + Hash rkey = ls.getRoutingKey(); + TunnelPool in = clientInboundPools.get(client); + String name = (in != null) ? in.getSettings().getDestinationNickname() : client.toBase64().substring(0,4); + buf.append("<h3>Closest floodfills to the Routing Key for " + DataHelper.escapeHTML(name) + " (where we store our LS)</h3>"); + renderRouterInfoHTML(out, buf, rkey, avgMinDist, ris, points); + nkey = rkgen.getNextRoutingKey(ls.getHash()); + buf.append("<h3>Closest floodfills to Tomorrow's Routing Key for " + DataHelper.escapeHTML(name) + " (where we will store our LS)</h3>"); + renderRouterInfoHTML(out, buf, nkey, avgMinDist, ris, points); + } + + // TODO Profile analysis + + if (!points.isEmpty()) { + List<Hash> warns = new ArrayList<Hash>(points.keySet()); + Collections.sort(warns, new PointsComparator(points)); + buf.append("<h3>Routers with Most Threat Points</h3>"); + for (Hash h : warns) { + RouterInfo ri = _context.netDb().lookupRouterInfoLocally(h); + if (h == null) + continue; + Points pp = points.get(h); + double p = pp.points; + if (p < MIN_DISPLAY_POINTS) + break; // sorted + buf.append("<p><b>Threat Points: " + fmt.format(p) + "</b><ul>"); + for (String s : pp.reasons) { + buf.append("<li>").append(s).append("</li>"); + } + buf.append("</ul></p>"); + renderRouterInfo(buf, ri, null, false, false); + } + } + + out.write(buf.toString()); + out.flush(); + buf.setLength(0); + } + + private static class Pair implements Comparable<Pair> { + public final RouterInfo r1, r2; + public final BigInteger dist; + public Pair(RouterInfo ri1, RouterInfo ri2, BigInteger distance) { + r1 = ri1; r2 = ri2; dist = distance; + } + public int compareTo(Pair p) { + return this.dist.compareTo(p.dist); + } + } + + private void renderPairDistance(Writer out, StringBuilder buf, List<RouterInfo> ris, Map<Hash, Points> points) throws IOException { + int sz = ris.size(); + List<Pair> pairs = new ArrayList<Pair>(PAIRMAX); + double total = 0; + for (int i = 0; i < sz; i++) { + RouterInfo info1 = ris.get(i); + for (int j = i + 1; j < sz; j++) { + RouterInfo info2 = ris.get(j); + BigInteger dist = HashDistance.getDistance(info1.getHash(), info2.getHash()); + if (pairs.isEmpty()) { + pairs.add(new Pair(info1, info2, dist)); + } else if (pairs.size() < PAIRMAX) { + pairs.add(new Pair(info1, info2, dist)); + Collections.sort(pairs); + } else if (dist.compareTo(pairs.get(PAIRMAX - 1).dist) < 0) { + pairs.set(PAIRMAX - 1, new Pair(info1, info2, dist)); + Collections.sort(pairs); + } + total += biLog2(dist); + } + } + + DecimalFormat fmt = new DecimalFormat("#0.00"); + double avg = total / (sz * sz / 2); + buf.append("<h3>Average Floodfill Distance is ").append(fmt.format(avg)).append("</h3>"); + + buf.append("<h3>Closest Floodfill Pairs by Hash</h3>"); + for (Pair p : pairs) { + double distance = biLog2(p.dist); + double point = MIN_CLOSE - distance; + if (point < 0) + break; // sorted; + if (point >= 2) { + // limit display + buf.append("<p><b>Hash Distance: ").append(fmt.format(distance)).append(": </b>"); + buf.append("</p>"); + renderRouterInfo(buf, p.r1, null, false, false); + renderRouterInfo(buf, p.r2, null, false, false); + } + addPoints(points, p.r1.getHash(), point, "Very close (" + fmt.format(distance) + + ") to other floodfill " + p.r2.getHash().toBase64()); + addPoints(points, p.r2.getHash(), point, "Very close (" + fmt.format(distance) + + ") to other floodfill " + p.r1.getHash().toBase64()); + } + out.write(buf.toString()); + out.flush(); + buf.setLength(0); + } + + private double closestDistance(Hash h, List<RouterInfo> ris) throws IOException { + BigInteger min = (new BigInteger("2")).pow(256); + for (RouterInfo info : ris) { + BigInteger dist = HashDistance.getDistance(h, info.getHash()); + if (dist.compareTo(min) < 0) + min = dist; + } + return biLog2(min); + } + + /** v4 only */ + private static byte[] getIP(RouterInfo ri) { + for (RouterAddress ra : ri.getAddresses()) { + byte[] rv = ra.getIP(); + if (rv != null && rv.length == 4) + return rv; + } + return null; + } + + private static class FooComparator implements Comparator<Integer>, Serializable { + private final ObjectCounter<Integer> _o; + public FooComparator(ObjectCounter<Integer> o) { _o = o;} + public int compare(Integer l, Integer r) { + // reverse by count + int rv = _o.count(r) - _o.count(l); + if (rv != 0) + return rv; + // foward by IP + return l.intValue() - r.intValue(); + } + } + + private static class FoofComparator implements Comparator<String>, Serializable { + private final ObjectCounter<String> _o; + public FoofComparator(ObjectCounter<String> o) { _o = o;} + public int compare(String l, String r) { + // reverse by count + int rv = _o.count(r) - _o.count(l); + if (rv != 0) + return rv; + // foward by name + return l.compareTo(r); + } + } + + private void renderIPGroups32(Writer out, StringBuilder buf, List<RouterInfo> ris, Map<Hash, Points> points) throws IOException { + buf.append("<h3>Floodfills with the Same IP</h3>"); + int sz = ris.size(); + ObjectCounter<Integer> oc = new ObjectCounter<Integer>(); + for (RouterInfo info : ris) { + byte[] ip = getIP(info); + if (ip == null) + continue; + Integer x = Integer.valueOf((int) DataHelper.fromLong(ip, 0, 4)); + oc.increment(x); + } + List<Integer> foo = new ArrayList<Integer>(); + for (Integer ii : oc.objects()) { + int count = oc.count(ii); + if (count >= 2) + foo.add(ii); + } + Collections.sort(foo, new FooComparator(oc)); + boolean found = false; + DecimalFormat fmt = new DecimalFormat("#0.00"); + for (Integer ii : foo) { + int count = oc.count(ii); + int i = ii.intValue(); + int i0 = (i >> 24) & 0xff; + int i1 = (i >> 16) & 0xff; + int i2 = (i >> 8) & 0xff; + int i3 = i & 0xff; + buf.append("<p><b>").append(count).append(" floodfills with IP ").append(i0).append('.') + .append(i1).append('.').append(i2).append('.').append(i3) + .append(":</b></p>"); + for (RouterInfo info : ris) { + byte[] ip = getIP(info); + if (ip == null) + continue; + if ((ip[0] & 0xff) != i0) + continue; + if ((ip[1] & 0xff) != i1) + continue; + if ((ip[2] & 0xff) != i2) + continue; + if ((ip[3] & 0xff) != i3) + continue; + found = true; + renderRouterInfo(buf, info, null, false, false); + double point = POINTS32 * (count - 1); + addPoints(points, info.getHash(), point, "Same IP with " + (count - 1) + " other" + (( count > 2) ? "s" : "")); + } + } + if (!found) + buf.append("<p>None</p>"); + out.write(buf.toString()); + out.flush(); + buf.setLength(0); + } + + private void renderIPGroups24(Writer out, StringBuilder buf, List<RouterInfo> ris, Map<Hash, Points> points) throws IOException { + buf.append("<h3>Floodfills in the Same /24 (2 minimum)</h3>"); + int sz = ris.size(); + ObjectCounter<Integer> oc = new ObjectCounter<Integer>(); + for (RouterInfo info : ris) { + byte[] ip = getIP(info); + if (ip == null) + continue; + Integer x = Integer.valueOf((int) DataHelper.fromLong(ip, 0, 3)); + oc.increment(x); + } + List<Integer> foo = new ArrayList<Integer>(); + for (Integer ii : oc.objects()) { + int count = oc.count(ii); + if (count >= 2) + foo.add(ii); + } + Collections.sort(foo, new FooComparator(oc)); + boolean found = false; + DecimalFormat fmt = new DecimalFormat("#0.00"); + for (Integer ii : foo) { + int count = oc.count(ii); + int i = ii.intValue(); + int i0 = i >> 16; + int i1 = (i >> 8) & 0xff; + int i2 = i & 0xff; + buf.append("<p><b>").append(count).append(" floodfills in ").append(i0).append('.') + .append(i1).append('.').append(i2).append(".0/24:</b></p>"); + for (RouterInfo info : ris) { + byte[] ip = getIP(info); + if (ip == null) + continue; + if ((ip[0] & 0xff) != i0) + continue; + if ((ip[1] & 0xff) != i1) + continue; + if ((ip[2] & 0xff) != i2) + continue; + found = true; + renderRouterInfo(buf, info, null, false, false); + double point = POINTS24 * (count - 1); + addPoints(points, info.getHash(), point, "Same /24 IP with " + (count - 1) + " other" + (( count > 2) ? "s" : "")); + } + } + if (!found) + buf.append("<p>None</p>"); + out.write(buf.toString()); + out.flush(); + buf.setLength(0); + } + + private void renderIPGroups16(Writer out, StringBuilder buf, List<RouterInfo> ris, Map<Hash, Points> points) throws IOException { + buf.append("<h3>Floodfills in the Same /16 (4 minimum)</h3>"); + int sz = ris.size(); + ObjectCounter<Integer> oc = new ObjectCounter<Integer>(); + for (RouterInfo info : ris) { + byte[] ip = getIP(info); + if (ip == null) + continue; + Integer x = Integer.valueOf((int) DataHelper.fromLong(ip, 0, 2)); + oc.increment(x); + } + List<Integer> foo = new ArrayList<Integer>(); + for (Integer ii : oc.objects()) { + int count = oc.count(ii); + if (count >= 4) + foo.add(ii); + } + Collections.sort(foo, new FooComparator(oc)); + boolean found = false; + DecimalFormat fmt = new DecimalFormat("#0.00"); + for (Integer ii : foo) { + int count = oc.count(ii); + int i = ii.intValue(); + int i0 = i >> 8; + int i1 = i & 0xff; + buf.append("<p><b>").append(count).append(" floodfills in ").append(i0).append('.') + .append(i1).append(".0.0/16</b></p>"); + for (RouterInfo info : ris) { + byte[] ip = getIP(info); + if (ip == null) + continue; + if ((ip[0] & 0xff) != i0) + continue; + if ((ip[1] & 0xff) != i1) + continue; + found = true; + // limit display + //renderRouterInfo(buf, info, null, false, false); + double point = POINTS16 * (count - 1); + addPoints(points, info.getHash(), point, "Same /16 IP with " + (count - 1) + " other" + (( count > 2) ? "s" : "")); + } + } + if (!found) + buf.append("<p>None</p>"); + out.write(buf.toString()); + out.flush(); + buf.setLength(0); + } + + private void renderIPGroupsFamily(Writer out, StringBuilder buf, List<RouterInfo> ris, Map<Hash, Points> points) throws IOException { + buf.append("<h3>Floodfills in the Same Declared Family</h3>"); + int sz = ris.size(); + ObjectCounter<String> oc = new ObjectCounter<String>(); + for (RouterInfo info : ris) { + String fam = info.getOption("family"); + if (fam == null) + continue; + oc.increment(fam); + } + List<String> foo = new ArrayList<String>(oc.objects()); + Collections.sort(foo, new FoofComparator(oc)); + boolean found = false; + DecimalFormat fmt = new DecimalFormat("#0.00"); + for (String s : foo) { + int count = oc.count(s); + buf.append("<p><b>").append(count).append(" floodfills in declared family \"").append(DataHelper.escapeHTML(s) + '"') + .append("</b></p>"); + for (RouterInfo info : ris) { + String fam = info.getOption("family"); + if (fam == null) + continue; + if (!fam.equals(s)) + continue; + found = true; + // limit display + //renderRouterInfo(buf, info, null, false, false); + double point = POINTS_FAMILY; + if (count > 1) + addPoints(points, info.getHash(), point, "Same declared family \"" + DataHelper.escapeHTML(s) + "\" with " + (count - 1) + " other" + (( count > 2) ? "s" : "")); + else + addPoints(points, info.getHash(), point, "Declared family \"" + DataHelper.escapeHTML(s) + '"'); + } + } + if (!found) + buf.append("<p>None</p>"); + out.write(buf.toString()); + out.flush(); + buf.setLength(0); + } + + private void renderRouterInfoHTML(Writer out, StringBuilder buf, Hash us, double avgMinDist, + List<RouterInfo> ris, Map<Hash, Points> points) throws IOException { + Collections.sort(ris, new RouterInfoRoutingKeyComparator(us)); + double min = 256; + double max = 0; + double tot = 0; + double median = 0; + int count = Math.min(MAX, ris.size()); + boolean isEven = (count % 2) == 0; + int medIdx = isEven ? (count / 2) - 1 : (count / 2); + DecimalFormat fmt = new DecimalFormat("#0.00"); + for (int i = 0; i < count; i++) { + RouterInfo ri = ris.get(i); + double dist = renderRouterInfo(buf, ri, us, false, false); + if (dist < avgMinDist) { + if (i == 0) { + //buf.append("<p><b>Not to worry, but above router is closer than average minimum distance " + fmt.format(avgMinDist) + "</b></p>"); + } else if (i == 1) { + buf.append("<p><b>Not to worry, but above routers are closer than average minimum distance " + fmt.format(avgMinDist) + "</b></p>"); + } else if (i == 2) { + buf.append("<p><b>Possible Sybil Warning - above routers are closer than average minimum distance " + fmt.format(avgMinDist) + "</b></p>"); + } else { + buf.append("<p><b>Major Sybil Warning - above router is closer than average minimum distance " + fmt.format(avgMinDist) + "</b></p>"); + } + } + // this is dumb because they are already sorted + if (dist < min) + min = dist; + if (dist > max) + max = dist; + tot += dist; + if (i == medIdx) + median = dist; + else if (i == medIdx + 1 && isEven) + median = (median + dist) / 2; + double point = MIN_CLOSE - dist; + if (point > 0) { + point *= OUR_KEY_FACTOR; + addPoints(points, ri.getHash(), point, "Very close (" + fmt.format(dist) + ") to our key " + us.toBase64()); + } + if (i >= MAX - 1) + break; + } + double avg = tot / count; + buf.append("<p><b>Totals for " + count + " floodfills: </b>MIN=" + fmt.format(min) + " AVG=" + fmt.format(avg) + " MEDIAN=" + fmt.format(median) + " MAX=" + fmt.format(max) + "</p>\n"); + out.write(buf.toString()); + out.flush(); + buf.setLength(0); + } + + /** + * For debugging + * http://forums.sun.com/thread.jspa?threadID=597652 + * @since 0.7.14 + */ + private static double biLog2(BigInteger a) { + return NetDbRenderer.biLog2(a); + } + + /** + * Countries now in a separate bundle + * @param code two-letter country code + * @since 0.9.9 + */ + private String getTranslatedCountry(String code) { + String name = _context.commSystem().getCountryName(code); + return Translate.getString(name, _context, Messages.COUNTRY_BUNDLE_NAME); + } + + /** + * Be careful to use stripHTML for any displayed routerInfo data + * to prevent vulnerabilities + * + * @param us ROUTING KEY or null + * @param full ignored + * @return distance to us if non-null, else 0 + */ + private double renderRouterInfo(StringBuilder buf, RouterInfo info, Hash us, boolean isUs, boolean full) { + String hash = info.getIdentity().getHash().toBase64(); + buf.append("<table><tr><th><a name=\"").append(hash.substring(0, 6)).append("\" ></a>"); + double distance = 0; + if (isUs) { + buf.append("<a name=\"our-info\" ></a><b>" + _t("Our info") + ": ").append(hash).append("</b></th></tr><tr><td>\n"); + } else { + buf.append("<b>" + _t("Router") + ":</b> ").append(hash).append("\n"); + if (!full) { + buf.append("[<a href=\"netdb?r=").append(hash.substring(0, 6)).append("\" >").append(_t("Full entry")).append("</a>]"); + } + buf.append("</th></tr><tr><td>\n"); + if (us != null) { + DecimalFormat fmt = new DecimalFormat("#0.00"); + BigInteger dist = HashDistance.getDistance(us, info.getHash()); + distance = biLog2(dist); + buf.append("<b>Hash Distance: ").append(fmt.format(distance)).append("</b><br>"); + } + } + buf.append("<b>Routing Key: </b>").append(info.getRoutingKey().toBase64()).append("<br>\n"); + buf.append("<b>Version: </b>").append(DataHelper.stripHTML(info.getVersion())).append("<br>\n"); + buf.append("<b>Caps: </b>").append(DataHelper.stripHTML(info.getCapabilities())).append("<br>\n"); + String fam = info.getOption("family"); + if (fam != null) + buf.append("<b>Family: </b>").append(DataHelper.stripHTML(fam)).append("<br>\n"); + String kls = info.getOption("netdb.knownLeaseSets"); + if (kls != null) + buf.append("<b>Lease Sets: </b>").append(DataHelper.stripHTML(kls)).append("<br>\n"); + String kr = info.getOption("netdb.knownRouters"); + if (kr != null) + buf.append("<b>Routers: </b>").append(DataHelper.stripHTML(kr)).append("<br>\n"); + + long now = _context.clock().now(); + if (!isUs) { + PeerProfile prof = _context.profileOrganizer().getProfileNonblocking(info.getHash()); + if (prof != null) { + long heard = prof.getFirstHeardAbout(); + if (heard > 0) { + long age = Math.max(now - heard, 1); + buf.append("<b>First heard about:</b> ") + .append(_t("{0} ago", DataHelper.formatDuration2(age))).append("<br>\n"); + } + heard = prof.getLastHeardAbout(); + if (heard > 0) { + long age = Math.max(now - heard, 1); + buf.append("<b>Last heard about:</b> ") + .append(_t("{0} ago", DataHelper.formatDuration2(age))).append("<br>\n"); + } + heard = prof.getLastHeardFrom(); + if (heard > 0) { + long age = Math.max(now - heard, 1); + buf.append("<b>Last heard from:</b> ") + .append(_t("{0} ago", DataHelper.formatDuration2(age))).append("<br>\n"); + } + DBHistory dbh = prof.getDBHistory(); + if (dbh != null) { + heard = dbh.getLastLookupSuccessful(); + if (heard > 0) { + long age = Math.max(now - heard, 1); + buf.append("<b>Last lookup successful:</b> ") + .append(_t("{0} ago", DataHelper.formatDuration2(age))).append("<br>\n"); + } + heard = dbh.getLastLookupFailed(); + if (heard > 0) { + long age = Math.max(now - heard, 1); + buf.append("<b>Last lookup failed:</b> ") + .append(_t("{0} ago", DataHelper.formatDuration2(age))).append("<br>\n"); + } + heard = dbh.getLastStoreSuccessful(); + if (heard > 0) { + long age = Math.max(now - heard, 1); + buf.append("<b>Last store successful:</b> ") + .append(_t("{0} ago", DataHelper.formatDuration2(age))).append("<br>\n"); + } + heard = dbh.getLastStoreFailed(); + if (heard > 0) { + long age = Math.max(now - heard, 1); + buf.append("<b>Last store failed:</b> ") + .append(_t("{0} ago", DataHelper.formatDuration2(age))).append("<br>\n"); + } + } + // any other profile stuff? + } + } + long age = Math.max(now - info.getPublished(), 1); + if (isUs && _context.router().isHidden()) { + buf.append("<b>").append(_t("Hidden")).append(", ").append(_t("Updated")).append(":</b> ") + .append(_t("{0} ago", DataHelper.formatDuration2(age))).append("<br>\n"); + } else { + buf.append("<b>").append(_t("Published")).append(":</b> ") + .append(_t("{0} ago", DataHelper.formatDuration2(age))).append("<br>\n"); + } + buf.append("<b>").append(_t("Signing Key")).append(":</b> ") + .append(info.getIdentity().getSigningPublicKey().getType().toString()); + buf.append("<br>\n<b>" + _t("Addresses") + ":</b> "); + String country = _context.commSystem().getCountry(info.getIdentity().getHash()); + if(country != null) { + buf.append("<img height=\"11\" width=\"16\" alt=\"").append(country.toUpperCase(Locale.US)).append('\"'); + buf.append(" title=\"").append(getTranslatedCountry(country)).append('\"'); + buf.append(" src=\"/flags.jsp?c=").append(country).append("\"> "); + } + for (RouterAddress addr : info.getAddresses()) { + String style = addr.getTransportStyle(); + buf.append("<b>").append(DataHelper.stripHTML(style)).append(":</b> "); + Map<Object, Object> p = addr.getOptionsMap(); + for (Map.Entry<Object, Object> e : p.entrySet()) { + String name = (String) e.getKey(); + if (name.equals("key") || name.startsWith("ikey") || name.startsWith("itag") || + name.startsWith("iport") || name.equals("mtu")) + continue; + String val = (String) e.getValue(); + buf.append('[').append(_t(DataHelper.stripHTML(name))).append('='); + if (name.equals("host")) + buf.append("<b>"); + buf.append(DataHelper.stripHTML(val)).append("] "); + if (name.equals("host")) + buf.append("</b>"); + } + } + buf.append("</td></tr>\n"); + buf.append("</table>\n"); + return distance; + } + + /** translate a string */ + private String _t(String s) { + return Messages.getString(s, _context); + } + + /** tag only */ + private static final String _x(String s) { + return s; + } + + /** + * translate a string with a parameter + * This is a lot more expensive than _t(s), so use sparingly. + * + * @param s string to be translated containing {0} + * The {0} will be replaced by the parameter. + * Single quotes must be doubled, i.e. ' -> '' in the string. + * @param o parameter, not translated. + * To translate parameter also, use _t("foo {0} bar", _t("baz")) + * Do not double the single quotes in the parameter. + * Use autoboxing to call with ints, longs, floats, etc. + */ + private String _t(String s, Object o) { + return Messages.getString(s, o, _context); + } +} 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 aab84c630b4cbd671d381c2352efd260a324f7d4..8717230621e863b1aae88de0d235a2059f938404 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/TunnelRenderer.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/TunnelRenderer.java @@ -46,12 +46,10 @@ public class TunnelRenderer { boolean isLocal = _context.clientManager().isLocal(client); if ((!isLocal) && (!debug)) continue; - TunnelPool in = null; - TunnelPool outPool = null; - in = clientInboundPools.get(client); - outPool = clientOutboundPools.get(client); + TunnelPool in = clientInboundPools.get(client); + TunnelPool outPool = clientOutboundPools.get(client); // TODO the following code is duplicated in SummaryHelper - String name = (in != null ? in.getSettings().getDestinationNickname() : null); + String name = (in != null) ? in.getSettings().getDestinationNickname() : null; if ( (name == null) && (outPool != null) ) name = outPool.getSettings().getDestinationNickname(); if (name == null) @@ -81,12 +79,13 @@ public class TunnelRenderer { int displayed = 0; for (int i = 0; i < participating.size(); i++) { HopConfig cfg = participating.get(i); - long count = cfg.getProcessedMessagesCount(); + int count = cfg.getProcessedMessagesCount(); if (count <= 0) { inactive++; continue; } - processed += count; + // everything that isn't 'recent' is already in the tunnel.participatingMessageCount stat + processed += cfg.getRecentMessagesCount(); if (++displayed > DISPLAY_LIMIT) continue; out.write("<tr>"); @@ -111,13 +110,13 @@ public class TunnelRenderer { out.write("<td class=\"cells\" align=\"center\">" + DataHelper.formatDuration2(timeLeft) + "</td>"); else out.write("<td class=\"cells\" align=\"center\">(" + _t("grace period") + ")</td>"); - out.write("<td class=\"cells\" align=\"center\">" + cfg.getProcessedMessagesCount() + " KB</td>"); + out.write("<td class=\"cells\" align=\"center\">" + count + " KB</td>"); int lifetime = (int) ((_context.clock().now() - cfg.getCreation()) / 1000); if (lifetime <= 0) lifetime = 1; if (lifetime > 10*60) lifetime = 10*60; - int bps = 1024 * cfg.getProcessedMessagesCount() / lifetime; + int bps = 1024 * count / lifetime; out.write("<td class=\"cells\" align=\"center\">" + bps + " Bps</td>"); if (cfg.getSendTo() == null) out.write("<td class=\"cells\" align=\"center\">" + _t("Outbound Endpoint") + "</td>"); @@ -188,7 +187,8 @@ public class TunnelRenderer { else out.write("<tr> <td class=\"cells\" align=\"center\"><img src=\"/themes/console/images/outbound.png\" alt=\"Outbound\" title=\"Outbound\"></td>"); out.write(" <td class=\"cells\" align=\"center\">" + DataHelper.formatDuration2(timeLeft) + "</td>\n"); - out.write(" <td class=\"cells\" align=\"center\">" + info.getProcessedMessagesCount() + " KB</td>\n"); + int count = info.getProcessedMessagesCount(); + out.write(" <td class=\"cells\" align=\"center\">" + count + " KB</td>\n"); for (int j = 0; j < info.getLength(); j++) { Hash peer = info.getPeer(j); TunnelId id = (info.isInbound() ? info.getReceiveTunnelId(j) : info.getSendTunnelId(j)); @@ -206,20 +206,22 @@ public class TunnelRenderer { out.write("</tr>\n"); if (info.isInbound()) - processedIn += info.getProcessedMessagesCount(); + processedIn += count; else - processedOut += info.getProcessedMessagesCount(); + processedOut += count; } out.write("</table>\n"); if (in != null) { - List pending = in.listPending(); + // PooledTunnelCreatorConfig + List<?> pending = in.listPending(); if (!pending.isEmpty()) { out.write("<div class=\"statusnotes\"><center><b>" + _t("Build in progress") + ": " + pending.size() + " " + _t("inbound") + "</b></center></div>\n"); live += pending.size(); } } if (outPool != null) { - List pending = outPool.listPending(); + // PooledTunnelCreatorConfig + List<?> pending = outPool.listPending(); if (!pending.isEmpty()) { out.write("<div class=\"statusnotes\"><center><b>" + _t("Build in progress") + ": " + pending.size() + " " + _t("outbound") + "</b></center></div>\n"); live += pending.size(); diff --git a/apps/routerconsole/java/src/net/i2p/router/web/UpdateHandler.java b/apps/routerconsole/java/src/net/i2p/router/web/UpdateHandler.java index e1e2edc538056dcccbd2caca75f8843b0803d8e9..de13a6112e6adfcf87f1fa067ed9d534e14449f8 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/UpdateHandler.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/UpdateHandler.java @@ -84,7 +84,8 @@ public class UpdateHandler { } else if (ConfigUpdateHandler.USE_SU3_UPDATE) { update(ROUTER_SIGNED_SU3); } else { - update(ROUTER_SIGNED); + // disabled, shouldn't get here + //update(ROUTER_SIGNED); } } } diff --git a/apps/routerconsole/jsp/configui.jsp b/apps/routerconsole/jsp/configui.jsp index 73d0ec565d4dcac19e420ef38b2166de8fd5a5be..96f7bf84cd73be6099a71b4b77bc180966639bc9 100644 --- a/apps/routerconsole/jsp/configui.jsp +++ b/apps/routerconsole/jsp/configui.jsp @@ -31,7 +31,7 @@ input.default { <%@include file="formhandler.jsi" %> <div class="configure"><div class="topshimten"><h3><%=uihelper._t("Router Console Theme")%></h3></div> <form action="" method="POST"> - <input type="hidden" name="consoleNonce" value="<%=intl.getNonce()%>" > + <input type="hidden" name="consoleNonce" value="<%=net.i2p.router.web.CSSHelper.getNonce()%>" > <input type="hidden" name="nonce" value="<%=pageNonce%>" > <input type="hidden" name="action" value="blah" > <% diff --git a/apps/routerconsole/jsp/console.jsp b/apps/routerconsole/jsp/console.jsp index 1cff1e369e0a2939a3fd6dddb9dce2f808cba80e..c61025795e39d2682706aec63def0e384c202349 100644 --- a/apps/routerconsole/jsp/console.jsp +++ b/apps/routerconsole/jsp/console.jsp @@ -10,7 +10,7 @@ <%@include file="summaryajax.jsi" %> </head><body onload="initAjax()"> <% - String consoleNonce = intl.getNonce(); + String consoleNonce = net.i2p.router.web.CSSHelper.getNonce(); %> <%@include file="summary.jsi" %> diff --git a/apps/routerconsole/jsp/css.jsi b/apps/routerconsole/jsp/css.jsi index 50c70d875c1ccfeb115de598c46fc5a45e1f0bcf..edae862400f786e0f7c9dc343efc9edf9f900ed0 100644 --- a/apps/routerconsole/jsp/css.jsi +++ b/apps/routerconsole/jsp/css.jsi @@ -37,7 +37,7 @@ } String conNonceParam = request.getParameter("consoleNonce"); - if (intl.getNonce().equals(conNonceParam)) { + if (net.i2p.router.web.CSSHelper.getNonce().equals(conNonceParam)) { intl.setLang(request.getParameter("lang")); intl.setNews(request.getParameter("news")); } diff --git a/apps/routerconsole/jsp/home.jsp b/apps/routerconsole/jsp/home.jsp index ec00c6b087e61e0c7a6d7ab79292c73df8dafc83..eb9887e97707403aa66ede34b4fdc00a459afc49 100644 --- a/apps/routerconsole/jsp/home.jsp +++ b/apps/routerconsole/jsp/home.jsp @@ -8,7 +8,7 @@ <%@include file="summaryajax.jsi" %> </head><body onload="initAjax()"> <% - String consoleNonce = intl.getNonce(); + String consoleNonce = net.i2p.router.web.CSSHelper.getNonce(); %> <jsp:useBean class="net.i2p.router.web.NewsHelper" id="newshelper" scope="request" /> <jsp:setProperty name="newshelper" property="contextId" value="<%=(String)session.getAttribute(\"i2p.contextId\")%>" /> diff --git a/apps/routerconsole/jsp/summaryframe.jsp b/apps/routerconsole/jsp/summaryframe.jsp index 3107bb96a901f5b49258c05906d549c96fea0b78..290e370432546418e7562ab43b7ee71c7d576a5c 100644 --- a/apps/routerconsole/jsp/summaryframe.jsp +++ b/apps/routerconsole/jsp/summaryframe.jsp @@ -23,7 +23,7 @@ if (!shutdownSoon) { if (d == null || "".equals(d)) { // set below - } else if (intl.getNonce().equals(conNonceParam)) { + } else if (net.i2p.router.web.CSSHelper.getNonce().equals(conNonceParam)) { d = net.i2p.data.DataHelper.stripHTML(d); // XSS intl.setRefresh(d); intl.setDisableRefresh(d); diff --git a/apps/routerconsole/locale-countries/messages_el.po b/apps/routerconsole/locale-countries/messages_el.po index ba53ec6b87edd8cf649d0390d091b1e77ffec64a..8a40ff97644addfe33f5b59c880a4e11c67d4d09 100644 --- a/apps/routerconsole/locale-countries/messages_el.po +++ b/apps/routerconsole/locale-countries/messages_el.po @@ -5,16 +5,17 @@ # # Translators: # Alex <hestia@riseup.net>, 2012 +# LaScapigliata <ditri2000@hotmail.com>, 2015 # Alex <hestia@riseup.net>, 2012 # lixtetrax <lixtetrax@grhack.net>, 2012 msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:08+0000\n" -"PO-Revision-Date: 2015-07-17 01:31+0000\n" -"Last-Translator: kytv <killyourtv@i2pmail.org>\n" -"Language-Team: Greek (http://www.transifex.com/projects/p/I2P/language/el/)\n" +"POT-Creation-Date: 2015-07-17 01:33+0000\n" +"PO-Revision-Date: 2015-11-05 23:37+0000\n" +"Last-Translator: LaScapigliata <ditri2000@hotmail.com>\n" +"Language-Team: Greek (http://www.transifex.com/otf/I2P/language/el/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -193,7 +194,7 @@ msgid "Curaçao" msgstr "" msgid "Christmas Island" -msgstr "Îησιά των ΧÏιστουγÎννων" +msgstr "Îήσος των ΧÏιστουγÎννων" msgid "Cyprus" msgstr "ΚÏÏ€Ïος" @@ -217,7 +218,7 @@ msgid "Dominican Republic" msgstr "Δομινικανή ΔημοκÏατία" msgid "Algeria" -msgstr "ΑλγεÏια" +msgstr "ΑλγεÏία" msgid "Ecuador" msgstr "ΙσημεÏινός" @@ -328,7 +329,7 @@ msgid "Croatia" msgstr "ΚÏοατία" msgid "Haiti" -msgstr "Αιτή" +msgstr "Αϊτή" msgid "Hungary" msgstr "ΟυγγαÏία" @@ -355,7 +356,7 @@ msgid "Iraq" msgstr "ΙÏάκ" msgid "Iran" -msgstr "" +msgstr "ΙÏάν" msgid "Iceland" msgstr "Ισλανδία" @@ -394,7 +395,7 @@ msgid "Saint Kitts and Nevis" msgstr "Αγιος Κιτς και Îεβί" msgid "North Korea" -msgstr "" +msgstr "Î’ÏŒÏεια ΚοÏÎα" msgid "Republic of Korea" msgstr "ΔημοκÏατία της ΚοÏÎας" @@ -448,7 +449,7 @@ msgid "Monaco" msgstr "Μονακό" msgid "Moldova" -msgstr "" +msgstr "Μολδαβία" msgid "Montenegro" msgstr "ΜαυÏοβοÏνιο" @@ -475,7 +476,7 @@ msgid "Mongolia" msgstr "Μογγολία" msgid "Macau" -msgstr "" +msgstr "Μακάο" msgid "Northern Mariana Islands" msgstr "Northern Mariana Islands" diff --git a/apps/routerconsole/locale-news/messages_sv.po b/apps/routerconsole/locale-news/messages_sv.po index dc80a0e5d7625c80f2a6f09700873594706af4e5..5be53f16de87a0f6cef3161c310d801cfac544f9 100644 --- a/apps/routerconsole/locale-news/messages_sv.po +++ b/apps/routerconsole/locale-news/messages_sv.po @@ -15,7 +15,7 @@ msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2013-07-13 21:46+0000\n" -"PO-Revision-Date: 2015-08-26 06:24+0000\n" +"PO-Revision-Date: 2015-11-08 21:30+0000\n" "Last-Translator: Anders Nilsson <locally@devode.se>\n" "Language-Team: Swedish (Sweden) (http://www.transifex.com/otf/I2P/language/sv_SE/)\n" "MIME-Version: 1.0\n" @@ -32,7 +32,7 @@ msgstr "Välkommen till I2P!" #, java-format msgid "Please {0}have patience{1} as I2P boots up and finds peers." -msgstr "{0}Ha tÃ¥lamod{1} medan I2P startar upp och letar upp peers." +msgstr "Vänligen {0}ha tÃ¥lamod{1} medan I2P startar och letar upp noder." #, java-format msgid "" diff --git a/apps/routerconsole/locale/messages_ar.po b/apps/routerconsole/locale/messages_ar.po index 8ff6cae97f1d52f2aff3b60c2fb9ac40bed62a67..555e8f1d507c969904b973d5d0801f3a879942e7 100644 --- a/apps/routerconsole/locale/messages_ar.po +++ b/apps/routerconsole/locale/messages_ar.po @@ -12,10 +12,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:05+0000\n" -"PO-Revision-Date: 2015-07-17 01:31+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-05 17:17+0000\n" "Last-Translator: kytv <killyourtv@i2pmail.org>\n" -"Language-Team: Arabic (http://www.transifex.com/projects/p/I2P/language/ar/)\n" +"Language-Team: Arabic (http://www.transifex.com/otf/I2P/language/ar/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -166,19 +166,22 @@ msgid "IPs Permanently Banned" msgstr "" #: ../../../router/java/src/net/i2p/router/Blocklist.java:959 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "From" msgstr "من" #: ../../../router/java/src/net/i2p/router/Blocklist.java:961 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "To" msgstr "إلى" #: ../../../router/java/src/net/i2p/router/Blocklist.java:997 #: ../java/src/net/i2p/router/web/BanlistRenderer.java:48 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:652 +#: ../java/src/net/i2p/router/web/CertHelper.java:77 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:147 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:662 #: ../java/src/net/i2p/router/web/SummaryHelper.java:478 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:137 msgid "none" msgstr "ﻻشيئ" @@ -316,17 +319,17 @@ msgstr "جاري التوقيÙ" msgid "Rejecting tunnels" msgstr "Ø±ÙØ¶ Ø§Ù„Ø£Ù†ÙØ§Ù‚" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:212 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:210 #, java-format msgid "Reseeding: got router info from file ({0} successful, {1} errors)." msgstr "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:284 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:282 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:28 msgid "Reseeding" msgstr "اعادة التوزيع" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:307 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:305 #, java-format msgid "Reseed fetched only 1 router." msgid_plural "Reseed fetched only {0} routers." @@ -337,26 +340,26 @@ msgstr[3] "" msgstr[4] "" msgstr[5] "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:314 msgid "Reseed failed." msgstr "ÙØ´Ù„ اعادة التوزيع" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:317 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:315 #, java-format msgid "See {0} for help." msgstr "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:318 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 msgid "reseed configuration page" msgstr "تم ØÙظ اعدادات اعادة التوزيع" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:566 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:697 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:564 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:695 msgid "Reseeding: fetching seed URL." msgstr "اعادة التوزيع: تØÙ…يل العنوان" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:623 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:733 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:621 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:731 #, java-format msgid "" "Reseeding: fetching router info from seed URL ({0} successful, {1} errors)." @@ -421,12 +424,12 @@ msgid "Unreachable on any transport" msgstr "صعب الوصول بأية وسيلة" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:674 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:566 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:577 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:604 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:622 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1348 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2469 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2474 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:92 msgid "Status" msgstr "Ø§Ù„ØØ§Ù„Ø©" @@ -441,12 +444,12 @@ msgid "{0} is used for outbound connections only" msgstr "{0} مستعملة للاتصال الخارجي Ùقط" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:711 -#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:283 +#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:295 msgid "UPnP is not enabled" msgstr "" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:720 -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:167 msgid "Help" msgstr "مساعدة" @@ -470,7 +473,7 @@ msgstr "التعاريÙ" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:726 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1352 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2473 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:24 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:33 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:35 @@ -485,7 +488,7 @@ msgstr "النظير البعيد" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:727 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1353 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Dir" msgstr "" @@ -512,14 +515,14 @@ msgstr "مدة تلقى / بعث ØØ²Ù…Ø© " #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:735 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1355 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2479 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 msgid "Idle" msgstr "خامل" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:736 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1356 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "In/Out" msgstr "داخل/خارج" @@ -533,14 +536,14 @@ msgstr "مدة استمرار هذا الاتصال" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:737 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1357 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:935 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2494 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:961 msgid "Up" msgstr "Ùوق" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:738 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1358 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2491 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2496 msgid "Skew" msgstr "Ø§Ù„Ø§Ù†ØØ±Ø§Ù" @@ -589,7 +592,7 @@ msgstr "Ø§Ù„ØØ¯ الأقصى Ø§Ù„ØØ§Ù„ÙŠ إرسال ØØ¬Ù… Ø§Ù„ØØ²Ù…Ø©" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:748 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1359 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2508 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 msgid "TX" msgstr "" @@ -599,7 +602,7 @@ msgstr "العدد الاجمالي Ù„Ù„ØØ²Ù… المرسلة الى المست #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:749 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1360 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2510 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 msgid "RX" msgstr "" @@ -608,7 +611,7 @@ msgid "The total number of packets received from the peer" msgstr "العدد الاجمالي Ù„Ù„ØØ²Ù… المستقبلة" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:750 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2518 msgid "Dup TX" msgstr "" @@ -617,7 +620,7 @@ msgid "The total number of packets retransmitted to the peer" msgstr "العدد الاجمالي Ù„Ù„ØØ²Ù… المرسلة الى النظائر" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:751 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2520 msgid "Dup RX" msgstr "" @@ -625,104 +628,104 @@ msgstr "" msgid "The total number of duplicate packets received from the peer" msgstr "إجمالي عدد Ø§Ù„ØØ²Ù… المكررة الواردة من الزملاء" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:560 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:561 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 msgid "Service" msgstr "خدمة" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:564 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 msgid "WAN Common Interface Configuration" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:567 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:587 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:614 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:568 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:588 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:615 msgid "Type" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:569 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:589 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:570 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:590 msgid "Upstream" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:571 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:591 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:572 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:592 msgid "Downstream" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:575 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 msgid "WAN PPP Connection" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:583 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:610 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:288 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:314 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:584 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:611 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:295 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:321 msgid "Uptime" msgstr "مدة الاشتغال" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:593 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:616 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:594 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:617 msgid "External IP" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:597 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 msgid "Layer 3 Forwarding" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:599 msgid "Default Connection Service" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:602 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 msgid "WAN IP Connection" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:620 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 msgid "WAN Ethernet Link Configuration" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:641 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:642 msgid "Found Device" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:643 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:644 msgid "Subdevice" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:664 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:665 msgid "UPnP Status" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:668 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:669 msgid "Disabled UPnP Devices" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:682 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:683 msgid "" "UPnP has been disabled; Do you have more than one UPnP Internet Gateway " "Device on your LAN ?" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:685 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:686 msgid "UPnP has not found any UPnP-aware, compatible device on your LAN." msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:693 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:694 #, java-format msgid "The current external IP address reported by UPnP is {0}" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:695 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:696 msgid "The current external IP address is not available." msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:699 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:700 #, java-format msgid "UPnP reports the maximum downstream bit rate is {0}bits/sec" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:701 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:702 #, java-format msgid "UPnP reports the maximum upstream bit rate is {0}bits/sec" msgstr "" @@ -731,12 +734,12 @@ msgstr "" #. {1,number,#####} prevents 12345 from being output as 12,345 in the English #. locale. #. If you want the digit separator in your locale, translate as {1}. -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:709 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:710 #, java-format msgid "{0} port {1,number,#####} was successfully forwarded by UPnP." msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:711 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:712 #, java-format msgid "{0} port {1,number,#####} was not forwarded by UPnP." msgstr "" @@ -752,17 +755,17 @@ msgid "NTCP connections" msgstr "اتصال NTCP" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1345 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2466 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2471 msgid "Limit" msgstr "ØØ¯" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1346 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2467 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2472 msgid "Timeout" msgstr "انتهى الوقت" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1354 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2483 msgid "IPv6" msgstr "" @@ -775,19 +778,19 @@ msgid "Backlogged?" msgstr "السجلات" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1375 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2532 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2537 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Inbound" msgstr "الداخل" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1377 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2534 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2539 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Outbound" msgstr "الخارج" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1432 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2699 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2704 #, java-format msgid "{0} peer" msgid_plural "{0} peers" @@ -798,107 +801,107 @@ msgstr[3] "" msgstr[4] "" msgstr[5] "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2465 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2470 msgid "UDP connections" msgstr "اتصال UDP" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2475 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 msgid "Sort by peer hash" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Direction/Introduction" msgstr "اتجاه/تقديم" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 msgid "Sort by idle inbound" msgstr "ØØ³Ø¨ الاتصاب الوارد" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 msgid "Sort by idle outbound" msgstr "ØØ³Ø¨ الاتصال الخارج" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 msgid "Sort by inbound rate" msgstr "ØØ³Ø¨ معدل الداخل" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 msgid "Sort by outbound rate" msgstr "ØØ³Ø¨ معدل الصادرة" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 msgid "Sort by connection uptime" msgstr "ØØ³Ø¨ مدة الاتصال" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 msgid "Sort by clock skew" msgstr "ØØ³Ø¨ Ø§Ù†ØØ±Ø§Ù الساعة" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 msgid "Sort by congestion window" msgstr "ØØ³Ø¨ Ù†Ø§ÙØ°Ø© Ø§Ù„Ø§Ø²Ø¯ØØ§Ù…" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2502 msgid "Sort by slow start threshold" msgstr "ØØ³Ø¨ مدة الانطلاق" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2505 msgid "Sort by round trip time" msgstr "ØØ³Ø¨ الوقت ذهابا وإيابا" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2504 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 msgid "Sort by retransmission timeout" msgstr "ØØ³Ø¨ مهلة إعادة الإرسال" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2507 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2512 msgid "Sort by outbound maximum transmit unit" msgstr "ØØ³Ø¨ أقصى مدة" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 msgid "Sort by packets sent" msgstr "ØØ³Ø¨ Ø§Ù„ØØ²Ù… المرسلة" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2511 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 msgid "Sort by packets received" msgstr "ØØ³Ø¨ Ø§Ù„ØØ²Ù… المستقبلة" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2519 msgid "Sort by packets retransmitted" msgstr "ØØ³Ø¨ Ø§Ù„ØØ²Ù… المعاد ارسالها" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2521 msgid "Sort by packets received more than once" msgstr "ØØ³Ø¨ Ø§Ù„ØØ²Ù… المستقبلة اكثر من مرة" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2536 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2541 msgid "We offered to introduce them" msgstr "عرضنا لتعريÙهم" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2538 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2543 msgid "They offered to introduce us" msgstr "عرصو علينا تقديمهم" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2542 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2547 msgid "Choked" msgstr "اختنق" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2550 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2555 msgid "1 fail" msgstr "ÙØ´Ù„ ÙˆØ§ØØ¯" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2552 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2557 #, java-format msgid "{0} fails" msgstr "{0} ÙØ´Ù„" #. 1 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2558 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2563 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:166 #: ../java/src/net/i2p/router/web/ProfilesHelper.java:13 msgid "Banned" msgstr "ممنوع" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2617 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2622 msgid "backlogged" msgstr "" @@ -915,96 +918,96 @@ msgstr "" msgid "Dropping tunnel requests: Overloaded" msgstr "تجاوز النÙÙ‚: Ø§Ø²Ø¯ØØ§Ù…" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:693 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:695 msgid "Rejecting tunnels: Hidden mode" msgstr "" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:721 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:723 msgid "Rejecting tunnels: Request overload" msgstr "تجاوز النÙÙ‚: Ø§Ø²Ø¯ØØ§Ù…" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:752 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:754 msgid "Rejecting tunnels: Connection limit" msgstr "تجاوز النÙÙ‚: ØØ¯ الاتصال" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:964 -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:997 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:966 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:999 msgid "Dropping tunnel requests: High load" msgstr "تجاوز النÙÙ‚: Ø§Ø²Ø¯ØØ§Ù… كبير" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1076 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1078 msgid "Dropping tunnel requests: Queue time" msgstr "تجاوز النÙÙ‚: وقت الانتظار" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:884 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:895 #, java-format msgid "New plugin version {0} is available" msgstr "يوجد اصدار جديد {0} للملØÙ‚" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:964 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:975 #, java-format msgid "Update check failed for plugin {0}" msgstr "ÙØ´Ù„ Ø§Ù„Ø¨ØØ« عم ترقية للملØÙ‚ {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:968 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:979 #, java-format msgid "No new version is available for plugin {0}" msgstr "ﻻيوجد اصدار جديد {0} للملØÙ‚" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:992 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1003 #, java-format msgid "{0}B transferred" msgstr "{0}B منقول" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1051 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1062 #, java-format msgid "Install failed from {0}" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1053 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1064 #: ../java/src/net/i2p/router/update/UpdateRunner.java:298 #, java-format msgid "Transfer failed from {0}" msgstr "ÙØ´Ù„ ÙÙŠ النقل {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1328 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1339 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1403 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 #: ../java/src/net/i2p/router/web/SummaryHelper.java:715 msgid "Update downloaded" msgstr "طريقة الترقية" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 msgid "Restarting" msgstr "أعد التشغيل" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 msgid "Update verified" msgstr "انتهى Ø§Ù„ØªØØ¯ÙŠØ«" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1381 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:189 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:306 #, java-format msgid "from {0}" msgstr "من {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1396 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1407 #, java-format msgid "Unsigned update file from {0} is corrupt" msgstr "Ù…Ù„Ù Ø§Ù„ØªØØ¯ÙŠØ« غير كامل {0} " -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1425 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1436 #, java-format msgid "Failed copy to {0}" msgstr "ÙØ´Ù„ ÙÙŠ نسخ {0}" -#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:47 +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:49 #: ../java/src/net/i2p/router/update/DevSU3UpdateRunner.java:40 #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:55 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:111 -#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:62 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:64 #: ../java/src/net/i2p/router/update/UnsignedUpdateRunner.java:41 #: ../java/src/net/i2p/router/update/UpdateRunner.java:155 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:573 @@ -1013,6 +1016,13 @@ msgstr "ÙØ´Ù„ ÙÙŠ نسخ {0}" msgid "HTTP client proxy tunnel must be running" msgstr "" +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:83 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:242 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:88 +#, java-format +msgid "Requires Java version {0} but installed Java version is {1}" +msgstr "" + #. set status before thread to ensure UI feedback #: ../java/src/net/i2p/router/update/DevSU3UpdateHandler.java:91 #: ../java/src/net/i2p/router/update/PluginUpdateHandler.java:82 @@ -1022,24 +1032,19 @@ msgstr "" msgid "Updating" msgstr "ترقية" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:209 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:218 msgid "In-network updates disabled. Check package manager." msgstr "" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:215 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:224 msgid "No write permission for I2P install directory." msgstr "" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:223 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:232 #, java-format msgid "You must first update to version {0}" msgstr "" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:233 -#, java-format -msgid "Requires Java version {0} but installed Java version is {1}" -msgstr "" - #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:62 #, java-format msgid "Checking for update of plugin {0}" @@ -1243,8 +1248,10 @@ msgid "unban now" msgstr "الغاء المنع الآن" #: ../java/src/net/i2p/router/web/CSSHelper.java:149 -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../java/strings/Strings.java:29 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:217 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:221 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:219 @@ -1314,6 +1321,8 @@ msgstr "الغاء المنع الآن" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:217 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:219 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:224 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:228 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:230 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:222 @@ -1339,6 +1348,16 @@ msgstr "الغاء المنع الآن" msgid "I2P Router Console" msgstr "مركز تØÙƒÙ… I2P" +#: ../java/src/net/i2p/router/web/CertHelper.java:25 +msgid "Local SSL Certificates" +msgstr "" + +#: ../java/src/net/i2p/router/web/CertHelper.java:46 +#: ../java/src/net/i2p/router/web/CertHelper.java:51 +#: ../java/strings/Strings.java:63 +msgid "I2PTunnel" +msgstr "Ø§Ù„Ø£Ù†ÙØ§Ù‚ I2P" + #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:62 msgid "Error updating the configuration - please see the error logs" msgstr "خطأ ÙÙŠ ترقية الإعدادات - انظر Ø§Ù„ØªÙØ§ØµÙŠÙ„" @@ -1353,7 +1372,8 @@ msgstr "تم ØÙظ الإعدادات بنجاØ" #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:98 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:622 #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:391 -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:151 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:109 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:160 msgid "" "Error saving the configuration (applied but not saved) - please see the " "error logs" @@ -1558,7 +1578,7 @@ msgid "Add Client" msgstr "أض٠مستخدم" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:116 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:503 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:517 #: ../java/src/net/i2p/router/web/SummaryHelper.java:452 msgid "Client" msgstr "مستخدم" @@ -1590,9 +1610,9 @@ msgid "Plugin" msgstr "الملØÙ‚" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:248 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:304 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 msgid "Version" msgstr "إصدار" @@ -1613,9 +1633,9 @@ msgid "License" msgstr "رخصة" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:294 -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/HomeHelper.java:171 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:157 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/HomeHelper.java:178 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:164 msgid "Website" msgstr "موقع" @@ -1650,7 +1670,7 @@ msgstr "ØØ°Ù" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:21 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigUIHandler.java:19 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:970 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:996 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:496 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:516 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:532 @@ -1660,7 +1680,7 @@ msgstr "" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:23 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1015 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:494 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:502 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:514 @@ -1756,11 +1776,11 @@ msgstr "لم يتم العثور على Ø§Ù„Ù…ÙØªØ§Ø" msgid "Invalid destination" msgstr "عنوان غير موجود" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:82 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:84 msgid "Log overrides updated" msgstr "اعدا كتابة السجلات" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:163 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:165 msgid "Log configuration saved" msgstr "تم ØÙظ السجلات" @@ -1808,8 +1828,8 @@ msgstr "" #: ../java/src/net/i2p/router/web/ConfigLoggingHelper.java:85 #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:170 -#: ../java/src/net/i2p/router/web/HomeHelper.java:208 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:904 +#: ../java/src/net/i2p/router/web/HomeHelper.java:215 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 msgid "Remove" msgstr "ØØ°Ù" @@ -1828,11 +1848,12 @@ msgid "Home Page" msgstr "" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:328 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:335 msgid "Network" msgstr "شبكة" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:320 @@ -1866,6 +1887,7 @@ msgstr "شبكة" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:292 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:322 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:297 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:292 @@ -1884,8 +1906,8 @@ msgid "UI" msgstr "واجهة مستخدم" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:179 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:486 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:186 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 #: ../java/strings/Strings.java:73 msgid "Tunnels" msgstr "Ù†ÙÙ‚" @@ -1904,15 +1926,15 @@ msgid "Logging" msgstr "تسجيل" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:185 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:372 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:192 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:386 #: ../java/strings/Strings.java:68 msgid "Peers" msgstr "المستخدمين" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:497 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:230 msgid "Stats" msgstr "Ø§ØØµØ§Ø¦Ø§Øª" @@ -1928,7 +1950,7 @@ msgstr "متقدم" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:491 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:479 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:641 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:593 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:560 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:511 msgid "Save changes" @@ -2109,7 +2131,7 @@ msgid "Unsupported" msgstr "غير مدعومة" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:24 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 msgid "Save changes and reseed now" msgstr "ØÙظ التغييرات" @@ -2161,7 +2183,16 @@ msgstr[3] "" msgstr[4] "" msgstr[5] "" -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:149 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:99 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +msgid "Reset URL list" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:107 +msgid "URL list reset successfully" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:158 msgid "Configuration saved successfully." msgstr "تم ØÙظ الإعدادات بنجاØ" @@ -2673,8 +2704,8 @@ msgid "User Name" msgstr "" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:183 -#: ../java/src/net/i2p/router/web/HomeHelper.java:235 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:972 +#: ../java/src/net/i2p/router/web/HomeHelper.java:242 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:998 msgid "Add" msgstr "" @@ -2905,13 +2936,13 @@ msgstr "" msgid "Details" msgstr "" -#: ../java/src/net/i2p/router/web/FormHandler.java:251 +#: ../java/src/net/i2p/router/web/FormHandler.java:253 msgid "" "Invalid form submission, probably because you used the 'back' or 'reload' " "button on your browser. Please resubmit." msgstr "خطأ ÙÙŠ الارسال، ربما لاستعمالك زر 'الرجوع' او 'انعش' ÙÙŠ Ø§Ù„Ù…ØªØµÙØ. ØØ§ÙˆÙ„ اعادة الارسال." -#: ../java/src/net/i2p/router/web/FormHandler.java:253 +#: ../java/src/net/i2p/router/web/FormHandler.java:255 msgid "" "If the problem persists, verify that you have cookies enabled in your " "browser." @@ -3042,156 +3073,169 @@ msgstr "" msgid "Graph settings saved" msgstr "ØÙظ اعدادات الرسم البياني" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:229 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:236 msgid "Addressbook" msgstr "Ø¯ÙØªØ± العناوين" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:227 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:234 msgid "Manage your I2P hosts file here (I2P domain name resolution)" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 msgid "Configure Bandwidth" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:330 msgid "I2P Bandwidth Configuration" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Configure Language" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Console Language Selection" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 msgid "Customize Home Page" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:346 msgid "I2P Home Page Configuration" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:139 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:146 msgid "Anonymous webmail client" msgstr "بريد الكتروني مجهول" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:141 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:148 msgid "Email" msgstr "بريد الكتروني" -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:251 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 msgid "I2P Router Help" msgstr "مساعدة روتر I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:161 msgid "Router Console" msgstr "مركز تØÙƒÙ… I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:145 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:152 msgid "Built-in anonymous BitTorrent Client" msgstr "برنامج تورنت مجهول" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:147 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:154 msgid "Torrents" msgstr "تورنت" -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:155 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:162 msgid "Local web server" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:41 +#: ../java/src/net/i2p/router/web/HomeHelper.java:43 msgid "The Anoncoin project" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug Reports" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug tracker" msgstr "" #. "colombo-bt.i2p" + S + _x("The Italian Bittorrent Resource") + S + "http #. ://colombo-bt.i2p/" + S + I + "colomboicon.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Dev Forum" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Development forum" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Bittorrent tracker" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 msgid "diftracker" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:46 +#: ../java/src/net/i2p/router/web/HomeHelper.java:48 msgid "I2P Applications" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +msgid "Anonymous cryptocurrency exchange" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "FAQ" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "Frequently Asked Questions" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Community forum" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Forum" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "" "A public anonymous Git hosting site - supports pulling via Git and HTTP and " "pushing via SSH" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "Anonymous Git Hosting" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:50 +#: ../java/src/net/i2p/router/web/HomeHelper.java:53 msgid "HiddenGate" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "Anonymous wiki - share the knowledge" +msgstr "" + +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "I2P Wiki" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Microblog" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Your premier microblogging service on I2P" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 msgid "Javadocs" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical documentation" msgstr "" @@ -3199,91 +3243,98 @@ msgstr "" #. "http://jisko.i2p/" + S + I + "jisko_console_icon.png" + S + #. _x("Key Server") + S + _x("OpenPGP Keyserver") + S + "http://keys.i2p/" + S #. + I + "education.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +#: ../java/src/net/i2p/router/web/HomeHelper.java:60 msgid "Debian and Tahoe-LAFS repositories" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free Web Hosting" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free eepsite hosting with PHP and MySQL" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "I2P Pastebin" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "Pastebin" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:58 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 msgid "I2P News" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +msgid "Planet I2P" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Add-on directory" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Plugins" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Postman's Tracker" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "I2P home page" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "Project Website" msgstr "" +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:68 +msgid "Russian News Feed" +msgstr "" + #. "Salt" + S + "salt.i2p" + S + "http://salt.i2p/" + S + I + #. "salt_console.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +#: ../java/src/net/i2p/router/web/HomeHelper.java:70 msgid "I2P Network Statistics" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical Docs" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:65 +#: ../java/src/net/i2p/router/web/HomeHelper.java:72 msgid "Trac Wiki" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:66 -msgid "Ugha's Wiki" -msgstr "" - -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Seedless and the Robert BitTorrent applications" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#. _x("Ugha's Wiki") + S + S + "http://ugha.i2p/" + S + I + +#. "billiard_marker.png" + S + +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Sponge's main site" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:108 +#: ../java/src/net/i2p/router/web/HomeHelper.java:115 msgid "The HTTP proxy is not up" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:110 +#: ../java/src/net/i2p/router/web/HomeHelper.java:117 #, java-format msgid "Your browser is not properly configured to use the HTTP proxy at {0}" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:210 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:906 +#: ../java/src/net/i2p/router/web/HomeHelper.java:217 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:932 msgid "Name" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:212 +#: ../java/src/net/i2p/router/web/HomeHelper.java:219 msgid "URL" msgstr "" @@ -3411,210 +3462,219 @@ msgstr "" msgid "LeaseSets" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:105 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:106 #: ../java/strings/Strings.java:69 msgid "Router" msgstr "موجه" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:112 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:113 msgid "not found in network database" msgstr "غير موجود ÙÙŠ قاعدة الشبكة" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:156 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 msgid "LeaseSet" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:158 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:163 msgid "Local" msgstr "Ù…ØÙ„ÙŠ" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:160 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:165 msgid "Unpublished" msgstr "غير منشور" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:176 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:166 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:181 msgid "Destination" msgstr "الغاية" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:173 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:185 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:178 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 msgid "Add to local addressbook" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:217 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:195 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:222 #, java-format msgid "Expires in {0}" msgstr "ينتهي ÙÙŠ مدة {0}" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:192 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:219 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:197 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:224 #, java-format msgid "Expired {0} ago" msgstr "انتهى {0} منذ" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Gateway" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 msgid "Lease" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:213 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:218 msgid "Tunnel" msgstr "Ù†ÙÙ‚" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:280 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:286 msgid "Not initialized" msgstr "لم تتم تهيئة" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:330 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:342 msgid "Network Database Router Statistics" msgstr "Ø§ØØµØ§Ø¦ÙŠØ§Øª قاعدة البيانات I2P" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Count" msgstr "عدد" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 msgid "Transports" msgstr "نقل" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Country" msgstr "البلد" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:429 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:453 msgid "Our info" msgstr "المعلومات" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:431 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:455 msgid "Peer info for" msgstr "معلومات النظائر" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:433 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:457 msgid "Full entry" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 #: ../java/src/net/i2p/router/web/SummaryHelper.java:152 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:726 msgid "Hidden" msgstr "مختÙÙŠ" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 msgid "Updated" msgstr "ØªØØ¯ÙŠØ«" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:441 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:444 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:465 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:468 #, java-format msgid "{0} ago" msgstr "{0} مدة" #. shouldnt happen -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:443 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:447 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:467 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:471 msgid "Published" msgstr "تم نشره منذ" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:449 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 msgid "Signing Key" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:451 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:475 msgid "Address(es)" msgstr "عناوين" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:463 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:487 msgid "cost" msgstr "ثمن" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "Hidden or starting up" msgstr "مختÙÙŠ" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU with introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU with introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 Only SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 Only NTCP, SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NewsHelper.java:295 +#: ../java/src/net/i2p/router/web/NewsFeedHelper.java:80 +#, java-format +msgid "by {0}" +msgstr "" + +#: ../java/src/net/i2p/router/web/NewsHelper.java:292 #, java-format msgid "News last updated {0} ago." msgstr "آخر ØªØØ¯ÙŠØ« للأخبار {0} " -#: ../java/src/net/i2p/router/web/NewsHelper.java:301 +#: ../java/src/net/i2p/router/web/NewsHelper.java:298 #, java-format msgid "News last checked {0} ago." msgstr "آخر ØªØØ¯ÙŠØ« للأخبار {0} " -#: ../java/src/net/i2p/router/web/NewsHelper.java:310 +#: ../java/src/net/i2p/router/web/NewsHelper.java:307 msgid "Hide news" msgstr "" -#: ../java/src/net/i2p/router/web/NewsHelper.java:313 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:647 +#: ../java/src/net/i2p/router/web/NewsHelper.java:310 msgid "Show news" msgstr "" +#: ../java/src/net/i2p/router/web/NewsHelper.java:314 +msgid "Show all news" +msgstr "" + #: ../java/src/net/i2p/router/web/PluginStarter.java:140 msgid "Checking for plugin updates" msgstr "" #: ../java/src/net/i2p/router/web/PluginStarter.java:155 +#: ../java/src/net/i2p/router/web/PluginStarter.java:161 msgid "Plugin update check failed" msgstr "" -#: ../java/src/net/i2p/router/web/PluginStarter.java:193 +#: ../java/src/net/i2p/router/web/PluginStarter.java:199 #, java-format msgid "1 plugin updated" msgid_plural "{0} plugins updated" @@ -3625,7 +3685,7 @@ msgstr[3] "" msgstr[4] "" msgstr[5] "" -#: ../java/src/net/i2p/router/web/PluginStarter.java:195 +#: ../java/src/net/i2p/router/web/PluginStarter.java:201 msgid "Plugin update check complete" msgstr "" @@ -3703,7 +3763,7 @@ msgid "Failing" msgstr "ÙØ´Ù„" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:135 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:411 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:425 msgid "Integrated" msgstr "مدمج" @@ -3980,277 +4040,287 @@ msgstr "الرسم البياني" msgid "Lifetime average value" msgstr "متوسط الØÙŠØ§Ø©" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:121 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:128 msgid "I2P Router Help & FAQ" msgstr "مساعدة ØÙˆÙ„ I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:123 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:130 msgid "Help & FAQ" msgstr "مساعدة" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:131 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:138 msgid "" "Configure startup of clients and webapps (services); manually start dormant " "services" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:133 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:140 msgid "I2P Services" msgstr "خدمات I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:169 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:176 msgid "Configure I2P Router" msgstr "I2P اعدادات موجه" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:171 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:178 msgid "I2P Internals" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:177 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:484 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:184 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:498 msgid "View existing tunnels and tunnel build status" msgstr "أظهر Ø§Ù„Ø£Ù†ÙØ§Ù‚ الموجودة ÙˆØØ§Ù„Ø© Ø§Ù„Ø§Ù†ÙØ§Ù‚ " -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:183 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:370 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:190 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:384 msgid "Show all current peer connections" msgstr "أظهر اتصالات المشاركين" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:189 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:196 msgid "Show recent peer performance profiles" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:191 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:198 msgid "Profiles" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:195 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:202 msgid "Show list of all known I2P routers" msgstr "أظهر قائمة بكل I2P Ø§Ù„Ù…Ø¹Ø±ÙˆÙØ©" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:197 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:204 msgid "NetDB" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:201 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:208 msgid "Health Report" msgstr "تقرير" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:203 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:210 msgid "Logs" msgstr "يجلات" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:214 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 msgid "Graph router performance" msgstr "أظهر اشتغال الموجه بريم بياني" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:216 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 msgid "Graphs" msgstr "رسم بياني" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:228 msgid "Textual router performance statistics" msgstr "Ø§ØØµØ§Ø¦Ø§Øª نصية للموجه" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:233 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:240 #: ../java/src/net/i2p/router/web/SummaryHelper.java:438 msgid "Local Tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:235 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:242 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:164 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:337 msgid "Hidden Services Manager" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:253 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:260 msgid "General" msgstr "عام" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 msgid "" "Your Local Identity is your unique I2P router identity, similar to an ip " "address but tailored to I2P. " msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:259 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:266 msgid "Never disclose this to anyone, as it can reveal your real world ip." msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:261 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:268 msgid "Local Identity" msgstr "هوية Ù…ØÙ„ية" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:272 msgid "Your unique I2P router identity is" msgstr "هوية موجهك I2P هو" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:269 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:276 msgid "never reveal it to anyone" msgstr "لاتظهر Ù„Ø£ØØ¯" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:271 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 msgid "show" msgstr "أظهر" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:275 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:301 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:282 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:308 msgid "The version of the I2P software we are running" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:292 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:318 msgid "How long we've been running for this session" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:326 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:333 msgid "" "Help with configuring your firewall and router for optimal I2P performance" msgstr "مساعدة ÙÙŠ اعدادات الجدار الناري لزيادة ÙØ¹Ø§Ù„ية I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:337 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:344 msgid "See more information on the wiki" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:339 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:346 msgid "Warning: ECDSA is not available. Update your Java or OS" msgstr "" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:351 -msgid "Configure I2P Updates" +#, java-format +msgid "Warning: Java version {0} is no longer supported by I2P." msgstr "" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#, java-format +msgid "Update Java to version {0} or higher to receive I2P updates." +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:365 +msgid "Configure I2P Updates" +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:367 msgid "I2P Update" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:378 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:392 msgid "Peers we've been talking to in the last few minutes/last hour" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:381 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:395 msgid "Active" msgstr "Ù…ÙØ¹Ù„" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:390 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:404 msgid "The number of peers available for building client tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:393 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:407 msgid "Fast" msgstr "سريع" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:399 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:413 msgid "The number of peers available for building exploratory tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:402 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:416 msgid "High capacity" msgstr "قدرة عالية" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:408 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:422 msgid "The number of peers available for network database inquiries" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:417 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:431 msgid "The total number of peers in our network database" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:420 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:434 msgid "Known" msgstr "معروÙ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:440 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:454 msgid "Configure router bandwidth allocation" msgstr "ØØ¯Ø¯ سرعة الموجه" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:442 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:456 msgid "Bandwidth in/out" msgstr "الاتصال الداخلي/خارجي" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:462 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:476 msgid "Total" msgstr "مجموع" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:469 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:483 msgid "Used" msgstr "مستعمل" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:491 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:505 msgid "" "Used for building and testing tunnels, and communicating with floodfill " "peers" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:494 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:508 msgid "Exploratory" msgstr "ØªØµÙØ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:514 msgid "Tunnels we are using to provide or access services on the network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:509 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:523 msgid "" "Tunnels we are participating in, directly contributing bandwidth to the " "network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:512 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:526 msgid "Participating" msgstr "مشارك" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:518 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:532 msgid "" "The ratio of tunnel hops we provide to tunnel hops we use - a value greater " "than 1.00 indicates a positive contribution to the network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:521 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:535 msgid "Share ratio" msgstr "نسبة المشاركة" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:534 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:548 msgid "What's in the router's job queue?" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:536 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 msgid "Congestion" msgstr "Ø§Ø²Ø¯ØØ§Ù…" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:541 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:555 msgid "Indicates router performance" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:544 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:558 msgid "Job lag" msgstr "تأخر" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:564 msgid "Indicates how quickly outbound messages to other I2P routers are sent" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:553 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:567 msgid "Message delay" msgstr "تأخر الرسالة" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:560 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:574 msgid "Round trip time for a tunnel test" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:563 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:577 msgid "Tunnel lag" msgstr "تأخر النÙÙ‚" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:570 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:584 msgid "Queued requests from other routers to participate in tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:573 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:587 msgid "Backlog" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:608 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:623 msgid "News & Updates" msgstr "" @@ -4363,17 +4433,21 @@ msgid "Click Shutdown and restart to install" msgstr "انقر زر التوق٠وأعد التشغيل للتثبيت" #: ../java/src/net/i2p/router/web/SummaryHelper.java:720 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:735 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:737 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:749 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:761 #, java-format msgid "Version {0}" msgstr "اصدار {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:734 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:736 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:748 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:760 msgid "Update available" msgstr "" #. Note to translators: parameter is a version, e.g. "0.8.4" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:758 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:784 #, java-format msgid "Download {0} Update" msgstr "" @@ -4382,7 +4456,7 @@ msgstr "" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:766 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:792 #, java-format msgid "Download Signed<br>Development Update<br>{0}" msgstr "" @@ -4391,56 +4465,56 @@ msgstr "" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:774 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 #, java-format msgid "Download Unsigned<br>Update {0}" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:798 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:824 msgid "Help with firewall configuration" msgstr "مساعدة خول اعدادات الجدار الناري" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:826 msgid "Check network connection and NAT/firewall" msgstr "تأكد من NAT/جدار ناري" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:819 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:845 msgid "Reseed" msgstr "اعادة توزيع" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:908 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:934 msgid "Order" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:925 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:951 msgid "Top" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:956 msgid "Move to top" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:940 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:966 msgid "Move up" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:948 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:974 msgid "Down" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:953 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:979 msgid "Move down" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:958 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:984 msgid "Bottom" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:963 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 msgid "Move to bottom" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:975 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1001 msgid "Select a section to add" msgstr "" @@ -4487,100 +4561,100 @@ msgstr "Ù†ÙÙ‚ لـ" msgid "dead" msgstr "ميت" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:70 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:69 msgid "Participating tunnels" msgstr "Ø§Ù„Ø£Ù†ÙØ§Ù‚ المشاركة" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "Receive on" msgstr "استقبل ÙÙŠ" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Expiration" msgstr "انتهاء" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Send on" msgstr "ارسال الى" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Rate" msgstr "معدل" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Role" msgstr "دور" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Usage" msgstr "استعمال" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:111 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:113 msgid "grace period" msgstr "ÙØªØ±Ø© السماØ" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:121 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 msgid "Outbound Endpoint" msgstr "نقطة الخروج" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 msgid "Inbound Gateway" msgstr "نقطة الدخول" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:127 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:174 msgid "Participant" msgstr "المشارك" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:130 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:133 #, java-format msgid "Limited display to the {0} tunnels with the highest usage" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:131 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:135 msgid "Inactive participating tunnels" msgstr "Ø§Ù†ÙØ§Ù‚ غير مساهمة" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:132 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:224 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:138 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:232 msgid "Lifetime bandwidth usage" msgstr "درجة استعمال الشبكة" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Expiry" msgstr "المدة" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:165 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 msgid "Participants" msgstr "المشاركون" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:177 msgid "Endpoint" msgstr "نقطة النهاية" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 #: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "Build in progress" msgstr "جاري إنشاء النÙÙ‚" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 msgid "inbound" msgstr "الداخل" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "outbound" msgstr "الخارج" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:223 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:231 msgid "No tunnels; waiting for the grace period to end." msgstr "لا يوجد Ù†ÙÙ‚ØŒ ÙÙŠ انتظار مدة لتوقÙ" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:225 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:233 msgid "in" msgstr "دخل" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:234 msgid "out" msgstr "خرج" @@ -4717,10 +4791,6 @@ msgstr "التشÙير" msgid "i2cp" msgstr "" -#: ../java/strings/Strings.java:63 -msgid "I2PTunnel" -msgstr "Ø§Ù„Ø£Ù†ÙØ§Ù‚ I2P" - #: ../java/strings/Strings.java:64 msgid "InNetPool" msgstr "" @@ -4767,10 +4837,12 @@ msgstr "Ù…ÙØªØ§Ø" msgid "port" msgstr "Ù…Ù†ÙØ°" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 -msgid "configure bandwidth" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:146 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:318 +msgid "Certificates" msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:153 @@ -4804,6 +4876,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:149 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:155 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:154 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:149 @@ -4819,6 +4892,7 @@ msgstr "" #. We have intl defined when this is included, but not when compiled #. standalone. +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:333 @@ -4851,6 +4925,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:305 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:310 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:305 @@ -4866,6 +4941,7 @@ msgid "Refresh (s)" msgstr "أنعش" #. ditto +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:337 @@ -4898,6 +4974,7 @@ msgstr "أنعش" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:309 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:339 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:314 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:309 @@ -4912,6 +4989,10 @@ msgstr "أنعش" msgid "Enable" msgstr "ÙØ¹Ù„" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 +msgid "configure bandwidth" +msgstr "" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:437 msgid "Bandwidth limiter" msgstr "مخدد سرعة الشبكة" @@ -4988,7 +5069,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:501 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:477 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:639 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:587 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:558 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:509 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:461 @@ -6021,51 +6102,51 @@ msgstr "" msgid "Reseed URLs" msgstr "اعادة توزيع العناوين" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:541 msgid "Enable HTTP Proxy?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:543 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:545 msgid "HTTP Proxy Host" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:547 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:549 msgid "HTTP Proxy Port" msgstr "HTTP Proxy Ù…Ù†ÙØ°" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:551 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:553 msgid "Use HTTP Proxy Authorization?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:555 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:557 msgid "HTTP Proxy Username" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:559 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:561 msgid "HTTP Proxy Password" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:563 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:565 msgid "Enable HTTPS Proxy?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:567 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:569 msgid "HTTPS Proxy Host" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:571 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:573 msgid "HTTPS Proxy Port" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:575 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:577 msgid "Use HTTPS Proxy Authorization?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:579 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:581 msgid "HTTPS Proxy Username" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:583 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:585 msgid "HTTPS Proxy Password" msgstr "" @@ -6624,6 +6705,14 @@ msgstr "" msgid "I2P Network Database" msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:148 +msgid "News" +msgstr "" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:344 +msgid "Latest News" +msgstr "" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:152 msgid "WebApp Not Found" msgstr "ØµÙØØ© غير موجودة" diff --git a/apps/routerconsole/locale/messages_cs.po b/apps/routerconsole/locale/messages_cs.po index 936a8da837084ef7ff49a1de2eb68f48a56424c9..6f80ad2139a0fc0775487fb009e5c7655d9cd981 100644 --- a/apps/routerconsole/locale/messages_cs.po +++ b/apps/routerconsole/locale/messages_cs.po @@ -10,10 +10,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:05+0000\n" -"PO-Revision-Date: 2015-07-17 01:31+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-05 17:17+0000\n" "Last-Translator: kytv <killyourtv@i2pmail.org>\n" -"Language-Team: Czech (http://www.transifex.com/projects/p/I2P/language/cs/)\n" +"Language-Team: Czech (http://www.transifex.com/otf/I2P/language/cs/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -140,19 +140,22 @@ msgid "IPs Permanently Banned" msgstr "IPs Je Trvale Zakázáno" #: ../../../router/java/src/net/i2p/router/Blocklist.java:959 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "From" msgstr "Od" #: ../../../router/java/src/net/i2p/router/Blocklist.java:961 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "To" msgstr "Do" #: ../../../router/java/src/net/i2p/router/Blocklist.java:997 #: ../java/src/net/i2p/router/web/BanlistRenderer.java:48 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:652 +#: ../java/src/net/i2p/router/web/CertHelper.java:77 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:147 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:662 #: ../java/src/net/i2p/router/web/SummaryHelper.java:478 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:137 msgid "none" msgstr "žádný" @@ -290,17 +293,17 @@ msgstr "OdmÃtám tunely: vypÃnánÃ" msgid "Rejecting tunnels" msgstr "OdmÃtnutà tunelů" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:212 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:210 #, java-format msgid "Reseeding: got router info from file ({0} successful, {1} errors)." msgstr "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:284 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:282 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:28 msgid "Reseeding" msgstr "OpÄ›tovné sdÃlenà (reseeding)" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:307 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:305 #, java-format msgid "Reseed fetched only 1 router." msgid_plural "Reseed fetched only {0} routers." @@ -308,26 +311,26 @@ msgstr[0] "Reseed zÃskán pouze pro 1 router." msgstr[1] "Reseed zÃskán pouze pro {0} routerů." msgstr[2] "Reseed zÃskán pouze pro {0} routerů." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:314 msgid "Reseed failed." msgstr "Reseed selhal." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:317 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:315 #, java-format msgid "See {0} for help." msgstr "Dalšà informace viz. {0}." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:318 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 msgid "reseed configuration page" msgstr "reseed stránky nastavenÃ" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:566 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:697 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:564 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:695 msgid "Reseeding: fetching seed URL." msgstr "ReseedovanÃ: naÄÃtánà seedované URL." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:623 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:733 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:621 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:731 #, java-format msgid "" "Reseeding: fetching router info from seed URL ({0} successful, {1} errors)." @@ -392,12 +395,12 @@ msgid "Unreachable on any transport" msgstr "Nedostupné na každém transportu" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:674 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:566 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:577 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:604 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:622 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1348 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2469 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2474 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:92 msgid "Status" msgstr "Status" @@ -412,12 +415,12 @@ msgid "{0} is used for outbound connections only" msgstr "{0} je použito pouze pro odchozà spojenÃ" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:711 -#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:283 +#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:295 msgid "UPnP is not enabled" msgstr "UPnP nenà povolen" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:720 -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:167 msgid "Help" msgstr "NápovÄ›da" @@ -441,7 +444,7 @@ msgstr "Definice" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:726 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1352 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2473 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:24 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:33 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:35 @@ -456,7 +459,7 @@ msgstr "Vzdálený sdÃleÄ urÄený hashem routru." #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:727 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1353 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Dir" msgstr "Adresář" @@ -483,14 +486,14 @@ msgstr "Doba od poslednÃho pÅ™ijetà / odeslánà paketu." #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:735 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1355 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2479 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 msgid "Idle" msgstr "NeÄinný" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:736 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1356 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "In/Out" msgstr "pÅ™ÃchozÃ/odchozÃ" @@ -504,14 +507,14 @@ msgstr "PÅ™ed jak dlouhou dobou bylo toto spojenà navázáno" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:737 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1357 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:935 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2494 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:961 msgid "Up" msgstr "Up" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:738 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1358 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2491 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2496 msgid "Skew" msgstr "Zkreslit" @@ -560,7 +563,7 @@ msgstr "SouÄasná maximálnà velikost odeslaného paketu / pÅ™edpokládaná ve #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:748 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1359 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2508 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 msgid "TX" msgstr "TX" @@ -570,7 +573,7 @@ msgstr "Celkový poÄet paketů odeslaných " #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:749 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1360 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2510 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 msgid "RX" msgstr "RX" @@ -579,7 +582,7 @@ msgid "The total number of packets received from the peer" msgstr "Celkový poÄet paketů obdržených od peeru" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:750 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2518 msgid "Dup TX" msgstr "Dup TX" @@ -588,7 +591,7 @@ msgid "The total number of packets retransmitted to the peer" msgstr "Celkový poÄet paketů znovu pÅ™enesených peeru. " #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:751 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2520 msgid "Dup RX" msgstr "Dup RX" @@ -596,104 +599,104 @@ msgstr "Dup RX" msgid "The total number of duplicate packets received from the peer" msgstr "Celkový poÄet duplikovaných paketů obdržených od peeru." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:560 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:561 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 msgid "Service" msgstr "Služba" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:564 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 msgid "WAN Common Interface Configuration" msgstr "WAN Obvyklé Nastavenà RozhranÃ" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:567 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:587 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:614 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:568 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:588 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:615 msgid "Type" msgstr "Typ" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:569 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:589 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:570 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:590 msgid "Upstream" msgstr "Upstream" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:571 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:591 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:572 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:592 msgid "Downstream" msgstr "Downstream" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:575 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 msgid "WAN PPP Connection" msgstr "WAN PPP PÅ™ipojenÃ" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:583 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:610 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:288 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:314 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:584 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:611 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:295 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:321 msgid "Uptime" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:593 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:616 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:594 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:617 msgid "External IP" msgstr "Externà IP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:597 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 msgid "Layer 3 Forwarding" msgstr "Vrstva 3 je pÅ™idávána" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:599 msgid "Default Connection Service" msgstr "Výchozà Služba PÅ™ipojenÃ" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:602 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 msgid "WAN IP Connection" msgstr "WAN IP PÅ™ipojenÃ" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:620 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 msgid "WAN Ethernet Link Configuration" msgstr "WAN Ethernet Link NastavenÃ" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:641 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:642 msgid "Found Device" msgstr "Nalezeno ZaÅ™ÃzenÃ" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:643 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:644 msgid "Subdevice" msgstr "PodzaÅ™ÃzenÃ" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:664 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:665 msgid "UPnP Status" msgstr "UPnP Stav" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:668 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:669 msgid "Disabled UPnP Devices" msgstr "UPnP zaÅ™Ãzenà odpojeno" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:682 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:683 msgid "" "UPnP has been disabled; Do you have more than one UPnP Internet Gateway " "Device on your LAN ?" msgstr "UPnP bylo odpojeno. Máte vÃce než jedno UPnP Internet Gateway Device na vašà LAN?" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:685 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:686 msgid "UPnP has not found any UPnP-aware, compatible device on your LAN." msgstr "UPnP nenalezlo žádné UPnP aware, kompatibilnà zaÅ™Ãzenà na vašà LAN." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:693 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:694 #, java-format msgid "The current external IP address reported by UPnP is {0}" msgstr "SouÄasná externà IP adresa hlášená UPnP je {0}" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:695 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:696 msgid "The current external IP address is not available." msgstr "SouÄasná externà IP adresa nenà dostupná" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:699 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:700 #, java-format msgid "UPnP reports the maximum downstream bit rate is {0}bits/sec" msgstr "UPnP hlásà že maximálnà mÃra downstreamu je {0}bits/sec" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:701 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:702 #, java-format msgid "UPnP reports the maximum upstream bit rate is {0}bits/sec" msgstr "UPnP hlásà že maximálnà mÃra upstreamu je {0}bits/sec" @@ -702,12 +705,12 @@ msgstr "UPnP hlásà že maximálnà mÃra upstreamu je {0}bits/sec" #. {1,number,#####} prevents 12345 from being output as 12,345 in the English #. locale. #. If you want the digit separator in your locale, translate as {1}. -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:709 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:710 #, java-format msgid "{0} port {1,number,#####} was successfully forwarded by UPnP." msgstr "{0} port {1,number,#####} byl úspěšnÄ› pÅ™edán UPnP." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:711 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:712 #, java-format msgid "{0} port {1,number,#####} was not forwarded by UPnP." msgstr "{0} port {1,number,#####} nebyl úspěšnÄ› pÅ™edán UPnP." @@ -723,17 +726,17 @@ msgid "NTCP connections" msgstr "NTCP pÅ™ipojenÃ" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1345 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2466 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2471 msgid "Limit" msgstr "Limit" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1346 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2467 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2472 msgid "Timeout" msgstr "Timeout" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1354 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2483 msgid "IPv6" msgstr "IPv6" @@ -746,19 +749,19 @@ msgid "Backlogged?" msgstr "Backlogováno?" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1375 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2532 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2537 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Inbound" msgstr "PÅ™ÃchozÃ" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1377 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2534 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2539 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Outbound" msgstr "OdchozÃ" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1432 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2699 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2704 #, java-format msgid "{0} peer" msgid_plural "{0} peers" @@ -766,107 +769,107 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2465 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2470 msgid "UDP connections" msgstr "UDP pÅ™ipojenÃ" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2475 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 msgid "Sort by peer hash" msgstr "TÅ™Ãdit podle hashe peeru" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Direction/Introduction" msgstr "SmÄ›r / Úvod" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 msgid "Sort by idle inbound" msgstr "SeÅ™adit podle pÅ™Ãchozà neÄinnosti" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 msgid "Sort by idle outbound" msgstr "SeÅ™adit podle odchozà neÄinnosti" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 msgid "Sort by inbound rate" msgstr "SeÅ™adit podle pÅ™Ãchozà rychlosti" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 msgid "Sort by outbound rate" msgstr "SeÅ™adit podle odchozà rychlosti " -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 msgid "Sort by connection uptime" msgstr "SeÅ™adit podle doby bÄ›hu pÅ™ipojenÃ." -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 msgid "Sort by clock skew" msgstr "SeÅ™adit podle zkreslenà Äasu" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 msgid "Sort by congestion window" msgstr "SeÅ™adit podle okna pÅ™etÞenÃ" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2502 msgid "Sort by slow start threshold" msgstr "SeÅ™adit podle pomalého startu prahu" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2505 msgid "Sort by round trip time" msgstr "SeÅ™adit podle round trip time" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2504 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 msgid "Sort by retransmission timeout" msgstr "SeÅ™adit podle Äasového limitu opakovaného pÅ™enosu" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2507 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2512 msgid "Sort by outbound maximum transmit unit" msgstr "SeÅ™adit podle odchozà maximálnà pÅ™enosové jednotky" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 msgid "Sort by packets sent" msgstr "SeÅ™edit podle odeslaných paketů" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2511 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 msgid "Sort by packets received" msgstr "SeÅ™adit podle pÅ™ijatých paketů" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2519 msgid "Sort by packets retransmitted" msgstr "SeÅ™adit podle znovu odeslaných paketů " -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2521 msgid "Sort by packets received more than once" msgstr "SeÅ™adit podle paketů obdržených vÃce než jednou" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2536 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2541 msgid "We offered to introduce them" msgstr "NabÃdli jsme jim že je pÅ™edstavÃme" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2538 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2543 msgid "They offered to introduce us" msgstr "NabÃdli nám že nás pÅ™edstavÃ" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2542 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2547 msgid "Choked" msgstr "ZaduÅ¡en" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2550 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2555 msgid "1 fail" msgstr "1 selhánÃ" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2552 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2557 #, java-format msgid "{0} fails" msgstr "{0} selhánÃ" #. 1 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2558 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2563 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:166 #: ../java/src/net/i2p/router/web/ProfilesHelper.java:13 msgid "Banned" msgstr "Zakázáno" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2617 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2622 msgid "backlogged" msgstr "Backblogováno" @@ -883,96 +886,96 @@ msgstr "" msgid "Dropping tunnel requests: Overloaded" msgstr "" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:693 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:695 msgid "Rejecting tunnels: Hidden mode" msgstr "" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:721 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:723 msgid "Rejecting tunnels: Request overload" msgstr "" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:752 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:754 msgid "Rejecting tunnels: Connection limit" msgstr "" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:964 -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:997 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:966 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:999 msgid "Dropping tunnel requests: High load" msgstr "" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1076 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1078 msgid "Dropping tunnel requests: Queue time" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:884 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:895 #, java-format msgid "New plugin version {0} is available" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:964 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:975 #, java-format msgid "Update check failed for plugin {0}" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:968 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:979 #, java-format msgid "No new version is available for plugin {0}" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:992 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1003 #, java-format msgid "{0}B transferred" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1051 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1062 #, java-format msgid "Install failed from {0}" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1053 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1064 #: ../java/src/net/i2p/router/update/UpdateRunner.java:298 #, java-format msgid "Transfer failed from {0}" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1328 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1339 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1403 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 #: ../java/src/net/i2p/router/web/SummaryHelper.java:715 msgid "Update downloaded" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 msgid "Restarting" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 msgid "Update verified" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1381 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:189 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:306 #, java-format msgid "from {0}" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1396 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1407 #, java-format msgid "Unsigned update file from {0} is corrupt" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1425 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1436 #, java-format msgid "Failed copy to {0}" msgstr "" -#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:47 +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:49 #: ../java/src/net/i2p/router/update/DevSU3UpdateRunner.java:40 #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:55 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:111 -#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:62 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:64 #: ../java/src/net/i2p/router/update/UnsignedUpdateRunner.java:41 #: ../java/src/net/i2p/router/update/UpdateRunner.java:155 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:573 @@ -981,6 +984,13 @@ msgstr "" msgid "HTTP client proxy tunnel must be running" msgstr "" +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:83 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:242 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:88 +#, java-format +msgid "Requires Java version {0} but installed Java version is {1}" +msgstr "" + #. set status before thread to ensure UI feedback #: ../java/src/net/i2p/router/update/DevSU3UpdateHandler.java:91 #: ../java/src/net/i2p/router/update/PluginUpdateHandler.java:82 @@ -990,24 +1000,19 @@ msgstr "" msgid "Updating" msgstr "" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:209 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:218 msgid "In-network updates disabled. Check package manager." msgstr "" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:215 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:224 msgid "No write permission for I2P install directory." msgstr "" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:223 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:232 #, java-format msgid "You must first update to version {0}" msgstr "" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:233 -#, java-format -msgid "Requires Java version {0} but installed Java version is {1}" -msgstr "" - #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:62 #, java-format msgid "Checking for update of plugin {0}" @@ -1211,8 +1216,10 @@ msgid "unban now" msgstr "" #: ../java/src/net/i2p/router/web/CSSHelper.java:149 -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../java/strings/Strings.java:29 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:217 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:221 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:219 @@ -1282,6 +1289,8 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:217 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:219 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:224 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:228 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:230 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:222 @@ -1307,6 +1316,16 @@ msgstr "" msgid "I2P Router Console" msgstr "" +#: ../java/src/net/i2p/router/web/CertHelper.java:25 +msgid "Local SSL Certificates" +msgstr "" + +#: ../java/src/net/i2p/router/web/CertHelper.java:46 +#: ../java/src/net/i2p/router/web/CertHelper.java:51 +#: ../java/strings/Strings.java:63 +msgid "I2PTunnel" +msgstr "" + #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:62 msgid "Error updating the configuration - please see the error logs" msgstr "" @@ -1321,7 +1340,8 @@ msgstr "" #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:98 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:622 #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:391 -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:151 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:109 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:160 msgid "" "Error saving the configuration (applied but not saved) - please see the " "error logs" @@ -1526,7 +1546,7 @@ msgid "Add Client" msgstr "" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:116 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:503 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:517 #: ../java/src/net/i2p/router/web/SummaryHelper.java:452 msgid "Client" msgstr "" @@ -1558,9 +1578,9 @@ msgid "Plugin" msgstr "" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:248 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:304 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 msgid "Version" msgstr "" @@ -1581,9 +1601,9 @@ msgid "License" msgstr "" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:294 -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/HomeHelper.java:171 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:157 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/HomeHelper.java:178 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:164 msgid "Website" msgstr "" @@ -1618,7 +1638,7 @@ msgstr "" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:21 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigUIHandler.java:19 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:970 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:996 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:496 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:516 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:532 @@ -1628,7 +1648,7 @@ msgstr "" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:23 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1015 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:494 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:502 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:514 @@ -1724,11 +1744,11 @@ msgstr "" msgid "Invalid destination" msgstr "" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:82 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:84 msgid "Log overrides updated" msgstr "" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:163 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:165 msgid "Log configuration saved" msgstr "" @@ -1776,8 +1796,8 @@ msgstr "" #: ../java/src/net/i2p/router/web/ConfigLoggingHelper.java:85 #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:170 -#: ../java/src/net/i2p/router/web/HomeHelper.java:208 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:904 +#: ../java/src/net/i2p/router/web/HomeHelper.java:215 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 msgid "Remove" msgstr "" @@ -1796,11 +1816,12 @@ msgid "Home Page" msgstr "" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:328 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:335 msgid "Network" msgstr "" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:320 @@ -1834,6 +1855,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:292 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:322 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:297 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:292 @@ -1852,8 +1874,8 @@ msgid "UI" msgstr "" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:179 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:486 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:186 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 #: ../java/strings/Strings.java:73 msgid "Tunnels" msgstr "" @@ -1872,15 +1894,15 @@ msgid "Logging" msgstr "" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:185 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:372 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:192 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:386 #: ../java/strings/Strings.java:68 msgid "Peers" msgstr "" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:497 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:230 msgid "Stats" msgstr "" @@ -1896,7 +1918,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:491 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:479 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:641 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:593 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:560 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:511 msgid "Save changes" @@ -2077,7 +2099,7 @@ msgid "Unsupported" msgstr "" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:24 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 msgid "Save changes and reseed now" msgstr "" @@ -2126,7 +2148,16 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:149 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:99 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +msgid "Reset URL list" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:107 +msgid "URL list reset successfully" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:158 msgid "Configuration saved successfully." msgstr "" @@ -2629,8 +2660,8 @@ msgid "User Name" msgstr "" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:183 -#: ../java/src/net/i2p/router/web/HomeHelper.java:235 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:972 +#: ../java/src/net/i2p/router/web/HomeHelper.java:242 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:998 msgid "Add" msgstr "" @@ -2861,13 +2892,13 @@ msgstr "" msgid "Details" msgstr "" -#: ../java/src/net/i2p/router/web/FormHandler.java:251 +#: ../java/src/net/i2p/router/web/FormHandler.java:253 msgid "" "Invalid form submission, probably because you used the 'back' or 'reload' " "button on your browser. Please resubmit." msgstr "" -#: ../java/src/net/i2p/router/web/FormHandler.java:253 +#: ../java/src/net/i2p/router/web/FormHandler.java:255 msgid "" "If the problem persists, verify that you have cookies enabled in your " "browser." @@ -2998,156 +3029,169 @@ msgstr "" msgid "Graph settings saved" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:229 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:236 msgid "Addressbook" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:227 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:234 msgid "Manage your I2P hosts file here (I2P domain name resolution)" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 msgid "Configure Bandwidth" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:330 msgid "I2P Bandwidth Configuration" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Configure Language" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Console Language Selection" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 msgid "Customize Home Page" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:346 msgid "I2P Home Page Configuration" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:139 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:146 msgid "Anonymous webmail client" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:141 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:148 msgid "Email" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:251 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 msgid "I2P Router Help" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:161 msgid "Router Console" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:145 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:152 msgid "Built-in anonymous BitTorrent Client" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:147 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:154 msgid "Torrents" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:155 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:162 msgid "Local web server" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:41 +#: ../java/src/net/i2p/router/web/HomeHelper.java:43 msgid "The Anoncoin project" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug Reports" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug tracker" msgstr "" #. "colombo-bt.i2p" + S + _x("The Italian Bittorrent Resource") + S + "http #. ://colombo-bt.i2p/" + S + I + "colomboicon.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Dev Forum" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Development forum" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Bittorrent tracker" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 msgid "diftracker" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:46 +#: ../java/src/net/i2p/router/web/HomeHelper.java:48 msgid "I2P Applications" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +msgid "Anonymous cryptocurrency exchange" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "FAQ" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "Frequently Asked Questions" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Community forum" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Forum" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "" "A public anonymous Git hosting site - supports pulling via Git and HTTP and " "pushing via SSH" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "Anonymous Git Hosting" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:50 +#: ../java/src/net/i2p/router/web/HomeHelper.java:53 msgid "HiddenGate" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "Anonymous wiki - share the knowledge" +msgstr "" + +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "I2P Wiki" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Microblog" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Your premier microblogging service on I2P" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 msgid "Javadocs" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical documentation" msgstr "" @@ -3155,91 +3199,98 @@ msgstr "" #. "http://jisko.i2p/" + S + I + "jisko_console_icon.png" + S + #. _x("Key Server") + S + _x("OpenPGP Keyserver") + S + "http://keys.i2p/" + S #. + I + "education.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +#: ../java/src/net/i2p/router/web/HomeHelper.java:60 msgid "Debian and Tahoe-LAFS repositories" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free Web Hosting" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free eepsite hosting with PHP and MySQL" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "I2P Pastebin" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "Pastebin" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:58 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 msgid "I2P News" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +msgid "Planet I2P" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Add-on directory" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Plugins" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Postman's Tracker" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "I2P home page" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "Project Website" msgstr "" +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:68 +msgid "Russian News Feed" +msgstr "" + #. "Salt" + S + "salt.i2p" + S + "http://salt.i2p/" + S + I + #. "salt_console.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +#: ../java/src/net/i2p/router/web/HomeHelper.java:70 msgid "I2P Network Statistics" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical Docs" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:65 +#: ../java/src/net/i2p/router/web/HomeHelper.java:72 msgid "Trac Wiki" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:66 -msgid "Ugha's Wiki" -msgstr "" - -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Seedless and the Robert BitTorrent applications" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#. _x("Ugha's Wiki") + S + S + "http://ugha.i2p/" + S + I + +#. "billiard_marker.png" + S + +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Sponge's main site" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:108 +#: ../java/src/net/i2p/router/web/HomeHelper.java:115 msgid "The HTTP proxy is not up" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:110 +#: ../java/src/net/i2p/router/web/HomeHelper.java:117 #, java-format msgid "Your browser is not properly configured to use the HTTP proxy at {0}" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:210 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:906 +#: ../java/src/net/i2p/router/web/HomeHelper.java:217 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:932 msgid "Name" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:212 +#: ../java/src/net/i2p/router/web/HomeHelper.java:219 msgid "URL" msgstr "" @@ -3367,210 +3418,219 @@ msgstr "" msgid "LeaseSets" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:105 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:106 #: ../java/strings/Strings.java:69 msgid "Router" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:112 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:113 msgid "not found in network database" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:156 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 msgid "LeaseSet" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:158 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:163 msgid "Local" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:160 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:165 msgid "Unpublished" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:176 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:166 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:181 msgid "Destination" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:173 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:185 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:178 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 msgid "Add to local addressbook" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:217 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:195 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:222 #, java-format msgid "Expires in {0}" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:192 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:219 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:197 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:224 #, java-format msgid "Expired {0} ago" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Gateway" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 msgid "Lease" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:213 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:218 msgid "Tunnel" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:280 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:286 msgid "Not initialized" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:330 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:342 msgid "Network Database Router Statistics" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Count" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 msgid "Transports" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Country" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:429 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:453 msgid "Our info" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:431 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:455 msgid "Peer info for" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:433 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:457 msgid "Full entry" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 #: ../java/src/net/i2p/router/web/SummaryHelper.java:152 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:726 msgid "Hidden" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 msgid "Updated" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:441 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:444 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:465 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:468 #, java-format msgid "{0} ago" msgstr "" #. shouldnt happen -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:443 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:447 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:467 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:471 msgid "Published" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:449 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 msgid "Signing Key" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:451 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:475 msgid "Address(es)" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:463 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:487 msgid "cost" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "Hidden or starting up" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU with introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU with introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 Only SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 Only NTCP, SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NewsHelper.java:295 +#: ../java/src/net/i2p/router/web/NewsFeedHelper.java:80 +#, java-format +msgid "by {0}" +msgstr "" + +#: ../java/src/net/i2p/router/web/NewsHelper.java:292 #, java-format msgid "News last updated {0} ago." msgstr "" -#: ../java/src/net/i2p/router/web/NewsHelper.java:301 +#: ../java/src/net/i2p/router/web/NewsHelper.java:298 #, java-format msgid "News last checked {0} ago." msgstr "" -#: ../java/src/net/i2p/router/web/NewsHelper.java:310 +#: ../java/src/net/i2p/router/web/NewsHelper.java:307 msgid "Hide news" msgstr "" -#: ../java/src/net/i2p/router/web/NewsHelper.java:313 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:647 +#: ../java/src/net/i2p/router/web/NewsHelper.java:310 msgid "Show news" msgstr "" +#: ../java/src/net/i2p/router/web/NewsHelper.java:314 +msgid "Show all news" +msgstr "" + #: ../java/src/net/i2p/router/web/PluginStarter.java:140 msgid "Checking for plugin updates" msgstr "" #: ../java/src/net/i2p/router/web/PluginStarter.java:155 +#: ../java/src/net/i2p/router/web/PluginStarter.java:161 msgid "Plugin update check failed" msgstr "" -#: ../java/src/net/i2p/router/web/PluginStarter.java:193 +#: ../java/src/net/i2p/router/web/PluginStarter.java:199 #, java-format msgid "1 plugin updated" msgid_plural "{0} plugins updated" @@ -3578,7 +3638,7 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: ../java/src/net/i2p/router/web/PluginStarter.java:195 +#: ../java/src/net/i2p/router/web/PluginStarter.java:201 msgid "Plugin update check complete" msgstr "" @@ -3647,7 +3707,7 @@ msgid "Failing" msgstr "" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:135 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:411 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:425 msgid "Integrated" msgstr "" @@ -3918,277 +3978,287 @@ msgstr "" msgid "Lifetime average value" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:121 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:128 msgid "I2P Router Help & FAQ" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:123 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:130 msgid "Help & FAQ" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:131 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:138 msgid "" "Configure startup of clients and webapps (services); manually start dormant " "services" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:133 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:140 msgid "I2P Services" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:169 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:176 msgid "Configure I2P Router" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:171 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:178 msgid "I2P Internals" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:177 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:484 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:184 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:498 msgid "View existing tunnels and tunnel build status" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:183 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:370 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:190 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:384 msgid "Show all current peer connections" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:189 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:196 msgid "Show recent peer performance profiles" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:191 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:198 msgid "Profiles" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:195 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:202 msgid "Show list of all known I2P routers" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:197 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:204 msgid "NetDB" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:201 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:208 msgid "Health Report" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:203 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:210 msgid "Logs" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:214 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 msgid "Graph router performance" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:216 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 msgid "Graphs" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:228 msgid "Textual router performance statistics" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:233 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:240 #: ../java/src/net/i2p/router/web/SummaryHelper.java:438 msgid "Local Tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:235 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:242 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:164 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:337 msgid "Hidden Services Manager" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:253 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:260 msgid "General" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 msgid "" "Your Local Identity is your unique I2P router identity, similar to an ip " "address but tailored to I2P. " msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:259 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:266 msgid "Never disclose this to anyone, as it can reveal your real world ip." msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:261 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:268 msgid "Local Identity" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:272 msgid "Your unique I2P router identity is" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:269 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:276 msgid "never reveal it to anyone" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:271 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 msgid "show" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:275 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:301 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:282 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:308 msgid "The version of the I2P software we are running" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:292 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:318 msgid "How long we've been running for this session" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:326 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:333 msgid "" "Help with configuring your firewall and router for optimal I2P performance" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:337 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:344 msgid "See more information on the wiki" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:339 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:346 msgid "Warning: ECDSA is not available. Update your Java or OS" msgstr "" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:351 -msgid "Configure I2P Updates" +#, java-format +msgid "Warning: Java version {0} is no longer supported by I2P." msgstr "" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#, java-format +msgid "Update Java to version {0} or higher to receive I2P updates." +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:365 +msgid "Configure I2P Updates" +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:367 msgid "I2P Update" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:378 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:392 msgid "Peers we've been talking to in the last few minutes/last hour" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:381 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:395 msgid "Active" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:390 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:404 msgid "The number of peers available for building client tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:393 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:407 msgid "Fast" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:399 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:413 msgid "The number of peers available for building exploratory tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:402 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:416 msgid "High capacity" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:408 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:422 msgid "The number of peers available for network database inquiries" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:417 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:431 msgid "The total number of peers in our network database" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:420 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:434 msgid "Known" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:440 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:454 msgid "Configure router bandwidth allocation" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:442 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:456 msgid "Bandwidth in/out" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:462 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:476 msgid "Total" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:469 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:483 msgid "Used" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:491 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:505 msgid "" "Used for building and testing tunnels, and communicating with floodfill " "peers" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:494 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:508 msgid "Exploratory" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:514 msgid "Tunnels we are using to provide or access services on the network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:509 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:523 msgid "" "Tunnels we are participating in, directly contributing bandwidth to the " "network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:512 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:526 msgid "Participating" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:518 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:532 msgid "" "The ratio of tunnel hops we provide to tunnel hops we use - a value greater " "than 1.00 indicates a positive contribution to the network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:521 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:535 msgid "Share ratio" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:534 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:548 msgid "What's in the router's job queue?" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:536 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 msgid "Congestion" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:541 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:555 msgid "Indicates router performance" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:544 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:558 msgid "Job lag" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:564 msgid "Indicates how quickly outbound messages to other I2P routers are sent" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:553 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:567 msgid "Message delay" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:560 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:574 msgid "Round trip time for a tunnel test" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:563 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:577 msgid "Tunnel lag" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:570 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:584 msgid "Queued requests from other routers to participate in tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:573 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:587 msgid "Backlog" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:608 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:623 msgid "News & Updates" msgstr "" @@ -4301,17 +4371,21 @@ msgid "Click Shutdown and restart to install" msgstr "" #: ../java/src/net/i2p/router/web/SummaryHelper.java:720 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:735 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:737 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:749 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:761 #, java-format msgid "Version {0}" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:734 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:736 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:748 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:760 msgid "Update available" msgstr "" #. Note to translators: parameter is a version, e.g. "0.8.4" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:758 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:784 #, java-format msgid "Download {0} Update" msgstr "" @@ -4320,7 +4394,7 @@ msgstr "" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:766 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:792 #, java-format msgid "Download Signed<br>Development Update<br>{0}" msgstr "" @@ -4329,56 +4403,56 @@ msgstr "" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:774 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 #, java-format msgid "Download Unsigned<br>Update {0}" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:798 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:824 msgid "Help with firewall configuration" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:826 msgid "Check network connection and NAT/firewall" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:819 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:845 msgid "Reseed" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:908 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:934 msgid "Order" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:925 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:951 msgid "Top" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:956 msgid "Move to top" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:940 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:966 msgid "Move up" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:948 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:974 msgid "Down" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:953 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:979 msgid "Move down" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:958 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:984 msgid "Bottom" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:963 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 msgid "Move to bottom" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:975 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1001 msgid "Select a section to add" msgstr "" @@ -4425,100 +4499,100 @@ msgstr "" msgid "dead" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:70 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:69 msgid "Participating tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "Receive on" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Expiration" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Send on" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Rate" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Role" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Usage" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:111 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:113 msgid "grace period" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:121 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 msgid "Outbound Endpoint" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 msgid "Inbound Gateway" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:127 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:174 msgid "Participant" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:130 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:133 #, java-format msgid "Limited display to the {0} tunnels with the highest usage" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:131 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:135 msgid "Inactive participating tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:132 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:224 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:138 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:232 msgid "Lifetime bandwidth usage" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Expiry" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:165 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 msgid "Participants" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:177 msgid "Endpoint" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 #: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "Build in progress" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 msgid "inbound" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "outbound" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:223 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:231 msgid "No tunnels; waiting for the grace period to end." msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:225 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:233 msgid "in" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:234 msgid "out" msgstr "" @@ -4655,10 +4729,6 @@ msgstr "" msgid "i2cp" msgstr "" -#: ../java/strings/Strings.java:63 -msgid "I2PTunnel" -msgstr "" - #: ../java/strings/Strings.java:64 msgid "InNetPool" msgstr "" @@ -4705,10 +4775,12 @@ msgstr "" msgid "port" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 -msgid "configure bandwidth" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:146 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:318 +msgid "Certificates" msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:153 @@ -4742,6 +4814,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:149 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:155 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:154 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:149 @@ -4757,6 +4830,7 @@ msgstr "" #. We have intl defined when this is included, but not when compiled #. standalone. +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:333 @@ -4789,6 +4863,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:305 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:310 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:305 @@ -4804,6 +4879,7 @@ msgid "Refresh (s)" msgstr "" #. ditto +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:337 @@ -4836,6 +4912,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:309 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:339 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:314 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:309 @@ -4850,6 +4927,10 @@ msgstr "" msgid "Enable" msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 +msgid "configure bandwidth" +msgstr "" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:437 msgid "Bandwidth limiter" msgstr "" @@ -4926,7 +5007,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:501 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:477 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:639 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:587 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:558 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:509 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:461 @@ -5959,51 +6040,51 @@ msgstr "" msgid "Reseed URLs" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:541 msgid "Enable HTTP Proxy?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:543 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:545 msgid "HTTP Proxy Host" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:547 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:549 msgid "HTTP Proxy Port" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:551 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:553 msgid "Use HTTP Proxy Authorization?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:555 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:557 msgid "HTTP Proxy Username" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:559 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:561 msgid "HTTP Proxy Password" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:563 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:565 msgid "Enable HTTPS Proxy?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:567 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:569 msgid "HTTPS Proxy Host" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:571 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:573 msgid "HTTPS Proxy Port" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:575 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:577 msgid "Use HTTPS Proxy Authorization?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:579 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:581 msgid "HTTPS Proxy Username" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:583 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:585 msgid "HTTPS Proxy Password" msgstr "" @@ -6562,6 +6643,14 @@ msgstr "" msgid "I2P Network Database" msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:148 +msgid "News" +msgstr "" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:344 +msgid "Latest News" +msgstr "" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:152 msgid "WebApp Not Found" msgstr "" diff --git a/apps/routerconsole/locale/messages_da.po b/apps/routerconsole/locale/messages_da.po index 35a47e20583f262940b6e8691f13185efd9e408b..1a77cd9a8291c78f16283a30b349a6e3384befcf 100644 --- a/apps/routerconsole/locale/messages_da.po +++ b/apps/routerconsole/locale/messages_da.po @@ -11,10 +11,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:05+0000\n" -"PO-Revision-Date: 2015-07-17 01:31+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-05 17:17+0000\n" "Last-Translator: kytv <killyourtv@i2pmail.org>\n" -"Language-Team: Danish (http://www.transifex.com/projects/p/I2P/language/da/)\n" +"Language-Team: Danish (http://www.transifex.com/otf/I2P/language/da/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -133,19 +133,22 @@ msgid "IPs Permanently Banned" msgstr "IP'er Permanent Forbudt" #: ../../../router/java/src/net/i2p/router/Blocklist.java:959 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "From" msgstr "Fra" #: ../../../router/java/src/net/i2p/router/Blocklist.java:961 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "To" msgstr "Til" #: ../../../router/java/src/net/i2p/router/Blocklist.java:997 #: ../java/src/net/i2p/router/web/BanlistRenderer.java:48 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:652 +#: ../java/src/net/i2p/router/web/CertHelper.java:77 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:147 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:662 #: ../java/src/net/i2p/router/web/SummaryHelper.java:478 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:137 msgid "none" msgstr "ingen" @@ -283,43 +286,43 @@ msgstr "Afviser tunneler: Lukker ned!" msgid "Rejecting tunnels" msgstr "Afviser tunneler" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:212 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:210 #, java-format msgid "Reseeding: got router info from file ({0} successful, {1} errors)." msgstr "Reseeding: router info fra fil ({0} lykkedes, {1} fejl)." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:284 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:282 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:28 msgid "Reseeding" msgstr "Reseeder" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:307 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:305 #, java-format msgid "Reseed fetched only 1 router." msgid_plural "Reseed fetched only {0} routers." msgstr[0] "Reseed entede kun 1 router." msgstr[1] "Reseeder hentede kun {0} routere." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:314 msgid "Reseed failed." msgstr "Reseeding fejlede" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:317 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:315 #, java-format msgid "See {0} for help." msgstr "Se {0} for at fÃ¥ hjælp." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:318 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 msgid "reseed configuration page" msgstr "Reseeding konfigurationsside" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:566 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:697 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:564 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:695 msgid "Reseeding: fetching seed URL." msgstr "Reseeder: henter seed-URL." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:623 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:733 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:621 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:731 #, java-format msgid "" "Reseeding: fetching router info from seed URL ({0} successful, {1} errors)." @@ -384,12 +387,12 @@ msgid "Unreachable on any transport" msgstr "Utilgængelig for alle transporter" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:674 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:566 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:577 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:604 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:622 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1348 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2469 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2474 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:92 msgid "Status" msgstr "Status" @@ -404,12 +407,12 @@ msgid "{0} is used for outbound connections only" msgstr "{0} bruges kun til udadgÃ¥ende forbindelser" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:711 -#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:283 +#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:295 msgid "UPnP is not enabled" msgstr "UPnP er ikke aktiveret." #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:720 -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:167 msgid "Help" msgstr "Hjælp" @@ -433,7 +436,7 @@ msgstr "Definationer " #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:726 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1352 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2473 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:24 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:33 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:35 @@ -448,7 +451,7 @@ msgstr "Fjern-peeren, identificeret af router hash" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:727 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1353 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Dir" msgstr "Dir" @@ -475,14 +478,14 @@ msgstr "Hvor længe siden en pakke blev modtaget / sent" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:735 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1355 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2479 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 msgid "Idle" msgstr "Hvile" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:736 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1356 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "In/Out" msgstr "Ind/Ud" @@ -496,14 +499,14 @@ msgstr "Hvor længe siden denne forbindelse blev etableret" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:737 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1357 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:935 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2494 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:961 msgid "Up" msgstr "Op" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:738 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1358 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2491 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2496 msgid "Skew" msgstr "Skæv" @@ -552,7 +555,7 @@ msgstr "Nuværende maksimale sendte pakkestørrelse / anslÃ¥et maksimalt modtage #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:748 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1359 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2508 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 msgid "TX" msgstr "TX" @@ -562,7 +565,7 @@ msgstr "Det samlede antal af pakker sendt af peeren" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:749 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1360 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2510 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 msgid "RX" msgstr "RX" @@ -571,7 +574,7 @@ msgid "The total number of packets received from the peer" msgstr "Det samlede antal af pakker modtaget fra peeren" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:750 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2518 msgid "Dup TX" msgstr "Dub TX" @@ -580,7 +583,7 @@ msgid "The total number of packets retransmitted to the peer" msgstr "Det samlede antal pakker videreudsendes til peeren" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:751 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2520 msgid "Dup RX" msgstr "DUB RX" @@ -588,104 +591,104 @@ msgstr "DUB RX" msgid "The total number of duplicate packets received from the peer" msgstr "De samlede antal af gentagene pakker modtaget fra peeren" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:560 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:561 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 msgid "Service" msgstr "Service" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:564 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 msgid "WAN Common Interface Configuration" msgstr "WAN Almindelig Grænseoverflade Konfiguration" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:567 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:587 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:614 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:568 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:588 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:615 msgid "Type" msgstr "Type" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:569 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:589 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:570 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:590 msgid "Upstream" msgstr "Upstream" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:571 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:591 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:572 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:592 msgid "Downstream" msgstr "Downstream" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:575 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 msgid "WAN PPP Connection" msgstr "WAN PPP Forbindelse" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:583 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:610 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:288 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:314 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:584 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:611 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:295 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:321 msgid "Uptime" msgstr "Oppetid" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:593 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:616 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:594 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:617 msgid "External IP" msgstr "Ekstern IP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:597 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 msgid "Layer 3 Forwarding" msgstr "Lag 3 videsending " -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:599 msgid "Default Connection Service" msgstr "Standard Forbindelses Tjeneste" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:602 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 msgid "WAN IP Connection" msgstr "WAN IP Forbindelse" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:620 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 msgid "WAN Ethernet Link Configuration" msgstr "WAN Ethernet Link Konfiguration" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:641 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:642 msgid "Found Device" msgstr "Fundet Enhed" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:643 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:644 msgid "Subdevice" msgstr "Subenhed" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:664 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:665 msgid "UPnP Status" msgstr "UPnP Status" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:668 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:669 msgid "Disabled UPnP Devices" msgstr "Deaktiverede UPnP-enheder" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:682 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:683 msgid "" "UPnP has been disabled; Do you have more than one UPnP Internet Gateway " "Device on your LAN ?" msgstr "UPnP er blevet deaktiveret, du har mere end en UPnP Internet Gateway Enhed pÃ¥ din LAN forbindelse?" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:685 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:686 msgid "UPnP has not found any UPnP-aware, compatible device on your LAN." msgstr "UPnP har ikke fundet nogen UPnP-bevidst kompitabel enhed pÃ¥ din LAN forbindelse." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:693 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:694 #, java-format msgid "The current external IP address reported by UPnP is {0}" msgstr "Den nuværende eksterne IP adresse reporteret af UPnP er {0}" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:695 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:696 msgid "The current external IP address is not available." msgstr "Den nuværende eksterne IP adresse er ikke tilgængelig." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:699 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:700 #, java-format msgid "UPnP reports the maximum downstream bit rate is {0}bits/sec" msgstr "UPnP reporterer at den maksimale downstream bit hastighed er {0}bits/sek" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:701 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:702 #, java-format msgid "UPnP reports the maximum upstream bit rate is {0}bits/sec" msgstr "UPnP reporterer at den maksimale upstream bit hastighed er {0}bits/sek" @@ -694,12 +697,12 @@ msgstr "UPnP reporterer at den maksimale upstream bit hastighed er {0}bits/sek" #. {1,number,#####} prevents 12345 from being output as 12,345 in the English #. locale. #. If you want the digit separator in your locale, translate as {1}. -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:709 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:710 #, java-format msgid "{0} port {1,number,#####} was successfully forwarded by UPnP." msgstr "{0} port {1,number,#####} blev Ã¥bnet af UPnP med succes." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:711 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:712 #, java-format msgid "{0} port {1,number,#####} was not forwarded by UPnP." msgstr "{0} port {1,number,#####} blev ikke Ã¥bnet af UPnP." @@ -715,17 +718,17 @@ msgid "NTCP connections" msgstr "NTCP fobindelser " #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1345 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2466 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2471 msgid "Limit" msgstr "Grænse" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1346 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2467 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2472 msgid "Timeout" msgstr "Timeout" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1354 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2483 msgid "IPv6" msgstr "IPv6" @@ -738,126 +741,126 @@ msgid "Backlogged?" msgstr "Gemt fra tidligere?" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1375 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2532 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2537 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Inbound" msgstr "IndadgÃ¥ende" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1377 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2534 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2539 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Outbound" msgstr "UdadgÃ¥ende" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1432 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2699 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2704 #, java-format msgid "{0} peer" msgid_plural "{0} peers" msgstr[0] "{0} peer" msgstr[1] "{0} peers" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2465 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2470 msgid "UDP connections" msgstr "UDP forbindelser" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2475 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 msgid "Sort by peer hash" msgstr "Sorter efter peer hash" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Direction/Introduction" msgstr "Retning / Indledning" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 msgid "Sort by idle inbound" msgstr "Sorter efter hvilende indadgÃ¥ende" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 msgid "Sort by idle outbound" msgstr "Sorter efter hvilende udadgÃ¥ende" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 msgid "Sort by inbound rate" msgstr "Sorter efter indadgÃ¥ende sats" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 msgid "Sort by outbound rate" msgstr "Sorter efter udadgÃ¥ende sats" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 msgid "Sort by connection uptime" msgstr "Sorter efter forbindelsens oppetid" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 msgid "Sort by clock skew" msgstr "Sorter efter tidsforskel" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 msgid "Sort by congestion window" msgstr "Sorter efter overbelastnings vindue" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2502 msgid "Sort by slow start threshold" msgstr "Sorter efter langsom starttilstand" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2505 msgid "Sort by round trip time" msgstr "Sorter efter tiden fra start til slut" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2504 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 msgid "Sort by retransmission timeout" msgstr "Sorter efter genafsendelses timeout" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2507 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2512 msgid "Sort by outbound maximum transmit unit" msgstr "Sorter efter den maksimale udadgÃ¥ende overførsels-enhed" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 msgid "Sort by packets sent" msgstr "Sorter efter antal afsendte pakker" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2511 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 msgid "Sort by packets received" msgstr "Sorter efter antal modtaget pakker" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2519 msgid "Sort by packets retransmitted" msgstr "Sorter efter antal videresendte pakker " -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2521 msgid "Sort by packets received more than once" msgstr "Sorter efter pakker der er modtaget mere end én gang" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2536 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2541 msgid "We offered to introduce them" msgstr "Vi tilbød at indtroducere dem " -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2538 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2543 msgid "They offered to introduce us" msgstr "De tilbød at idtoducere os" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2542 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2547 msgid "Choked" msgstr "Kvalt" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2550 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2555 msgid "1 fail" msgstr "1 fejl" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2552 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2557 #, java-format msgid "{0} fails" msgstr "{0} fejle" #. 1 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2558 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2563 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:166 #: ../java/src/net/i2p/router/web/ProfilesHelper.java:13 msgid "Banned" msgstr "Banned" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2617 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2622 msgid "backlogged" msgstr "backlogged" @@ -874,96 +877,96 @@ msgstr "Dropper tunnelforespørgsler: høj job lag" msgid "Dropping tunnel requests: Overloaded" msgstr "Dropper tunnelforespørgsler: Overbelastede" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:693 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:695 msgid "Rejecting tunnels: Hidden mode" msgstr "Afviser tunneler: skjult mode" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:721 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:723 msgid "Rejecting tunnels: Request overload" msgstr "Afviser tunneler: Overbelastning af forespørgsler " -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:752 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:754 msgid "Rejecting tunnels: Connection limit" msgstr "Afviser tunneler: Grænse for forbindelser" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:964 -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:997 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:966 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:999 msgid "Dropping tunnel requests: High load" msgstr "Dropper tunnelforespørgsler: Høj belastning" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1076 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1078 msgid "Dropping tunnel requests: Queue time" msgstr "Dropper tunnelforespørgsler: Kø tid" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:884 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:895 #, java-format msgid "New plugin version {0} is available" msgstr "Nyt plugin version {0} er tilgængeligt" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:964 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:975 #, java-format msgid "Update check failed for plugin {0}" msgstr "Opdatering for plugin {0} kunne ikke tjekkes" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:968 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:979 #, java-format msgid "No new version is available for plugin {0}" msgstr "Der er ingen ny version tilgængelig for plugin {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:992 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1003 #, java-format msgid "{0}B transferred" msgstr "{0}B overført" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1051 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1062 #, java-format msgid "Install failed from {0}" msgstr "Installationen misslykkedes fra {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1053 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1064 #: ../java/src/net/i2p/router/update/UpdateRunner.java:298 #, java-format msgid "Transfer failed from {0}" msgstr "Overfører fil fra {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1328 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1339 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1403 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 #: ../java/src/net/i2p/router/web/SummaryHelper.java:715 msgid "Update downloaded" msgstr "Opdatering blev downloaded" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 msgid "Restarting" msgstr "Genstarter" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 msgid "Update verified" msgstr "Opdatering mislykkedes" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1381 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:189 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:306 #, java-format msgid "from {0}" msgstr "fra {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1396 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1407 #, java-format msgid "Unsigned update file from {0} is corrupt" msgstr "Usigneret opdaterings fil fra {0} er korrupt" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1425 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1436 #, java-format msgid "Failed copy to {0}" msgstr "Det mislykkedes at kopiere til {0}" -#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:47 +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:49 #: ../java/src/net/i2p/router/update/DevSU3UpdateRunner.java:40 #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:55 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:111 -#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:62 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:64 #: ../java/src/net/i2p/router/update/UnsignedUpdateRunner.java:41 #: ../java/src/net/i2p/router/update/UpdateRunner.java:155 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:573 @@ -972,6 +975,13 @@ msgstr "Det mislykkedes at kopiere til {0}" msgid "HTTP client proxy tunnel must be running" msgstr "HTTP-klient proxy tunnel skal køre" +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:83 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:242 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:88 +#, java-format +msgid "Requires Java version {0} but installed Java version is {1}" +msgstr "Kræver Java version {0} men installeret Java version er {1}" + #. set status before thread to ensure UI feedback #: ../java/src/net/i2p/router/update/DevSU3UpdateHandler.java:91 #: ../java/src/net/i2p/router/update/PluginUpdateHandler.java:82 @@ -981,24 +991,19 @@ msgstr "HTTP-klient proxy tunnel skal køre" msgid "Updating" msgstr "Opdatere" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:209 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:218 msgid "In-network updates disabled. Check package manager." msgstr "In - netværk opdateringer deaktiveret. Tjek pakke manager." -#: ../java/src/net/i2p/router/update/NewsFetcher.java:215 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:224 msgid "No write permission for I2P install directory." msgstr "Inge skriverettigheder til I2P installationsmappen." -#: ../java/src/net/i2p/router/update/NewsFetcher.java:223 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:232 #, java-format msgid "You must first update to version {0}" msgstr "Du skal først opdatere til version {0}" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:233 -#, java-format -msgid "Requires Java version {0} but installed Java version is {1}" -msgstr "Kræver Java version {0} men installeret Java version er {1}" - #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:62 #, java-format msgid "Checking for update of plugin {0}" @@ -1202,8 +1207,10 @@ msgid "unban now" msgstr "Unban nu" #: ../java/src/net/i2p/router/web/CSSHelper.java:149 -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../java/strings/Strings.java:29 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:217 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:221 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:219 @@ -1273,6 +1280,8 @@ msgstr "Unban nu" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:217 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:219 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:224 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:228 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:230 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:222 @@ -1298,6 +1307,16 @@ msgstr "Unban nu" msgid "I2P Router Console" msgstr "I2P Router-konsol" +#: ../java/src/net/i2p/router/web/CertHelper.java:25 +msgid "Local SSL Certificates" +msgstr "" + +#: ../java/src/net/i2p/router/web/CertHelper.java:46 +#: ../java/src/net/i2p/router/web/CertHelper.java:51 +#: ../java/strings/Strings.java:63 +msgid "I2PTunnel" +msgstr "I2PTunnel" + #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:62 msgid "Error updating the configuration - please see the error logs" msgstr "Fejl ved opdatering af konfiguration - Se venligst fejlloggen" @@ -1312,7 +1331,8 @@ msgstr "Konfigurationen er gemt med success " #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:98 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:622 #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:391 -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:151 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:109 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:160 msgid "" "Error saving the configuration (applied but not saved) - please see the " "error logs" @@ -1517,7 +1537,7 @@ msgid "Add Client" msgstr "Tilføj Klient" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:116 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:503 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:517 #: ../java/src/net/i2p/router/web/SummaryHelper.java:452 msgid "Client" msgstr "Klient" @@ -1549,9 +1569,9 @@ msgid "Plugin" msgstr "Plugin" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:248 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:304 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 msgid "Version" msgstr "Version" @@ -1572,9 +1592,9 @@ msgid "License" msgstr "Licens" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:294 -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/HomeHelper.java:171 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:157 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/HomeHelper.java:178 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:164 msgid "Website" msgstr "Hjemmeside" @@ -1609,7 +1629,7 @@ msgstr "Slet" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:21 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigUIHandler.java:19 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:970 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:996 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:496 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:516 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:532 @@ -1619,7 +1639,7 @@ msgstr "Slet valgte" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:23 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1015 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:494 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:502 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:514 @@ -1715,11 +1735,11 @@ msgstr "ikke fundet i nøgleringen" msgid "Invalid destination" msgstr "Ugyldig destination" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:82 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:84 msgid "Log overrides updated" msgstr "Log tilsidesætter opdateret log" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:163 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:165 msgid "Log configuration saved" msgstr "Log konfiguration gemt" @@ -1767,8 +1787,8 @@ msgstr "WARN" #: ../java/src/net/i2p/router/web/ConfigLoggingHelper.java:85 #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:170 -#: ../java/src/net/i2p/router/web/HomeHelper.java:208 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:904 +#: ../java/src/net/i2p/router/web/HomeHelper.java:215 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 msgid "Remove" msgstr "Fjern" @@ -1787,11 +1807,12 @@ msgid "Home Page" msgstr "Hjemmeside" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:328 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:335 msgid "Network" msgstr "Netværk" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:320 @@ -1825,6 +1846,7 @@ msgstr "Netværk" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:292 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:322 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:297 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:292 @@ -1843,8 +1865,8 @@ msgid "UI" msgstr "UI" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:179 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:486 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:186 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 #: ../java/strings/Strings.java:73 msgid "Tunnels" msgstr "Tunneler" @@ -1863,15 +1885,15 @@ msgid "Logging" msgstr "Logning" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:185 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:372 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:192 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:386 #: ../java/strings/Strings.java:68 msgid "Peers" msgstr "Peers" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:497 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:230 msgid "Stats" msgstr "statistik" @@ -1887,7 +1909,7 @@ msgstr "Avanceret" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:491 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:479 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:641 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:593 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:560 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:511 msgid "Save changes" @@ -2068,7 +2090,7 @@ msgid "Unsupported" msgstr "Ikke understøttet" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:24 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 msgid "Save changes and reseed now" msgstr "Gem ændringer og reseed nu" @@ -2116,7 +2138,16 @@ msgid_plural "Reseed successful, loaded {0} router infos from file" msgstr[0] "Reseed lykkedes, indlæst 1 Router infos fra fil" msgstr[1] "Reseed lykkedes, indlæst {0} Router infos fra fil" -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:149 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:99 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +msgid "Reset URL list" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:107 +msgid "URL list reset successfully" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:158 msgid "Configuration saved successfully." msgstr "Konfiguration er gemt med succes" @@ -2616,8 +2647,8 @@ msgid "User Name" msgstr "Brugernavn" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:183 -#: ../java/src/net/i2p/router/web/HomeHelper.java:235 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:972 +#: ../java/src/net/i2p/router/web/HomeHelper.java:242 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:998 msgid "Add" msgstr "Tilføje" @@ -2848,13 +2879,13 @@ msgstr "Hændelser " msgid "Details" msgstr "Detaljer" -#: ../java/src/net/i2p/router/web/FormHandler.java:251 +#: ../java/src/net/i2p/router/web/FormHandler.java:253 msgid "" "Invalid form submission, probably because you used the 'back' or 'reload' " "button on your browser. Please resubmit." msgstr "Ugyldig formularafsendelse, sandsynligvis fordi du brugte 'tilbage' eller 'reload' knappen pÃ¥ din browser. Prøv venligst at sende formularen igen." -#: ../java/src/net/i2p/router/web/FormHandler.java:253 +#: ../java/src/net/i2p/router/web/FormHandler.java:255 msgid "" "If the problem persists, verify that you have cookies enabled in your " "browser." @@ -2985,156 +3016,169 @@ msgstr "Gem indstillinger og tegn graferne igen." msgid "Graph settings saved" msgstr "Graf indstillinger blev gemt" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:229 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:236 msgid "Addressbook" msgstr "Adressebog" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:227 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:234 msgid "Manage your I2P hosts file here (I2P domain name resolution)" msgstr "Hold styr pÃ¥ din I2P host-fil her (I2P domænenavns vedtagelse)" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 msgid "Configure Bandwidth" msgstr "Konfigurer bÃ¥ndbredde" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:330 msgid "I2P Bandwidth Configuration" msgstr "I2P BÃ¥ndbredde Konfiguration" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Configure Language" msgstr "Konfigurere Sprog" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Console Language Selection" msgstr "Valg Af Sprog For Konsollen" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 msgid "Customize Home Page" msgstr "Tilpasse Hjemmeside" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:346 msgid "I2P Home Page Configuration" msgstr "I2P Hjemmesidekonfiguration" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:139 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:146 msgid "Anonymous webmail client" msgstr "Anonym webmail klient" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:141 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:148 msgid "Email" msgstr "Email" -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:251 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 msgid "I2P Router Help" msgstr "I2P Router Hjælp" -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:161 msgid "Router Console" msgstr "Router Konsol" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:145 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:152 msgid "Built-in anonymous BitTorrent Client" msgstr "Indbygget anonym BitTorrent klient" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:147 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:154 msgid "Torrents" msgstr "Torrents" -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:155 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:162 msgid "Local web server" msgstr "Lokal webserver" -#: ../java/src/net/i2p/router/web/HomeHelper.java:41 +#: ../java/src/net/i2p/router/web/HomeHelper.java:43 msgid "The Anoncoin project" msgstr "Anoncoin projektet" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug Reports" msgstr "Bug Rapporter" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug tracker" msgstr "Bug tracker" #. "colombo-bt.i2p" + S + _x("The Italian Bittorrent Resource") + S + "http #. ://colombo-bt.i2p/" + S + I + "colomboicon.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Dev Forum" msgstr "Dev Forum" -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Development forum" msgstr "Udviklingsforum" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Bittorrent tracker" msgstr "Bittorrent tracker" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 msgid "diftracker" msgstr "diftracker" -#: ../java/src/net/i2p/router/web/HomeHelper.java:46 +#: ../java/src/net/i2p/router/web/HomeHelper.java:48 msgid "I2P Applications" msgstr "I2P Applikationer" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +msgid "Anonymous cryptocurrency exchange" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "FAQ" msgstr "FAQ" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "Frequently Asked Questions" msgstr "Ofte Stillede SpørgsmÃ¥l" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Community forum" msgstr "Community forum" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Forum" msgstr "Forum" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "" "A public anonymous Git hosting site - supports pulling via Git and HTTP and " "pushing via SSH" msgstr "Et offentligt anonym Git hosting site - støtter pulling via Git og HTTP og pushing via SSH" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "Anonymous Git Hosting" msgstr "Anonym Git Hosting" -#: ../java/src/net/i2p/router/web/HomeHelper.java:50 +#: ../java/src/net/i2p/router/web/HomeHelper.java:53 msgid "HiddenGate" msgstr "HiddenGate" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "Anonymous wiki - share the knowledge" +msgstr "" + +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "I2P Wiki" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Microblog" msgstr "Mikroblog" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Your premier microblogging service on I2P" msgstr "Din førende microblog tjeneste pÃ¥ I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 msgid "Javadocs" msgstr "Javadocs" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical documentation" msgstr "Teknisk dokumentation" @@ -3142,91 +3186,98 @@ msgstr "Teknisk dokumentation" #. "http://jisko.i2p/" + S + I + "jisko_console_icon.png" + S + #. _x("Key Server") + S + _x("OpenPGP Keyserver") + S + "http://keys.i2p/" + S #. + I + "education.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +#: ../java/src/net/i2p/router/web/HomeHelper.java:60 msgid "Debian and Tahoe-LAFS repositories" msgstr "Debian og Tahoe-LAFS repositories" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free Web Hosting" msgstr "Free Web Hosting" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free eepsite hosting with PHP and MySQL" msgstr "Free eepsite hosting med PHP og MySQL" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "I2P Pastebin" msgstr "I2P Pastebin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "Pastebin" msgstr "Pastebin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:58 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 msgid "I2P News" msgstr "I2P Nyheder" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +msgid "Planet I2P" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Add-on directory" msgstr "Add-on mappe" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Plugins" msgstr "Plugins" -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Postman's Tracker" msgstr "Postmans Tracker" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "I2P home page" msgstr "I2P hjemmeside" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "Project Website" msgstr "Projektets hjemmeside" +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:68 +msgid "Russian News Feed" +msgstr "" + #. "Salt" + S + "salt.i2p" + S + "http://salt.i2p/" + S + I + #. "salt_console.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +#: ../java/src/net/i2p/router/web/HomeHelper.java:70 msgid "I2P Network Statistics" msgstr "I2P Netværksstatistik" -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical Docs" msgstr "Tekniske Dokumenter" -#: ../java/src/net/i2p/router/web/HomeHelper.java:65 +#: ../java/src/net/i2p/router/web/HomeHelper.java:72 msgid "Trac Wiki" msgstr "Trac Wiki" -#: ../java/src/net/i2p/router/web/HomeHelper.java:66 -msgid "Ugha's Wiki" -msgstr "Uhgas Wiki" - -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Seedless and the Robert BitTorrent applications" msgstr "Seedless og Robert BitTorrent applikationer" -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#. _x("Ugha's Wiki") + S + S + "http://ugha.i2p/" + S + I + +#. "billiard_marker.png" + S + +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Sponge's main site" msgstr "Sponges startside" -#: ../java/src/net/i2p/router/web/HomeHelper.java:108 +#: ../java/src/net/i2p/router/web/HomeHelper.java:115 msgid "The HTTP proxy is not up" msgstr "HTTP proxyn er ikke oppe" -#: ../java/src/net/i2p/router/web/HomeHelper.java:110 +#: ../java/src/net/i2p/router/web/HomeHelper.java:117 #, java-format msgid "Your browser is not properly configured to use the HTTP proxy at {0}" msgstr "Din browser er ikke korrekt konfigueret til at bruge HTTP proxyn pÃ¥ {0}" -#: ../java/src/net/i2p/router/web/HomeHelper.java:210 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:906 +#: ../java/src/net/i2p/router/web/HomeHelper.java:217 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:932 msgid "Name" msgstr "Navn" -#: ../java/src/net/i2p/router/web/HomeHelper.java:212 +#: ../java/src/net/i2p/router/web/HomeHelper.java:219 msgid "URL" msgstr "URL" @@ -3354,217 +3405,226 @@ msgstr "Alle Routere med Fulle Stats" msgid "LeaseSets" msgstr "LeaseSets" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:105 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:106 #: ../java/strings/Strings.java:69 msgid "Router" msgstr "Router" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:112 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:113 msgid "not found in network database" msgstr "ikke fundet i netværksdatabasen" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:156 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 msgid "LeaseSet" msgstr "LeaseSet" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:158 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:163 msgid "Local" msgstr "Lokal" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:160 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:165 msgid "Unpublished" msgstr "ikke publiceret" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:176 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:166 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:181 msgid "Destination" msgstr "Destination" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:173 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:185 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:178 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 msgid "Add to local addressbook" msgstr "Føje til den lokale adressebog" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:217 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:195 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:222 #, java-format msgid "Expires in {0}" msgstr "Udløber om {0}" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:192 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:219 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:197 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:224 #, java-format msgid "Expired {0} ago" msgstr "Udløbet for {0} siden" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Gateway" msgstr "Gateway" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 msgid "Lease" msgstr "Lease" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:213 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:218 msgid "Tunnel" msgstr "Tunnel" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:280 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:286 msgid "Not initialized" msgstr "Ikke initialiseret" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:330 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:342 msgid "Network Database Router Statistics" msgstr "Netværksdatabase Router statistik" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Count" msgstr "Antal" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 msgid "Transports" msgstr "Transporter" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Country" msgstr "Land" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:429 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:453 msgid "Our info" msgstr "Vores information" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:431 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:455 msgid "Peer info for" msgstr "Peer information for" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:433 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:457 msgid "Full entry" msgstr "Hele posten" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 #: ../java/src/net/i2p/router/web/SummaryHelper.java:152 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:726 msgid "Hidden" msgstr "Gemt" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 msgid "Updated" msgstr "Opdateret" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:441 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:444 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:465 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:468 #, java-format msgid "{0} ago" msgstr "{0} siden" #. shouldnt happen -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:443 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:447 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:467 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:471 msgid "Published" msgstr "Publiceret" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:449 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 msgid "Signing Key" msgstr "Underskriftsnøgle" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:451 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:475 msgid "Address(es)" msgstr "Adresse(r)" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:463 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:487 msgid "cost" msgstr "omkostninger" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "Hidden or starting up" msgstr "Gemt eller under opstart" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU" msgstr "SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU with introducers" msgstr "SSU med introdutører " -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP" msgstr "NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU" msgstr "NTCP og SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU with introducers" msgstr "NTCP og SSU med introdutører" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 Only SSU, introducers" msgstr "IPv6 kun SSU, introducers" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU" msgstr "IPv6 SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU, introducers" msgstr "IPv6, introducers" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP" msgstr "IPv6 NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU" msgstr "IPv6 NTCP, SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU, introducers" msgstr "IPv6 NTCP, SSU, introducers" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 Only NTCP, SSU, introducers" msgstr "IPv6 kun NTCP, SSU, introducers" -#: ../java/src/net/i2p/router/web/NewsHelper.java:295 +#: ../java/src/net/i2p/router/web/NewsFeedHelper.java:80 +#, java-format +msgid "by {0}" +msgstr "" + +#: ../java/src/net/i2p/router/web/NewsHelper.java:292 #, java-format msgid "News last updated {0} ago." msgstr "Nyheder blev sidst opdateret for {0} siden" -#: ../java/src/net/i2p/router/web/NewsHelper.java:301 +#: ../java/src/net/i2p/router/web/NewsHelper.java:298 #, java-format msgid "News last checked {0} ago." msgstr "Nyheder blev sidst tjekket for {0} siden" -#: ../java/src/net/i2p/router/web/NewsHelper.java:310 +#: ../java/src/net/i2p/router/web/NewsHelper.java:307 msgid "Hide news" msgstr "Skjul nyheder" -#: ../java/src/net/i2p/router/web/NewsHelper.java:313 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:647 +#: ../java/src/net/i2p/router/web/NewsHelper.java:310 msgid "Show news" msgstr "Vis nyheder" +#: ../java/src/net/i2p/router/web/NewsHelper.java:314 +msgid "Show all news" +msgstr "" + #: ../java/src/net/i2p/router/web/PluginStarter.java:140 msgid "Checking for plugin updates" msgstr "Tjekker for plugin opdateringer" #: ../java/src/net/i2p/router/web/PluginStarter.java:155 +#: ../java/src/net/i2p/router/web/PluginStarter.java:161 msgid "Plugin update check failed" msgstr "Plugin opdatering fejlede" -#: ../java/src/net/i2p/router/web/PluginStarter.java:193 +#: ../java/src/net/i2p/router/web/PluginStarter.java:199 #, java-format msgid "1 plugin updated" msgid_plural "{0} plugins updated" msgstr[0] "1 plugin opdateret" msgstr[1] "{0} plugins opdateret" -#: ../java/src/net/i2p/router/web/PluginStarter.java:195 +#: ../java/src/net/i2p/router/web/PluginStarter.java:201 msgid "Plugin update check complete" msgstr "Plugin opdatering tjek komplet" @@ -3630,7 +3690,7 @@ msgid "Failing" msgstr "Svigtende" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:135 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:411 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:425 msgid "Integrated" msgstr "Integreret" @@ -3899,277 +3959,287 @@ msgstr "Diagram over antal hændelser" msgid "Lifetime average value" msgstr "Livstids gennemsnitsværdi" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:121 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:128 msgid "I2P Router Help & FAQ" msgstr "I2P Router Hjælp & FAQ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:123 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:130 msgid "Help & FAQ" msgstr "Hjælp & FAQ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:131 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:138 msgid "" "Configure startup of clients and webapps (services); manually start dormant " "services" msgstr "Konfigurer opstart af klienter og webapps (tjenester); manuel start af hvilende tjenester" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:133 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:140 msgid "I2P Services" msgstr "I2P tjenester" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:169 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:176 msgid "Configure I2P Router" msgstr "Konfigurer I2P Router" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:171 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:178 msgid "I2P Internals" msgstr "I2P Internt" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:177 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:484 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:184 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:498 msgid "View existing tunnels and tunnel build status" msgstr "Se eksisterende tunneler og status pÃ¥ tunneler som bygges" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:183 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:370 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:190 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:384 msgid "Show all current peer connections" msgstr "Vis alle de nuværende klient forbindelser" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:189 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:196 msgid "Show recent peer performance profiles" msgstr "Vis seneste klient ydelsesprofiler" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:191 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:198 msgid "Profiles" msgstr "Profiler" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:195 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:202 msgid "Show list of all known I2P routers" msgstr "Vis liste over kendte I2P routere" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:197 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:204 msgid "NetDB" msgstr "NetDB" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:201 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:208 msgid "Health Report" msgstr "Sundheds Rapport" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:203 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:210 msgid "Logs" msgstr "Logs" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:214 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 msgid "Graph router performance" msgstr "Graf over routerens ydelse" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:216 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 msgid "Graphs" msgstr "Grafer" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:228 msgid "Textual router performance statistics" msgstr "Tekstbaseret statistik over routerens ydelse" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:233 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:240 #: ../java/src/net/i2p/router/web/SummaryHelper.java:438 msgid "Local Tunnels" msgstr "Lokale Tunneler" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:235 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:242 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:164 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:337 msgid "Hidden Services Manager" msgstr "Skjulte Tjenster Manager" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:253 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:260 msgid "General" msgstr "Genarelt " -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 msgid "" "Your Local Identity is your unique I2P router identity, similar to an ip " "address but tailored to I2P. " msgstr "Din lokale identitet er din unike I2P router identitet, tilsvarande en ip adresse men tilpasset I2P." -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:259 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:266 msgid "Never disclose this to anyone, as it can reveal your real world ip." msgstr "Aldrig vidaregive dette til nogen, da det kan afsløre din rigtige ip-adresse." -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:261 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:268 msgid "Local Identity" msgstr "Lokal Identitet" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:272 msgid "Your unique I2P router identity is" msgstr "Din unikke I2P router identitet er" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:269 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:276 msgid "never reveal it to anyone" msgstr "afslør aldrig denne for nogen" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:271 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 msgid "show" msgstr "vis" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:275 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:301 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:282 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:308 msgid "The version of the I2P software we are running" msgstr "Den version af I2P som vi kører." -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:292 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:318 msgid "How long we've been running for this session" msgstr "Hvor længe vi har været i gang i denne session" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:326 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:333 msgid "" "Help with configuring your firewall and router for optimal I2P performance" msgstr "Hjælp med konfiguration af firewall og router for den optimale I2P ydelse" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:337 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:344 msgid "See more information on the wiki" msgstr "Se mere information pÃ¥ wikien" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:339 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:346 msgid "Warning: ECDSA is not available. Update your Java or OS" msgstr "Advarsel: ECDSA er ikke tilgængelig. Opdater din Java eller OS" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:351 +#, java-format +msgid "Warning: Java version {0} is no longer supported by I2P." +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#, java-format +msgid "Update Java to version {0} or higher to receive I2P updates." +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:365 msgid "Configure I2P Updates" msgstr "Konfigurere I2P Opdateringer" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:367 msgid "I2P Update" msgstr "I2P Opdatering" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:378 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:392 msgid "Peers we've been talking to in the last few minutes/last hour" msgstr "Peers som vi snakket med de sidste minutter/ sidste time" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:381 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:395 msgid "Active" msgstr "Aktiv" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:390 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:404 msgid "The number of peers available for building client tunnels" msgstr "Antallet af peers til rÃ¥dighed at bygge klienttunneler " -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:393 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:407 msgid "Fast" msgstr "Hurtig" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:399 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:413 msgid "The number of peers available for building exploratory tunnels" msgstr "Antallet af peers til rÃ¥dighed at bygge sonderende tunneler" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:402 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:416 msgid "High capacity" msgstr "Høj kapacitet" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:408 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:422 msgid "The number of peers available for network database inquiries" msgstr "Antallet af peers til rÃ¥dighed for forespørgsler til netværksdatabasen " -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:417 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:431 msgid "The total number of peers in our network database" msgstr "Det samlade antal peers i vores netværkdatabase" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:420 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:434 msgid "Known" msgstr "Kendte" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:440 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:454 msgid "Configure router bandwidth allocation" msgstr "Konfigurer routerens bÃ¥ndbredde bevilling " -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:442 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:456 msgid "Bandwidth in/out" msgstr "BÃ¥ndbredde ind/ud" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:462 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:476 msgid "Total" msgstr "Total" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:469 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:483 msgid "Used" msgstr "Used" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:491 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:505 msgid "" "Used for building and testing tunnels, and communicating with floodfill " "peers" msgstr "Bruges til opbygning og afprøvning af tunneler, og kommunikation med floodfill peers" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:494 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:508 msgid "Exploratory" msgstr "Udforskende" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:514 msgid "Tunnels we are using to provide or access services on the network" msgstr "Tunneler, vi bruger til at levere eller fÃ¥ adgang til tjenester pÃ¥ netværket" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:509 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:523 msgid "" "Tunnels we are participating in, directly contributing bandwidth to the " "network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:512 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:526 msgid "Participating" msgstr "Deltagende" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:518 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:532 msgid "" "The ratio of tunnel hops we provide to tunnel hops we use - a value greater " "than 1.00 indicates a positive contribution to the network" msgstr "Forholdet mellem tunnel hops vi leverer med tunnel hops vi bruger - en værdi større end 1.00 indikerer et positivt bidrag til netværket" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:521 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:535 msgid "Share ratio" msgstr "Del-ratio " -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:534 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:548 msgid "What's in the router's job queue?" msgstr "Hvad er der i routerens jobkø?" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:536 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 msgid "Congestion" msgstr "Overfyldning" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:541 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:555 msgid "Indicates router performance" msgstr "Indikerer routerens ydeevne" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:544 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:558 msgid "Job lag" msgstr "Arbejdsforsinkelse" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:564 msgid "Indicates how quickly outbound messages to other I2P routers are sent" msgstr "Indikerer hvor hurtigt udgÃ¥ende beskeder til andre i2P routere er sendt" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:553 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:567 msgid "Message delay" msgstr "Besked fosinkelse" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:560 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:574 msgid "Round trip time for a tunnel test" msgstr "Tiden for en tunneltest fra start til slut" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:563 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:577 msgid "Tunnel lag" msgstr "Tunnel forsinkelse" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:570 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:584 msgid "Queued requests from other routers to participate in tunnels" msgstr "Kø anmodninger fra andre routere til at deltage i tunneler" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:573 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:587 msgid "Backlog" msgstr "Efterslæb" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:608 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:623 msgid "News & Updates" msgstr "Nyheder &s; Opdateringer" @@ -4282,17 +4352,21 @@ msgid "Click Shutdown and restart to install" msgstr "Klik pÃ¥ Luk Ned og Genstart for at installerer" #: ../java/src/net/i2p/router/web/SummaryHelper.java:720 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:735 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:737 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:749 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:761 #, java-format msgid "Version {0}" msgstr "Version {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:734 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:736 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:748 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:760 msgid "Update available" msgstr "Opdatering tilgængelig" #. Note to translators: parameter is a version, e.g. "0.8.4" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:758 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:784 #, java-format msgid "Download {0} Update" msgstr "Download {0} Opdatering" @@ -4301,7 +4375,7 @@ msgstr "Download {0} Opdatering" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:766 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:792 #, java-format msgid "Download Signed<br>Development Update<br>{0}" msgstr "Hent signerede <br> Development opdatering <br> {0}" @@ -4310,56 +4384,56 @@ msgstr "Hent signerede <br> Development opdatering <br> {0}" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:774 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 #, java-format msgid "Download Unsigned<br>Update {0}" msgstr "Download usigneret<br>Opdatering {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:798 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:824 msgid "Help with firewall configuration" msgstr "Hjælp med konfiguration af firewall" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:826 msgid "Check network connection and NAT/firewall" msgstr "Tjek NAT/firewall" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:819 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:845 msgid "Reseed" msgstr "Reseed" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:908 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:934 msgid "Order" msgstr "rækkefølge " -#: ../java/src/net/i2p/router/web/SummaryHelper.java:925 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:951 msgid "Top" msgstr "Top" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:956 msgid "Move to top" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:940 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:966 msgid "Move up" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:948 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:974 msgid "Down" msgstr "Ned" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:953 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:979 msgid "Move down" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:958 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:984 msgid "Bottom" msgstr "Bund" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:963 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 msgid "Move to bottom" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:975 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1001 msgid "Select a section to add" msgstr "Vælg et felt til at tilføje" @@ -4406,100 +4480,100 @@ msgstr "Klient tunneler for" msgid "dead" msgstr "død" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:70 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:69 msgid "Participating tunnels" msgstr "Deltagende tunneler" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "Receive on" msgstr "Modtager pÃ¥" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Expiration" msgstr "Ophører" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Send on" msgstr "Send pÃ¥" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Rate" msgstr "Hastighed" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Role" msgstr "Rolle" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Usage" msgstr "Forbrug" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:111 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:113 msgid "grace period" msgstr "Udsættelses periode" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:121 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 msgid "Outbound Endpoint" msgstr "UdadgÃ¥ende Endepunkt" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 msgid "Inbound Gateway" msgstr "IndadgÃ¥ende portÃ¥bning" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:127 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:174 msgid "Participant" msgstr "Deltager" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:130 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:133 #, java-format msgid "Limited display to the {0} tunnels with the highest usage" msgstr "Begrænsende skaerm til de {0} tunneler med den højeste forbrug" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:131 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:135 msgid "Inactive participating tunnels" msgstr "Inaktive deltagende tunneler" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:132 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:224 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:138 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:232 msgid "Lifetime bandwidth usage" msgstr "Livstids bÃ¥ndbredde forbrug" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Expiry" msgstr "Ophør" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:165 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 msgid "Participants" msgstr "Deltagernde " -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:177 msgid "Endpoint" msgstr "Endepunkt" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 #: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "Build in progress" msgstr "Opbygning er i gang" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 msgid "inbound" msgstr "IndadgÃ¥ende" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "outbound" msgstr "UdadgÃ¥ende" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:223 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:231 msgid "No tunnels; waiting for the grace period to end." msgstr "Ingen tunneler; venter pÃ¥ at udsættelses perioden er ovre." -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:225 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:233 msgid "in" msgstr "ind" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:234 msgid "out" msgstr "ud" @@ -4636,10 +4710,6 @@ msgstr "Kryptering" msgid "i2cp" msgstr "i2cp " -#: ../java/strings/Strings.java:63 -msgid "I2PTunnel" -msgstr "I2PTunnel" - #: ../java/strings/Strings.java:64 msgid "InNetPool" msgstr "InNetPoo" @@ -4686,10 +4756,12 @@ msgstr "nøgle" msgid "port" msgstr "port" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 -msgid "configure bandwidth" -msgstr "konfigurere bÃ¥ndbredde" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:146 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:318 +msgid "Certificates" +msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:153 @@ -4723,6 +4795,7 @@ msgstr "konfigurere bÃ¥ndbredde" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:149 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:155 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:154 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:149 @@ -4738,6 +4811,7 @@ msgstr "Routeren kører ikke" #. We have intl defined when this is included, but not when compiled #. standalone. +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:333 @@ -4770,6 +4844,7 @@ msgstr "Routeren kører ikke" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:305 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:310 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:305 @@ -4785,6 +4860,7 @@ msgid "Refresh (s)" msgstr "Genindlæs (ninger)" #. ditto +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:337 @@ -4817,6 +4893,7 @@ msgstr "Genindlæs (ninger)" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:309 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:339 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:314 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:309 @@ -4831,6 +4908,10 @@ msgstr "Genindlæs (ninger)" msgid "Enable" msgstr "Aktiver" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 +msgid "configure bandwidth" +msgstr "konfigurere bÃ¥ndbredde" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:437 msgid "Bandwidth limiter" msgstr "BÃ¥ndbredde begrænser" @@ -4907,7 +4988,7 @@ msgstr "Avanceret network konfigurationsside" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:501 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:477 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:639 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:587 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:558 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:509 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:461 @@ -5940,51 +6021,51 @@ msgstr "Brug kun non-SSL" msgid "Reseed URLs" msgstr "Reseed URLer" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:541 msgid "Enable HTTP Proxy?" msgstr "Aktiver HTTP proxy" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:543 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:545 msgid "HTTP Proxy Host" msgstr "HTTP Proxy udbyder" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:547 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:549 msgid "HTTP Proxy Port" msgstr "HTTP Proxy Port" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:551 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:553 msgid "Use HTTP Proxy Authorization?" msgstr "Brug HTTP proxy autorisation" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:555 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:557 msgid "HTTP Proxy Username" msgstr "HTTP proxy brugernavn" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:559 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:561 msgid "HTTP Proxy Password" msgstr "HTTP proxy adgangskode" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:563 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:565 msgid "Enable HTTPS Proxy?" msgstr "Aktivere HTTPS proxy" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:567 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:569 msgid "HTTPS Proxy Host" msgstr "HTTPS proxy vært" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:571 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:573 msgid "HTTPS Proxy Port" msgstr "HTTPS proxy port" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:575 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:577 msgid "Use HTTPS Proxy Authorization?" msgstr "Brug HTTPS proxy autorisation" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:579 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:581 msgid "HTTPS Proxy Username" msgstr "HTTPS proxy brugernavn" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:583 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:585 msgid "HTTPS Proxy Password" msgstr "HTTPS proxy adgangskode" @@ -6543,6 +6624,14 @@ msgstr "netværksdatabasen" msgid "I2P Network Database" msgstr "I2P Netværksdatabasen" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:148 +msgid "News" +msgstr "" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:344 +msgid "Latest News" +msgstr "" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:152 msgid "WebApp Not Found" msgstr "WebApp blev ikke fundet" diff --git a/apps/routerconsole/locale/messages_de.po b/apps/routerconsole/locale/messages_de.po index 993d8c9ec45dfffb727c0a6bc156a73a3a03db98..8b14b39d1ee9a3e7b56893b7be13364c4b950117 100644 --- a/apps/routerconsole/locale/messages_de.po +++ b/apps/routerconsole/locale/messages_de.po @@ -7,7 +7,7 @@ # Ashoka <martin.tastler@posteo.de>, 2013 # blabla, 2011 # blabla <blabla@trash-mail.com>, 2012,2014 -# blabla <blabla@trash-mail.com>, 2014 +# blabla <blabla@trash-mail.com>, 2014-2015 # blabla <blabla@trash-mail.com>, 2012 # D.A. Loader <>, 2012 # ducki2p <ducki2p@gmail.com>, 2011 @@ -26,8 +26,8 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:05+0000\n" -"PO-Revision-Date: 2015-08-21 21:13+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-06 08:21+0000\n" "Last-Translator: Lars Schimmer <echelon@i2pmail.org>\n" "Language-Team: German (http://www.transifex.com/otf/I2P/language/de/)\n" "MIME-Version: 1.0\n" @@ -148,19 +148,22 @@ msgid "IPs Permanently Banned" msgstr "permanent gesperrte IP's" #: ../../../router/java/src/net/i2p/router/Blocklist.java:959 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "From" msgstr "Von" #: ../../../router/java/src/net/i2p/router/Blocklist.java:961 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "To" msgstr "An" #: ../../../router/java/src/net/i2p/router/Blocklist.java:997 #: ../java/src/net/i2p/router/web/BanlistRenderer.java:48 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:652 +#: ../java/src/net/i2p/router/web/CertHelper.java:77 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:147 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:662 #: ../java/src/net/i2p/router/web/SummaryHelper.java:478 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:137 msgid "none" msgstr "keine" @@ -298,43 +301,43 @@ msgstr "Weise Tunnelanfragen zurück: Beende Router" msgid "Rejecting tunnels" msgstr "Weise Tunnelanfragen zurück" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:212 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:210 #, java-format msgid "Reseeding: got router info from file ({0} successful, {1} errors)." msgstr "Reseede: Bekam Router Informationen aus der Datei ({0} erfolgreich, {1} Fehler)." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:284 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:282 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:28 msgid "Reseeding" msgstr "Reseeden" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:307 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:305 #, java-format msgid "Reseed fetched only 1 router." msgid_plural "Reseed fetched only {0} routers." msgstr[0] "Nur Daten eines Routers per Reseed erhalten" msgstr[1] "Nur {0} Routerinformationen per Reseed erhalten" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:314 msgid "Reseed failed." msgstr "Reseed fehlgeschlagen" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:317 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:315 #, java-format msgid "See {0} for help." msgstr "Für Hilfe, siehe {0}!" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:318 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 msgid "reseed configuration page" msgstr "Konfigurationsseite für das Reseeden" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:566 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:697 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:564 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:695 msgid "Reseeding: fetching seed URL." msgstr "Reseed: Hole die Seed-URL" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:623 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:733 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:621 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:731 #, java-format msgid "" "Reseeding: fetching router info from seed URL ({0} successful, {1} errors)." @@ -399,12 +402,12 @@ msgid "Unreachable on any transport" msgstr "Unerreichbar auf allen Transporten" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:674 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:566 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:577 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:604 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:622 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1348 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2469 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2474 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:92 msgid "Status" msgstr "Status" @@ -419,12 +422,12 @@ msgid "{0} is used for outbound connections only" msgstr "{0} wird nur für ausgehende Verbindungen genutzt" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:711 -#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:283 +#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:295 msgid "UPnP is not enabled" msgstr "UPnP ist nicht aktiviert." #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:720 -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:167 msgid "Help" msgstr "Hilfe" @@ -448,7 +451,7 @@ msgstr "Definitionen" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:726 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1352 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2473 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:24 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:33 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:35 @@ -463,7 +466,7 @@ msgstr "Der entfernte Teilnehmer, über seine Router-Prüfsumme erkannt" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:727 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1353 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Dir" msgstr "Richtung" @@ -490,14 +493,14 @@ msgstr "vergangene Zeit seit ein Paket empfangen/gesendet wurde" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:735 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1355 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2479 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 msgid "Idle" msgstr "untätig" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:736 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1356 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "In/Out" msgstr "ein-/ausgehend" @@ -511,14 +514,14 @@ msgstr "wie lange die Verbindung schon besteht" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:737 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1357 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:935 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2494 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:961 msgid "Up" msgstr "verbunden" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:738 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1358 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2491 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2496 msgid "Skew" msgstr "Differenz" @@ -567,7 +570,7 @@ msgstr "derzeit maximale Größe der gesendeten Pakete / geschätzte maximale Gr #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:748 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1359 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2508 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 msgid "TX" msgstr "gesendet" @@ -577,7 +580,7 @@ msgstr "Gesamtanzahl der an den Teilnehmer gesendeten Pakete" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:749 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1360 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2510 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 msgid "RX" msgstr "empfangen" @@ -586,7 +589,7 @@ msgid "The total number of packets received from the peer" msgstr "Gesamtanzahl der vom Teilnehmer empfangenen Pakete" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:750 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2518 msgid "Dup TX" msgstr "mehrfach gesendet" @@ -595,7 +598,7 @@ msgid "The total number of packets retransmitted to the peer" msgstr "Gesamtanzahl der an den Teilnehmer erneut gesendeten Pakete" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:751 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2520 msgid "Dup RX" msgstr "mehrfach empfangen" @@ -603,104 +606,104 @@ msgstr "mehrfach empfangen" msgid "The total number of duplicate packets received from the peer" msgstr "Gesamtanzahl der vom Teilnehmer erneut empfangenen Pakete" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:560 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:561 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 msgid "Service" msgstr "Service" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:564 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 msgid "WAN Common Interface Configuration" msgstr "Konfiguration des WAN Common Interface" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:567 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:587 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:614 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:568 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:588 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:615 msgid "Type" msgstr "Typ" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:569 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:589 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:570 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:590 msgid "Upstream" msgstr "Upstream" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:571 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:591 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:572 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:592 msgid "Downstream" msgstr "Downstream" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:575 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 msgid "WAN PPP Connection" msgstr "WAN-PPP-Verbindung" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:583 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:610 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:288 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:314 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:584 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:611 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:295 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:321 msgid "Uptime" msgstr "Laufzeit" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:593 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:616 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:594 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:617 msgid "External IP" msgstr "externe IP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:597 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 msgid "Layer 3 Forwarding" msgstr "Schicht-3-Weiterleitung" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:599 msgid "Default Connection Service" msgstr "Standardverbingungsservice" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:602 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 msgid "WAN IP Connection" msgstr "WAN-IP-Verbindungen" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:620 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 msgid "WAN Ethernet Link Configuration" msgstr "WAN-Ethernet-Verbindungskonfiguration" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:641 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:642 msgid "Found Device" msgstr "Gerät gefunden" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:643 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:644 msgid "Subdevice" msgstr "Untergerät" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:664 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:665 msgid "UPnP Status" msgstr "UPnP-Status" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:668 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:669 msgid "Disabled UPnP Devices" msgstr "Deaktivierte UPnP Geräte" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:682 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:683 msgid "" "UPnP has been disabled; Do you have more than one UPnP Internet Gateway " "Device on your LAN ?" msgstr "UPnP wurde deaktiviert; Hast du mehr als ein UPnP-Internet-Gateway in deinem LAN ?" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:685 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:686 msgid "UPnP has not found any UPnP-aware, compatible device on your LAN." msgstr "UPnP hat keine UPnP-fähigen, kompatiblen Geräte in deinem LAN." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:693 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:694 #, java-format msgid "The current external IP address reported by UPnP is {0}" msgstr "Die gegenwärtige von UPnP gemeldete externe IP-Adresse ist {0}." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:695 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:696 msgid "The current external IP address is not available." msgstr "Die gegenwärtige externe IP-Adresse steht nicht zur Verfügung." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:699 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:700 #, java-format msgid "UPnP reports the maximum downstream bit rate is {0}bits/sec" msgstr "UPnP meldet eine maximale Downstream-Bitrate von {0} bits/s." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:701 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:702 #, java-format msgid "UPnP reports the maximum upstream bit rate is {0}bits/sec" msgstr "UPnP meldet eine maximale Upstream-Bitrate von {0} bits/s." @@ -709,12 +712,12 @@ msgstr "UPnP meldet eine maximale Upstream-Bitrate von {0} bits/s." #. {1,number,#####} prevents 12345 from being output as 12,345 in the English #. locale. #. If you want the digit separator in your locale, translate as {1}. -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:709 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:710 #, java-format msgid "{0} port {1,number,#####} was successfully forwarded by UPnP." msgstr "{0} Port {1,number,#####} wurde erfolgreich durch UPnP weitergeleitet." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:711 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:712 #, java-format msgid "{0} port {1,number,#####} was not forwarded by UPnP." msgstr "{0} Port {1,number,#####} wurde nicht per UPnP weitergeleitet." @@ -730,17 +733,17 @@ msgid "NTCP connections" msgstr "NTCP-Verbindungen" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1345 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2466 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2471 msgid "Limit" msgstr "obere Grenze" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1346 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2467 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2472 msgid "Timeout" msgstr "Timeout" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1354 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2483 msgid "IPv6" msgstr "IPv6" @@ -753,126 +756,126 @@ msgid "Backlogged?" msgstr "Rückstau" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1375 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2532 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2537 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Inbound" msgstr "ankommend" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1377 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2534 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2539 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Outbound" msgstr "abgehend" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1432 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2699 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2704 #, java-format msgid "{0} peer" msgid_plural "{0} peers" msgstr[0] "{0} Teilnehmer" msgstr[1] "{0} Teilnehmer" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2465 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2470 msgid "UDP connections" msgstr "UDP-Verbindungen" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2475 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 msgid "Sort by peer hash" msgstr "Nach Router-Prüfsumme sortieren" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Direction/Introduction" msgstr "Richtung/Bekanntmachung" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 msgid "Sort by idle inbound" msgstr "Sortieren nach untätigen eingehenden Verbindungen" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 msgid "Sort by idle outbound" msgstr "Sortieren nach untätigen ausgehenden Verbindungen" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 msgid "Sort by inbound rate" msgstr "Sortieren nach eingehender Transferrate" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 msgid "Sort by outbound rate" msgstr "Sortieren nach ausgehender Transferrate" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 msgid "Sort by connection uptime" msgstr "Sortieren nach Lebensdauer der Verbindung" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 msgid "Sort by clock skew" msgstr "Sortieren nach Zeitunterschied" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 msgid "Sort by congestion window" msgstr "Sortieren nach Größe des Pufferspeichers" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2502 msgid "Sort by slow start threshold" msgstr "Sortieren nach Grenzwert des verzögerten Startens" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2505 msgid "Sort by round trip time" msgstr "Sortieren nach Rundenzeit" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2504 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 msgid "Sort by retransmission timeout" msgstr "Sortieren nach Timeout beim erneuten Senden" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2507 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2512 msgid "Sort by outbound maximum transmit unit" msgstr "Sortieren nach maximaler ausgehender Transferpaketgröße" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 msgid "Sort by packets sent" msgstr "Sortieren nach Anzahl gesendeter Pakete" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2511 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 msgid "Sort by packets received" msgstr "Sortieren nach Anzahl empfangener Pakete" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2519 msgid "Sort by packets retransmitted" msgstr "Sortieren nach Anzahl erneut gesendeter Pakete" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2521 msgid "Sort by packets received more than once" msgstr "Sortieren nach Anzahl mehrfach empfangener Pakete" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2536 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2541 msgid "We offered to introduce them" msgstr "Wir bieten an, diese bekannt zu machen" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2538 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2543 msgid "They offered to introduce us" msgstr "Diese boten an, uns bekannt zu machen" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2542 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2547 msgid "Choked" msgstr "gedrosselt" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2550 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2555 msgid "1 fail" msgstr "1 Fehler" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2552 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2557 #, java-format msgid "{0} fails" msgstr "{0} fehlgeschlagen" #. 1 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2558 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2563 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:166 #: ../java/src/net/i2p/router/web/ProfilesHelper.java:13 msgid "Banned" msgstr "Gesperrt" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2617 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2622 msgid "backlogged" msgstr "im Rückstand" @@ -889,96 +892,96 @@ msgstr "Tunnelanforderungen werden verworfen: Hohe Aufgabenverzögerung" msgid "Dropping tunnel requests: Overloaded" msgstr "Ignoriere Tunnelanfragen: überlastet" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:693 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:695 msgid "Rejecting tunnels: Hidden mode" msgstr "Weise Tunnel ab: Versteckter Modus" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:721 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:723 msgid "Rejecting tunnels: Request overload" msgstr "Weise Tunnelanfragen zurück: Überlast an Anfragen" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:752 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:754 msgid "Rejecting tunnels: Connection limit" msgstr "Weise Tunnelanfragen zurück: Verbindungslimit erreicht" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:964 -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:997 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:966 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:999 msgid "Dropping tunnel requests: High load" msgstr "Ignoriere Tunnelanfragen: Hohe Last" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1076 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1078 msgid "Dropping tunnel requests: Queue time" msgstr "Ignoriere Tunnelanfragen: zu lange Warteschlange" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:884 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:895 #, java-format msgid "New plugin version {0} is available" msgstr "Neue Version des Zusatzprogramms ist verfügbar ({0})" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:964 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:975 #, java-format msgid "Update check failed for plugin {0}" msgstr "Überprüfung auf neue Version des Zusatzprogramms {0} fehlgeschlagen" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:968 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:979 #, java-format msgid "No new version is available for plugin {0}" msgstr "Keine neue Version des Zusatzprogrammes {0} verfügbar" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:992 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1003 #, java-format msgid "{0}B transferred" msgstr "{0}Bytes übertragen" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1051 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1062 #, java-format msgid "Install failed from {0}" msgstr "Installation von {0} fehlgeschlagen" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1053 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1064 #: ../java/src/net/i2p/router/update/UpdateRunner.java:298 #, java-format msgid "Transfer failed from {0}" msgstr "Übertragung von {0} fehlgeschlagen" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1328 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1339 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1403 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 #: ../java/src/net/i2p/router/web/SummaryHelper.java:715 msgid "Update downloaded" msgstr "Aktualisierung heruntergeladen" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 msgid "Restarting" msgstr "Starte neu" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 msgid "Update verified" msgstr "Aktualisierung verifiziert" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1381 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:189 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:306 #, java-format msgid "from {0}" msgstr "von {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1396 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1407 #, java-format msgid "Unsigned update file from {0} is corrupt" msgstr "Unsignierte Aktualisierungsdatei von {0} ist fehlerhaft" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1425 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1436 #, java-format msgid "Failed copy to {0}" msgstr "Kopieren nach {0} fehlgeschlagen" -#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:47 +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:49 #: ../java/src/net/i2p/router/update/DevSU3UpdateRunner.java:40 #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:55 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:111 -#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:62 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:64 #: ../java/src/net/i2p/router/update/UnsignedUpdateRunner.java:41 #: ../java/src/net/i2p/router/update/UpdateRunner.java:155 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:573 @@ -987,6 +990,13 @@ msgstr "Kopieren nach {0} fehlgeschlagen" msgid "HTTP client proxy tunnel must be running" msgstr "Proxy-Tunnel des HTTP-Clients muss aktiv sein" +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:83 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:242 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:88 +#, java-format +msgid "Requires Java version {0} but installed Java version is {1}" +msgstr "Benötigt Java Version {0}, Sie haben aber Java Version {1} installiert" + #. set status before thread to ensure UI feedback #: ../java/src/net/i2p/router/update/DevSU3UpdateHandler.java:91 #: ../java/src/net/i2p/router/update/PluginUpdateHandler.java:82 @@ -996,24 +1006,19 @@ msgstr "Proxy-Tunnel des HTTP-Clients muss aktiv sein" msgid "Updating" msgstr "Aktualisiere" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:209 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:218 msgid "In-network updates disabled. Check package manager." msgstr "Netzwerkinterne Aktualisierungen deaktiviert. Schauen Sie im Paket Manager nach." -#: ../java/src/net/i2p/router/update/NewsFetcher.java:215 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:224 msgid "No write permission for I2P install directory." msgstr "Keine Schreibberechtigung im I2P Installations Verzeichnis." -#: ../java/src/net/i2p/router/update/NewsFetcher.java:223 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:232 #, java-format msgid "You must first update to version {0}" msgstr "Sie müssen zuerst auf Version {0} upgraden." -#: ../java/src/net/i2p/router/update/NewsFetcher.java:233 -#, java-format -msgid "Requires Java version {0} but installed Java version is {1}" -msgstr "Benötigt Java Version {0}, Sie haben aber Java Version {1} installiert" - #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:62 #, java-format msgid "Checking for update of plugin {0}" @@ -1217,8 +1222,10 @@ msgid "unban now" msgstr "Bann aufheben" #: ../java/src/net/i2p/router/web/CSSHelper.java:149 -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../java/strings/Strings.java:29 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:217 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:221 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:219 @@ -1288,6 +1295,8 @@ msgstr "Bann aufheben" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:217 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:219 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:224 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:228 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:230 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:222 @@ -1313,6 +1322,16 @@ msgstr "Bann aufheben" msgid "I2P Router Console" msgstr "I2P-Routerkonsole" +#: ../java/src/net/i2p/router/web/CertHelper.java:25 +msgid "Local SSL Certificates" +msgstr "Lokale SSL Zertifikate" + +#: ../java/src/net/i2p/router/web/CertHelper.java:46 +#: ../java/src/net/i2p/router/web/CertHelper.java:51 +#: ../java/strings/Strings.java:63 +msgid "I2PTunnel" +msgstr "I2PTunnel" + #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:62 msgid "Error updating the configuration - please see the error logs" msgstr "Fehler beim Aktualisieren der Konfiguration - Bitte schauen Sie in die Fehlerprotokolle!" @@ -1327,7 +1346,8 @@ msgstr "Konfiguration erfolgreich gespeichert" #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:98 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:622 #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:391 -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:151 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:109 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:160 msgid "" "Error saving the configuration (applied but not saved) - please see the " "error logs" @@ -1532,7 +1552,7 @@ msgid "Add Client" msgstr "Klienten hinzufügen" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:116 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:503 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:517 #: ../java/src/net/i2p/router/web/SummaryHelper.java:452 msgid "Client" msgstr "Klient" @@ -1564,9 +1584,9 @@ msgid "Plugin" msgstr "Zusatzprogramm" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:248 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:304 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 msgid "Version" msgstr "Version" @@ -1587,9 +1607,9 @@ msgid "License" msgstr "Lizenz" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:294 -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/HomeHelper.java:171 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:157 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/HomeHelper.java:178 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:164 msgid "Website" msgstr "Webseite" @@ -1624,7 +1644,7 @@ msgstr "löschen" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:21 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigUIHandler.java:19 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:970 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:996 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:496 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:516 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:532 @@ -1634,7 +1654,7 @@ msgstr "Lösche ausgewähltes" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:23 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1015 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:494 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:502 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:514 @@ -1730,11 +1750,11 @@ msgstr "nicht im Schlüsselbund gefunden" msgid "Invalid destination" msgstr "ungültiges Ziel" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:82 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:84 msgid "Log overrides updated" msgstr "Zusatzoptionen zu Berichten aktualisiert" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:163 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:165 msgid "Log configuration saved" msgstr "Protokollkonfiguration gespeichert." @@ -1782,8 +1802,8 @@ msgstr "WARNUNG" #: ../java/src/net/i2p/router/web/ConfigLoggingHelper.java:85 #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:170 -#: ../java/src/net/i2p/router/web/HomeHelper.java:208 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:904 +#: ../java/src/net/i2p/router/web/HomeHelper.java:215 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 msgid "Remove" msgstr "Entfernen" @@ -1802,11 +1822,12 @@ msgid "Home Page" msgstr "Homepage" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:328 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:335 msgid "Network" msgstr "Netzwerk" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:320 @@ -1840,6 +1861,7 @@ msgstr "Netzwerk" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:292 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:322 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:297 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:292 @@ -1858,8 +1880,8 @@ msgid "UI" msgstr "Benutzerschnittstelle" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:179 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:486 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:186 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 #: ../java/strings/Strings.java:73 msgid "Tunnels" msgstr "Tunnel" @@ -1878,15 +1900,15 @@ msgid "Logging" msgstr "Statusmeldungen" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:185 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:372 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:192 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:386 #: ../java/strings/Strings.java:68 msgid "Peers" msgstr "Teilnehmer" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:497 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:230 msgid "Stats" msgstr "Statistiken" @@ -1902,7 +1924,7 @@ msgstr "Erweitert" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:491 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:479 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:641 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:593 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:560 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:511 msgid "Save changes" @@ -2083,7 +2105,7 @@ msgid "Unsupported" msgstr "Nicht unterstützt" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:24 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 msgid "Save changes and reseed now" msgstr "Änderungen speichern und Reseed beginnen" @@ -2131,7 +2153,16 @@ msgid_plural "Reseed successful, loaded {0} router infos from file" msgstr[0] "Reseed erfolgreich, {0} Router Informationen aus Datei geladen" msgstr[1] "Reseed erfolgreich, {0} Router Informationen aus Datei geladen" -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:149 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:99 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +msgid "Reset URL list" +msgstr "URL Liste zurücksetzen" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:107 +msgid "URL list reset successfully" +msgstr "URL Liste erfolgreich zurückgesetzt" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:158 msgid "Configuration saved successfully." msgstr "Konfiguration erfolgreich gespeichert" @@ -2631,8 +2662,8 @@ msgid "User Name" msgstr "Benutzername" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:183 -#: ../java/src/net/i2p/router/web/HomeHelper.java:235 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:972 +#: ../java/src/net/i2p/router/web/HomeHelper.java:242 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:998 msgid "Add" msgstr "Hinzufügen" @@ -2863,13 +2894,13 @@ msgstr "Ereignisse" msgid "Details" msgstr "Details" -#: ../java/src/net/i2p/router/web/FormHandler.java:251 +#: ../java/src/net/i2p/router/web/FormHandler.java:253 msgid "" "Invalid form submission, probably because you used the 'back' or 'reload' " "button on your browser. Please resubmit." msgstr "Ungültige Übertragung der eingegebenen Daten, möglicherweise da Sie den 'Zurück'- oder 'Neu Laden'-Knopf in Ihrem Browser gedrückt haben. Bitte erneut senden." -#: ../java/src/net/i2p/router/web/FormHandler.java:253 +#: ../java/src/net/i2p/router/web/FormHandler.java:255 msgid "" "If the problem persists, verify that you have cookies enabled in your " "browser." @@ -3000,156 +3031,169 @@ msgstr "Einstellungen speichern und Graphen neuzeichnen" msgid "Graph settings saved" msgstr "Einstellungen zu Grafiken gespeichert" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:229 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:236 msgid "Addressbook" msgstr "Adressbuch" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:227 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:234 msgid "Manage your I2P hosts file here (I2P domain name resolution)" msgstr "Verwalten Sie Ihre I2P-Adressen hier (I2P-Namensauflösung)" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 msgid "Configure Bandwidth" msgstr "Konfiguriere Bandbreite" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:330 msgid "I2P Bandwidth Configuration" msgstr "I2P-Bandbreitenkonfiguration" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Configure Language" msgstr "Spracheinstellungen" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Console Language Selection" msgstr "Auswahl der Konsolensprache" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 msgid "Customize Home Page" msgstr "Homepage anpassen" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:346 msgid "I2P Home Page Configuration" msgstr "I2P-Homepagekonfiguration" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:139 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:146 msgid "Anonymous webmail client" msgstr "Webmail-Klient für anonyme E-Mail" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:141 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:148 msgid "Email" msgstr "E-Mail" -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:251 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 msgid "I2P Router Help" msgstr "Hilfe zum I2P-Router" -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:161 msgid "Router Console" msgstr "I2P-Routerkonsole" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:145 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:152 msgid "Built-in anonymous BitTorrent Client" msgstr "Integrierter anonymer BitTorrent-Klient" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:147 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:154 msgid "Torrents" msgstr "BitTorrent" -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:155 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:162 msgid "Local web server" msgstr "Lokaler Webserver" -#: ../java/src/net/i2p/router/web/HomeHelper.java:41 +#: ../java/src/net/i2p/router/web/HomeHelper.java:43 msgid "The Anoncoin project" msgstr "Das Anoncoin Projekt" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug Reports" msgstr "Fehlerberichte" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug tracker" msgstr "Bug-Tracker" #. "colombo-bt.i2p" + S + _x("The Italian Bittorrent Resource") + S + "http #. ://colombo-bt.i2p/" + S + I + "colomboicon.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Dev Forum" msgstr "Entwicklerforum" -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Development forum" msgstr "Entwicklerforum" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Bittorrent tracker" msgstr "Bittorent-Tracker" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 msgid "diftracker" msgstr "driftracker" -#: ../java/src/net/i2p/router/web/HomeHelper.java:46 +#: ../java/src/net/i2p/router/web/HomeHelper.java:48 msgid "I2P Applications" msgstr "I2P-Anwendungen" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +msgid "Anonymous cryptocurrency exchange" +msgstr "Anonymer Martkplatz für Kryptowährungen" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "FAQ" msgstr "FAQ" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "Frequently Asked Questions" msgstr "Häufig gestellte Fragen" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Community forum" msgstr "Gemeinschaftsforum" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Forum" msgstr "Forum" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "" "A public anonymous Git hosting site - supports pulling via Git and HTTP and " "pushing via SSH" msgstr "Ein öffentlicher Git-Hoster - unterstützt pulling über HTTP und pushing über SSH" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "Anonymous Git Hosting" msgstr "Anonymer Git-Host" -#: ../java/src/net/i2p/router/web/HomeHelper.java:50 +#: ../java/src/net/i2p/router/web/HomeHelper.java:53 msgid "HiddenGate" msgstr "Versteckter Übergang" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "Anonymous wiki - share the knowledge" +msgstr "Anonymes Wiki - Teile das Wissen" + +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "I2P Wiki" +msgstr "I2P Wiki" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Microblog" msgstr "Mikroblog" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Your premier microblogging service on I2P" msgstr "Microblogging-Service in I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 msgid "Javadocs" msgstr "Javadocs" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical documentation" msgstr "Technische Dokumentation" @@ -3157,91 +3201,98 @@ msgstr "Technische Dokumentation" #. "http://jisko.i2p/" + S + I + "jisko_console_icon.png" + S + #. _x("Key Server") + S + _x("OpenPGP Keyserver") + S + "http://keys.i2p/" + S #. + I + "education.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +#: ../java/src/net/i2p/router/web/HomeHelper.java:60 msgid "Debian and Tahoe-LAFS repositories" msgstr "Debian und Tahoe-LAFS Repositories" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free Web Hosting" msgstr "Freies Web Hosting" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free eepsite hosting with PHP and MySQL" msgstr "Freies Eepsite Hosting mit PHP und MySQL" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "I2P Pastebin" msgstr "I2P-Pastebin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "Pastebin" msgstr "Pastebin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:58 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 msgid "I2P News" msgstr "I2P-Neuigkeiten" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +msgid "Planet I2P" +msgstr "Planet I2P" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Add-on directory" msgstr "Verzeichnis der Erweiterungen" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Plugins" msgstr "Zusatzprogramme" -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Postman's Tracker" msgstr "Postmans Tracker" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "I2P home page" msgstr "I2P-Homepage" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "Project Website" msgstr "Projektwebsite" +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:68 +msgid "Russian News Feed" +msgstr "Russischer Neuigkeiten Feed" + #. "Salt" + S + "salt.i2p" + S + "http://salt.i2p/" + S + I + #. "salt_console.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +#: ../java/src/net/i2p/router/web/HomeHelper.java:70 msgid "I2P Network Statistics" msgstr "I2P-Netzwerkstatistiken" -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical Docs" msgstr "Technische Docs" -#: ../java/src/net/i2p/router/web/HomeHelper.java:65 +#: ../java/src/net/i2p/router/web/HomeHelper.java:72 msgid "Trac Wiki" msgstr "Trac-Wiki" -#: ../java/src/net/i2p/router/web/HomeHelper.java:66 -msgid "Ugha's Wiki" -msgstr "Ughas Wiki" - -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Seedless and the Robert BitTorrent applications" msgstr "Seedless und die BitTorrent-Anwendung Robert" -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#. _x("Ugha's Wiki") + S + S + "http://ugha.i2p/" + S + I + +#. "billiard_marker.png" + S + +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Sponge's main site" msgstr "Sponge Hauptseite" -#: ../java/src/net/i2p/router/web/HomeHelper.java:108 +#: ../java/src/net/i2p/router/web/HomeHelper.java:115 msgid "The HTTP proxy is not up" msgstr "Der HTTP-Proxy ist nicht bereit" -#: ../java/src/net/i2p/router/web/HomeHelper.java:110 +#: ../java/src/net/i2p/router/web/HomeHelper.java:117 #, java-format msgid "Your browser is not properly configured to use the HTTP proxy at {0}" msgstr "Dein Browser ist nicht richtig konfiguriert, um den HTTP-Proxy auf {0} zu benutzen" -#: ../java/src/net/i2p/router/web/HomeHelper.java:210 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:906 +#: ../java/src/net/i2p/router/web/HomeHelper.java:217 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:932 msgid "Name" msgstr "Name" -#: ../java/src/net/i2p/router/web/HomeHelper.java:212 +#: ../java/src/net/i2p/router/web/HomeHelper.java:219 msgid "URL" msgstr "URL" @@ -3369,217 +3420,226 @@ msgstr "Alle Router mit vollständigen Statistiken" msgid "LeaseSets" msgstr "LeaseSets" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:105 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:106 #: ../java/strings/Strings.java:69 msgid "Router" msgstr "Router" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:112 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:113 msgid "not found in network database" msgstr "nicht in der Netzwerkdatenbank gefunden" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:156 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 msgid "LeaseSet" msgstr "LeaseSet" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:158 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:163 msgid "Local" msgstr "lokal" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:160 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:165 msgid "Unpublished" msgstr "unveröffentlicht" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:176 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:166 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:181 msgid "Destination" msgstr "Ziel" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:173 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:185 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:178 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 msgid "Add to local addressbook" msgstr "Zum lokalen Adressbuch hinzufügen" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:217 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:195 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:222 #, java-format msgid "Expires in {0}" msgstr "Wird in {0} ungültig" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:192 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:219 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:197 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:224 #, java-format msgid "Expired {0} ago" msgstr "Wurde vor {0} ungültig" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Gateway" msgstr "Schnittstelle" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 msgid "Lease" msgstr "Lease" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:213 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:218 msgid "Tunnel" msgstr "Tunnel" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:280 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:286 msgid "Not initialized" msgstr "Nicht initialisiert" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:330 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:342 msgid "Network Database Router Statistics" msgstr "Netzwerkdatenbank Routerstatistiken" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Count" msgstr "Anzahl" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 msgid "Transports" msgstr "Transporte" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Country" msgstr "Land" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:429 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:453 msgid "Our info" msgstr "Informationen über uns" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:431 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:455 msgid "Peer info for" msgstr "Informationen über den Teilnehmer" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:433 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:457 msgid "Full entry" msgstr "Ganzer Eintrag" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 #: ../java/src/net/i2p/router/web/SummaryHelper.java:152 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:726 msgid "Hidden" msgstr "Versteckt" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 msgid "Updated" msgstr "Aktualisiert" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:441 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:444 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:465 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:468 #, java-format msgid "{0} ago" msgstr "vor {0}" #. shouldnt happen -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:443 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:447 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:467 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:471 msgid "Published" msgstr "Veröffentlicht" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:449 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 msgid "Signing Key" msgstr "Signierungsschlüssel" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:451 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:475 msgid "Address(es)" msgstr "Adresse(n)" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:463 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:487 msgid "cost" msgstr "Kosten" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "Hidden or starting up" msgstr "Versteckt oder Startphase" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU" msgstr "SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU with introducers" msgstr "SSU mit Hilfsrouter" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP" msgstr "NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU" msgstr "NTCP und SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU with introducers" msgstr "NTCP und SSU mit Hilfsrouter" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 Only SSU, introducers" msgstr "nur IPv6 SSU, Introducer" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU" msgstr "IPv6 SSu" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU, introducers" msgstr "IPv6 SSU, Introducer" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP" msgstr "IPv6 NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU" msgstr "IPv6 NTCP, SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU, introducers" msgstr "IPv6 NTCP, SSU, Introducer" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 Only NTCP, SSU, introducers" msgstr "nur IPv6 NTCP, SSU, Introducer" -#: ../java/src/net/i2p/router/web/NewsHelper.java:295 +#: ../java/src/net/i2p/router/web/NewsFeedHelper.java:80 +#, java-format +msgid "by {0}" +msgstr "von {0}" + +#: ../java/src/net/i2p/router/web/NewsHelper.java:292 #, java-format msgid "News last updated {0} ago." msgstr "Zeit seit letzter Aktualisierung der Benachrichtigungen: {0};" -#: ../java/src/net/i2p/router/web/NewsHelper.java:301 +#: ../java/src/net/i2p/router/web/NewsHelper.java:298 #, java-format msgid "News last checked {0} ago." msgstr "Zeit seit letzter Prüfung auf neue Benachrichtigungen: {0}" -#: ../java/src/net/i2p/router/web/NewsHelper.java:310 +#: ../java/src/net/i2p/router/web/NewsHelper.java:307 msgid "Hide news" msgstr "Neuigkeiten verstecken" -#: ../java/src/net/i2p/router/web/NewsHelper.java:313 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:647 +#: ../java/src/net/i2p/router/web/NewsHelper.java:310 msgid "Show news" msgstr "Neuigkeiten anzeigen" +#: ../java/src/net/i2p/router/web/NewsHelper.java:314 +msgid "Show all news" +msgstr "Zeige alle Neuigkeiten" + #: ../java/src/net/i2p/router/web/PluginStarter.java:140 msgid "Checking for plugin updates" msgstr "Überprüfe auf Aktualisierungen der Zusatzprogramme" #: ../java/src/net/i2p/router/web/PluginStarter.java:155 +#: ../java/src/net/i2p/router/web/PluginStarter.java:161 msgid "Plugin update check failed" msgstr "Zusatzprogramm-Aktualisierungsprüfung ist fehlgeschlagen" -#: ../java/src/net/i2p/router/web/PluginStarter.java:193 +#: ../java/src/net/i2p/router/web/PluginStarter.java:199 #, java-format msgid "1 plugin updated" msgid_plural "{0} plugins updated" msgstr[0] "1 Zusatzprogramm aktualisiert" msgstr[1] "{0} Zusatzprogramme aktualisiert" -#: ../java/src/net/i2p/router/web/PluginStarter.java:195 +#: ../java/src/net/i2p/router/web/PluginStarter.java:201 msgid "Plugin update check complete" msgstr "Überprüfung auf Aktualisierungen der Zusatzprogramme abgeschlossen" @@ -3645,7 +3705,7 @@ msgid "Failing" msgstr "fehlgeschlagen" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:135 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:411 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:425 msgid "Integrated" msgstr "integriert" @@ -3875,7 +3935,7 @@ msgstr "Mittelwert" #: ../java/src/net/i2p/router/web/StatsGenerator.java:173 msgid "Highest average" -msgstr "höchster Durchscnittslwert" +msgstr "höchster Durchschnittswert" #: ../java/src/net/i2p/router/web/StatsGenerator.java:200 #, java-format @@ -3914,277 +3974,287 @@ msgstr "Ereignisse graphisch darstellen" msgid "Lifetime average value" msgstr "Durchschnitt über Lebenszeit" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:121 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:128 msgid "I2P Router Help & FAQ" msgstr "Hilfe zum I2P-Router & FAQ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:123 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:130 msgid "Help & FAQ" msgstr "Hilfe & FAQ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:131 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:138 msgid "" "Configure startup of clients and webapps (services); manually start dormant " "services" msgstr "Autostart-Einstellungen der Klienten und WebApplikationen (Services); manuelles Starten der ruhenden Services" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:133 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:140 msgid "I2P Services" msgstr "I2P-Dienste" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:169 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:176 msgid "Configure I2P Router" msgstr "Konfiguration des I2P-Routers" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:171 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:178 msgid "I2P Internals" msgstr "Einstellungen" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:177 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:484 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:184 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:498 msgid "View existing tunnels and tunnel build status" msgstr "Betrachte die existierenden Tunnel und den Status des Tunnelaufbaus" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:183 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:370 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:190 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:384 msgid "Show all current peer connections" msgstr "Zeige alle bestehenden Verbindungen zu Teilnehmern" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:189 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:196 msgid "Show recent peer performance profiles" msgstr "Zeige aktuelle Leistungsprofile der Teilnehmer" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:191 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:198 msgid "Profiles" msgstr "Profile" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:195 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:202 msgid "Show list of all known I2P routers" msgstr "Eine Liste aller bekannten I2P-Router anzeigen" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:197 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:204 msgid "NetDB" msgstr "NetzDB" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:201 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:208 msgid "Health Report" msgstr "Gesundheitszustand" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:203 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:210 msgid "Logs" msgstr "Statusberichte" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:214 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 msgid "Graph router performance" msgstr "Graphische Darstellung der Routerleistung" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:216 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 msgid "Graphs" msgstr "Graphen" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:228 msgid "Textual router performance statistics" msgstr "Statistiken über die Leistung des Routers in Textform" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:233 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:240 #: ../java/src/net/i2p/router/web/SummaryHelper.java:438 msgid "Local Tunnels" msgstr "Lokale Tunnel" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:235 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:242 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:164 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:337 msgid "Hidden Services Manager" msgstr "Verwaltung der versteckten Services" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:253 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:260 msgid "General" msgstr "Grundsätzliches" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 msgid "" "Your Local Identity is your unique I2P router identity, similar to an ip " "address but tailored to I2P. " msgstr "Deine lokale Identität ist deine einzigartige I2P-Routeridentität, ähnlich einer IP-Adresse, jedoch speziell für I2P." -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:259 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:266 msgid "Never disclose this to anyone, as it can reveal your real world ip." msgstr "Gib dies niemals irgendjemandem preis, es könnte deine echte IP-Adresse verraten." -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:261 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:268 msgid "Local Identity" msgstr "lokale Identität" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:272 msgid "Your unique I2P router identity is" msgstr "Ihre eindeutige I2P-Routeridentifikation ist" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:269 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:276 msgid "never reveal it to anyone" msgstr "Verraten Sie sie niemandem!" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:271 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 msgid "show" msgstr "anzeigen" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:275 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:301 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:282 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:308 msgid "The version of the I2P software we are running" msgstr "Dies ist die Version von I2P, die aktuell läuft." -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:292 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:318 msgid "How long we've been running for this session" msgstr "Wie lange ist der I2P-Router seit dem letztem Neustart aktiv" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:326 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:333 msgid "" "Help with configuring your firewall and router for optimal I2P performance" msgstr "Hilfe bei der Konfiguration Ihrer Firewall und Ihres Routers für eine optimale Leistung." -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:337 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:344 msgid "See more information on the wiki" msgstr "Mehr Informationen sind im Wiki verfügbar" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:339 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:346 msgid "Warning: ECDSA is not available. Update your Java or OS" msgstr "Warnung: ECDSA ist nicht verfügbar. Aktualisieren Sie Ihr Java oder Betriebssystem" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:351 +#, java-format +msgid "Warning: Java version {0} is no longer supported by I2P." +msgstr "Warnung: Java Version {0} ist nicht mehr von I2P unterstützt." + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#, java-format +msgid "Update Java to version {0} or higher to receive I2P updates." +msgstr "Aktualisieren Sie Java auf Version {0} oder aktueller um I2P Aktualisierungen zu bekommen." + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:365 msgid "Configure I2P Updates" msgstr "Einstellungen zur Aktualisierung" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:367 msgid "I2P Update" msgstr "I2P-Aktualisierung" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:378 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:392 msgid "Peers we've been talking to in the last few minutes/last hour" msgstr "Teilnehmer mit denen wir in den letzen Minuten / Stunden kommuniziert haben" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:381 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:395 msgid "Active" msgstr "aktiv" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:390 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:404 msgid "The number of peers available for building client tunnels" msgstr "Anzahl der für den Aufbau von Klient-Tunneln verfügbaren Teilnehmer" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:393 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:407 msgid "Fast" msgstr "schnell" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:399 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:413 msgid "The number of peers available for building exploratory tunnels" msgstr "Anzahl der für den Aufbau von Erkundungstunneln verfügbaren Teilnehmer" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:402 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:416 msgid "High capacity" msgstr "hohe Kapazität" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:408 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:422 msgid "The number of peers available for network database inquiries" msgstr "Anzahl der Teilnehmer, die für Anfragen an die Netzwerk-Datenbank zur Verfügung stehen" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:417 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:431 msgid "The total number of peers in our network database" msgstr "Gesamtanzahl an Teilnehmern in unserer Netzwerk-Datenbank" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:420 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:434 msgid "Known" msgstr "bekannt" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:440 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:454 msgid "Configure router bandwidth allocation" msgstr "Konfigurieren der Bandbreitenzuweisung des Routers" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:442 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:456 msgid "Bandwidth in/out" msgstr "Bandbreite ein-/ausgehend" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:462 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:476 msgid "Total" msgstr "gesamt" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:469 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:483 msgid "Used" msgstr "genutzt" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:491 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:505 msgid "" "Used for building and testing tunnels, and communicating with floodfill " "peers" msgstr "benutzt zum Aufbau und Testen von Tunneln, sowie der Kommunikation mit Floodfill-Teilnehmern" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:494 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:508 msgid "Exploratory" msgstr "Erkundung" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:514 msgid "Tunnels we are using to provide or access services on the network" msgstr "Tunnel, die wir zur Verfügung stellen oder nutzen, um auf Dienste im Netzwerk zuzugreifen" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:509 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:523 msgid "" "Tunnels we are participating in, directly contributing bandwidth to the " "network" msgstr "Tunnel an denen wir teilnehmen, die direkt Bandbreite dem Netzwerk zur Verfügung stellen." -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:512 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:526 msgid "Participating" msgstr "teilnehmend an" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:518 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:532 msgid "" "The ratio of tunnel hops we provide to tunnel hops we use - a value greater " "than 1.00 indicates a positive contribution to the network" msgstr " Verhältnis der Tunnelsprünge, die wir dem Netz zur Verfügugn stellen, zu denen, die wir selbst benutzen - ein Wert größer als 1,00 bedeutet einen positiven Beitrag zum I2P-Netzwerk" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:521 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:535 msgid "Share ratio" msgstr "Kooperationsfaktor" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:534 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:548 msgid "What's in the router's job queue?" msgstr "Was ist in der Aufgabenliste des Routers?" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:536 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 msgid "Congestion" msgstr "Aufgaben" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:541 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:555 msgid "Indicates router performance" msgstr "zeigt die gegenwärtige Leisutng des Routers" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:544 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:558 msgid "Job lag" msgstr "Aufgabenverzug" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:564 msgid "Indicates how quickly outbound messages to other I2P routers are sent" msgstr "zeigt, wie schnell Nachrichten an andere I2P-Router gesendet werden" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:553 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:567 msgid "Message delay" msgstr "Nachrichtenverzug" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:560 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:574 msgid "Round trip time for a tunnel test" msgstr "Hin- und Rücklaufzeit für einen Tunneltest" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:563 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:577 msgid "Tunnel lag" msgstr "Tunnelverzug" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:570 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:584 msgid "Queued requests from other routers to participate in tunnels" msgstr "wartende Anfragen anderer Router zur Teilnahme in deren Tunneln" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:573 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:587 msgid "Backlog" msgstr "Anfragenrückstau" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:608 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:623 msgid "News & Updates" msgstr "Benachrichtigungen & Aktualisierungen" @@ -4297,17 +4367,21 @@ msgid "Click Shutdown and restart to install" msgstr "Klicken Sie zum Installieren auf Herunterfahren und Neustarten" #: ../java/src/net/i2p/router/web/SummaryHelper.java:720 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:735 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:737 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:749 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:761 #, java-format msgid "Version {0}" msgstr "Version {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:734 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:736 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:748 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:760 msgid "Update available" msgstr "Aktualisierung verfügbar" #. Note to translators: parameter is a version, e.g. "0.8.4" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:758 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:784 #, java-format msgid "Download {0} Update" msgstr "Aktualisierung herunterladen ({0})" @@ -4316,7 +4390,7 @@ msgstr "Aktualisierung herunterladen ({0})" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:766 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:792 #, java-format msgid "Download Signed<br>Development Update<br>{0}" msgstr "Signierte Entwickler-<br>version herunterladen:<br>{0}" @@ -4325,56 +4399,56 @@ msgstr "Signierte Entwickler-<br>version herunterladen:<br>{0}" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:774 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 #, java-format msgid "Download Unsigned<br>Update {0}" msgstr "Unsignierte Aktualisierung herunterladen: {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:798 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:824 msgid "Help with firewall configuration" msgstr "Hilfe bei der Firewallkonfiguration" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:826 msgid "Check network connection and NAT/firewall" msgstr "Überprüfe die Netzwerkverbindung und deine NAT/Firewall" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:819 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:845 msgid "Reseed" msgstr "Hole neue Teilnehmerinformationen" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:908 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:934 msgid "Order" msgstr "Reihenfolge" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:925 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:951 msgid "Top" msgstr "ganz oben" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:956 msgid "Move to top" msgstr "Nach oben verschieben" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:940 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:966 msgid "Move up" msgstr "Nach oben verschieben" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:948 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:974 msgid "Down" msgstr "runter" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:953 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:979 msgid "Move down" msgstr "nach unten verschieben" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:958 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:984 msgid "Bottom" msgstr "ganz unten" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:963 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 msgid "Move to bottom" msgstr "Zum Ende verschieben" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:975 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1001 msgid "Select a section to add" msgstr "Markiere eine Sektion zum Hinzuzufügen" @@ -4421,100 +4495,100 @@ msgstr "Kliententunnel für" msgid "dead" msgstr "tot" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:70 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:69 msgid "Participating tunnels" msgstr "Fremde Tunnel, an denen Sie teilnehmen" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "Receive on" msgstr "Empfangen auf" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Expiration" msgstr "Zeit bis Ablauf" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Send on" msgstr "Gesendet auf" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Rate" msgstr "Rate" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Role" msgstr "Aufgabe" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Usage" msgstr "Datenmenge" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:111 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:113 msgid "grace period" msgstr "Gnadenfrist" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:121 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 msgid "Outbound Endpoint" msgstr "Ausgehender Endpunkt" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 msgid "Inbound Gateway" msgstr "Eingehende Schnittstelle" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:127 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:174 msgid "Participant" msgstr "Teilnehmer" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:130 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:133 #, java-format msgid "Limited display to the {0} tunnels with the highest usage" msgstr "Anzeige auf die {0} meistgenutzten Tunnel beschränkt" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:131 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:135 msgid "Inactive participating tunnels" msgstr "Inaktive Tunnel, an denen Sie teilnehmen" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:132 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:224 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:138 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:232 msgid "Lifetime bandwidth usage" msgstr "Genutzte Bandbreite über die Lebensdauer" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Expiry" msgstr "Restzeit" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:165 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 msgid "Participants" msgstr "Teilnehmer" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:177 msgid "Endpoint" msgstr "Endpunkt" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 #: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "Build in progress" msgstr "Im Aufbau befindlich" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 msgid "inbound" msgstr "eingehend" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "outbound" msgstr "ausgehend" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:223 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:231 msgid "No tunnels; waiting for the grace period to end." msgstr "Keine Tunnel; warte bis die Gnadenfrist abgelaufen ist" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:225 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:233 msgid "in" msgstr "eingehend" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:234 msgid "out" msgstr "ausgehend" @@ -4651,10 +4725,6 @@ msgstr "Verschlüsselung" msgid "i2cp" msgstr "i2cp" -#: ../java/strings/Strings.java:63 -msgid "I2PTunnel" -msgstr "I2PTunnel" - #: ../java/strings/Strings.java:64 msgid "InNetPool" msgstr "Pool im Netz" @@ -4701,10 +4771,12 @@ msgstr "Schlüssel" msgid "port" msgstr "Port" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 -msgid "configure bandwidth" -msgstr "Bandbreite einstellen" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:146 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:318 +msgid "Certificates" +msgstr "Zertifikate" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:153 @@ -4738,6 +4810,7 @@ msgstr "Bandbreite einstellen" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:149 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:155 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:154 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:149 @@ -4753,6 +4826,7 @@ msgstr "Router ist offline" #. We have intl defined when this is included, but not when compiled #. standalone. +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:333 @@ -4785,6 +4859,7 @@ msgstr "Router ist offline" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:305 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:310 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:305 @@ -4800,6 +4875,7 @@ msgid "Refresh (s)" msgstr "Auffrischen (s)" #. ditto +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:337 @@ -4832,6 +4908,7 @@ msgstr "Auffrischen (s)" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:309 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:339 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:314 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:309 @@ -4846,6 +4923,10 @@ msgstr "Auffrischen (s)" msgid "Enable" msgstr "Aktiviere" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 +msgid "configure bandwidth" +msgstr "Bandbreite einstellen" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:437 msgid "Bandwidth limiter" msgstr "Bandbreitenbegrenzer" @@ -4922,7 +5003,7 @@ msgstr "Erweiterte Netzwerkkonfigurationsseite" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:501 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:477 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:639 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:587 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:558 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:509 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:461 @@ -5955,51 +6036,51 @@ msgstr "kein SSL verwenden" msgid "Reseed URLs" msgstr "Reseed-URLs" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:541 msgid "Enable HTTP Proxy?" msgstr "HTTP-Proxy aktivieren?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:543 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:545 msgid "HTTP Proxy Host" msgstr "Host des HTTP-Proxys" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:547 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:549 msgid "HTTP Proxy Port" msgstr "Port des HTTP-Proxys" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:551 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:553 msgid "Use HTTP Proxy Authorization?" msgstr "Authorisierung für HTTP-Proxy benutzen?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:555 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:557 msgid "HTTP Proxy Username" msgstr "Benutzername für den HTTP-Proxy" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:559 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:561 msgid "HTTP Proxy Password" msgstr "Passwort für den HTTP-Proxy" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:563 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:565 msgid "Enable HTTPS Proxy?" msgstr "HTTPS-Proxy aktivieren?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:567 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:569 msgid "HTTPS Proxy Host" msgstr "Host des HTTPS-Proxys" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:571 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:573 msgid "HTTPS Proxy Port" msgstr "Port des HTTPS-Proxys" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:575 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:577 msgid "Use HTTPS Proxy Authorization?" msgstr "Authorisierung für HTTPS-Proxy benutzen?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:579 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:581 msgid "HTTPS Proxy Username" msgstr "Benutzername für den HTTPs-Proxy" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:583 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:585 msgid "HTTPS Proxy Password" msgstr "Passwort für den HTTPS-Proxy" @@ -6558,6 +6639,14 @@ msgstr "Netzwerkdatenbank" msgid "I2P Network Database" msgstr "I2P-Netzwerkdatenbank" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:148 +msgid "News" +msgstr "Neuigkeiten" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:344 +msgid "Latest News" +msgstr "Letzte Neuigkeiten" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:152 msgid "WebApp Not Found" msgstr "WebApplikation nicht gefunden" diff --git a/apps/routerconsole/locale/messages_el.po b/apps/routerconsole/locale/messages_el.po index a437273bcacb5577b5078fc8b3e13602b0cf52d6..1b62604e2d0abd97152aa560082a4719af224ff0 100644 --- a/apps/routerconsole/locale/messages_el.po +++ b/apps/routerconsole/locale/messages_el.po @@ -6,6 +6,7 @@ # Translators: # Alex <hestia@riseup.net>, 2012 # Alex <hestia@riseup.net>, 2012 +# LaScapigliata <ditri2000@hotmail.com>, 2015 # Alex <hestia@riseup.net>, 2012 # lixtetrax <lixtetrax@grhack.net>, 2012 # lixtetrax <lixtetrax@grhack.net>, 2012 @@ -14,10 +15,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:05+0000\n" -"PO-Revision-Date: 2015-07-17 01:31+0000\n" -"Last-Translator: kytv <killyourtv@i2pmail.org>\n" -"Language-Team: Greek (http://www.transifex.com/projects/p/I2P/language/el/)\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-05 23:52+0000\n" +"Last-Translator: LaScapigliata <ditri2000@hotmail.com>\n" +"Language-Team: Greek (http://www.transifex.com/otf/I2P/language/el/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -70,7 +71,7 @@ msgstr[1] "{0} λεπτ" #, java-format msgid "1 hour" msgid_plural "{0} hours" -msgstr[0] "1 ÏŽÏα" +msgstr[0] "{0} ÏŽÏα" msgstr[1] "{0} ÏŽÏες" #. days @@ -79,7 +80,7 @@ msgstr[1] "{0} ÏŽÏες" #, java-format msgid "1 day" msgid_plural "{0} days" -msgstr[0] "1 μÎÏα" +msgstr[0] "{0} μÎÏα" msgstr[1] "{0} μÎÏες" #. years @@ -88,8 +89,8 @@ msgstr[1] "{0} μÎÏες" #, java-format msgid "1 year" msgid_plural "{0} years" -msgstr[0] "" -msgstr[1] "" +msgstr[0] "{0} χÏόνος" +msgstr[1] "{0} χÏόνια" #: ../../../core/java/src/net/i2p/data/DataHelper.java:1549 #: ../../../core/java/src/net/i2p/data/DataHelper.java:1596 @@ -136,19 +137,22 @@ msgid "IPs Permanently Banned" msgstr "Οι IP Îχουν αποκλειστεί μόνιμα" #: ../../../router/java/src/net/i2p/router/Blocklist.java:959 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "From" msgstr "Από" #: ../../../router/java/src/net/i2p/router/Blocklist.java:961 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "To" msgstr "Σε" #: ../../../router/java/src/net/i2p/router/Blocklist.java:997 #: ../java/src/net/i2p/router/web/BanlistRenderer.java:48 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:652 +#: ../java/src/net/i2p/router/web/CertHelper.java:77 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:147 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:662 #: ../java/src/net/i2p/router/web/SummaryHelper.java:478 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:137 msgid "none" msgstr "κανÎνα" @@ -156,7 +160,7 @@ msgstr "κανÎνα" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:702 msgid "OK" -msgstr "" +msgstr "ΟΚ" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:312 msgid "IPv4: OK; IPv6: Testing" @@ -215,7 +219,7 @@ msgstr "" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:327 msgid "Disconnected" -msgstr "" +msgstr "ΑποσυνδεδεμÎνος" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:328 msgid "Port Conflict" @@ -286,43 +290,43 @@ msgstr "ΑπόÏÏιψη τοÏνελ : Κλείσιμο" msgid "Rejecting tunnels" msgstr "ΑπόÏÏιψη τοÏνελ" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:212 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:210 #, java-format msgid "Reseeding: got router info from file ({0} successful, {1} errors)." msgstr "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:284 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:282 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:28 msgid "Reseeding" msgstr "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:307 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:305 #, java-format msgid "Reseed fetched only 1 router." msgid_plural "Reseed fetched only {0} routers." msgstr[0] "" msgstr[1] "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:314 msgid "Reseed failed." msgstr "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:317 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:315 #, java-format msgid "See {0} for help." msgstr "Δείτε {0} για βοήθεια." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:318 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 msgid "reseed configuration page" msgstr "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:566 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:697 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:564 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:695 msgid "Reseeding: fetching seed URL." msgstr "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:623 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:733 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:621 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:731 #, java-format msgid "" "Reseeding: fetching router info from seed URL ({0} successful, {1} errors)." @@ -387,12 +391,12 @@ msgid "Unreachable on any transport" msgstr "Μη Ï€Ïοσβάσιμο από κανÎνα μεταφοÏÎα" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:674 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:566 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:577 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:604 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:622 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1348 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2469 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2474 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:92 msgid "Status" msgstr "Κατάσταση" @@ -407,12 +411,12 @@ msgid "{0} is used for outbound connections only" msgstr "{0} χÏησιμοποιείται για εξεÏχόμενες συνδÎσεις μονο" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:711 -#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:283 +#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:295 msgid "UPnP is not enabled" msgstr "Το UPnP δεν είναι ενεÏγοποιημÎνο" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:720 -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:167 msgid "Help" msgstr "Βοήθεια" @@ -436,7 +440,7 @@ msgstr "ΟÏισμοί" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:726 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1352 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2473 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:24 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:33 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:35 @@ -451,7 +455,7 @@ msgstr "Ο απομακÏυσμÎνος ομότιμος, αναγνωÏισμΠ#: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:727 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1353 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Dir" msgstr "Κατάλογος" @@ -478,14 +482,14 @@ msgstr "ΧÏονικό διάστημα από την λήψη/αποστολή #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:735 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1355 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2479 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 msgid "Idle" msgstr "ΑδÏανής" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:736 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1356 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "In/Out" msgstr "ΜÎσα/Έξω" @@ -499,14 +503,14 @@ msgstr "ΧÏονικό διάστημα από την εγκαθίδÏυση α #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:737 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1357 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:935 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2494 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:961 msgid "Up" msgstr "Πάνω" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:738 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1358 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2491 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2496 msgid "Skew" msgstr "Απόκλιση" @@ -555,7 +559,7 @@ msgstr "ΤÏÎχον μÎγιστο μÎγεθος πακÎτου αποστολ #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:748 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1359 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2508 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 msgid "TX" msgstr "Αποστολή" @@ -565,7 +569,7 @@ msgstr "Συνολικός αÏιθμός πακÎτων που εστάλησα #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:749 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1360 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2510 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 msgid "RX" msgstr "Λήψη" @@ -574,7 +578,7 @@ msgid "The total number of packets received from the peer" msgstr "Συνολικός αÏιθμός πακÎτων που ελήφθησαν από τον ομότιμο" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:750 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2518 msgid "Dup TX" msgstr "Ταυτόσημες TX" @@ -583,7 +587,7 @@ msgid "The total number of packets retransmitted to the peer" msgstr "Συνολικός αÏιθμός πακÎτων που επανεστάλησαν στον ομότιμο" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:751 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2520 msgid "Dup RX" msgstr "Ταυτόσημες RX" @@ -591,104 +595,104 @@ msgstr "Ταυτόσημες RX" msgid "The total number of duplicate packets received from the peer" msgstr "Συνολικός αÏιθμός διπλότυπων πακÎτων που ελήφθησαν από τον ομότιμο" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:560 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:561 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 msgid "Service" msgstr "ΥπηÏεσία" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:564 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 msgid "WAN Common Interface Configuration" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:567 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:587 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:614 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:568 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:588 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:615 msgid "Type" msgstr "ΤÏπος" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:569 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:589 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:570 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:590 msgid "Upstream" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:571 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:591 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:572 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:592 msgid "Downstream" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:575 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 msgid "WAN PPP Connection" msgstr "ΣÏνδεση WAN PPP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:583 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:610 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:288 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:314 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:584 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:611 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:295 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:321 msgid "Uptime" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:593 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:616 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:594 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:617 msgid "External IP" msgstr "ΕξωτεÏική IP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:597 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 msgid "Layer 3 Forwarding" msgstr "Î Ïοώθηση επιπÎδου 3" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:599 msgid "Default Connection Service" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:602 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 msgid "WAN IP Connection" msgstr "ΣÏνδεση WAN IP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:620 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 msgid "WAN Ethernet Link Configuration" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:641 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:642 msgid "Found Device" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:643 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:644 msgid "Subdevice" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:664 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:665 msgid "UPnP Status" msgstr "Κατάσταση UPnP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:668 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:669 msgid "Disabled UPnP Devices" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:682 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:683 msgid "" "UPnP has been disabled; Do you have more than one UPnP Internet Gateway " "Device on your LAN ?" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:685 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:686 msgid "UPnP has not found any UPnP-aware, compatible device on your LAN." msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:693 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:694 #, java-format msgid "The current external IP address reported by UPnP is {0}" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:695 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:696 msgid "The current external IP address is not available." msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:699 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:700 #, java-format msgid "UPnP reports the maximum downstream bit rate is {0}bits/sec" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:701 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:702 #, java-format msgid "UPnP reports the maximum upstream bit rate is {0}bits/sec" msgstr "" @@ -697,12 +701,12 @@ msgstr "" #. {1,number,#####} prevents 12345 from being output as 12,345 in the English #. locale. #. If you want the digit separator in your locale, translate as {1}. -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:709 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:710 #, java-format msgid "{0} port {1,number,#####} was successfully forwarded by UPnP." msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:711 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:712 #, java-format msgid "{0} port {1,number,#####} was not forwarded by UPnP." msgstr "" @@ -718,17 +722,17 @@ msgid "NTCP connections" msgstr "NTCP συνδÎσεις" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1345 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2466 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2471 msgid "Limit" msgstr "ÎŒÏιο" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1346 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2467 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2472 msgid "Timeout" msgstr "Λήξη ΧÏόνου" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1354 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2483 msgid "IPv6" msgstr "" @@ -741,126 +745,126 @@ msgid "Backlogged?" msgstr "" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1375 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2532 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2537 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Inbound" msgstr "ΕισεÏχόμενα" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1377 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2534 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2539 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Outbound" msgstr "ΕξεÏχόμενα" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1432 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2699 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2704 #, java-format msgid "{0} peer" msgid_plural "{0} peers" msgstr[0] "" msgstr[1] "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2465 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2470 msgid "UDP connections" msgstr "UDP συνδÎσεις" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2475 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 msgid "Sort by peer hash" msgstr "Ταξινόμηση σÏμφωνα με το hash του ομότιμου" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Direction/Introduction" msgstr "ΚατεÏθυνση/Εισαγωγή" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 msgid "Sort by idle inbound" msgstr "Ταξινόμηση σÏμφωνα την αδÏανή εισεÏχόμενη" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 msgid "Sort by idle outbound" msgstr "Ταξινόμηση σÏμφωνα την αδÏανή εξεÏχόμενη" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 msgid "Sort by inbound rate" msgstr "Ταξινόμηση σÏμφωνα με Ïυθμό εισεÏχομÎνων" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 msgid "Sort by outbound rate" msgstr "Ταξινόμηση σÏμφωνα με Ïυθμό εξεÏχομÎνων" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 msgid "Sort by connection uptime" msgstr "Ταξινόμηση σÏμφωνα με το χÏόνο της σÏνδεσης" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 msgid "Sort by clock skew" msgstr "Ταξινόμηση σÏμφωνα με την απόκλιση ÏολογιοÏ" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 msgid "Sort by congestion window" msgstr "Ταξινόμηση σÏμφωνα με το παÏάθυÏο συμφόÏησης" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2502 msgid "Sort by slow start threshold" msgstr "Ταξινόμηση σÏμφωνα με το κατώφλιο αÏγής εκκίνησης" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2505 msgid "Sort by round trip time" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2504 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 msgid "Sort by retransmission timeout" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2507 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2512 msgid "Sort by outbound maximum transmit unit" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 msgid "Sort by packets sent" msgstr "Ταξινόμηση σÏμφωνα με τα απεσταλμÎνα πακÎτα" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2511 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 msgid "Sort by packets received" msgstr "Ταξινόμηση σÏμφωνα με τα ληφθÎντα πακÎτα" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2519 msgid "Sort by packets retransmitted" msgstr "Ταξινόμηση σÏμφωνα με τον αÏιθμό πακÎτων που επαναμεταδόθηκαν" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2521 msgid "Sort by packets received more than once" msgstr "Ταξινόμηση σÏμφωνα με τον αÏιθμό των πακÎτων που ελήφθησαν πάνω από μια φοÏά" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2536 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2541 msgid "We offered to introduce them" msgstr "Î ÏοσφεÏθήκαμε να τους εισάγουμε" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2538 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2543 msgid "They offered to introduce us" msgstr "Î ÏοσθÎÏθηκαν να μας εισάγουν" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2542 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2547 msgid "Choked" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2550 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2555 msgid "1 fail" msgstr "1 αποτυχία" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2552 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2557 #, java-format msgid "{0} fails" msgstr "{0} αποτυχίες" #. 1 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2558 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2563 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:166 #: ../java/src/net/i2p/router/web/ProfilesHelper.java:13 msgid "Banned" msgstr "ΑποκλεισμÎνος" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2617 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2622 msgid "backlogged" msgstr "" @@ -877,96 +881,96 @@ msgstr "" msgid "Dropping tunnel requests: Overloaded" msgstr "ΑπόÏÏιψη αιτημάτων για τοÏνελ: ΥπεÏφόÏτωση" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:693 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:695 msgid "Rejecting tunnels: Hidden mode" msgstr "" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:721 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:723 msgid "Rejecting tunnels: Request overload" msgstr "ΑπόÏÏιψη τοÏνελ: ΥπεÏφόÏτωση αιτημάτων" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:752 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:754 msgid "Rejecting tunnels: Connection limit" msgstr "ΑπόÏÏιψη τοÏνελ: ÎŒÏιο συνδÎσεων" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:964 -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:997 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:966 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:999 msgid "Dropping tunnel requests: High load" msgstr "ΑπόÏÏιψη αιτημάτων για τοÏνελ: Υψηλό φοÏτίο" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1076 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1078 msgid "Dropping tunnel requests: Queue time" msgstr "ΑπόÏÏιψη αιτημάτων για τοÏνελ: ΧÏόνος ουÏάς αναμονής" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:884 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:895 #, java-format msgid "New plugin version {0} is available" msgstr "ÎÎα Îκδοση Ï€Ïόσθετου {0} διαθÎσιμη" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:964 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:975 #, java-format msgid "Update check failed for plugin {0}" msgstr "Ο Îλεγχος για ενημÎÏωσεις του Ï€Ïόσθετου {0} απÎτυχε" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:968 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:979 #, java-format msgid "No new version is available for plugin {0}" msgstr "Δεν υπάÏχει νÎα Îκδοση διαθÎσιμη για το Ï€Ïόσθετο {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:992 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1003 #, java-format msgid "{0}B transferred" msgstr "{0} Bytes μεταφÎÏθηκαν" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1051 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1062 #, java-format msgid "Install failed from {0}" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1053 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1064 #: ../java/src/net/i2p/router/update/UpdateRunner.java:298 #, java-format msgid "Transfer failed from {0}" msgstr "ΜεταφοÏά από {0} απÎτυχε" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1328 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1339 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1403 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 #: ../java/src/net/i2p/router/web/SummaryHelper.java:715 msgid "Update downloaded" msgstr "Η ενημÎÏωση κατÎβηκε" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 msgid "Restarting" msgstr "Γίνεται επανεκκίνηση" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 msgid "Update verified" msgstr "Η ενημÎÏωση επαληθεÏτηκε" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1381 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:189 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:306 #, java-format msgid "from {0}" msgstr "από {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1396 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1407 #, java-format msgid "Unsigned update file from {0} is corrupt" msgstr "Το μη υπογεγÏαμμÎνο αÏχείο ενημÎÏωσης από {0} είναι κατεστÏαμμÎνο" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1425 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1436 #, java-format msgid "Failed copy to {0}" msgstr "ΑντιγÏαφή από {0} απÎτυχε" -#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:47 +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:49 #: ../java/src/net/i2p/router/update/DevSU3UpdateRunner.java:40 #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:55 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:111 -#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:62 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:64 #: ../java/src/net/i2p/router/update/UnsignedUpdateRunner.java:41 #: ../java/src/net/i2p/router/update/UpdateRunner.java:155 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:573 @@ -975,6 +979,13 @@ msgstr "ΑντιγÏαφή από {0} απÎτυχε" msgid "HTTP client proxy tunnel must be running" msgstr "" +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:83 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:242 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:88 +#, java-format +msgid "Requires Java version {0} but installed Java version is {1}" +msgstr "" + #. set status before thread to ensure UI feedback #: ../java/src/net/i2p/router/update/DevSU3UpdateHandler.java:91 #: ../java/src/net/i2p/router/update/PluginUpdateHandler.java:82 @@ -984,24 +995,19 @@ msgstr "" msgid "Updating" msgstr "Γίνεται ενημÎÏωση" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:209 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:218 msgid "In-network updates disabled. Check package manager." msgstr "" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:215 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:224 msgid "No write permission for I2P install directory." msgstr "" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:223 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:232 #, java-format msgid "You must first update to version {0}" msgstr "" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:233 -#, java-format -msgid "Requires Java version {0} but installed Java version is {1}" -msgstr "" - #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:62 #, java-format msgid "Checking for update of plugin {0}" @@ -1205,8 +1211,10 @@ msgid "unban now" msgstr "" #: ../java/src/net/i2p/router/web/CSSHelper.java:149 -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../java/strings/Strings.java:29 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:217 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:221 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:219 @@ -1276,6 +1284,8 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:217 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:219 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:224 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:228 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:230 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:222 @@ -1301,6 +1311,16 @@ msgstr "" msgid "I2P Router Console" msgstr "Κονσόλα I2P Router" +#: ../java/src/net/i2p/router/web/CertHelper.java:25 +msgid "Local SSL Certificates" +msgstr "" + +#: ../java/src/net/i2p/router/web/CertHelper.java:46 +#: ../java/src/net/i2p/router/web/CertHelper.java:51 +#: ../java/strings/Strings.java:63 +msgid "I2PTunnel" +msgstr "I2P τοÏνελ" + #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:62 msgid "Error updating the configuration - please see the error logs" msgstr "Σφάλμα κατά την ενημÎÏωση των Ïυθμίσεων - παÏακαλοÏμε δείτε τις καταγÏαφÎÏ‚ λαθών" @@ -1315,7 +1335,8 @@ msgstr "Επιτυχής αποθήκευση Ïυθμίσεων" #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:98 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:622 #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:391 -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:151 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:109 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:160 msgid "" "Error saving the configuration (applied but not saved) - please see the " "error logs" @@ -1520,7 +1541,7 @@ msgid "Add Client" msgstr "Î Ïοσθήκη Πελάτη" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:116 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:503 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:517 #: ../java/src/net/i2p/router/web/SummaryHelper.java:452 msgid "Client" msgstr "Πελάτης" @@ -1552,9 +1573,9 @@ msgid "Plugin" msgstr "Î Ïόσθετο" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:248 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:304 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 msgid "Version" msgstr "Έκδοση" @@ -1575,9 +1596,9 @@ msgid "License" msgstr "Άδεια" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:294 -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/HomeHelper.java:171 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:157 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/HomeHelper.java:178 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:164 msgid "Website" msgstr "Ιστότοπος" @@ -1612,7 +1633,7 @@ msgstr "ΔιαγÏαφή" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:21 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigUIHandler.java:19 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:970 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:996 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:496 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:516 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:532 @@ -1622,7 +1643,7 @@ msgstr "ΔιαγÏαφή επιλεγμÎνων" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:23 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1015 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:494 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:502 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:514 @@ -1718,11 +1739,11 @@ msgstr "δεν βÏÎθηκε στη συλλογή κλειδιών" msgid "Invalid destination" msgstr "Μη ÎγκυÏος Ï€ÏοοÏισμός" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:82 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:84 msgid "Log overrides updated" msgstr "" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:163 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:165 msgid "Log configuration saved" msgstr "Ρυθμίσεις καταγÏαφώ αποθηκευτήκαν" @@ -1770,8 +1791,8 @@ msgstr "ΠΡΟΕΙΔΟΠΟΙΗΣΗ" #: ../java/src/net/i2p/router/web/ConfigLoggingHelper.java:85 #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:170 -#: ../java/src/net/i2p/router/web/HomeHelper.java:208 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:904 +#: ../java/src/net/i2p/router/web/HomeHelper.java:215 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 msgid "Remove" msgstr "ΑφαίÏεση" @@ -1790,11 +1811,12 @@ msgid "Home Page" msgstr "ΑÏχική Σελίδα" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:328 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:335 msgid "Network" msgstr "Δίκτυο" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:320 @@ -1828,6 +1850,7 @@ msgstr "Δίκτυο" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:292 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:322 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:297 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:292 @@ -1846,8 +1869,8 @@ msgid "UI" msgstr "Διεπαφή ΧÏήστη" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:179 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:486 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:186 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 #: ../java/strings/Strings.java:73 msgid "Tunnels" msgstr "ΤοÏνελ" @@ -1866,15 +1889,15 @@ msgid "Logging" msgstr "ΚαταγÏαφή" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:185 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:372 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:192 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:386 #: ../java/strings/Strings.java:68 msgid "Peers" msgstr "Ομότιμοι" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:497 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:230 msgid "Stats" msgstr "Στατιστικά" @@ -1890,7 +1913,7 @@ msgstr "Î ÏοχωÏημÎνα" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:491 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:479 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:641 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:593 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:560 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:511 msgid "Save changes" @@ -1991,7 +2014,7 @@ msgstr "" #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:436 msgid "Invalid address" -msgstr "" +msgstr "Μη ÎγκυÏη διεÏθυνση" #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:442 #, java-format @@ -2071,7 +2094,7 @@ msgid "Unsupported" msgstr "Μη υποστηÏιζόμενο" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:24 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 msgid "Save changes and reseed now" msgstr "" @@ -2119,7 +2142,16 @@ msgid_plural "Reseed successful, loaded {0} router infos from file" msgstr[0] "" msgstr[1] "" -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:149 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:99 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +msgid "Reset URL list" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:107 +msgid "URL list reset successfully" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:158 msgid "Configuration saved successfully." msgstr "Οι Ïυθμίσεις αποθηκεÏτηκαν επιτυχώς." @@ -2619,8 +2651,8 @@ msgid "User Name" msgstr "Ονομα χÏήστη" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:183 -#: ../java/src/net/i2p/router/web/HomeHelper.java:235 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:972 +#: ../java/src/net/i2p/router/web/HomeHelper.java:242 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:998 msgid "Add" msgstr "Î Ïοσθήκη" @@ -2841,7 +2873,7 @@ msgstr "" #: ../java/src/net/i2p/router/web/EventLogHelper.java:179 #: ../java/src/net/i2p/router/web/JobQueueHelper.java:143 msgid "Time" -msgstr "" +msgstr "ÎÏα" #: ../java/src/net/i2p/router/web/EventLogHelper.java:182 msgid "Event" @@ -2849,15 +2881,15 @@ msgstr "" #: ../java/src/net/i2p/router/web/EventLogHelper.java:184 msgid "Details" -msgstr "" +msgstr "ΛεπτομÎÏειες" -#: ../java/src/net/i2p/router/web/FormHandler.java:251 +#: ../java/src/net/i2p/router/web/FormHandler.java:253 msgid "" "Invalid form submission, probably because you used the 'back' or 'reload' " "button on your browser. Please resubmit." msgstr "" -#: ../java/src/net/i2p/router/web/FormHandler.java:253 +#: ../java/src/net/i2p/router/web/FormHandler.java:255 msgid "" "If the problem persists, verify that you have cookies enabled in your " "browser." @@ -2988,156 +3020,169 @@ msgstr "Αποθήκευση Ïυθμίσεων και αναδημιουÏγί msgid "Graph settings saved" msgstr "Οι Ïυθμίσεις των γÏαφημάτων αποθηκεÏτηκαν" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:229 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:236 msgid "Addressbook" -msgstr "" +msgstr "Βιβλίο διευθÏνσεων" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:227 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:234 msgid "Manage your I2P hosts file here (I2P domain name resolution)" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 msgid "Configure Bandwidth" msgstr "ΡÏμιση ΕÏÏους ζώνης" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:330 msgid "I2P Bandwidth Configuration" msgstr "ΡÏθμιση εÏÏους ζώνης του I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Configure Language" msgstr "ΡÏθμιση γλώσσας" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Console Language Selection" msgstr "Επιλογή γλώσσας στην κονσόλα" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 msgid "Customize Home Page" msgstr "Î ÏοσαÏμογή ΑÏχικής Σελίδας" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:346 msgid "I2P Home Page Configuration" msgstr "ΡÏθμιση της ΑÏχικής Σελίδας I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:139 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:146 msgid "Anonymous webmail client" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:141 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:148 msgid "Email" msgstr "Email" -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:251 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 msgid "I2P Router Help" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:161 msgid "Router Console" msgstr "Κονσόλα Router" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:145 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:152 msgid "Built-in anonymous BitTorrent Client" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:147 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:154 msgid "Torrents" msgstr "Torrents" -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:155 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:162 msgid "Local web server" msgstr "Τοπικός server ιστοÏ" -#: ../java/src/net/i2p/router/web/HomeHelper.java:41 +#: ../java/src/net/i2p/router/web/HomeHelper.java:43 msgid "The Anoncoin project" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug Reports" msgstr "ΑναφοÏÎÏ‚ Σφαλμάτων" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug tracker" msgstr "Ιχνηλάτης Σφαλμάτων" #. "colombo-bt.i2p" + S + _x("The Italian Bittorrent Resource") + S + "http #. ://colombo-bt.i2p/" + S + I + "colomboicon.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Dev Forum" msgstr "ΦόÏουμ Ανάπτυξης" -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Development forum" msgstr "ΦόÏουμ Ανάπτυξης" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Bittorrent tracker" msgstr "Ιχνηλάτης Torrent" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 msgid "diftracker" msgstr "diftracker" -#: ../java/src/net/i2p/router/web/HomeHelper.java:46 +#: ../java/src/net/i2p/router/web/HomeHelper.java:48 msgid "I2P Applications" msgstr "ΕφαÏμογÎÏ‚ Ι2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +msgid "Anonymous cryptocurrency exchange" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "FAQ" msgstr "ΣυχνÎÏ‚ εÏωτήσεις" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "Frequently Asked Questions" msgstr "ΣυχνÎÏ‚ εÏωτήσεις" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Community forum" msgstr "ΦόÏουμ Κοινότητας" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Forum" msgstr "ΦόÏουμ" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "" "A public anonymous Git hosting site - supports pulling via Git and HTTP and " "pushing via SSH" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "Anonymous Git Hosting" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:50 +#: ../java/src/net/i2p/router/web/HomeHelper.java:53 msgid "HiddenGate" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "Anonymous wiki - share the knowledge" +msgstr "" + +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "I2P Wiki" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Microblog" msgstr "Microblog" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Your premier microblogging service on I2P" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 msgid "Javadocs" msgstr "ΈγγÏαφα Java" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical documentation" msgstr "Τεχνική τεκμηÏίωση" @@ -3145,91 +3190,98 @@ msgstr "Τεχνική τεκμηÏίωση" #. "http://jisko.i2p/" + S + I + "jisko_console_icon.png" + S + #. _x("Key Server") + S + _x("OpenPGP Keyserver") + S + "http://keys.i2p/" + S #. + I + "education.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +#: ../java/src/net/i2p/router/web/HomeHelper.java:60 msgid "Debian and Tahoe-LAFS repositories" msgstr "αποθετήÏια Debian και Tahoe-LAFS" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free Web Hosting" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free eepsite hosting with PHP and MySQL" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "I2P Pastebin" msgstr "I2P Pastebin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "Pastebin" msgstr "Pastebin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:58 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 msgid "I2P News" msgstr "ÎÎα I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +msgid "Planet I2P" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Add-on directory" msgstr "Φάκελος Î Ïόσθετων" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Plugins" msgstr "Î Ïόσθετα" -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Postman's Tracker" msgstr "Postman's Tracker" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "I2P home page" msgstr "ΑÏχική σελίδα του I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "Project Website" msgstr "Ιστότοπος του Ï€Ïότζεκτ" +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:68 +msgid "Russian News Feed" +msgstr "" + #. "Salt" + S + "salt.i2p" + S + "http://salt.i2p/" + S + I + #. "salt_console.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +#: ../java/src/net/i2p/router/web/HomeHelper.java:70 msgid "I2P Network Statistics" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical Docs" msgstr "Τεχνικά ÎγγÏαφα" -#: ../java/src/net/i2p/router/web/HomeHelper.java:65 +#: ../java/src/net/i2p/router/web/HomeHelper.java:72 msgid "Trac Wiki" msgstr "Trac Wiki" -#: ../java/src/net/i2p/router/web/HomeHelper.java:66 -msgid "Ugha's Wiki" -msgstr "Ugha's Wiki" - -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Seedless and the Robert BitTorrent applications" msgstr "οι εφαÏμογÎÏ‚ Seedless και Robert BitTorrent" -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#. _x("Ugha's Wiki") + S + S + "http://ugha.i2p/" + S + I + +#. "billiard_marker.png" + S + +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Sponge's main site" msgstr "ΚÏÏιος ιστότοπος του Sponge" -#: ../java/src/net/i2p/router/web/HomeHelper.java:108 +#: ../java/src/net/i2p/router/web/HomeHelper.java:115 msgid "The HTTP proxy is not up" msgstr "Ο HTTP proxy server δεν είναι σε λειτουÏγία" -#: ../java/src/net/i2p/router/web/HomeHelper.java:110 +#: ../java/src/net/i2p/router/web/HomeHelper.java:117 #, java-format msgid "Your browser is not properly configured to use the HTTP proxy at {0}" msgstr "Ο browser σας δεν είναι σωστά ÏυθμισμÎνος να χÏησιμοποιεί HTTP proxy στο {0}" -#: ../java/src/net/i2p/router/web/HomeHelper.java:210 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:906 +#: ../java/src/net/i2p/router/web/HomeHelper.java:217 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:932 msgid "Name" msgstr "Όνομα" -#: ../java/src/net/i2p/router/web/HomeHelper.java:212 +#: ../java/src/net/i2p/router/web/HomeHelper.java:219 msgid "URL" msgstr "URL" @@ -3357,217 +3409,226 @@ msgstr "" msgid "LeaseSets" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:105 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:106 #: ../java/strings/Strings.java:69 msgid "Router" msgstr "Router" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:112 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:113 msgid "not found in network database" msgstr "δεν βÏÎθηκε στη βάση δεδομÎνων του δικτÏου" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:156 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 msgid "LeaseSet" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:158 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:163 msgid "Local" msgstr "Τοπικό" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:160 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:165 msgid "Unpublished" msgstr "Μη δημοσιευμÎνο" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:176 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:166 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:181 msgid "Destination" msgstr "Î ÏοοÏισμός" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:173 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:185 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:178 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 msgid "Add to local addressbook" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:217 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:195 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:222 #, java-format msgid "Expires in {0}" msgstr "Λήγει σε {0}" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:192 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:219 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:197 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:224 #, java-format msgid "Expired {0} ago" msgstr "Έληξε {0} Ï€Ïιν" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Gateway" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 msgid "Lease" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:213 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:218 msgid "Tunnel" msgstr "ΤοÏνελ" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:280 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:286 msgid "Not initialized" msgstr "Δεν αÏχικοποιήθηκε" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:330 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:342 msgid "Network Database Router Statistics" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Count" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 msgid "Transports" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Country" msgstr "ΧώÏα" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:429 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:453 msgid "Our info" msgstr "Τα στοιχεία μας" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:431 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:455 msgid "Peer info for" msgstr "ΠληÏοφοÏίες ομότιμου για" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:433 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:457 msgid "Full entry" msgstr "ΠλήÏης εγγÏαφή" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 #: ../java/src/net/i2p/router/web/SummaryHelper.java:152 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:726 msgid "Hidden" -msgstr "" +msgstr "ΚÏυφό" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 msgid "Updated" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:441 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:444 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:465 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:468 #, java-format msgid "{0} ago" msgstr "{0} Ï€Ïιν" #. shouldnt happen -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:443 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:447 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:467 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:471 msgid "Published" msgstr "ΔημοσιεÏτηκε" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:449 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 msgid "Signing Key" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:451 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:475 msgid "Address(es)" msgstr "ΔιεÏθυνση/εις" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:463 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:487 msgid "cost" msgstr "κόστος" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "Hidden or starting up" msgstr "ΚÏυμμÎνο κατά την εκκίνηση" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU" msgstr "SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU with introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP" msgstr "NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU" msgstr "NTCP και SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU with introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 Only SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 Only NTCP, SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NewsHelper.java:295 +#: ../java/src/net/i2p/router/web/NewsFeedHelper.java:80 +#, java-format +msgid "by {0}" +msgstr "" + +#: ../java/src/net/i2p/router/web/NewsHelper.java:292 #, java-format msgid "News last updated {0} ago." msgstr "Τα νÎα ενημεÏώθηκαν {0} Ï€Ïιν." -#: ../java/src/net/i2p/router/web/NewsHelper.java:301 +#: ../java/src/net/i2p/router/web/NewsHelper.java:298 #, java-format msgid "News last checked {0} ago." msgstr "Έγινε Îλεγχος για νÎα {0} Ï€Ïιν." -#: ../java/src/net/i2p/router/web/NewsHelper.java:310 +#: ../java/src/net/i2p/router/web/NewsHelper.java:307 msgid "Hide news" msgstr "ΚÏÏψιμο νÎων" -#: ../java/src/net/i2p/router/web/NewsHelper.java:313 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:647 +#: ../java/src/net/i2p/router/web/NewsHelper.java:310 msgid "Show news" msgstr "Εμφάνιση νÎων" +#: ../java/src/net/i2p/router/web/NewsHelper.java:314 +msgid "Show all news" +msgstr "" + #: ../java/src/net/i2p/router/web/PluginStarter.java:140 msgid "Checking for plugin updates" msgstr "Έλεγχος για ενημεÏώσεις Ï€Ïόσθετων" #: ../java/src/net/i2p/router/web/PluginStarter.java:155 +#: ../java/src/net/i2p/router/web/PluginStarter.java:161 msgid "Plugin update check failed" msgstr "" -#: ../java/src/net/i2p/router/web/PluginStarter.java:193 +#: ../java/src/net/i2p/router/web/PluginStarter.java:199 #, java-format msgid "1 plugin updated" msgid_plural "{0} plugins updated" msgstr[0] "1 Ï€Ïόθετο ενημεÏώθηκε" msgstr[1] "{0} Ï€Ïόσθετα ενημεÏώθηκαν" -#: ../java/src/net/i2p/router/web/PluginStarter.java:195 +#: ../java/src/net/i2p/router/web/PluginStarter.java:201 msgid "Plugin update check complete" msgstr "ΟλοκλήÏωση ελÎγχου για ενημεÏώσεις Ï€Ïόσθετων" @@ -3633,7 +3694,7 @@ msgid "Failing" msgstr "" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:135 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:411 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:425 msgid "Integrated" msgstr "ΕνσωματωμÎνος" @@ -3902,277 +3963,287 @@ msgstr "" msgid "Lifetime average value" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:121 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:128 msgid "I2P Router Help & FAQ" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:123 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:130 msgid "Help & FAQ" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:131 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:138 msgid "" "Configure startup of clients and webapps (services); manually start dormant " "services" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:133 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:140 msgid "I2P Services" msgstr "I2P ΥπηÏεσίες" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:169 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:176 msgid "Configure I2P Router" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:171 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:178 msgid "I2P Internals" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:177 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:484 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:184 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:498 msgid "View existing tunnels and tunnel build status" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:183 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:370 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:190 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:384 msgid "Show all current peer connections" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:189 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:196 msgid "Show recent peer performance profiles" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:191 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:198 msgid "Profiles" msgstr "Î Ïοφίλ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:195 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:202 msgid "Show list of all known I2P routers" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:197 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:204 msgid "NetDB" msgstr "NetDB" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:201 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:208 msgid "Health Report" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:203 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:210 msgid "Logs" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:214 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 msgid "Graph router performance" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:216 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 msgid "Graphs" msgstr "ΓÏαφήματα" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:228 msgid "Textual router performance statistics" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:233 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:240 #: ../java/src/net/i2p/router/web/SummaryHelper.java:438 msgid "Local Tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:235 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:242 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:164 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:337 msgid "Hidden Services Manager" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:253 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:260 msgid "General" msgstr "Γενικά" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 msgid "" "Your Local Identity is your unique I2P router identity, similar to an ip " "address but tailored to I2P. " msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:259 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:266 msgid "Never disclose this to anyone, as it can reveal your real world ip." msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:261 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:268 msgid "Local Identity" msgstr "Τοπική ταυτότητα" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:272 msgid "Your unique I2P router identity is" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:269 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:276 msgid "never reveal it to anyone" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:271 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 msgid "show" msgstr "εμφάνιση" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:275 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:301 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:282 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:308 msgid "The version of the I2P software we are running" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:292 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:318 msgid "How long we've been running for this session" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:326 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:333 msgid "" "Help with configuring your firewall and router for optimal I2P performance" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:337 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:344 msgid "See more information on the wiki" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:339 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:346 msgid "Warning: ECDSA is not available. Update your Java or OS" msgstr "" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:351 -msgid "Configure I2P Updates" +#, java-format +msgid "Warning: Java version {0} is no longer supported by I2P." msgstr "" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#, java-format +msgid "Update Java to version {0} or higher to receive I2P updates." +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:365 +msgid "Configure I2P Updates" +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:367 msgid "I2P Update" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:378 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:392 msgid "Peers we've been talking to in the last few minutes/last hour" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:381 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:395 msgid "Active" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:390 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:404 msgid "The number of peers available for building client tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:393 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:407 msgid "Fast" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:399 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:413 msgid "The number of peers available for building exploratory tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:402 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:416 msgid "High capacity" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:408 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:422 msgid "The number of peers available for network database inquiries" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:417 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:431 msgid "The total number of peers in our network database" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:420 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:434 msgid "Known" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:440 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:454 msgid "Configure router bandwidth allocation" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:442 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:456 msgid "Bandwidth in/out" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:462 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:476 msgid "Total" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:469 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:483 msgid "Used" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:491 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:505 msgid "" "Used for building and testing tunnels, and communicating with floodfill " "peers" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:494 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:508 msgid "Exploratory" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:514 msgid "Tunnels we are using to provide or access services on the network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:509 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:523 msgid "" "Tunnels we are participating in, directly contributing bandwidth to the " "network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:512 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:526 msgid "Participating" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:518 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:532 msgid "" "The ratio of tunnel hops we provide to tunnel hops we use - a value greater " "than 1.00 indicates a positive contribution to the network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:521 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:535 msgid "Share ratio" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:534 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:548 msgid "What's in the router's job queue?" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:536 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 msgid "Congestion" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:541 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:555 msgid "Indicates router performance" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:544 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:558 msgid "Job lag" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:564 msgid "Indicates how quickly outbound messages to other I2P routers are sent" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:553 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:567 msgid "Message delay" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:560 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:574 msgid "Round trip time for a tunnel test" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:563 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:577 msgid "Tunnel lag" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:570 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:584 msgid "Queued requests from other routers to participate in tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:573 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:587 msgid "Backlog" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:608 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:623 msgid "News & Updates" msgstr "" @@ -4285,17 +4356,21 @@ msgid "Click Shutdown and restart to install" msgstr "Κάνε κλικ στο σβήσιμο και στη επανεκκίνησε για εγκατάσταση" #: ../java/src/net/i2p/router/web/SummaryHelper.java:720 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:735 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:737 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:749 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:761 #, java-format msgid "Version {0}" msgstr "Έκδοση {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:734 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:736 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:748 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:760 msgid "Update available" msgstr "" #. Note to translators: parameter is a version, e.g. "0.8.4" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:758 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:784 #, java-format msgid "Download {0} Update" msgstr "ΚατÎβασμα {0} ΕνημεÏώσεων" @@ -4304,7 +4379,7 @@ msgstr "ΚατÎβασμα {0} ΕνημεÏώσεων" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:766 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:792 #, java-format msgid "Download Signed<br>Development Update<br>{0}" msgstr "" @@ -4313,56 +4388,56 @@ msgstr "" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:774 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 #, java-format msgid "Download Unsigned<br>Update {0}" msgstr "ΚατÎβασμα μη υπογεγÏαμμÎνης<br>ΕνημÎÏωσης {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:798 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:824 msgid "Help with firewall configuration" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:826 msgid "Check network connection and NAT/firewall" msgstr "ΕλÎγξτε τη σÏνδεση δικτÏου και το NAT/firewall" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:819 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:845 msgid "Reseed" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:908 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:934 msgid "Order" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:925 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:951 msgid "Top" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:956 msgid "Move to top" -msgstr "" +msgstr "Μετακίνηση στην κοÏυφή" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:940 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:966 msgid "Move up" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:948 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:974 msgid "Down" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:953 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:979 msgid "Move down" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:958 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:984 msgid "Bottom" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:963 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 msgid "Move to bottom" -msgstr "" +msgstr "Μετακίνηση στο Ï„Îλος" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:975 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1001 msgid "Select a section to add" msgstr "Επίλεξε μια ενότητα για Ï€Ïοσθήκη" @@ -4409,100 +4484,100 @@ msgstr "ΤοÏνελ πελάτη για" msgid "dead" msgstr "νεκÏÏŒ" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:70 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:69 msgid "Participating tunnels" msgstr "ΣυμμετÎχοντα τοÏνελ" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "Receive on" msgstr "Λήψη σε" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Expiration" msgstr "Λήξη" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Send on" msgstr "Αποστολή σε" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Rate" msgstr "Ρυθμός" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Role" msgstr "Ρόλος" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Usage" msgstr "ΧÏήση" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:111 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:113 msgid "grace period" msgstr "πεÏίοδος χάÏιτος" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:121 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 msgid "Outbound Endpoint" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 msgid "Inbound Gateway" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:127 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:174 msgid "Participant" msgstr "ΣυμμετÎχων" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:130 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:133 #, java-format msgid "Limited display to the {0} tunnels with the highest usage" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:131 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:135 msgid "Inactive participating tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:132 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:224 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:138 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:232 msgid "Lifetime bandwidth usage" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Expiry" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:165 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 msgid "Participants" msgstr "ΣυμμετÎχοντες" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:177 msgid "Endpoint" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 #: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "Build in progress" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 msgid "inbound" msgstr "εισεÏχόμενη" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "outbound" msgstr "εξεÏχόμενη" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:223 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:231 msgid "No tunnels; waiting for the grace period to end." msgstr "ΚανÎνα τοÏνελ, αναμονή για λήξη της πεÏιόδου χάÏιτος " -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:225 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:233 msgid "in" msgstr "μÎσα" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:234 msgid "out" msgstr "Îξω" @@ -4639,10 +4714,6 @@ msgstr "" msgid "i2cp" msgstr "" -#: ../java/strings/Strings.java:63 -msgid "I2PTunnel" -msgstr "I2P τοÏνελ" - #: ../java/strings/Strings.java:64 msgid "InNetPool" msgstr "" @@ -4689,10 +4760,12 @@ msgstr "κλειδί" msgid "port" msgstr "πόÏτα" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 -msgid "configure bandwidth" -msgstr "ΡÏθμιση εÏÏους ζώνης" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:146 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:318 +msgid "Certificates" +msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:153 @@ -4726,6 +4799,7 @@ msgstr "ΡÏθμιση εÏÏους ζώνης" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:149 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:155 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:154 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:149 @@ -4741,6 +4815,7 @@ msgstr "To router είναι εκτός λειτουÏγίας" #. We have intl defined when this is included, but not when compiled #. standalone. +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:333 @@ -4773,6 +4848,7 @@ msgstr "To router είναι εκτός λειτουÏγίας" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:305 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:310 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:305 @@ -4788,6 +4864,7 @@ msgid "Refresh (s)" msgstr "ΑνανÎωση" #. ditto +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:337 @@ -4820,6 +4897,7 @@ msgstr "ΑνανÎωση" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:309 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:339 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:314 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:309 @@ -4834,6 +4912,10 @@ msgstr "ΑνανÎωση" msgid "Enable" msgstr "ΕνεÏγοποίηση" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 +msgid "configure bandwidth" +msgstr "ΡÏθμιση εÏÏους ζώνης" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:437 msgid "Bandwidth limiter" msgstr "ΠεÏιοÏισμός εÏÏους ζώνης" @@ -4910,7 +4992,7 @@ msgstr "Σελίδα Ï€ÏοχωÏημÎνων Ïυθμίσεων δικτÏου" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:501 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:477 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:639 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:587 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:558 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:509 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:461 @@ -5043,7 +5125,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:560 msgid "Username" -msgstr "" +msgstr "Όνομα χÏήστη" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:564 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:480 @@ -5943,51 +6025,51 @@ msgstr "ΧÏήση αποκλειστικά χωÏις SSL" msgid "Reseed URLs" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:541 msgid "Enable HTTP Proxy?" msgstr "ΕνεÏγοποίηση HTTP proxy;" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:543 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:545 msgid "HTTP Proxy Host" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:547 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:549 msgid "HTTP Proxy Port" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:551 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:553 msgid "Use HTTP Proxy Authorization?" msgstr "ΧÏήση εξουσιοδότησης με τον HTTP proxy;" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:555 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:557 msgid "HTTP Proxy Username" msgstr "Όνομα χÏήστη για τον HTTP proxy" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:559 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:561 msgid "HTTP Proxy Password" msgstr "Κωδικός για τον HTTP proxy" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:563 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:565 msgid "Enable HTTPS Proxy?" msgstr "ΕνεÏγοποίηση HTTPS proxy;" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:567 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:569 msgid "HTTPS Proxy Host" msgstr "ΔιεÏθυνση HTTPS proxy" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:571 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:573 msgid "HTTPS Proxy Port" msgstr "Î ÏŒÏτα HTTPS proxy" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:575 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:577 msgid "Use HTTPS Proxy Authorization?" msgstr "ΧÏήση εξουσιοδότησης με τον HTTPS proxy;" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:579 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:581 msgid "HTTPS Proxy Username" msgstr "Όνομα χÏήστη για τον HTTPS proxy" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:583 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:585 msgid "HTTPS Proxy Password" msgstr "Κωδικός για τον HTTPS proxy" @@ -6274,7 +6356,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:463 msgid "Apply" -msgstr "" +msgstr "ΕφαÏμογή" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:465 msgid "Router Console Password" @@ -6546,6 +6628,14 @@ msgstr "βάση δεδομÎνων δικτÏου" msgid "I2P Network Database" msgstr "Βάση ΔεδομÎνων ΔικτÏου I2P" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:148 +msgid "News" +msgstr "" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:344 +msgid "Latest News" +msgstr "" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:152 msgid "WebApp Not Found" msgstr "Η εφαÏμογή Î¹ÏƒÏ„Î¿Ï Î´ÎµÎ½ βÏÎθηκε" diff --git a/apps/routerconsole/locale/messages_en.po b/apps/routerconsole/locale/messages_en.po index c6299df22daba7280885d331aa8140288f314047..86d233ee7fdba6c2dd975b26baab164e5c511cd0 100644 --- a/apps/routerconsole/locale/messages_en.po +++ b/apps/routerconsole/locale/messages_en.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: I2P routerconsole\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:33+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" "PO-Revision-Date: 2010-06-15 14:09+0100\n" "Last-Translator: duck <duck@mail.i2p>\n" "Language-Team: duck <duck@mail.i2p>\n" @@ -127,19 +127,22 @@ msgid "IPs Permanently Banned" msgstr "" #: ../../../router/java/src/net/i2p/router/Blocklist.java:959 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "From" msgstr "" #: ../../../router/java/src/net/i2p/router/Blocklist.java:961 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "To" msgstr "" #: ../../../router/java/src/net/i2p/router/Blocklist.java:997 #: ../java/src/net/i2p/router/web/BanlistRenderer.java:48 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:652 +#: ../java/src/net/i2p/router/web/CertHelper.java:77 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:147 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:662 #: ../java/src/net/i2p/router/web/SummaryHelper.java:478 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:137 msgid "none" msgstr "" @@ -274,43 +277,43 @@ msgstr "" msgid "Rejecting tunnels" msgstr "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:212 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:210 #, java-format msgid "Reseeding: got router info from file ({0} successful, {1} errors)." msgstr "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:284 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:282 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:28 msgid "Reseeding" msgstr "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:307 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:305 #, java-format msgid "Reseed fetched only 1 router." msgid_plural "Reseed fetched only {0} routers." msgstr[0] "" msgstr[1] "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:314 msgid "Reseed failed." msgstr "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:317 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:315 #, java-format msgid "See {0} for help." msgstr "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:318 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 msgid "reseed configuration page" msgstr "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:566 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:697 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:564 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:695 msgid "Reseeding: fetching seed URL." msgstr "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:623 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:733 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:621 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:731 #, java-format msgid "" "Reseeding: fetching router info from seed URL ({0} successful, {1} errors)." @@ -373,12 +376,12 @@ msgid "Unreachable on any transport" msgstr "" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:674 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:566 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:577 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:604 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:622 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1348 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2469 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2474 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:92 msgid "Status" msgstr "" @@ -393,12 +396,12 @@ msgid "{0} is used for outbound connections only" msgstr "" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:711 -#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:283 +#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:295 msgid "UPnP is not enabled" msgstr "" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:720 -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:167 msgid "Help" msgstr "" @@ -422,7 +425,7 @@ msgstr "" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:726 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1352 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2473 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:24 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:33 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:35 @@ -437,7 +440,7 @@ msgstr "" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:727 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1353 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Dir" msgstr "" @@ -463,14 +466,14 @@ msgstr "" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:735 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1355 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2479 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 msgid "Idle" msgstr "" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:736 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1356 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "In/Out" msgstr "" @@ -484,14 +487,14 @@ msgstr "" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:737 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1357 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:935 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2494 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:961 msgid "Up" msgstr "" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:738 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1358 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2491 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2496 msgid "Skew" msgstr "" @@ -538,7 +541,7 @@ msgstr "" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:748 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1359 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2508 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 msgid "TX" msgstr "" @@ -548,7 +551,7 @@ msgstr "" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:749 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1360 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2510 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 msgid "RX" msgstr "" @@ -557,7 +560,7 @@ msgid "The total number of packets received from the peer" msgstr "" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:750 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2518 msgid "Dup TX" msgstr "" @@ -566,7 +569,7 @@ msgid "The total number of packets retransmitted to the peer" msgstr "" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:751 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2520 msgid "Dup RX" msgstr "" @@ -574,104 +577,104 @@ msgstr "" msgid "The total number of duplicate packets received from the peer" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:560 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:561 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 msgid "Service" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:564 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 msgid "WAN Common Interface Configuration" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:567 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:587 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:614 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:568 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:588 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:615 msgid "Type" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:569 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:589 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:570 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:590 msgid "Upstream" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:571 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:591 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:572 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:592 msgid "Downstream" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:575 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 msgid "WAN PPP Connection" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:583 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:610 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:288 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:314 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:584 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:611 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:295 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:321 msgid "Uptime" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:593 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:616 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:594 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:617 msgid "External IP" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:597 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 msgid "Layer 3 Forwarding" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:599 msgid "Default Connection Service" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:602 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 msgid "WAN IP Connection" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:620 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 msgid "WAN Ethernet Link Configuration" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:641 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:642 msgid "Found Device" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:643 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:644 msgid "Subdevice" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:664 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:665 msgid "UPnP Status" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:668 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:669 msgid "Disabled UPnP Devices" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:682 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:683 msgid "" "UPnP has been disabled; Do you have more than one UPnP Internet Gateway " "Device on your LAN ?" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:685 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:686 msgid "UPnP has not found any UPnP-aware, compatible device on your LAN." msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:693 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:694 #, java-format msgid "The current external IP address reported by UPnP is {0}" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:695 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:696 msgid "The current external IP address is not available." msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:699 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:700 #, java-format msgid "UPnP reports the maximum downstream bit rate is {0}bits/sec" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:701 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:702 #, java-format msgid "UPnP reports the maximum upstream bit rate is {0}bits/sec" msgstr "" @@ -679,12 +682,12 @@ msgstr "" #. {0} is TCP or UDP #. {1,number,#####} prevents 12345 from being output as 12,345 in the English locale. #. If you want the digit separator in your locale, translate as {1}. -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:709 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:710 #, java-format msgid "{0} port {1,number,#####} was successfully forwarded by UPnP." msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:711 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:712 #, java-format msgid "{0} port {1,number,#####} was not forwarded by UPnP." msgstr "" @@ -700,17 +703,17 @@ msgid "NTCP connections" msgstr "" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1345 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2466 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2471 msgid "Limit" msgstr "" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1346 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2467 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2472 msgid "Timeout" msgstr "" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1354 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2483 msgid "IPv6" msgstr "" @@ -723,126 +726,126 @@ msgid "Backlogged?" msgstr "" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1375 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2532 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2537 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Inbound" msgstr "" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1377 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2534 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2539 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Outbound" msgstr "" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1432 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2699 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2704 #, java-format msgid "{0} peer" msgid_plural "{0} peers" msgstr[0] "" msgstr[1] "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2465 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2470 msgid "UDP connections" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2475 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 msgid "Sort by peer hash" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Direction/Introduction" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 msgid "Sort by idle inbound" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 msgid "Sort by idle outbound" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 msgid "Sort by inbound rate" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 msgid "Sort by outbound rate" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 msgid "Sort by connection uptime" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 msgid "Sort by clock skew" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 msgid "Sort by congestion window" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2502 msgid "Sort by slow start threshold" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2505 msgid "Sort by round trip time" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2504 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 msgid "Sort by retransmission timeout" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2507 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2512 msgid "Sort by outbound maximum transmit unit" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 msgid "Sort by packets sent" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2511 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 msgid "Sort by packets received" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2519 msgid "Sort by packets retransmitted" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2521 msgid "Sort by packets received more than once" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2536 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2541 msgid "We offered to introduce them" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2538 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2543 msgid "They offered to introduce us" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2542 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2547 msgid "Choked" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2550 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2555 msgid "1 fail" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2552 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2557 #, java-format msgid "{0} fails" msgstr "" #. 1 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2558 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2563 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:166 #: ../java/src/net/i2p/router/web/ProfilesHelper.java:13 msgid "Banned" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2617 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2622 msgid "backlogged" msgstr "" @@ -859,96 +862,96 @@ msgstr "" msgid "Dropping tunnel requests: Overloaded" msgstr "" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:693 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:695 msgid "Rejecting tunnels: Hidden mode" msgstr "" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:721 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:723 msgid "Rejecting tunnels: Request overload" msgstr "" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:752 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:754 msgid "Rejecting tunnels: Connection limit" msgstr "" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:964 -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:997 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:966 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:999 msgid "Dropping tunnel requests: High load" msgstr "" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1076 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1078 msgid "Dropping tunnel requests: Queue time" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:884 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:895 #, java-format msgid "New plugin version {0} is available" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:964 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:975 #, java-format msgid "Update check failed for plugin {0}" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:968 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:979 #, java-format msgid "No new version is available for plugin {0}" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:992 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1003 #, java-format msgid "{0}B transferred" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1051 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1062 #, java-format msgid "Install failed from {0}" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1053 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1064 #: ../java/src/net/i2p/router/update/UpdateRunner.java:298 #, java-format msgid "Transfer failed from {0}" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1328 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1339 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1403 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 #: ../java/src/net/i2p/router/web/SummaryHelper.java:715 msgid "Update downloaded" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 msgid "Restarting" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 msgid "Update verified" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1381 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:189 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:306 #, java-format msgid "from {0}" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1396 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1407 #, java-format msgid "Unsigned update file from {0} is corrupt" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1425 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1436 #, java-format msgid "Failed copy to {0}" msgstr "" -#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:47 +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:49 #: ../java/src/net/i2p/router/update/DevSU3UpdateRunner.java:40 #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:55 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:111 -#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:62 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:64 #: ../java/src/net/i2p/router/update/UnsignedUpdateRunner.java:41 #: ../java/src/net/i2p/router/update/UpdateRunner.java:155 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:573 @@ -957,6 +960,13 @@ msgstr "" msgid "HTTP client proxy tunnel must be running" msgstr "" +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:83 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:242 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:88 +#, java-format +msgid "Requires Java version {0} but installed Java version is {1}" +msgstr "" + #. set status before thread to ensure UI feedback #: ../java/src/net/i2p/router/update/DevSU3UpdateHandler.java:91 #: ../java/src/net/i2p/router/update/PluginUpdateHandler.java:82 @@ -966,24 +976,19 @@ msgstr "" msgid "Updating" msgstr "" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:209 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:218 msgid "In-network updates disabled. Check package manager." msgstr "" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:215 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:224 msgid "No write permission for I2P install directory." msgstr "" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:223 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:232 #, java-format msgid "You must first update to version {0}" msgstr "" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:233 -#, java-format -msgid "Requires Java version {0} but installed Java version is {1}" -msgstr "" - #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:62 #, java-format msgid "Checking for update of plugin {0}" @@ -1186,8 +1191,10 @@ msgid "unban now" msgstr "" #: ../java/src/net/i2p/router/web/CSSHelper.java:149 -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../java/strings/Strings.java:29 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:217 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:221 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:219 @@ -1257,6 +1264,8 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:217 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:219 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:224 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:228 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:230 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:222 @@ -1282,6 +1291,16 @@ msgstr "" msgid "I2P Router Console" msgstr "" +#: ../java/src/net/i2p/router/web/CertHelper.java:25 +msgid "Local SSL Certificates" +msgstr "" + +#: ../java/src/net/i2p/router/web/CertHelper.java:46 +#: ../java/src/net/i2p/router/web/CertHelper.java:51 +#: ../java/strings/Strings.java:63 +msgid "I2PTunnel" +msgstr "" + #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:62 msgid "Error updating the configuration - please see the error logs" msgstr "" @@ -1296,7 +1315,8 @@ msgstr "" #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:98 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:622 #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:391 -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:151 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:109 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:160 msgid "" "Error saving the configuration (applied but not saved) - please see the " "error logs" @@ -1501,7 +1521,7 @@ msgid "Add Client" msgstr "" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:116 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:503 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:517 #: ../java/src/net/i2p/router/web/SummaryHelper.java:452 msgid "Client" msgstr "" @@ -1533,9 +1553,9 @@ msgid "Plugin" msgstr "" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:248 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:304 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 msgid "Version" msgstr "" @@ -1556,9 +1576,9 @@ msgid "License" msgstr "" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:294 -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/HomeHelper.java:171 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:157 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/HomeHelper.java:178 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:164 msgid "Website" msgstr "" @@ -1593,7 +1613,7 @@ msgstr "" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:21 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigUIHandler.java:19 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:970 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:996 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:496 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:516 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:532 @@ -1603,7 +1623,7 @@ msgstr "" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:23 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1015 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:494 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:502 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:514 @@ -1699,11 +1719,11 @@ msgstr "" msgid "Invalid destination" msgstr "" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:82 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:84 msgid "Log overrides updated" msgstr "" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:163 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:165 msgid "Log configuration saved" msgstr "" @@ -1751,8 +1771,8 @@ msgstr "" #: ../java/src/net/i2p/router/web/ConfigLoggingHelper.java:85 #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:170 -#: ../java/src/net/i2p/router/web/HomeHelper.java:208 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:904 +#: ../java/src/net/i2p/router/web/HomeHelper.java:215 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 msgid "Remove" msgstr "" @@ -1771,11 +1791,12 @@ msgid "Home Page" msgstr "" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:328 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:335 msgid "Network" msgstr "" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:320 @@ -1809,6 +1830,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:292 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:322 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:297 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:292 @@ -1827,8 +1849,8 @@ msgid "UI" msgstr "" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:179 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:486 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:186 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 #: ../java/strings/Strings.java:73 msgid "Tunnels" msgstr "" @@ -1847,15 +1869,15 @@ msgid "Logging" msgstr "" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:185 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:372 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:192 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:386 #: ../java/strings/Strings.java:68 msgid "Peers" msgstr "" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:497 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:230 msgid "Stats" msgstr "" @@ -1871,7 +1893,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:491 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:479 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:641 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:593 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:560 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:511 msgid "Save changes" @@ -2052,7 +2074,7 @@ msgid "Unsupported" msgstr "" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:24 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 msgid "Save changes and reseed now" msgstr "" @@ -2100,7 +2122,16 @@ msgid_plural "Reseed successful, loaded {0} router infos from file" msgstr[0] "" msgstr[1] "" -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:149 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:99 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +msgid "Reset URL list" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:107 +msgid "URL list reset successfully" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:158 msgid "Configuration saved successfully." msgstr "" @@ -2599,8 +2630,8 @@ msgid "User Name" msgstr "" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:183 -#: ../java/src/net/i2p/router/web/HomeHelper.java:235 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:972 +#: ../java/src/net/i2p/router/web/HomeHelper.java:242 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:998 msgid "Add" msgstr "" @@ -2831,13 +2862,13 @@ msgstr "" msgid "Details" msgstr "" -#: ../java/src/net/i2p/router/web/FormHandler.java:251 +#: ../java/src/net/i2p/router/web/FormHandler.java:253 msgid "" "Invalid form submission, probably because you used the 'back' or 'reload' " "button on your browser. Please resubmit." msgstr "" -#: ../java/src/net/i2p/router/web/FormHandler.java:253 +#: ../java/src/net/i2p/router/web/FormHandler.java:255 msgid "" "If the problem persists, verify that you have cookies enabled in your " "browser." @@ -2968,244 +2999,263 @@ msgstr "" msgid "Graph settings saved" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:229 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:236 msgid "Addressbook" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:227 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:234 msgid "Manage your I2P hosts file here (I2P domain name resolution)" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 msgid "Configure Bandwidth" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:330 msgid "I2P Bandwidth Configuration" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Configure Language" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Console Language Selection" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 msgid "Customize Home Page" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:346 msgid "I2P Home Page Configuration" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:139 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:146 msgid "Anonymous webmail client" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:141 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:148 msgid "Email" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:251 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 msgid "I2P Router Help" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:161 msgid "Router Console" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:145 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:152 msgid "Built-in anonymous BitTorrent Client" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:147 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:154 msgid "Torrents" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:155 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:162 msgid "Local web server" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:41 +#: ../java/src/net/i2p/router/web/HomeHelper.java:43 msgid "The Anoncoin project" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug Reports" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug tracker" msgstr "" #. "colombo-bt.i2p" + S + _x("The Italian Bittorrent Resource") + S + "http://colombo-bt.i2p/" + S + I + "colomboicon.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Dev Forum" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Development forum" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Bittorrent tracker" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 msgid "diftracker" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:46 +#: ../java/src/net/i2p/router/web/HomeHelper.java:48 msgid "I2P Applications" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +msgid "Anonymous cryptocurrency exchange" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "FAQ" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "Frequently Asked Questions" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Community forum" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Forum" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "" "A public anonymous Git hosting site - supports pulling via Git and HTTP and " "pushing via SSH" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "Anonymous Git Hosting" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:50 +#: ../java/src/net/i2p/router/web/HomeHelper.java:53 msgid "HiddenGate" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "Anonymous wiki - share the knowledge" +msgstr "" + +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "I2P Wiki" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Microblog" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Your premier microblogging service on I2P" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 msgid "Javadocs" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical documentation" msgstr "" #. "jisko.i2p" + S + _x("Simple and fast microblogging website") + S + "http://jisko.i2p/" + S + I + "jisko_console_icon.png" + S + #. _x("Key Server") + S + _x("OpenPGP Keyserver") + S + "http://keys.i2p/" + S + I + "education.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +#: ../java/src/net/i2p/router/web/HomeHelper.java:60 msgid "Debian and Tahoe-LAFS repositories" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free Web Hosting" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free eepsite hosting with PHP and MySQL" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "I2P Pastebin" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "Pastebin" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:58 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 msgid "I2P News" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +msgid "Planet I2P" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Add-on directory" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Plugins" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Postman's Tracker" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "I2P home page" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "Project Website" msgstr "" +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:68 +msgid "Russian News Feed" +msgstr "" + #. "Salt" + S + "salt.i2p" + S + "http://salt.i2p/" + S + I + "salt_console.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +#: ../java/src/net/i2p/router/web/HomeHelper.java:70 msgid "I2P Network Statistics" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical Docs" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:65 +#: ../java/src/net/i2p/router/web/HomeHelper.java:72 msgid "Trac Wiki" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:66 -msgid "Ugha's Wiki" -msgstr "" - -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Seedless and the Robert BitTorrent applications" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#. _x("Ugha's Wiki") + S + S + "http://ugha.i2p/" + S + I + "billiard_marker.png" + S + +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Sponge's main site" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:108 +#: ../java/src/net/i2p/router/web/HomeHelper.java:115 msgid "The HTTP proxy is not up" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:110 +#: ../java/src/net/i2p/router/web/HomeHelper.java:117 #, java-format msgid "Your browser is not properly configured to use the HTTP proxy at {0}" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:210 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:906 +#: ../java/src/net/i2p/router/web/HomeHelper.java:217 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:932 msgid "Name" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:212 +#: ../java/src/net/i2p/router/web/HomeHelper.java:219 msgid "URL" msgstr "" @@ -3333,217 +3383,226 @@ msgstr "" msgid "LeaseSets" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:105 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:106 #: ../java/strings/Strings.java:69 msgid "Router" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:112 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:113 msgid "not found in network database" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:156 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 msgid "LeaseSet" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:158 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:163 msgid "Local" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:160 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:165 msgid "Unpublished" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:176 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:166 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:181 msgid "Destination" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:173 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:185 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:178 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 msgid "Add to local addressbook" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:217 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:195 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:222 #, java-format msgid "Expires in {0}" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:192 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:219 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:197 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:224 #, java-format msgid "Expired {0} ago" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Gateway" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 msgid "Lease" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:213 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:218 msgid "Tunnel" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:280 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:286 msgid "Not initialized" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:330 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:342 msgid "Network Database Router Statistics" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Count" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 msgid "Transports" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Country" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:429 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:453 msgid "Our info" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:431 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:455 msgid "Peer info for" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:433 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:457 msgid "Full entry" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 #: ../java/src/net/i2p/router/web/SummaryHelper.java:152 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:726 msgid "Hidden" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 msgid "Updated" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:441 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:444 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:465 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:468 #, java-format msgid "{0} ago" msgstr "" #. shouldnt happen -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:443 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:447 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:467 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:471 msgid "Published" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:449 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 msgid "Signing Key" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:451 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:475 msgid "Address(es)" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:463 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:487 msgid "cost" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "Hidden or starting up" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU with introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU with introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 Only SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 Only NTCP, SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NewsHelper.java:295 +#: ../java/src/net/i2p/router/web/NewsFeedHelper.java:80 +#, java-format +msgid "by {0}" +msgstr "" + +#: ../java/src/net/i2p/router/web/NewsHelper.java:292 #, java-format msgid "News last updated {0} ago." msgstr "" -#: ../java/src/net/i2p/router/web/NewsHelper.java:301 +#: ../java/src/net/i2p/router/web/NewsHelper.java:298 #, java-format msgid "News last checked {0} ago." msgstr "" -#: ../java/src/net/i2p/router/web/NewsHelper.java:310 +#: ../java/src/net/i2p/router/web/NewsHelper.java:307 msgid "Hide news" msgstr "" -#: ../java/src/net/i2p/router/web/NewsHelper.java:313 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:647 +#: ../java/src/net/i2p/router/web/NewsHelper.java:310 msgid "Show news" msgstr "" +#: ../java/src/net/i2p/router/web/NewsHelper.java:314 +msgid "Show all news" +msgstr "" + #: ../java/src/net/i2p/router/web/PluginStarter.java:140 msgid "Checking for plugin updates" msgstr "" #: ../java/src/net/i2p/router/web/PluginStarter.java:155 +#: ../java/src/net/i2p/router/web/PluginStarter.java:161 msgid "Plugin update check failed" msgstr "" -#: ../java/src/net/i2p/router/web/PluginStarter.java:193 +#: ../java/src/net/i2p/router/web/PluginStarter.java:199 #, java-format msgid "1 plugin updated" msgid_plural "{0} plugins updated" msgstr[0] "" msgstr[1] "" -#: ../java/src/net/i2p/router/web/PluginStarter.java:195 +#: ../java/src/net/i2p/router/web/PluginStarter.java:201 msgid "Plugin update check complete" msgstr "" @@ -3609,7 +3668,7 @@ msgid "Failing" msgstr "" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:135 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:411 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:425 msgid "Integrated" msgstr "" @@ -3876,276 +3935,286 @@ msgstr "" msgid "Lifetime average value" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:121 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:128 msgid "I2P Router Help & FAQ" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:123 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:130 msgid "Help & FAQ" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:131 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:138 msgid "" "Configure startup of clients and webapps (services); manually start dormant " "services" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:133 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:140 msgid "I2P Services" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:169 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:176 msgid "Configure I2P Router" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:171 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:178 msgid "I2P Internals" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:177 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:484 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:184 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:498 msgid "View existing tunnels and tunnel build status" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:183 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:370 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:190 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:384 msgid "Show all current peer connections" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:189 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:196 msgid "Show recent peer performance profiles" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:191 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:198 msgid "Profiles" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:195 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:202 msgid "Show list of all known I2P routers" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:197 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:204 msgid "NetDB" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:201 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:208 msgid "Health Report" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:203 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:210 msgid "Logs" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:214 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 msgid "Graph router performance" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:216 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 msgid "Graphs" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:228 msgid "Textual router performance statistics" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:233 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:240 #: ../java/src/net/i2p/router/web/SummaryHelper.java:438 msgid "Local Tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:235 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:242 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:164 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:337 msgid "Hidden Services Manager" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:253 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:260 msgid "General" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 msgid "" "Your Local Identity is your unique I2P router identity, similar to an ip " "address but tailored to I2P. " msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:259 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:266 msgid "Never disclose this to anyone, as it can reveal your real world ip." msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:261 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:268 msgid "Local Identity" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:272 msgid "Your unique I2P router identity is" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:269 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:276 msgid "never reveal it to anyone" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:271 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 msgid "show" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:275 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:301 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:282 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:308 msgid "The version of the I2P software we are running" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:292 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:318 msgid "How long we've been running for this session" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:326 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:333 msgid "" "Help with configuring your firewall and router for optimal I2P performance" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:337 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:344 msgid "See more information on the wiki" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:339 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:346 msgid "Warning: ECDSA is not available. Update your Java or OS" msgstr "" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:351 -msgid "Configure I2P Updates" +#, java-format +msgid "Warning: Java version {0} is no longer supported by I2P." msgstr "" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#, java-format +msgid "Update Java to version {0} or higher to receive I2P updates." +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:365 +msgid "Configure I2P Updates" +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:367 msgid "I2P Update" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:378 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:392 msgid "Peers we've been talking to in the last few minutes/last hour" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:381 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:395 msgid "Active" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:390 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:404 msgid "The number of peers available for building client tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:393 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:407 msgid "Fast" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:399 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:413 msgid "The number of peers available for building exploratory tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:402 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:416 msgid "High capacity" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:408 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:422 msgid "The number of peers available for network database inquiries" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:417 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:431 msgid "The total number of peers in our network database" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:420 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:434 msgid "Known" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:440 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:454 msgid "Configure router bandwidth allocation" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:442 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:456 msgid "Bandwidth in/out" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:462 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:476 msgid "Total" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:469 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:483 msgid "Used" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:491 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:505 msgid "" "Used for building and testing tunnels, and communicating with floodfill peers" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:494 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:508 msgid "Exploratory" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:514 msgid "Tunnels we are using to provide or access services on the network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:509 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:523 msgid "" "Tunnels we are participating in, directly contributing bandwidth to the " "network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:512 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:526 msgid "Participating" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:518 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:532 msgid "" "The ratio of tunnel hops we provide to tunnel hops we use - a value greater " "than 1.00 indicates a positive contribution to the network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:521 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:535 msgid "Share ratio" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:534 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:548 msgid "What's in the router's job queue?" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:536 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 msgid "Congestion" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:541 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:555 msgid "Indicates router performance" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:544 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:558 msgid "Job lag" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:564 msgid "Indicates how quickly outbound messages to other I2P routers are sent" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:553 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:567 msgid "Message delay" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:560 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:574 msgid "Round trip time for a tunnel test" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:563 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:577 msgid "Tunnel lag" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:570 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:584 msgid "Queued requests from other routers to participate in tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:573 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:587 msgid "Backlog" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:608 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:623 msgid "News & Updates" msgstr "" @@ -4258,17 +4327,21 @@ msgid "Click Shutdown and restart to install" msgstr "" #: ../java/src/net/i2p/router/web/SummaryHelper.java:720 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:735 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:737 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:749 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:761 #, java-format msgid "Version {0}" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:734 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:736 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:748 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:760 msgid "Update available" msgstr "" #. Note to translators: parameter is a version, e.g. "0.8.4" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:758 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:784 #, java-format msgid "Download {0} Update" msgstr "" @@ -4276,7 +4349,7 @@ msgstr "" #. Note to translators: parameter is a router version, e.g. "0.9.19-16" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:766 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:792 #, java-format msgid "Download Signed<br>Development Update<br>{0}" msgstr "" @@ -4284,56 +4357,56 @@ msgstr "" #. Note to translators: parameter is a date and time, e.g. "02-Mar 20:34 UTC" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:774 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 #, java-format msgid "Download Unsigned<br>Update {0}" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:798 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:824 msgid "Help with firewall configuration" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:826 msgid "Check network connection and NAT/firewall" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:819 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:845 msgid "Reseed" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:908 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:934 msgid "Order" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:925 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:951 msgid "Top" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:956 msgid "Move to top" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:940 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:966 msgid "Move up" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:948 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:974 msgid "Down" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:953 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:979 msgid "Move down" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:958 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:984 msgid "Bottom" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:963 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 msgid "Move to bottom" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:975 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1001 msgid "Select a section to add" msgstr "" @@ -4380,100 +4453,100 @@ msgstr "" msgid "dead" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:70 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:69 msgid "Participating tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "Receive on" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Expiration" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Send on" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Rate" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Role" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Usage" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:111 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:113 msgid "grace period" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:121 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 msgid "Outbound Endpoint" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 msgid "Inbound Gateway" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:127 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:174 msgid "Participant" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:130 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:133 #, java-format msgid "Limited display to the {0} tunnels with the highest usage" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:131 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:135 msgid "Inactive participating tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:132 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:224 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:138 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:232 msgid "Lifetime bandwidth usage" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Expiry" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:165 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 msgid "Participants" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:177 msgid "Endpoint" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 #: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "Build in progress" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 msgid "inbound" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "outbound" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:223 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:231 msgid "No tunnels; waiting for the grace period to end." msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:225 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:233 msgid "in" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:234 msgid "out" msgstr "" @@ -4610,10 +4683,6 @@ msgstr "" msgid "i2cp" msgstr "" -#: ../java/strings/Strings.java:63 -msgid "I2PTunnel" -msgstr "" - #: ../java/strings/Strings.java:64 msgid "InNetPool" msgstr "" @@ -4660,10 +4729,12 @@ msgstr "" msgid "port" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 -msgid "configure bandwidth" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:146 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:318 +msgid "Certificates" msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:153 @@ -4697,6 +4768,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:149 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:155 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:154 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:149 @@ -4711,6 +4783,7 @@ msgid "Router is down" msgstr "" #. We have intl defined when this is included, but not when compiled standalone. +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:333 @@ -4743,6 +4816,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:305 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:310 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:305 @@ -4758,6 +4832,7 @@ msgid "Refresh (s)" msgstr "" #. ditto +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:337 @@ -4790,6 +4865,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:309 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:339 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:314 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:309 @@ -4804,6 +4880,10 @@ msgstr "" msgid "Enable" msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 +msgid "configure bandwidth" +msgstr "" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:437 msgid "Bandwidth limiter" msgstr "" @@ -4880,7 +4960,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:501 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:477 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:639 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:587 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:558 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:509 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:461 @@ -5910,51 +5990,51 @@ msgstr "" msgid "Reseed URLs" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:541 msgid "Enable HTTP Proxy?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:543 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:545 msgid "HTTP Proxy Host" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:547 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:549 msgid "HTTP Proxy Port" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:551 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:553 msgid "Use HTTP Proxy Authorization?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:555 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:557 msgid "HTTP Proxy Username" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:559 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:561 msgid "HTTP Proxy Password" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:563 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:565 msgid "Enable HTTPS Proxy?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:567 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:569 msgid "HTTPS Proxy Host" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:571 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:573 msgid "HTTPS Proxy Port" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:575 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:577 msgid "Use HTTPS Proxy Authorization?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:579 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:581 msgid "HTTPS Proxy Username" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:583 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:585 msgid "HTTPS Proxy Password" msgstr "" @@ -6510,6 +6590,14 @@ msgstr "" msgid "I2P Network Database" msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:148 +msgid "News" +msgstr "" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:344 +msgid "Latest News" +msgstr "" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:152 msgid "WebApp Not Found" msgstr "" diff --git a/apps/routerconsole/locale/messages_es.po b/apps/routerconsole/locale/messages_es.po index c5be1e480dd87ce16e7bbbfe021122a64e795377..3d1af06bb8faac16355bc5b67770c08b0f4e17e0 100644 --- a/apps/routerconsole/locale/messages_es.po +++ b/apps/routerconsole/locale/messages_es.po @@ -23,10 +23,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:05+0000\n" -"PO-Revision-Date: 2015-07-17 02:10+0000\n" -"Last-Translator: strel\n" -"Language-Team: Spanish (http://www.transifex.com/projects/p/I2P/language/es/)\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-05 17:17+0000\n" +"Last-Translator: kytv <killyourtv@i2pmail.org>\n" +"Language-Team: Spanish (http://www.transifex.com/otf/I2P/language/es/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -145,19 +145,22 @@ msgid "IPs Permanently Banned" msgstr "IPs excluidas permanente" #: ../../../router/java/src/net/i2p/router/Blocklist.java:959 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "From" msgstr "De" #: ../../../router/java/src/net/i2p/router/Blocklist.java:961 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "To" msgstr "A" #: ../../../router/java/src/net/i2p/router/Blocklist.java:997 #: ../java/src/net/i2p/router/web/BanlistRenderer.java:48 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:652 +#: ../java/src/net/i2p/router/web/CertHelper.java:77 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:147 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:662 #: ../java/src/net/i2p/router/web/SummaryHelper.java:478 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:137 msgid "none" msgstr "ninguno" @@ -295,43 +298,43 @@ msgstr "Rechazando túneles: Apagando" msgid "Rejecting tunnels" msgstr "Rechazando túneles" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:212 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:210 #, java-format msgid "Reseeding: got router info from file ({0} successful, {1} errors)." msgstr "Resembrado: Se obtuvo la información de routers I2P del fichero ({0} completados, {1} errores)." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:284 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:282 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:28 msgid "Reseeding" msgstr "Resembrando (reseed)" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:307 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:305 #, java-format msgid "Reseed fetched only 1 router." msgid_plural "Reseed fetched only {0} routers." msgstr[0] "El resembrado sólo obtuvo 1 router I2P." msgstr[1] "El resembrado sólo obtuvo {0} routers I2P." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:314 msgid "Reseed failed." msgstr "El resembrado falló." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:317 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:315 #, java-format msgid "See {0} for help." msgstr "Consulte {0} para obtener ayuda." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:318 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 msgid "reseed configuration page" msgstr "página de configuración del resembrado (reseed)" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:566 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:697 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:564 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:695 msgid "Reseeding: fetching seed URL." msgstr "Resembrando: Descargando URL de la semilla (seed)." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:623 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:733 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:621 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:731 #, java-format msgid "" "Reseeding: fetching router info from seed URL ({0} successful, {1} errors)." @@ -396,12 +399,12 @@ msgid "Unreachable on any transport" msgstr "Inaccesible sobre cualquier transporte" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:674 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:566 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:577 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:604 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:622 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1348 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2469 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2474 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:92 msgid "Status" msgstr "Estado" @@ -416,12 +419,12 @@ msgid "{0} is used for outbound connections only" msgstr "{0} se utiliza sólo para conexiones salientes" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:711 -#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:283 +#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:295 msgid "UPnP is not enabled" msgstr "UPnP no está habilitado" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:720 -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:167 msgid "Help" msgstr "Ayuda" @@ -445,7 +448,7 @@ msgstr "Definiciones" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:726 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1352 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2473 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:24 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:33 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:35 @@ -460,7 +463,7 @@ msgstr "Par (peer) remoto vÃa identificador criptrográfico (hash) de su router #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:727 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1353 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Dir" msgstr "Dir" @@ -487,14 +490,14 @@ msgstr "El tiempo que hace que un paquete ha sido recibido / enviado" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:735 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1355 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2479 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 msgid "Idle" msgstr "Sin actividad" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:736 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1356 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "In/Out" msgstr "Entrada/Salida" @@ -508,14 +511,14 @@ msgstr "El tiempo que hace que se estableció esta conexión" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:737 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1357 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:935 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2494 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:961 msgid "Up" msgstr "Subida" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:738 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1358 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2491 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2496 msgid "Skew" msgstr "Desincronización" @@ -564,7 +567,7 @@ msgstr "Tamaño máximo actual de envÃo de paquete / tamaño máximo estimado d #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:748 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1359 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2508 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 msgid "TX" msgstr "Env" @@ -574,7 +577,7 @@ msgstr "El número total de paquetes enviados al par (peer)" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:749 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1360 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2510 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 msgid "RX" msgstr "Rec" @@ -583,7 +586,7 @@ msgid "The total number of packets received from the peer" msgstr "El número total de paquetes recibidos del par (peer)" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:750 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2518 msgid "Dup TX" msgstr "Env dup" @@ -592,7 +595,7 @@ msgid "The total number of packets retransmitted to the peer" msgstr "El número total de paquetes enviados de nuevo al par (peer)" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:751 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2520 msgid "Dup RX" msgstr "Rec dup" @@ -600,104 +603,104 @@ msgstr "Rec dup" msgid "The total number of duplicate packets received from the peer" msgstr "El número total de paquetes duplicados recibidos del par (peer)" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:560 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:561 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 msgid "Service" msgstr "Servicio" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:564 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 msgid "WAN Common Interface Configuration" msgstr "Configuración de la interfaz común WAN" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:567 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:587 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:614 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:568 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:588 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:615 msgid "Type" msgstr "Tipo" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:569 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:589 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:570 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:590 msgid "Upstream" msgstr "Ascendente" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:571 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:591 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:572 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:592 msgid "Downstream" msgstr "Descendente" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:575 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 msgid "WAN PPP Connection" msgstr "Conexión PPP WAN" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:583 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:610 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:288 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:314 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:584 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:611 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:295 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:321 msgid "Uptime" msgstr "Periodo de actividad" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:593 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:616 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:594 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:617 msgid "External IP" msgstr "IP externa" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:597 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 msgid "Layer 3 Forwarding" msgstr "Retransmisión en capa 3" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:599 msgid "Default Connection Service" msgstr "Servicio de conexión predeterminado" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:602 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 msgid "WAN IP Connection" msgstr "Conexión IP WAN" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:620 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 msgid "WAN Ethernet Link Configuration" msgstr "Configuración del enlace Ethernet WAN" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:641 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:642 msgid "Found Device" msgstr "Dispositivo encontrado" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:643 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:644 msgid "Subdevice" msgstr "Subdispositivo" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:664 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:665 msgid "UPnP Status" msgstr "Estado de UPnP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:668 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:669 msgid "Disabled UPnP Devices" msgstr "Deshabilitar dispositivos UPnP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:682 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:683 msgid "" "UPnP has been disabled; Do you have more than one UPnP Internet Gateway " "Device on your LAN ?" msgstr "UPnP ha sido deshabilitado; ¿Tiene más de un dispositivo UPnP de pasarela (gateway) a Internet en su red local (LAN)?" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:685 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:686 msgid "UPnP has not found any UPnP-aware, compatible device on your LAN." msgstr "UPnP no ha encontrado ningún dispositivo compatible-UPnP en su red local (LAN)." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:693 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:694 #, java-format msgid "The current external IP address reported by UPnP is {0}" msgstr "La dirección IP externa actual reportada por UPnP es {0}." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:695 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:696 msgid "The current external IP address is not available." msgstr "La dirección IP externa actual no está disponible." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:699 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:700 #, java-format msgid "UPnP reports the maximum downstream bit rate is {0}bits/sec" msgstr "UPnP informa de que la tasa descendente máxima es {0} bits/s" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:701 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:702 #, java-format msgid "UPnP reports the maximum upstream bit rate is {0}bits/sec" msgstr "UPnP informa de que la tasa ascendente máxima es {0} bits/s" @@ -706,12 +709,12 @@ msgstr "UPnP informa de que la tasa ascendente máxima es {0} bits/s" #. {1,number,#####} prevents 12345 from being output as 12,345 in the English #. locale. #. If you want the digit separator in your locale, translate as {1}. -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:709 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:710 #, java-format msgid "{0} port {1,number,#####} was successfully forwarded by UPnP." msgstr "El puerto {1,number,#####} {0} fue retransmitido con éxito por UPnP." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:711 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:712 #, java-format msgid "{0} port {1,number,#####} was not forwarded by UPnP." msgstr "El puerto {1,number,#####} {0} no fue retransmitido por UPnP." @@ -727,17 +730,17 @@ msgid "NTCP connections" msgstr "Conexiones NTCP" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1345 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2466 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2471 msgid "Limit" msgstr "LÃmite" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1346 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2467 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2472 msgid "Timeout" msgstr "Periodo de espera" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1354 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2483 msgid "IPv6" msgstr "IPv6" @@ -750,126 +753,126 @@ msgid "Backlogged?" msgstr "¿Pendiente?" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1375 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2532 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2537 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Inbound" msgstr "Entrante" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1377 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2534 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2539 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Outbound" msgstr "Saliente" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1432 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2699 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2704 #, java-format msgid "{0} peer" msgid_plural "{0} peers" msgstr[0] "{0} par" msgstr[1] "{0} pares" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2465 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2470 msgid "UDP connections" msgstr "Conexiones UDP" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2475 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 msgid "Sort by peer hash" msgstr "Ordenar por identificador criptográfico (hash) del par" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Direction/Introduction" msgstr "Dirección/Introducción" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 msgid "Sort by idle inbound" msgstr "Ordenar por inactividad entrante" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 msgid "Sort by idle outbound" msgstr "Ordenar por inactividad saliente" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 msgid "Sort by inbound rate" msgstr "Ordenar por tasa de entrada" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 msgid "Sort by outbound rate" msgstr "Ordenar por tasa de salida" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 msgid "Sort by connection uptime" msgstr "Ordenar por duración de la conexión" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 msgid "Sort by clock skew" msgstr "Ordenar por desincronización del reloj" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 msgid "Sort by congestion window" msgstr "Ordenar por ventana de congestión" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2502 msgid "Sort by slow start threshold" msgstr "Ordenar por umbral del algoritmo de comienzo lento" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2505 msgid "Sort by round trip time" msgstr "Ordenar por periodo de ida y vuelta" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2504 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 msgid "Sort by retransmission timeout" msgstr "Ordenar por periodo de espera de retransmisión" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2507 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2512 msgid "Sort by outbound maximum transmit unit" msgstr "Ordenar por unidad de transmisión máxima de salida" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 msgid "Sort by packets sent" msgstr "Ordenar por paquetes enviados" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2511 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 msgid "Sort by packets received" msgstr "Ordenar por paquetes recibidos" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2519 msgid "Sort by packets retransmitted" msgstr "Ordenar por paquetes retransmitidos" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2521 msgid "Sort by packets received more than once" msgstr "Ordenar por paquetes recibidos más de una vez" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2536 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2541 msgid "We offered to introduce them" msgstr "Nos hemos ofrecido a introducirles" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2538 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2543 msgid "They offered to introduce us" msgstr "Se han ofrecido a introducirnos" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2542 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2547 msgid "Choked" msgstr "Atascado" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2550 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2555 msgid "1 fail" msgstr "1 fallido" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2552 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2557 #, java-format msgid "{0} fails" msgstr "{0} fallidos" #. 1 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2558 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2563 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:166 #: ../java/src/net/i2p/router/web/ProfilesHelper.java:13 msgid "Banned" msgstr "Excluido" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2617 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2622 msgid "backlogged" msgstr "pendientes" @@ -886,96 +889,96 @@ msgstr "Desestimando peticiones de túnel: Alto retraso de trabajo" msgid "Dropping tunnel requests: Overloaded" msgstr "Descartando solicitudes de túnel: Saturado" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:693 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:695 msgid "Rejecting tunnels: Hidden mode" msgstr "Rechazando túneles: Modo oculto" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:721 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:723 msgid "Rejecting tunnels: Request overload" msgstr "Rechazando túneles: Saturación de solicitudes" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:752 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:754 msgid "Rejecting tunnels: Connection limit" msgstr "Rechazando túneles: LÃmite de la conexión" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:964 -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:997 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:966 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:999 msgid "Dropping tunnel requests: High load" msgstr "Descartando solicitudes de túnel: Carga elevada" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1076 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1078 msgid "Dropping tunnel requests: Queue time" msgstr "Descartando solicitudes de túnel: Tiempo en cola" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:884 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:895 #, java-format msgid "New plugin version {0} is available" msgstr "Está disponible una nueva versión del complemento {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:964 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:975 #, java-format msgid "Update check failed for plugin {0}" msgstr "Fallo al buscar actualizaciones para el complemento {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:968 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:979 #, java-format msgid "No new version is available for plugin {0}" msgstr "No hay ninguna versión nueva disponible para el complemento {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:992 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1003 #, java-format msgid "{0}B transferred" msgstr "{0}B transferidos" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1051 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1062 #, java-format msgid "Install failed from {0}" msgstr "La instalación desde {0} falló" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1053 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1064 #: ../java/src/net/i2p/router/update/UpdateRunner.java:298 #, java-format msgid "Transfer failed from {0}" msgstr "Transferencia fallida de {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1328 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1339 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1403 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 #: ../java/src/net/i2p/router/web/SummaryHelper.java:715 msgid "Update downloaded" msgstr "Actualización descargada" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 msgid "Restarting" msgstr "Reiniciando" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 msgid "Update verified" msgstr "Actualización verificada" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1381 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:189 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:306 #, java-format msgid "from {0}" msgstr "de {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1396 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1407 #, java-format msgid "Unsigned update file from {0} is corrupt" msgstr "El archivo de actualización no firmado de {0} está dañado" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1425 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1436 #, java-format msgid "Failed copy to {0}" msgstr "Fallo al copiar a {0}" -#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:47 +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:49 #: ../java/src/net/i2p/router/update/DevSU3UpdateRunner.java:40 #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:55 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:111 -#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:62 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:64 #: ../java/src/net/i2p/router/update/UnsignedUpdateRunner.java:41 #: ../java/src/net/i2p/router/update/UpdateRunner.java:155 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:573 @@ -984,6 +987,13 @@ msgstr "Fallo al copiar a {0}" msgid "HTTP client proxy tunnel must be running" msgstr "El túnel del proxy del cliente HTTP tiene que estar en marcha" +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:83 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:242 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:88 +#, java-format +msgid "Requires Java version {0} but installed Java version is {1}" +msgstr "Requiere Java versión {0}, pero la versión instalada de Java es {1}" + #. set status before thread to ensure UI feedback #: ../java/src/net/i2p/router/update/DevSU3UpdateHandler.java:91 #: ../java/src/net/i2p/router/update/PluginUpdateHandler.java:82 @@ -993,24 +1003,19 @@ msgstr "El túnel del proxy del cliente HTTP tiene que estar en marcha" msgid "Updating" msgstr "Actualizando" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:209 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:218 msgid "In-network updates disabled. Check package manager." msgstr "Las actualizaciones desde el interior de la red están deshabilitadas. Revise el administrador de paquetes." -#: ../java/src/net/i2p/router/update/NewsFetcher.java:215 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:224 msgid "No write permission for I2P install directory." msgstr "No tiene permiso de escritura para el directorio de instalación de I2P." -#: ../java/src/net/i2p/router/update/NewsFetcher.java:223 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:232 #, java-format msgid "You must first update to version {0}" msgstr "Primero tiene que actualizar a la versión {0}" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:233 -#, java-format -msgid "Requires Java version {0} but installed Java version is {1}" -msgstr "Requiere Java versión {0}, pero la versión instalada de Java es {1}" - #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:62 #, java-format msgid "Checking for update of plugin {0}" @@ -1214,8 +1219,10 @@ msgid "unban now" msgstr "readmitir ahora" #: ../java/src/net/i2p/router/web/CSSHelper.java:149 -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../java/strings/Strings.java:29 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:217 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:221 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:219 @@ -1285,6 +1292,8 @@ msgstr "readmitir ahora" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:217 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:219 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:224 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:228 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:230 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:222 @@ -1310,6 +1319,16 @@ msgstr "readmitir ahora" msgid "I2P Router Console" msgstr "Consola del router I2P" +#: ../java/src/net/i2p/router/web/CertHelper.java:25 +msgid "Local SSL Certificates" +msgstr "" + +#: ../java/src/net/i2p/router/web/CertHelper.java:46 +#: ../java/src/net/i2p/router/web/CertHelper.java:51 +#: ../java/strings/Strings.java:63 +msgid "I2PTunnel" +msgstr "I2PTunnel" + #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:62 msgid "Error updating the configuration - please see the error logs" msgstr "Error al actualizar la configuración - por favor revise los registros (logs) de errores" @@ -1324,7 +1343,8 @@ msgstr "Configuración guardada con éxito" #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:98 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:622 #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:391 -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:151 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:109 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:160 msgid "" "Error saving the configuration (applied but not saved) - please see the " "error logs" @@ -1529,7 +1549,7 @@ msgid "Add Client" msgstr "Añadir cliente" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:116 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:503 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:517 #: ../java/src/net/i2p/router/web/SummaryHelper.java:452 msgid "Client" msgstr "Cliente" @@ -1561,9 +1581,9 @@ msgid "Plugin" msgstr "Complemento" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:248 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:304 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 msgid "Version" msgstr "Versión" @@ -1584,9 +1604,9 @@ msgid "License" msgstr "Licencia" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:294 -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/HomeHelper.java:171 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:157 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/HomeHelper.java:178 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:164 msgid "Website" msgstr "Sitio web" @@ -1621,7 +1641,7 @@ msgstr "Eliminar" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:21 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigUIHandler.java:19 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:970 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:996 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:496 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:516 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:532 @@ -1631,7 +1651,7 @@ msgstr "Eliminar seleccionados" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:23 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1015 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:494 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:502 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:514 @@ -1727,11 +1747,11 @@ msgstr "no se encontró en el juego de claves (keyring)" msgid "Invalid destination" msgstr "Destino no válido" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:82 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:84 msgid "Log overrides updated" msgstr "Se actualizaron las omisiones al registro (log)" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:163 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:165 msgid "Log configuration saved" msgstr "Se guardó la configuración de registro (log)" @@ -1779,8 +1799,8 @@ msgstr "WARN" #: ../java/src/net/i2p/router/web/ConfigLoggingHelper.java:85 #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:170 -#: ../java/src/net/i2p/router/web/HomeHelper.java:208 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:904 +#: ../java/src/net/i2p/router/web/HomeHelper.java:215 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 msgid "Remove" msgstr "Eliminar" @@ -1799,11 +1819,12 @@ msgid "Home Page" msgstr "Página principal" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:328 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:335 msgid "Network" msgstr "Red" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:320 @@ -1837,6 +1858,7 @@ msgstr "Red" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:292 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:322 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:297 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:292 @@ -1855,8 +1877,8 @@ msgid "UI" msgstr "Interfaz de usuario" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:179 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:486 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:186 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 #: ../java/strings/Strings.java:73 msgid "Tunnels" msgstr "Túneles" @@ -1875,15 +1897,15 @@ msgid "Logging" msgstr "Registro" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:185 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:372 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:192 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:386 #: ../java/strings/Strings.java:68 msgid "Peers" msgstr "Pares (peers)" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:497 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:230 msgid "Stats" msgstr "EstadÃsticas" @@ -1899,7 +1921,7 @@ msgstr "Avanzado" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:491 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:479 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:641 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:593 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:560 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:511 msgid "Save changes" @@ -2080,7 +2102,7 @@ msgid "Unsupported" msgstr "No soportado" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:24 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 msgid "Save changes and reseed now" msgstr "Guardar cambios y resembrar ahora" @@ -2128,7 +2150,16 @@ msgid_plural "Reseed successful, loaded {0} router infos from file" msgstr[0] "Resembrado completo, cargada {0} información de router I2P desde fichero" msgstr[1] "Resembrado completo, cargadas {0} informaciones de router I2P desde fichero" -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:149 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:99 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +msgid "Reset URL list" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:107 +msgid "URL list reset successfully" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:158 msgid "Configuration saved successfully." msgstr "Configuración guardada con éxito." @@ -2628,8 +2659,8 @@ msgid "User Name" msgstr "Nombre de usuario" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:183 -#: ../java/src/net/i2p/router/web/HomeHelper.java:235 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:972 +#: ../java/src/net/i2p/router/web/HomeHelper.java:242 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:998 msgid "Add" msgstr "Añadir" @@ -2860,13 +2891,13 @@ msgstr "Evento" msgid "Details" msgstr "Detalles" -#: ../java/src/net/i2p/router/web/FormHandler.java:251 +#: ../java/src/net/i2p/router/web/FormHandler.java:253 msgid "" "Invalid form submission, probably because you used the 'back' or 'reload' " "button on your browser. Please resubmit." msgstr "El envÃo de formulario no es válido, probablemente utilizó el botón 'atrás' ó 'recargar' de su navegador. Por favor, reenvÃelo." -#: ../java/src/net/i2p/router/web/FormHandler.java:253 +#: ../java/src/net/i2p/router/web/FormHandler.java:255 msgid "" "If the problem persists, verify that you have cookies enabled in your " "browser." @@ -2997,156 +3028,169 @@ msgstr "Guardar ajustes y volver a dibujar las gráficas" msgid "Graph settings saved" msgstr "Se guardó la configuración de la gráfica" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:229 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:236 msgid "Addressbook" msgstr "Addressbook (libreta de direcciones)" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:227 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:234 msgid "Manage your I2P hosts file here (I2P domain name resolution)" msgstr "Administre su fichero hosts de I2P aquà (resolución de nombres de dominios I2P)" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 msgid "Configure Bandwidth" msgstr "Configurar ancho de banda" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:330 msgid "I2P Bandwidth Configuration" msgstr "Configuración del ancho de banda de I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Configure Language" msgstr "Configurar idioma" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Console Language Selection" msgstr "Selección del idioma de la consola" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 msgid "Customize Home Page" msgstr "Personalizar página principal" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:346 msgid "I2P Home Page Configuration" msgstr "Configuración de la página principal de I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:139 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:146 msgid "Anonymous webmail client" msgstr "Cliente de correo web anónimo" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:141 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:148 msgid "Email" msgstr "Correo electrónico" -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:251 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 msgid "I2P Router Help" msgstr "Ayuda del router I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:161 msgid "Router Console" msgstr "Consola del router I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:145 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:152 msgid "Built-in anonymous BitTorrent Client" msgstr "Cliente BitTorrent anónimo integrado" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:147 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:154 msgid "Torrents" msgstr "Torrents" -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:155 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:162 msgid "Local web server" msgstr "Servidor web local" -#: ../java/src/net/i2p/router/web/HomeHelper.java:41 +#: ../java/src/net/i2p/router/web/HomeHelper.java:43 msgid "The Anoncoin project" msgstr "El proyecto Anoncoin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug Reports" msgstr "Informes de fallos" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug tracker" msgstr "Rastreador de fallos" #. "colombo-bt.i2p" + S + _x("The Italian Bittorrent Resource") + S + "http #. ://colombo-bt.i2p/" + S + I + "colomboicon.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Dev Forum" msgstr "Foro de desarrollo" -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Development forum" msgstr "Foro de desarrollo" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Bittorrent tracker" msgstr "Tracker (rastreador) de BitTorrent" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 msgid "diftracker" msgstr "diftracker" -#: ../java/src/net/i2p/router/web/HomeHelper.java:46 +#: ../java/src/net/i2p/router/web/HomeHelper.java:48 msgid "I2P Applications" msgstr "Aplicaciones de I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +msgid "Anonymous cryptocurrency exchange" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "FAQ" msgstr "Preguntas frecuentes" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "Frequently Asked Questions" msgstr "Preguntas frecuentes (FAQ)" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Community forum" msgstr "Foro de la comunidad" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Forum" msgstr "Foro" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "" "A public anonymous Git hosting site - supports pulling via Git and HTTP and " "pushing via SSH" msgstr "Un sitio de alojamiento Git público y anónimo - soporta tomado (pull) mediante Git y HTTP, e impulsado (push) mediante SSH" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "Anonymous Git Hosting" msgstr "Alojamiento Git anónimo" -#: ../java/src/net/i2p/router/web/HomeHelper.java:50 +#: ../java/src/net/i2p/router/web/HomeHelper.java:53 msgid "HiddenGate" msgstr "HiddenGate" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "Anonymous wiki - share the knowledge" +msgstr "" + +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "I2P Wiki" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Microblog" msgstr "Microblog" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Your premier microblogging service on I2P" msgstr "El principal servicio de mircroblogging en I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 msgid "Javadocs" msgstr "Javadocs" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical documentation" msgstr "Documentación técnica" @@ -3154,91 +3198,98 @@ msgstr "Documentación técnica" #. "http://jisko.i2p/" + S + I + "jisko_console_icon.png" + S + #. _x("Key Server") + S + _x("OpenPGP Keyserver") + S + "http://keys.i2p/" + S #. + I + "education.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +#: ../java/src/net/i2p/router/web/HomeHelper.java:60 msgid "Debian and Tahoe-LAFS repositories" msgstr "Repositorios de Debian y Tahoe-LAFS" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free Web Hosting" msgstr "Alojamiento web gratuito" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free eepsite hosting with PHP and MySQL" msgstr "Alojamiento de eepsites (sitios web en I2P) gratuito con PHP y MySQL" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "I2P Pastebin" msgstr "Pastebin de I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "Pastebin" msgstr "Pastebin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:58 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 msgid "I2P News" msgstr "News (usenet) de I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +msgid "Planet I2P" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Add-on directory" msgstr "Directorio de complementos" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Plugins" msgstr "Complementos (plugins)" -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Postman's Tracker" msgstr "Tracker (rastreador BitTorrent) de 'Postman'" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "I2P home page" msgstr "Página principal de I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "Project Website" msgstr "Sitio web del proyecto" +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:68 +msgid "Russian News Feed" +msgstr "" + #. "Salt" + S + "salt.i2p" + S + "http://salt.i2p/" + S + I + #. "salt_console.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +#: ../java/src/net/i2p/router/web/HomeHelper.java:70 msgid "I2P Network Statistics" msgstr "EstadÃsticas de la red I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical Docs" msgstr "Documentos técnicos" -#: ../java/src/net/i2p/router/web/HomeHelper.java:65 +#: ../java/src/net/i2p/router/web/HomeHelper.java:72 msgid "Trac Wiki" msgstr "Trac Wiki" -#: ../java/src/net/i2p/router/web/HomeHelper.java:66 -msgid "Ugha's Wiki" -msgstr "Wiki de 'Ugha'" - -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Seedless and the Robert BitTorrent applications" msgstr "Aplicaciones BitTorrent 'Seedless' y 'Robert'" -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#. _x("Ugha's Wiki") + S + S + "http://ugha.i2p/" + S + I + +#. "billiard_marker.png" + S + +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Sponge's main site" msgstr "Sitio principal de 'Sponge'" -#: ../java/src/net/i2p/router/web/HomeHelper.java:108 +#: ../java/src/net/i2p/router/web/HomeHelper.java:115 msgid "The HTTP proxy is not up" msgstr "El proxy HTTP no está activo" -#: ../java/src/net/i2p/router/web/HomeHelper.java:110 +#: ../java/src/net/i2p/router/web/HomeHelper.java:117 #, java-format msgid "Your browser is not properly configured to use the HTTP proxy at {0}" msgstr "Su navegador no está correctamente configurado para utilizar el proxy HTTP en {0}" -#: ../java/src/net/i2p/router/web/HomeHelper.java:210 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:906 +#: ../java/src/net/i2p/router/web/HomeHelper.java:217 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:932 msgid "Name" msgstr "Nombre" -#: ../java/src/net/i2p/router/web/HomeHelper.java:212 +#: ../java/src/net/i2p/router/web/HomeHelper.java:219 msgid "URL" msgstr "URL" @@ -3366,217 +3417,226 @@ msgstr "Todos los routers I2P con estadÃsticas completas" msgid "LeaseSets" msgstr "LeaseSets" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:105 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:106 #: ../java/strings/Strings.java:69 msgid "Router" msgstr "Router I2P" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:112 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:113 msgid "not found in network database" msgstr "no se encuentra en la base de datos de red" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:156 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 msgid "LeaseSet" msgstr "LeaseSet" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:158 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:163 msgid "Local" msgstr "Local" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:160 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:165 msgid "Unpublished" msgstr "No publicado" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:176 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:166 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:181 msgid "Destination" msgstr "Destino" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:173 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:185 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:178 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 msgid "Add to local addressbook" msgstr "Añadir a la libreta de direcciones local" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:217 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:195 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:222 #, java-format msgid "Expires in {0}" msgstr "Caduca en {0}" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:192 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:219 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:197 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:224 #, java-format msgid "Expired {0} ago" msgstr "Caducó hace {0}" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Gateway" msgstr "Pasarela (gateway)" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 msgid "Lease" msgstr "Lease" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:213 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:218 msgid "Tunnel" msgstr "Túnel" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:280 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:286 msgid "Not initialized" msgstr "No inicializado" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:330 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:342 msgid "Network Database Router Statistics" msgstr "EstadÃsticas del router I2P en la base de datos de red" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Count" msgstr "Recuento" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 msgid "Transports" msgstr "Transportes" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Country" msgstr "PaÃs" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:429 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:453 msgid "Our info" msgstr "Información propia" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:431 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:455 msgid "Peer info for" msgstr "Información del par para" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:433 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:457 msgid "Full entry" msgstr "Entrada completa" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 #: ../java/src/net/i2p/router/web/SummaryHelper.java:152 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:726 msgid "Hidden" msgstr "Oculto" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 msgid "Updated" msgstr "Actualizado" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:441 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:444 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:465 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:468 #, java-format msgid "{0} ago" msgstr "hace {0}" #. shouldnt happen -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:443 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:447 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:467 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:471 msgid "Published" msgstr "Publicado" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:449 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 msgid "Signing Key" msgstr "Clave firmante" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:451 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:475 msgid "Address(es)" msgstr "Dirección(es)" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:463 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:487 msgid "cost" msgstr "coste" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "Hidden or starting up" msgstr "Oculto o iniciándose" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU" msgstr "SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU with introducers" msgstr "SSU con introductores" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP" msgstr "NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU" msgstr "NTCP y SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU with introducers" msgstr "NTCP y SSU con introductores" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 Only SSU, introducers" msgstr "SSU-introductores sólo IPv6" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU" msgstr "SSU IPv6" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU, introducers" msgstr "SSU-introductores IPv6" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP" msgstr "NTCP IPv6" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU" msgstr "NTCP-SSU IPv6" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU, introducers" msgstr "NTCP-SSU-introductores IPv6" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 Only NTCP, SSU, introducers" msgstr "NTCP-SSU-introductores sólo IPv6" -#: ../java/src/net/i2p/router/web/NewsHelper.java:295 +#: ../java/src/net/i2p/router/web/NewsFeedHelper.java:80 +#, java-format +msgid "by {0}" +msgstr "" + +#: ../java/src/net/i2p/router/web/NewsHelper.java:292 #, java-format msgid "News last updated {0} ago." msgstr "News (usenet) actualizadas hace {0}." -#: ../java/src/net/i2p/router/web/NewsHelper.java:301 +#: ../java/src/net/i2p/router/web/NewsHelper.java:298 #, java-format msgid "News last checked {0} ago." msgstr "News (usenet) comprobadas hace {0}." -#: ../java/src/net/i2p/router/web/NewsHelper.java:310 +#: ../java/src/net/i2p/router/web/NewsHelper.java:307 msgid "Hide news" msgstr "Ocultar news" -#: ../java/src/net/i2p/router/web/NewsHelper.java:313 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:647 +#: ../java/src/net/i2p/router/web/NewsHelper.java:310 msgid "Show news" msgstr "Mostrar news" +#: ../java/src/net/i2p/router/web/NewsHelper.java:314 +msgid "Show all news" +msgstr "" + #: ../java/src/net/i2p/router/web/PluginStarter.java:140 msgid "Checking for plugin updates" msgstr "Buscando actualizaciones de complementos" #: ../java/src/net/i2p/router/web/PluginStarter.java:155 +#: ../java/src/net/i2p/router/web/PluginStarter.java:161 msgid "Plugin update check failed" msgstr "Fallo en la comprobación de actualización del complemento" -#: ../java/src/net/i2p/router/web/PluginStarter.java:193 +#: ../java/src/net/i2p/router/web/PluginStarter.java:199 #, java-format msgid "1 plugin updated" msgid_plural "{0} plugins updated" msgstr[0] "1 complemento actualizado" msgstr[1] "{0} complementos actualizados" -#: ../java/src/net/i2p/router/web/PluginStarter.java:195 +#: ../java/src/net/i2p/router/web/PluginStarter.java:201 msgid "Plugin update check complete" msgstr "Búsqueda de actualizaciones de complementos finalizada" @@ -3642,7 +3702,7 @@ msgid "Failing" msgstr "Fallando" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:135 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:411 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:425 msgid "Integrated" msgstr "Integrado" @@ -3911,277 +3971,287 @@ msgstr "Graficar recuento de eventos" msgid "Lifetime average value" msgstr "Valor medio del total de vida" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:121 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:128 msgid "I2P Router Help & FAQ" msgstr "Ayuda del router I2P y preguntas frecuentes (FAQ)" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:123 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:130 msgid "Help & FAQ" msgstr "Ayuda y preguntas frecuentes" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:131 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:138 msgid "" "Configure startup of clients and webapps (services); manually start dormant " "services" msgstr "Configurar el inicio de clientes y aplicaciones web (servicios); iniciar manualmente servicios inactivos" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:133 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:140 msgid "I2P Services" msgstr "Servicios I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:169 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:176 msgid "Configure I2P Router" msgstr "Configurar router I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:171 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:178 msgid "I2P Internals" msgstr "Datos internos de I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:177 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:484 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:184 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:498 msgid "View existing tunnels and tunnel build status" msgstr "Mostrar túneles existentes y estado de creación de túneles" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:183 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:370 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:190 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:384 msgid "Show all current peer connections" msgstr "Mostrar todas las conexiones actuales con los pares (peers)" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:189 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:196 msgid "Show recent peer performance profiles" msgstr "Mostrar perfiles de rendimiento de los pares recientes" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:191 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:198 msgid "Profiles" msgstr "Perfiles" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:195 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:202 msgid "Show list of all known I2P routers" msgstr "Mostrar la lista de todos los routers I2P conocidos" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:197 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:204 msgid "NetDB" msgstr "NetDB (base de datos de red)" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:201 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:208 msgid "Health Report" msgstr "Informe de salud" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:203 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:210 msgid "Logs" msgstr "Registros (logs)" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:214 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 msgid "Graph router performance" msgstr "Graficar el rendimiento del router I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:216 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 msgid "Graphs" msgstr "Gráficos" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:228 msgid "Textual router performance statistics" msgstr "EstadÃsticas textuales de rendimiento del router I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:233 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:240 #: ../java/src/net/i2p/router/web/SummaryHelper.java:438 msgid "Local Tunnels" msgstr "Túneles locales" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:235 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:242 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:164 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:337 msgid "Hidden Services Manager" msgstr "Administrador de servicios ocultos" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:253 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:260 msgid "General" msgstr "General" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 msgid "" "Your Local Identity is your unique I2P router identity, similar to an ip " "address but tailored to I2P. " msgstr "Su identidad local es la identificación única de su router I2P, similar a una dirección IP, pero especÃfica de I2P." -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:259 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:266 msgid "Never disclose this to anyone, as it can reveal your real world ip." msgstr "NUNCA LA REVELE A NADIE, ya que puede exponer su dirección IP pública real." -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:261 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:268 msgid "Local Identity" msgstr "Identidad local" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:272 msgid "Your unique I2P router identity is" msgstr "La identificación única de su router I2P es " -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:269 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:276 msgid "never reveal it to anyone" msgstr "NUNCA LA REVELE A NADIE" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:271 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 msgid "show" msgstr "mostrar" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:275 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:301 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:282 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:308 msgid "The version of the I2P software we are running" msgstr "La versión del software I2P que está ejecutando" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:292 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:318 msgid "How long we've been running for this session" msgstr "El tiempo que lleva ejecutándose para esta sesión" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:326 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:333 msgid "" "Help with configuring your firewall and router for optimal I2P performance" msgstr "Ayuda con la configuración del cortafuegos (firewall) y del router I2P para un rendimiento óptimo" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:337 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:344 msgid "See more information on the wiki" msgstr "Vea más información en el wiki" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:339 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:346 msgid "Warning: ECDSA is not available. Update your Java or OS" msgstr "Advertencia: ECDSA no está disponible. Actualice su Java o su sistema operativo" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:351 +#, java-format +msgid "Warning: Java version {0} is no longer supported by I2P." +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#, java-format +msgid "Update Java to version {0} or higher to receive I2P updates." +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:365 msgid "Configure I2P Updates" msgstr "Configurar actualizaciones de I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:367 msgid "I2P Update" msgstr "Actualización de I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:378 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:392 msgid "Peers we've been talking to in the last few minutes/last hour" msgstr "Pares (peers) con los que nos hemos comunicado en los últimos minutos / última hora" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:381 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:395 msgid "Active" msgstr "Activo" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:390 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:404 msgid "The number of peers available for building client tunnels" msgstr "Número de pares disponibles para crear túneles de cliente" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:393 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:407 msgid "Fast" msgstr "Rápido" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:399 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:413 msgid "The number of peers available for building exploratory tunnels" msgstr "Número de pares disponibles para crear túneles exploratorios" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:402 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:416 msgid "High capacity" msgstr "Alta capacidad" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:408 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:422 msgid "The number of peers available for network database inquiries" msgstr "Número de pares disponibles para consultas a la base de datos de red" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:417 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:431 msgid "The total number of peers in our network database" msgstr "Número total de pares (peers) en nuestra base de datos de red" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:420 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:434 msgid "Known" msgstr "Conocidos" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:440 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:454 msgid "Configure router bandwidth allocation" msgstr "Configurar asignación de ancho de banda para el router I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:442 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:456 msgid "Bandwidth in/out" msgstr "Ancho de banda de entrada/salida" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:462 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:476 msgid "Total" msgstr "Total" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:469 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:483 msgid "Used" msgstr "Usado" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:491 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:505 msgid "" "Used for building and testing tunnels, and communicating with floodfill " "peers" msgstr "Usado para crear y probar túneles, y comunicarse con los pares de inundación (floodfill)" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:494 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:508 msgid "Exploratory" msgstr "Exploratorios" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:514 msgid "Tunnels we are using to provide or access services on the network" msgstr "Túneles que está usando para proporcionar o acceder a servicios en la red" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:509 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:523 msgid "" "Tunnels we are participating in, directly contributing bandwidth to the " "network" msgstr "Túneles en los que estamos participando, contribuyendo ancho de banda directamente a la red" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:512 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:526 msgid "Participating" msgstr "Participando en" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:518 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:532 msgid "" "The ratio of tunnel hops we provide to tunnel hops we use - a value greater " "than 1.00 indicates a positive contribution to the network" msgstr "La relación entre el número de saltos de los túneles que proporciona y el número de saltos de los que usa - un valor mayor que 1,00 indica una aportación positiva a la red" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:521 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:535 msgid "Share ratio" msgstr "Tasa de compartición" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:534 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:548 msgid "What's in the router's job queue?" msgstr "¿Qué hay en la cola de tareas del router I2P?" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:536 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 msgid "Congestion" msgstr "Congestión" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:541 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:555 msgid "Indicates router performance" msgstr "Indica el rendimiento del router I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:544 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:558 msgid "Job lag" msgstr "Demora de tareas" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:564 msgid "Indicates how quickly outbound messages to other I2P routers are sent" msgstr "Indica cómo de rápido se envÃan mensajes a otros routers I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:553 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:567 msgid "Message delay" msgstr "Demora de mensajes" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:560 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:574 msgid "Round trip time for a tunnel test" msgstr "Duración del viaje de ida y vuelta de un test de túnel" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:563 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:577 msgid "Tunnel lag" msgstr "Demora de túneles" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:570 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:584 msgid "Queued requests from other routers to participate in tunnels" msgstr "Solicitudes en cola de otros routers I2P para participar en túneles" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:573 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:587 msgid "Backlog" msgstr "Peticiones pendientes" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:608 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:623 msgid "News & Updates" msgstr "News (usenet) y actualizaciones" @@ -4283,7 +4353,7 @@ msgstr "Creando túneles" #: ../java/src/net/i2p/router/web/SummaryHelper.java:489 #: ../java/strings/Strings.java:36 msgid "shared clients" -msgstr "clientes compartidos" +msgstr "clientes diferentes" #: ../java/src/net/i2p/router/web/SummaryHelper.java:717 msgid "Click Restart to install" @@ -4294,17 +4364,21 @@ msgid "Click Shutdown and restart to install" msgstr "Pulse \"Apagar\" y reinicie para instalar" #: ../java/src/net/i2p/router/web/SummaryHelper.java:720 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:735 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:737 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:749 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:761 #, java-format msgid "Version {0}" msgstr "Versión {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:734 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:736 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:748 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:760 msgid "Update available" msgstr "Actualización disponible" #. Note to translators: parameter is a version, e.g. "0.8.4" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:758 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:784 #, java-format msgid "Download {0} Update" msgstr "Descargar actualización {0}" @@ -4313,7 +4387,7 @@ msgstr "Descargar actualización {0}" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:766 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:792 #, java-format msgid "Download Signed<br>Development Update<br>{0}" msgstr "Descargar actualización<br>de desarrollo firmada<br>{0}" @@ -4322,56 +4396,56 @@ msgstr "Descargar actualización<br>de desarrollo firmada<br>{0}" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:774 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 #, java-format msgid "Download Unsigned<br>Update {0}" msgstr "Descargar actualización<br>no firmada de {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:798 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:824 msgid "Help with firewall configuration" msgstr "Ayuda con la configuración del cortafuegos (firewall)" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:826 msgid "Check network connection and NAT/firewall" msgstr "Comprobar conexión de red y NAT/cortafuegos" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:819 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:845 msgid "Reseed" msgstr "Resembrar (reseed)" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:908 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:934 msgid "Order" msgstr "Orden" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:925 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:951 msgid "Top" msgstr "Techo" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:956 msgid "Move to top" msgstr "Mover a la parte superior" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:940 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:966 msgid "Move up" msgstr "Mover arriba" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:948 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:974 msgid "Down" msgstr "Abajo" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:953 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:979 msgid "Move down" msgstr "Mover abajo" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:958 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:984 msgid "Bottom" msgstr "Fondo" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:963 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 msgid "Move to bottom" msgstr "Mover a la parte inferior" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:975 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1001 msgid "Select a section to add" msgstr "Seleccione una sección a añadir" @@ -4418,100 +4492,100 @@ msgstr "Túneles de clientes para" msgid "dead" msgstr "muerto" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:70 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:69 msgid "Participating tunnels" msgstr "Túneles participantes" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "Receive on" msgstr "Recibir en" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Expiration" msgstr "Caducidad" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Send on" msgstr "Enviar sobre" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Rate" msgstr "Tasa" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Role" msgstr "Rol" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Usage" msgstr "Uso" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:111 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:113 msgid "grace period" msgstr "periodo de gracia" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:121 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 msgid "Outbound Endpoint" msgstr "Extremo de salida" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 msgid "Inbound Gateway" msgstr "Pasarela (gateway) entrante" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:127 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:174 msgid "Participant" msgstr "Participante" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:130 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:133 #, java-format msgid "Limited display to the {0} tunnels with the highest usage" msgstr "Visualización limitada a los {0} túneles con mayor uso" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:131 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:135 msgid "Inactive participating tunnels" msgstr "Túneles participantes inactivos" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:132 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:224 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:138 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:232 msgid "Lifetime bandwidth usage" msgstr "Uso de ancho de banda del total de vida" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Expiry" msgstr "Caducidad" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:165 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 msgid "Participants" msgstr "Participantes" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:177 msgid "Endpoint" msgstr "Extremo" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 #: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "Build in progress" msgstr "Creación de túnel en curso" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 msgid "inbound" msgstr "entrante" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "outbound" msgstr "saliente" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:223 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:231 msgid "No tunnels; waiting for the grace period to end." msgstr "No hay túneles. Esperando a que termine el periodo de gracia." -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:225 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:233 msgid "in" msgstr "entrada" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:234 msgid "out" msgstr "salida" @@ -4578,7 +4652,7 @@ msgstr "Abrir la consola del router I2P en el navegador web al iniciar el router #: ../java/strings/Strings.java:37 msgid "shared clients (DSA)" -msgstr "clientes compartidos (DSA)" +msgstr "clientes diferentes (DSA)" #: ../java/strings/Strings.java:38 msgid "IRC proxy" @@ -4648,10 +4722,6 @@ msgstr "Cifrado" msgid "i2cp" msgstr "i2cp" -#: ../java/strings/Strings.java:63 -msgid "I2PTunnel" -msgstr "I2PTunnel" - #: ../java/strings/Strings.java:64 msgid "InNetPool" msgstr "DepósitoTúnelesRed" @@ -4698,10 +4768,12 @@ msgstr "clave" msgid "port" msgstr "puerto" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 -msgid "configure bandwidth" -msgstr "configurar ancho de banda" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:146 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:318 +msgid "Certificates" +msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:153 @@ -4735,6 +4807,7 @@ msgstr "configurar ancho de banda" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:149 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:155 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:154 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:149 @@ -4750,6 +4823,7 @@ msgstr "El router I2P está caÃdo" #. We have intl defined when this is included, but not when compiled #. standalone. +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:333 @@ -4782,6 +4856,7 @@ msgstr "El router I2P está caÃdo" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:305 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:310 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:305 @@ -4797,6 +4872,7 @@ msgid "Refresh (s)" msgstr "Refrescar (s)" #. ditto +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:337 @@ -4829,6 +4905,7 @@ msgstr "Refrescar (s)" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:309 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:339 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:314 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:309 @@ -4843,6 +4920,10 @@ msgstr "Refrescar (s)" msgid "Enable" msgstr "Habilitar" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 +msgid "configure bandwidth" +msgstr "configurar ancho de banda" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:437 msgid "Bandwidth limiter" msgstr "Limitador de ancho de banda" @@ -4919,7 +5000,7 @@ msgstr "Página de configuración avanzada de la red" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:501 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:477 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:639 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:587 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:558 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:509 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:461 @@ -5952,51 +6033,51 @@ msgstr "Usar no-SSL exclusivamente" msgid "Reseed URLs" msgstr "URLs de resembrado" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:541 msgid "Enable HTTP Proxy?" msgstr "¿Habilitar proxy HTTP?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:543 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:545 msgid "HTTP Proxy Host" msgstr "Equipo (host) del proxy HTTP" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:547 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:549 msgid "HTTP Proxy Port" msgstr "Puerto del proxy HTTP" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:551 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:553 msgid "Use HTTP Proxy Authorization?" msgstr "¿Utilizar autorización para el proxy HTTP?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:555 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:557 msgid "HTTP Proxy Username" msgstr "Nombre de usuario del proxy HTTP" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:559 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:561 msgid "HTTP Proxy Password" msgstr "Contraseña del proxy HTTP" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:563 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:565 msgid "Enable HTTPS Proxy?" msgstr "¿Habilitar proxy HTTPS?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:567 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:569 msgid "HTTPS Proxy Host" msgstr "Equipo (host) del proxy HTTPS" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:571 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:573 msgid "HTTPS Proxy Port" msgstr "Puerto del proxy HTTPS" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:575 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:577 msgid "Use HTTPS Proxy Authorization?" msgstr "¿Utilizar autorización para el proxy HTTPS?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:579 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:581 msgid "HTTPS Proxy Username" msgstr "Nombre de usuario del proxy HTTPS" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:583 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:585 msgid "HTTPS Proxy Password" msgstr "Contraseña del proxy HTTPS" @@ -6555,6 +6636,14 @@ msgstr "base de datos de red" msgid "I2P Network Database" msgstr "Base de datos de la red I2P" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:148 +msgid "News" +msgstr "" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:344 +msgid "Latest News" +msgstr "" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:152 msgid "WebApp Not Found" msgstr "Aplicación web no encontrada" diff --git a/apps/routerconsole/locale/messages_et.po b/apps/routerconsole/locale/messages_et.po index a0f34f2b09b778a6b5bfe80bc7dc0fd4952af9c3..6fab3dfb6987a1d9e17b597ec3bc278f84bd19b7 100644 --- a/apps/routerconsole/locale/messages_et.po +++ b/apps/routerconsole/locale/messages_et.po @@ -10,10 +10,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:05+0000\n" -"PO-Revision-Date: 2015-07-17 01:31+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-05 17:17+0000\n" "Last-Translator: kytv <killyourtv@i2pmail.org>\n" -"Language-Team: Estonian (Estonia) (http://www.transifex.com/projects/p/I2P/language/et_EE/)\n" +"Language-Team: Estonian (Estonia) (http://www.transifex.com/otf/I2P/language/et_EE/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -132,19 +132,22 @@ msgid "IPs Permanently Banned" msgstr "Jäädavalt bännitud IP-d" #: ../../../router/java/src/net/i2p/router/Blocklist.java:959 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "From" msgstr "Kust" #: ../../../router/java/src/net/i2p/router/Blocklist.java:961 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "To" msgstr "Kuhu" #: ../../../router/java/src/net/i2p/router/Blocklist.java:997 #: ../java/src/net/i2p/router/web/BanlistRenderer.java:48 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:652 +#: ../java/src/net/i2p/router/web/CertHelper.java:77 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:147 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:662 #: ../java/src/net/i2p/router/web/SummaryHelper.java:478 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:137 msgid "none" msgstr "puudub" @@ -282,43 +285,43 @@ msgstr "Keeldun tunnelitest: Välja lülitumine" msgid "Rejecting tunnels" msgstr "Keeldun tunnelitest" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:212 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:210 #, java-format msgid "Reseeding: got router info from file ({0} successful, {1} errors)." msgstr "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:284 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:282 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:28 msgid "Reseeding" msgstr "Hangin ruuterite kontakte" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:307 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:305 #, java-format msgid "Reseed fetched only 1 router." msgid_plural "Reseed fetched only {0} routers." msgstr[0] "Kontaktide hankel leiti vaid 1 ruuter." msgstr[1] "Kontaktide hankel leiti vaid {0} ruuterit." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:314 msgid "Reseed failed." msgstr "Kontaktide hange ei õnnestunud." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:317 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:315 #, java-format msgid "See {0} for help." msgstr "Vaata {0} et leida abi." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:318 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 msgid "reseed configuration page" msgstr "kontaktide hanke häälestusleht" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:566 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:697 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:564 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:695 msgid "Reseeding: fetching seed URL." msgstr "Kontaktide hange: toon loendi URL-i." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:623 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:733 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:621 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:731 #, java-format msgid "" "Reseeding: fetching router info from seed URL ({0} successful, {1} errors)." @@ -383,12 +386,12 @@ msgid "Unreachable on any transport" msgstr "Pole ühelgi transpordil kättesaadav" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:674 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:566 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:577 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:604 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:622 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1348 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2469 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2474 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:92 msgid "Status" msgstr "Staatus" @@ -403,12 +406,12 @@ msgid "{0} is used for outbound connections only" msgstr "{0} kasutatakse vaid välja ühendumiseks" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:711 -#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:283 +#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:295 msgid "UPnP is not enabled" msgstr "UPnP pole sisse lülitatud" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:720 -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:167 msgid "Help" msgstr "Abi" @@ -432,7 +435,7 @@ msgstr "Definitsioonid" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:726 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1352 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2473 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:24 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:33 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:35 @@ -447,7 +450,7 @@ msgstr "Kauge ruuter, tuvastatud ruuteri hashi abil" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:727 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1353 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Dir" msgstr "Suund" @@ -474,14 +477,14 @@ msgstr "Kaua on möödunud viimase paketi saamisest / saatmisest" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:735 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1355 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2479 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 msgid "Idle" msgstr "Jõude" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:736 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1356 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "In/Out" msgstr "Sisse/Välja" @@ -495,14 +498,14 @@ msgstr "Kaua on möödunud ühenduse loomisest" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:737 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1357 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:935 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2494 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:961 msgid "Up" msgstr "Üleval" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:738 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1358 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2491 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2496 msgid "Skew" msgstr "Ajanihe" @@ -551,7 +554,7 @@ msgstr "Kehtiv suurima saadetava paketi maht / oletatav suurim vastuvõetava pak #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:748 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1359 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2508 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 msgid "TX" msgstr "TX" @@ -561,7 +564,7 @@ msgstr "Ruuterile saadetud pakettide koguarv" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:749 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1360 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2510 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 msgid "RX" msgstr "RX" @@ -570,7 +573,7 @@ msgid "The total number of packets received from the peer" msgstr "Ruuterilt vastuvõetud pakettide koguarv" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:750 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2518 msgid "Dup TX" msgstr "TX dupl" @@ -579,7 +582,7 @@ msgid "The total number of packets retransmitted to the peer" msgstr "Ruuterile uuesti saadetud pakettide koguarv" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:751 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2520 msgid "Dup RX" msgstr "RX dupl" @@ -587,104 +590,104 @@ msgstr "RX dupl" msgid "The total number of duplicate packets received from the peer" msgstr "Ruuterilt saadud duplikaatsete pakettide koguarv" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:560 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:561 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 msgid "Service" msgstr "Teenus" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:564 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 msgid "WAN Common Interface Configuration" msgstr "Ühine WAN liidese häälestus" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:567 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:587 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:614 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:568 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:588 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:615 msgid "Type" msgstr "Tüüp" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:569 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:589 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:570 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:590 msgid "Upstream" msgstr "Ülesvoolu" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:571 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:591 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:572 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:592 msgid "Downstream" msgstr "Allavoolu" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:575 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 msgid "WAN PPP Connection" msgstr "WAN PPP häälestus" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:583 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:610 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:288 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:314 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:584 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:611 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:295 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:321 msgid "Uptime" msgstr "Tööiga" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:593 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:616 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:594 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:617 msgid "External IP" msgstr "Väline IP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:597 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 msgid "Layer 3 Forwarding" msgstr "Layer 3 (võrgutaseme) paketiedastus" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:599 msgid "Default Connection Service" msgstr "Vaikimisi ühenduse teenus" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:602 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 msgid "WAN IP Connection" msgstr "WAN IP ühendus" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:620 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 msgid "WAN Ethernet Link Configuration" msgstr "WAN Ethernet lingi häälestus" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:641 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:642 msgid "Found Device" msgstr "Leitud seade" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:643 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:644 msgid "Subdevice" msgstr "Alamseade" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:664 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:665 msgid "UPnP Status" msgstr "UPnP staatus" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:668 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:669 msgid "Disabled UPnP Devices" msgstr "Keelatud UPnP Seaded" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:682 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:683 msgid "" "UPnP has been disabled; Do you have more than one UPnP Internet Gateway " "Device on your LAN ?" msgstr "UPnP on välja lülitatud; Kas teil on kohtvõrgus vähemalt üks UPnP internetilüüsi seade ?" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:685 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:686 msgid "UPnP has not found any UPnP-aware, compatible device on your LAN." msgstr "UPnP ei leidnud teie kohtvõrgust ühtegi UPnP-teadlikku, ühilduvat seadet." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:693 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:694 #, java-format msgid "The current external IP address reported by UPnP is {0}" msgstr "UPnP teatatud hetkel kehtiv väline IP aadress on {0}" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:695 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:696 msgid "The current external IP address is not available." msgstr "Hetkel kehtiv väline IP aadress pole saadaval." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:699 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:700 #, java-format msgid "UPnP reports the maximum downstream bit rate is {0}bits/sec" msgstr "UPnP teatab suurimaks allavoolu kiiruseks {0} bitti/sek" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:701 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:702 #, java-format msgid "UPnP reports the maximum upstream bit rate is {0}bits/sec" msgstr "UPnP teatav suurimaks ülesvoolu kiiruseks {0} bitti/sek" @@ -693,12 +696,12 @@ msgstr "UPnP teatav suurimaks ülesvoolu kiiruseks {0} bitti/sek" #. {1,number,#####} prevents 12345 from being output as 12,345 in the English #. locale. #. If you want the digit separator in your locale, translate as {1}. -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:709 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:710 #, java-format msgid "{0} port {1,number,#####} was successfully forwarded by UPnP." msgstr "{0} porti {1,number,#####} suunati edukalt UPnP abil." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:711 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:712 #, java-format msgid "{0} port {1,number,#####} was not forwarded by UPnP." msgstr "{0} porti {1,number,#####} ei suunatud UPnP abil." @@ -714,17 +717,17 @@ msgid "NTCP connections" msgstr "NTCP ühendusi" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1345 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2466 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2471 msgid "Limit" msgstr "Piir" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1346 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2467 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2472 msgid "Timeout" msgstr "Ajalimiit" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1354 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2483 msgid "IPv6" msgstr "IPv6" @@ -737,126 +740,126 @@ msgid "Backlogged?" msgstr "Ummik?" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1375 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2532 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2537 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Inbound" msgstr "Sisse" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1377 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2534 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2539 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Outbound" msgstr "Välja" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1432 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2699 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2704 #, java-format msgid "{0} peer" msgid_plural "{0} peers" msgstr[0] "" msgstr[1] "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2465 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2470 msgid "UDP connections" msgstr "UDP ühendused" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2475 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 msgid "Sort by peer hash" msgstr "Sorteeri ruuteri hashi järgi" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Direction/Introduction" msgstr "Suund/Tutvustamine" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 msgid "Sort by idle inbound" msgstr "Sorteeri saabuva jõudeaja järgi" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 msgid "Sort by idle outbound" msgstr "Sorteeri väljuva jõudeaja järgi" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 msgid "Sort by inbound rate" msgstr "Sorteeri saabuva kiiruse järgi" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 msgid "Sort by outbound rate" msgstr "Sorteeri väljuva kiiruse järgi" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 msgid "Sort by connection uptime" msgstr "Sorteeri ühenduse ea järgi" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 msgid "Sort by clock skew" msgstr "Sorteeri ajanihke järgi" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 msgid "Sort by congestion window" msgstr "Sorteeri ummikuakna järgi" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2502 msgid "Sort by slow start threshold" msgstr "Sorteeri aeglase käivitumise läve järgi" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2505 msgid "Sort by round trip time" msgstr "Sorteeri saatmise-kinnituse viive järgi" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2504 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 msgid "Sort by retransmission timeout" msgstr "Sorteeri uuesti saatmise ajalimiidi järgi" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2507 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2512 msgid "Sort by outbound maximum transmit unit" msgstr "Sorteeri väljuva suurima saateühiku järgi" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 msgid "Sort by packets sent" msgstr "Sorteeri saadetud pakettide arvu järgi" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2511 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 msgid "Sort by packets received" msgstr "Sorteeri vastuvõetud pakettide arvu järgi" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2519 msgid "Sort by packets retransmitted" msgstr "Sorteeri uuesti saadetud pakettide arvu järgi" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2521 msgid "Sort by packets received more than once" msgstr "Sorteeri mitmekordselt vastuvõetud pakettide arvu järgi" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2536 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2541 msgid "We offered to introduce them" msgstr "Me pakkusime end neile tutvustajaks" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2538 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2543 msgid "They offered to introduce us" msgstr "Nad pakkusid end meile tutvustajaks" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2542 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2547 msgid "Choked" msgstr "Venib" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2550 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2555 msgid "1 fail" msgstr "1 viga" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2552 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2557 #, java-format msgid "{0} fails" msgstr "{0} viga" #. 1 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2558 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2563 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:166 #: ../java/src/net/i2p/router/web/ProfilesHelper.java:13 msgid "Banned" msgstr "Bännitud" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2617 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2622 msgid "backlogged" msgstr "" @@ -873,96 +876,96 @@ msgstr "" msgid "Dropping tunnel requests: Overloaded" msgstr "Eiran tunneliosaluse palveid: Ülekoormus" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:693 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:695 msgid "Rejecting tunnels: Hidden mode" msgstr "Tunnelite tagasilükkamine: Varjatud režiimis" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:721 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:723 msgid "Rejecting tunnels: Request overload" msgstr "Keeldun tunnelitest: Osaluspalvete ülekoormus" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:752 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:754 msgid "Rejecting tunnels: Connection limit" msgstr "Keeldun tunnelitest: Ühenduste arvu piirang" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:964 -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:997 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:966 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:999 msgid "Dropping tunnel requests: High load" msgstr "Eiran tunneliosaluse palveid: Kõrge koormus" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1076 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1078 msgid "Dropping tunnel requests: Queue time" msgstr "Eiran tunneliosaluse palveid: Pikk järjekord" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:884 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:895 #, java-format msgid "New plugin version {0} is available" msgstr "Pluginale {0} on uus versioon" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:964 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:975 #, java-format msgid "Update check failed for plugin {0}" msgstr "Uuenduste otsing pluginale {0} ebaõnnestus" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:968 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:979 #, java-format msgid "No new version is available for plugin {0}" msgstr "Pluginale {0} uut versiooni ei ole" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:992 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1003 #, java-format msgid "{0}B transferred" msgstr "{0}B laetud" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1051 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1062 #, java-format msgid "Install failed from {0}" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1053 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1064 #: ../java/src/net/i2p/router/update/UpdateRunner.java:298 #, java-format msgid "Transfer failed from {0}" msgstr "Laadimine allikast {0} ebaõnnestus" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1328 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1339 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1403 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 #: ../java/src/net/i2p/router/web/SummaryHelper.java:715 msgid "Update downloaded" msgstr "Uuendus alla laetud" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 msgid "Restarting" msgstr "Käivitun uuesti" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 msgid "Update verified" msgstr "Uuendus kontrollitud" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1381 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:189 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:306 #, java-format msgid "from {0}" msgstr "allikast {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1396 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1407 #, java-format msgid "Unsigned update file from {0} is corrupt" msgstr "Allkirjata uuenduse fail allikast {0} on katki" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1425 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1436 #, java-format msgid "Failed copy to {0}" msgstr "Ei suutnud kopeerida asukohta {0}" -#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:47 +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:49 #: ../java/src/net/i2p/router/update/DevSU3UpdateRunner.java:40 #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:55 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:111 -#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:62 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:64 #: ../java/src/net/i2p/router/update/UnsignedUpdateRunner.java:41 #: ../java/src/net/i2p/router/update/UpdateRunner.java:155 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:573 @@ -971,6 +974,13 @@ msgstr "Ei suutnud kopeerida asukohta {0}" msgid "HTTP client proxy tunnel must be running" msgstr "" +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:83 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:242 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:88 +#, java-format +msgid "Requires Java version {0} but installed Java version is {1}" +msgstr "" + #. set status before thread to ensure UI feedback #: ../java/src/net/i2p/router/update/DevSU3UpdateHandler.java:91 #: ../java/src/net/i2p/router/update/PluginUpdateHandler.java:82 @@ -980,24 +990,19 @@ msgstr "" msgid "Updating" msgstr "Uuendan" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:209 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:218 msgid "In-network updates disabled. Check package manager." msgstr "" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:215 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:224 msgid "No write permission for I2P install directory." msgstr "" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:223 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:232 #, java-format msgid "You must first update to version {0}" msgstr "" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:233 -#, java-format -msgid "Requires Java version {0} but installed Java version is {1}" -msgstr "" - #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:62 #, java-format msgid "Checking for update of plugin {0}" @@ -1201,8 +1206,10 @@ msgid "unban now" msgstr "tühista bänn" #: ../java/src/net/i2p/router/web/CSSHelper.java:149 -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../java/strings/Strings.java:29 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:217 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:221 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:219 @@ -1272,6 +1279,8 @@ msgstr "tühista bänn" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:217 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:219 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:224 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:228 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:230 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:222 @@ -1297,6 +1306,16 @@ msgstr "tühista bänn" msgid "I2P Router Console" msgstr "I2P ruuteri konsool" +#: ../java/src/net/i2p/router/web/CertHelper.java:25 +msgid "Local SSL Certificates" +msgstr "" + +#: ../java/src/net/i2p/router/web/CertHelper.java:46 +#: ../java/src/net/i2p/router/web/CertHelper.java:51 +#: ../java/strings/Strings.java:63 +msgid "I2PTunnel" +msgstr "I2PTunnel" + #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:62 msgid "Error updating the configuration - please see the error logs" msgstr "Viga häälestuse uuendamisel - palun vaata vealogi" @@ -1311,7 +1330,8 @@ msgstr "Häälestus edukalt salvestatud" #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:98 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:622 #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:391 -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:151 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:109 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:160 msgid "" "Error saving the configuration (applied but not saved) - please see the " "error logs" @@ -1516,7 +1536,7 @@ msgid "Add Client" msgstr "Lisa klient" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:116 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:503 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:517 #: ../java/src/net/i2p/router/web/SummaryHelper.java:452 msgid "Client" msgstr "Klient" @@ -1548,9 +1568,9 @@ msgid "Plugin" msgstr "Plugin" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:248 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:304 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 msgid "Version" msgstr "Versioon" @@ -1571,9 +1591,9 @@ msgid "License" msgstr "Litsents" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:294 -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/HomeHelper.java:171 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:157 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/HomeHelper.java:178 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:164 msgid "Website" msgstr "Veebileht" @@ -1608,7 +1628,7 @@ msgstr "Kustuta" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:21 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigUIHandler.java:19 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:970 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:996 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:496 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:516 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:532 @@ -1618,7 +1638,7 @@ msgstr "Kustuta valitu" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:23 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1015 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:494 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:502 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:514 @@ -1714,11 +1734,11 @@ msgstr "ei leitud võtmehoidjast" msgid "Invalid destination" msgstr "Kehtetu sihtvõti" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:82 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:84 msgid "Log overrides updated" msgstr "Logimise erandkäsud uuendatud" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:163 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:165 msgid "Log configuration saved" msgstr "Logimise häälestus salvestatud" @@ -1766,8 +1786,8 @@ msgstr "WARN" #: ../java/src/net/i2p/router/web/ConfigLoggingHelper.java:85 #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:170 -#: ../java/src/net/i2p/router/web/HomeHelper.java:208 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:904 +#: ../java/src/net/i2p/router/web/HomeHelper.java:215 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 msgid "Remove" msgstr "Eemalda" @@ -1786,11 +1806,12 @@ msgid "Home Page" msgstr "Avaleht" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:328 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:335 msgid "Network" msgstr "Võrk" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:320 @@ -1824,6 +1845,7 @@ msgstr "Võrk" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:292 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:322 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:297 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:292 @@ -1842,8 +1864,8 @@ msgid "UI" msgstr "Kasutajaliides" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:179 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:486 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:186 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 #: ../java/strings/Strings.java:73 msgid "Tunnels" msgstr "Tunnelid" @@ -1862,15 +1884,15 @@ msgid "Logging" msgstr "Logimine" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:185 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:372 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:192 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:386 #: ../java/strings/Strings.java:68 msgid "Peers" msgstr "Ruuterid" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:497 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:230 msgid "Stats" msgstr "Statistika" @@ -1886,7 +1908,7 @@ msgstr "Peenhäälestus" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:491 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:479 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:641 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:593 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:560 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:511 msgid "Save changes" @@ -2067,7 +2089,7 @@ msgid "Unsupported" msgstr "Mitte toetatud" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:24 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 msgid "Save changes and reseed now" msgstr "Salvesta muutused ja hangi ruuterite kontakte" @@ -2115,7 +2137,16 @@ msgid_plural "Reseed successful, loaded {0} router infos from file" msgstr[0] "" msgstr[1] "" -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:149 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:99 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +msgid "Reset URL list" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:107 +msgid "URL list reset successfully" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:158 msgid "Configuration saved successfully." msgstr "Häälestus edukalt salvestatud." @@ -2615,8 +2646,8 @@ msgid "User Name" msgstr "" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:183 -#: ../java/src/net/i2p/router/web/HomeHelper.java:235 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:972 +#: ../java/src/net/i2p/router/web/HomeHelper.java:242 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:998 msgid "Add" msgstr "" @@ -2847,13 +2878,13 @@ msgstr "" msgid "Details" msgstr "" -#: ../java/src/net/i2p/router/web/FormHandler.java:251 +#: ../java/src/net/i2p/router/web/FormHandler.java:253 msgid "" "Invalid form submission, probably because you used the 'back' or 'reload' " "button on your browser. Please resubmit." msgstr "Kehtetu vormipostitus, kasutasid ehk brauseri 'back' või 'reload' nuppu. Saada vorm uuesti." -#: ../java/src/net/i2p/router/web/FormHandler.java:253 +#: ../java/src/net/i2p/router/web/FormHandler.java:255 msgid "" "If the problem persists, verify that you have cookies enabled in your " "browser." @@ -2984,156 +3015,169 @@ msgstr "Salvesta häälestus ja joonista uuesti" msgid "Graph settings saved" msgstr "Graafikute häälestus salvestatud" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:229 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:236 msgid "Addressbook" msgstr "Aadressiraamat" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:227 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:234 msgid "Manage your I2P hosts file here (I2P domain name resolution)" msgstr "Halda siit oma I2P nimefaili (I2P domeenide lahendamist)" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 msgid "Configure Bandwidth" msgstr "Ribalaiuse Häälestus" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:330 msgid "I2P Bandwidth Configuration" msgstr "I2P ribalaiuse häälestus" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Configure Language" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Console Language Selection" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 msgid "Customize Home Page" msgstr "Kohanda Avalehte" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:346 msgid "I2P Home Page Configuration" msgstr "I2P Avalehe Konfiguratsioon" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:139 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:146 msgid "Anonymous webmail client" msgstr "Anonüümne veebimeili klient" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:141 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:148 msgid "Email" msgstr "E-post" -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:251 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 msgid "I2P Router Help" msgstr "I2P ruuteri abi" -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:161 msgid "Router Console" msgstr "Ruuteri konsool" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:145 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:152 msgid "Built-in anonymous BitTorrent Client" msgstr "Sisseehitatud anonüümne BitTorrenti klient" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:147 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:154 msgid "Torrents" msgstr "Torrentid" -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:155 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:162 msgid "Local web server" msgstr "Kohalik veebiserver" -#: ../java/src/net/i2p/router/web/HomeHelper.java:41 +#: ../java/src/net/i2p/router/web/HomeHelper.java:43 msgid "The Anoncoin project" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug Reports" msgstr "Veateated" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug tracker" msgstr "" #. "colombo-bt.i2p" + S + _x("The Italian Bittorrent Resource") + S + "http #. ://colombo-bt.i2p/" + S + I + "colomboicon.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Dev Forum" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Development forum" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Bittorrent tracker" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 msgid "diftracker" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:46 +#: ../java/src/net/i2p/router/web/HomeHelper.java:48 msgid "I2P Applications" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +msgid "Anonymous cryptocurrency exchange" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "FAQ" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "Frequently Asked Questions" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Community forum" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Forum" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "" "A public anonymous Git hosting site - supports pulling via Git and HTTP and " "pushing via SSH" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "Anonymous Git Hosting" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:50 +#: ../java/src/net/i2p/router/web/HomeHelper.java:53 msgid "HiddenGate" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "Anonymous wiki - share the knowledge" +msgstr "" + +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "I2P Wiki" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Microblog" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Your premier microblogging service on I2P" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 msgid "Javadocs" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical documentation" msgstr "" @@ -3141,91 +3185,98 @@ msgstr "" #. "http://jisko.i2p/" + S + I + "jisko_console_icon.png" + S + #. _x("Key Server") + S + _x("OpenPGP Keyserver") + S + "http://keys.i2p/" + S #. + I + "education.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +#: ../java/src/net/i2p/router/web/HomeHelper.java:60 msgid "Debian and Tahoe-LAFS repositories" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free Web Hosting" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free eepsite hosting with PHP and MySQL" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "I2P Pastebin" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "Pastebin" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:58 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 msgid "I2P News" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +msgid "Planet I2P" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Add-on directory" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Plugins" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Postman's Tracker" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "I2P home page" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "Project Website" msgstr "" +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:68 +msgid "Russian News Feed" +msgstr "" + #. "Salt" + S + "salt.i2p" + S + "http://salt.i2p/" + S + I + #. "salt_console.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +#: ../java/src/net/i2p/router/web/HomeHelper.java:70 msgid "I2P Network Statistics" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical Docs" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:65 +#: ../java/src/net/i2p/router/web/HomeHelper.java:72 msgid "Trac Wiki" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:66 -msgid "Ugha's Wiki" -msgstr "" - -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Seedless and the Robert BitTorrent applications" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#. _x("Ugha's Wiki") + S + S + "http://ugha.i2p/" + S + I + +#. "billiard_marker.png" + S + +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Sponge's main site" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:108 +#: ../java/src/net/i2p/router/web/HomeHelper.java:115 msgid "The HTTP proxy is not up" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:110 +#: ../java/src/net/i2p/router/web/HomeHelper.java:117 #, java-format msgid "Your browser is not properly configured to use the HTTP proxy at {0}" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:210 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:906 +#: ../java/src/net/i2p/router/web/HomeHelper.java:217 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:932 msgid "Name" msgstr "Nimi" -#: ../java/src/net/i2p/router/web/HomeHelper.java:212 +#: ../java/src/net/i2p/router/web/HomeHelper.java:219 msgid "URL" msgstr "URL" @@ -3353,217 +3404,226 @@ msgstr "" msgid "LeaseSets" msgstr "Lüüsikirjegrupid" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:105 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:106 #: ../java/strings/Strings.java:69 msgid "Router" msgstr "Ruuter" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:112 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:113 msgid "not found in network database" msgstr "ei leitud võrguandmebaasist" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:156 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 msgid "LeaseSet" msgstr "Lüüsikirjegrupp" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:158 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:163 msgid "Local" msgstr "Kohalik" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:160 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:165 msgid "Unpublished" msgstr "Avaldamata" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:176 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:166 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:181 msgid "Destination" msgstr "Sihtvõti" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:173 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:185 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:178 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 msgid "Add to local addressbook" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:217 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:195 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:222 #, java-format msgid "Expires in {0}" msgstr "Aegub {0} pärast" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:192 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:219 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:197 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:224 #, java-format msgid "Expired {0} ago" msgstr "Aegus {0} eest" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Gateway" msgstr "Lüüs" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 msgid "Lease" msgstr "Lüüsikirje" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:213 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:218 msgid "Tunnel" msgstr "Tunnel" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:280 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:286 msgid "Not initialized" msgstr "Lähtestamata" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:330 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:342 msgid "Network Database Router Statistics" msgstr "Võrguandmebaasi ruuterite statistika" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Count" msgstr "Arv" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 msgid "Transports" msgstr "Transpordid" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Country" msgstr "Maa" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:429 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:453 msgid "Our info" msgstr "Meie info" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:431 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:455 msgid "Peer info for" msgstr "Ruuter info ruuterile" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:433 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:457 msgid "Full entry" msgstr "Täielik kirje" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 #: ../java/src/net/i2p/router/web/SummaryHelper.java:152 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:726 msgid "Hidden" msgstr "Peidetud" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 msgid "Updated" msgstr "Uuendatud" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:441 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:444 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:465 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:468 #, java-format msgid "{0} ago" msgstr "{0} eest" #. shouldnt happen -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:443 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:447 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:467 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:471 msgid "Published" msgstr "Avaldatud" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:449 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 msgid "Signing Key" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:451 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:475 msgid "Address(es)" msgstr "Aadress(id)" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:463 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:487 msgid "cost" msgstr "kulukus" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "Hidden or starting up" msgstr "Peidetud või alles käivitub" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU" msgstr "SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU with introducers" msgstr "SSU tutvustajatega" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP" msgstr "NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU" msgstr "NTCP ja SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU with introducers" msgstr "NTCP ja SSU tutvustajatega" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 Only SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 Only NTCP, SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NewsHelper.java:295 +#: ../java/src/net/i2p/router/web/NewsFeedHelper.java:80 +#, java-format +msgid "by {0}" +msgstr "" + +#: ../java/src/net/i2p/router/web/NewsHelper.java:292 #, java-format msgid "News last updated {0} ago." msgstr "Uudiseid uuendati viimati {0} eest." -#: ../java/src/net/i2p/router/web/NewsHelper.java:301 +#: ../java/src/net/i2p/router/web/NewsHelper.java:298 #, java-format msgid "News last checked {0} ago." msgstr "Uudiseid kontrolliti viimati {0} eest." -#: ../java/src/net/i2p/router/web/NewsHelper.java:310 +#: ../java/src/net/i2p/router/web/NewsHelper.java:307 msgid "Hide news" msgstr "Peida uudised" -#: ../java/src/net/i2p/router/web/NewsHelper.java:313 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:647 +#: ../java/src/net/i2p/router/web/NewsHelper.java:310 msgid "Show news" msgstr "Näita uudised" +#: ../java/src/net/i2p/router/web/NewsHelper.java:314 +msgid "Show all news" +msgstr "" + #: ../java/src/net/i2p/router/web/PluginStarter.java:140 msgid "Checking for plugin updates" msgstr "Kontrollitakse plugina uuendusi" #: ../java/src/net/i2p/router/web/PluginStarter.java:155 +#: ../java/src/net/i2p/router/web/PluginStarter.java:161 msgid "Plugin update check failed" msgstr "" -#: ../java/src/net/i2p/router/web/PluginStarter.java:193 +#: ../java/src/net/i2p/router/web/PluginStarter.java:199 #, java-format msgid "1 plugin updated" msgid_plural "{0} plugins updated" msgstr[0] "" msgstr[1] "" -#: ../java/src/net/i2p/router/web/PluginStarter.java:195 +#: ../java/src/net/i2p/router/web/PluginStarter.java:201 msgid "Plugin update check complete" msgstr "Plugina uuenduse kontroll sooritatud" @@ -3629,7 +3689,7 @@ msgid "Failing" msgstr "Läbikukkuvad" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:135 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:411 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:425 msgid "Integrated" msgstr "Hästi integreerunud" @@ -3898,277 +3958,287 @@ msgstr "Graafiku sündmuste arv" msgid "Lifetime average value" msgstr "Ruuteri tööea keskmine väärtus" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:121 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:128 msgid "I2P Router Help & FAQ" msgstr "I2P ruuteri abi & KKK" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:123 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:130 msgid "Help & FAQ" msgstr "Abi & KKK" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:131 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:138 msgid "" "Configure startup of clients and webapps (services); manually start dormant " "services" msgstr "Häälesta klientide ja veebirakenduste (teenuste) käivitumist; käivita magavaid teenuseid käsitsi" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:133 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:140 msgid "I2P Services" msgstr "I2P teenused" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:169 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:176 msgid "Configure I2P Router" msgstr "Häälesta I2P ruuterit" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:171 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:178 msgid "I2P Internals" msgstr "I2P sisemus" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:177 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:484 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:184 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:498 msgid "View existing tunnels and tunnel build status" msgstr "Vaata tunnelite ja nende ehitamise staatust" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:183 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:370 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:190 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:384 msgid "Show all current peer connections" msgstr "Näita kõiki ühendusi teiste ruuteritega" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:189 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:196 msgid "Show recent peer performance profiles" msgstr "Näita hiljutisi ruuterite jõudluse profiile" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:191 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:198 msgid "Profiles" msgstr "Profiilid" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:195 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:202 msgid "Show list of all known I2P routers" msgstr "Näita nimekirja kõigist tuntud I2P ruuteritest" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:197 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:204 msgid "NetDB" msgstr "Võrguandmebaas" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:201 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:208 msgid "Health Report" msgstr "Terviseraport" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:203 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:210 msgid "Logs" msgstr "Logid" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:214 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 msgid "Graph router performance" msgstr "Ruuteri jõudlusgraafikud" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:216 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 msgid "Graphs" msgstr "Graafikud" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:228 msgid "Textual router performance statistics" msgstr "Ruuteri jõudlusinfo teksti kujul" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:233 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:240 #: ../java/src/net/i2p/router/web/SummaryHelper.java:438 msgid "Local Tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:235 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:242 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:164 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:337 msgid "Hidden Services Manager" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:253 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:260 msgid "General" msgstr "Üldine" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 msgid "" "Your Local Identity is your unique I2P router identity, similar to an ip " "address but tailored to I2P. " msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:259 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:266 msgid "Never disclose this to anyone, as it can reveal your real world ip." msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:261 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:268 msgid "Local Identity" msgstr "Kohalik identiteet" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:272 msgid "Your unique I2P router identity is" msgstr "Sinu I2P ruuteri unikaalne ID on" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:269 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:276 msgid "never reveal it to anyone" msgstr "ära seda kellelegi avalda" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:271 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 msgid "show" msgstr "näita" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:275 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:301 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:282 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:308 msgid "The version of the I2P software we are running" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:292 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:318 msgid "How long we've been running for this session" msgstr "Kui kaua on ruuter käesolevas sessioonis töötanud" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:326 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:333 msgid "" "Help with configuring your firewall and router for optimal I2P performance" msgstr "Abi tulemüüri häälestamisel ja ruuteri jõudluse optimeerimisel" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:337 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:344 msgid "See more information on the wiki" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:339 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:346 msgid "Warning: ECDSA is not available. Update your Java or OS" msgstr "" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:351 -msgid "Configure I2P Updates" +#, java-format +msgid "Warning: Java version {0} is no longer supported by I2P." msgstr "" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#, java-format +msgid "Update Java to version {0} or higher to receive I2P updates." +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:365 +msgid "Configure I2P Updates" +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:367 msgid "I2P Update" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:378 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:392 msgid "Peers we've been talking to in the last few minutes/last hour" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:381 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:395 msgid "Active" msgstr "Aktiivne" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:390 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:404 msgid "The number of peers available for building client tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:393 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:407 msgid "Fast" msgstr "Kiire" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:399 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:413 msgid "The number of peers available for building exploratory tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:402 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:416 msgid "High capacity" msgstr "Suure mahuga" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:408 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:422 msgid "The number of peers available for network database inquiries" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:417 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:431 msgid "The total number of peers in our network database" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:420 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:434 msgid "Known" msgstr "Tuntud" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:440 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:454 msgid "Configure router bandwidth allocation" msgstr "Häälesta ruuteri ribalaiuse piiranguid" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:442 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:456 msgid "Bandwidth in/out" msgstr "Ribalaius sisse/välja" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:462 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:476 msgid "Total" msgstr "Kokku" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:469 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:483 msgid "Used" msgstr "Kasutatud" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:491 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:505 msgid "" "Used for building and testing tunnels, and communicating with floodfill " "peers" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:494 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:508 msgid "Exploratory" msgstr "Avastamine" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:514 msgid "Tunnels we are using to provide or access services on the network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:509 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:523 msgid "" "Tunnels we are participating in, directly contributing bandwidth to the " "network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:512 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:526 msgid "Participating" msgstr "Osalemine" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:518 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:532 msgid "" "The ratio of tunnel hops we provide to tunnel hops we use - a value greater " "than 1.00 indicates a positive contribution to the network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:521 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:535 msgid "Share ratio" msgstr "Jagamistase" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:534 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:548 msgid "What's in the router's job queue?" msgstr "Mis on ruuteri tööde järjekorras?" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:536 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 msgid "Congestion" msgstr "Ummik" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:541 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:555 msgid "Indicates router performance" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:544 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:558 msgid "Job lag" msgstr "Töö viive" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:564 msgid "Indicates how quickly outbound messages to other I2P routers are sent" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:553 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:567 msgid "Message delay" msgstr "Sõnumi viive" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:560 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:574 msgid "Round trip time for a tunnel test" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:563 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:577 msgid "Tunnel lag" msgstr "Tunneli viive" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:570 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:584 msgid "Queued requests from other routers to participate in tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:573 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:587 msgid "Backlog" msgstr "Järjekord" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:608 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:623 msgid "News & Updates" msgstr "" @@ -4281,17 +4351,21 @@ msgid "Click Shutdown and restart to install" msgstr "Lülita välja et uuesti käivitamisel paigaldada" #: ../java/src/net/i2p/router/web/SummaryHelper.java:720 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:735 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:737 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:749 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:761 #, java-format msgid "Version {0}" msgstr "Versioon {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:734 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:736 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:748 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:760 msgid "Update available" msgstr "" #. Note to translators: parameter is a version, e.g. "0.8.4" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:758 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:784 #, java-format msgid "Download {0} Update" msgstr "Lae alla uuendus {0}" @@ -4300,7 +4374,7 @@ msgstr "Lae alla uuendus {0}" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:766 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:792 #, java-format msgid "Download Signed<br>Development Update<br>{0}" msgstr "" @@ -4309,56 +4383,56 @@ msgstr "" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:774 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 #, java-format msgid "Download Unsigned<br>Update {0}" msgstr "Lae alla allkirjata<br>uuendus {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:798 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:824 msgid "Help with firewall configuration" msgstr "Abi tulemüüri häälestamisel" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:826 msgid "Check network connection and NAT/firewall" msgstr "Kontrolli võrguühendust ja kohtvõrgu ruuterit/tulemüüri" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:819 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:845 msgid "Reseed" msgstr "Hangi ruuterite kontakte" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:908 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:934 msgid "Order" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:925 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:951 msgid "Top" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:956 msgid "Move to top" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:940 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:966 msgid "Move up" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:948 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:974 msgid "Down" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:953 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:979 msgid "Move down" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:958 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:984 msgid "Bottom" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:963 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 msgid "Move to bottom" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:975 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1001 msgid "Select a section to add" msgstr "" @@ -4405,100 +4479,100 @@ msgstr "Klienditunnelid sihtvõtmele" msgid "dead" msgstr "surnud" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:70 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:69 msgid "Participating tunnels" msgstr "Tunnelid, milles osaleme" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "Receive on" msgstr "Kuulan tag'il" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Expiration" msgstr "Aegumine" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Send on" msgstr "Saadan tag'il" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Rate" msgstr "Kiirus" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Role" msgstr "Roll" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Usage" msgstr "Kasutatud" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:111 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:113 msgid "grace period" msgstr "lisaajal" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:121 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 msgid "Outbound Endpoint" msgstr "Väljuv otspunkt" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 msgid "Inbound Gateway" msgstr "Sisenev lüüs" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:127 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:174 msgid "Participant" msgstr "Osaleja" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:130 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:133 #, java-format msgid "Limited display to the {0} tunnels with the highest usage" msgstr "Vaade piiratud {0} aktiivsemalt kasutatud tunneliga" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:131 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:135 msgid "Inactive participating tunnels" msgstr "Mitteaktiivsed tunnelid, milles osaleme" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:132 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:224 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:138 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:232 msgid "Lifetime bandwidth usage" msgstr "Tööea vältel siirdatud andmemaht" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Expiry" msgstr "Aegumine" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:165 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 msgid "Participants" msgstr "Osalejad" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:177 msgid "Endpoint" msgstr "Otspunkt" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 #: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "Build in progress" msgstr "Ehitamine pooleli" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 msgid "inbound" msgstr "sisenev" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "outbound" msgstr "väljuv" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:223 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:231 msgid "No tunnels; waiting for the grace period to end." msgstr "Pole tunneleid; ootan et lisaaeg läbi saaks." -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:225 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:233 msgid "in" msgstr "sisse" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:234 msgid "out" msgstr "välja" @@ -4635,10 +4709,6 @@ msgstr "" msgid "i2cp" msgstr "i2cp" -#: ../java/strings/Strings.java:63 -msgid "I2PTunnel" -msgstr "I2PTunnel" - #: ../java/strings/Strings.java:64 msgid "InNetPool" msgstr "" @@ -4685,10 +4755,12 @@ msgstr "key" msgid "port" msgstr "port" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 -msgid "configure bandwidth" -msgstr "ribalaiuse häälestus" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:146 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:318 +msgid "Certificates" +msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:153 @@ -4722,6 +4794,7 @@ msgstr "ribalaiuse häälestus" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:149 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:155 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:154 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:149 @@ -4737,6 +4810,7 @@ msgstr "" #. We have intl defined when this is included, but not when compiled #. standalone. +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:333 @@ -4769,6 +4843,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:305 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:310 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:305 @@ -4784,6 +4859,7 @@ msgid "Refresh (s)" msgstr "Värskendus (s)" #. ditto +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:337 @@ -4816,6 +4892,7 @@ msgstr "Värskendus (s)" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:309 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:339 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:314 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:309 @@ -4830,6 +4907,10 @@ msgstr "Värskendus (s)" msgid "Enable" msgstr "Luba" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 +msgid "configure bandwidth" +msgstr "ribalaiuse häälestus" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:437 msgid "Bandwidth limiter" msgstr "Ribalaiuse piiraja" @@ -4906,7 +4987,7 @@ msgstr "Võrguseadete peenhäälestuse leht" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:501 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:477 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:639 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:587 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:558 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:509 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:461 @@ -5939,51 +6020,51 @@ msgstr "Kasuta ainult ilma SSL-ita" msgid "Reseed URLs" msgstr "Kontaktide hanke URL-id" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:541 msgid "Enable HTTP Proxy?" msgstr "Kasuta HTTP proxy't?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:543 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:545 msgid "HTTP Proxy Host" msgstr "HTTP proxy nimi/aadress" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:547 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:549 msgid "HTTP Proxy Port" msgstr "HTTP proxy port" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:551 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:553 msgid "Use HTTP Proxy Authorization?" msgstr "Kasuta HTTP proxy autoriseerimist?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:555 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:557 msgid "HTTP Proxy Username" msgstr "HTTP proxy kasutajanimi" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:559 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:561 msgid "HTTP Proxy Password" msgstr "HTTP proxy parool" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:563 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:565 msgid "Enable HTTPS Proxy?" msgstr "Kasuta HTTPS proxy't?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:567 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:569 msgid "HTTPS Proxy Host" msgstr "HTTPS proxy nimi/aadress" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:571 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:573 msgid "HTTPS Proxy Port" msgstr "HTTPS proxy port" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:575 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:577 msgid "Use HTTPS Proxy Authorization?" msgstr "Kasuta HTTPS proxy autoriseerimist?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:579 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:581 msgid "HTTPS Proxy Username" msgstr "HTTPS proxy kasutajanimi" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:583 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:585 msgid "HTTPS Proxy Password" msgstr "HTTPS proxy parool" @@ -6542,6 +6623,14 @@ msgstr "" msgid "I2P Network Database" msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:148 +msgid "News" +msgstr "" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:344 +msgid "Latest News" +msgstr "" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:152 msgid "WebApp Not Found" msgstr "Veebirakendust ei leitud" diff --git a/apps/routerconsole/locale/messages_fi.po b/apps/routerconsole/locale/messages_fi.po index 8690dc890c2568ce5e7e61c077f80fa267b9e69c..52387440991e87bb8ac3c1f9f95e0ed7f4f9db88 100644 --- a/apps/routerconsole/locale/messages_fi.po +++ b/apps/routerconsole/locale/messages_fi.po @@ -14,10 +14,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:05+0000\n" -"PO-Revision-Date: 2015-07-22 16:16+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-08 17:39+0000\n" "Last-Translator: Jorma Karvonen <karvonen.jorma@gmail.com>\n" -"Language-Team: Finnish (http://www.transifex.com/projects/p/I2P/language/fi/)\n" +"Language-Team: Finnish (http://www.transifex.com/otf/I2P/language/fi/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -129,26 +129,29 @@ msgstr "IP estetty blocklist.txt sisällön mukaan {0}" #: ../../../router/java/src/net/i2p/router/Blocklist.java:920 msgid "IPs Banned Until Restart" -msgstr "" +msgstr "IP:t estetty uudelleenkäynnistämiseen saakka" #: ../../../router/java/src/net/i2p/router/Blocklist.java:957 msgid "IPs Permanently Banned" -msgstr "" +msgstr "IP:t estetty pysyvästi" #: ../../../router/java/src/net/i2p/router/Blocklist.java:959 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "From" msgstr "Lähettäjä" #: ../../../router/java/src/net/i2p/router/Blocklist.java:961 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "To" msgstr "Vastaanottaja" #: ../../../router/java/src/net/i2p/router/Blocklist.java:997 #: ../java/src/net/i2p/router/web/BanlistRenderer.java:48 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:652 +#: ../java/src/net/i2p/router/web/CertHelper.java:77 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:147 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:662 #: ../java/src/net/i2p/router/web/SummaryHelper.java:478 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:137 msgid "none" msgstr "ei mitään" @@ -160,40 +163,40 @@ msgstr "OK" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:312 msgid "IPv4: OK; IPv6: Testing" -msgstr "" +msgstr "IPv4: Valmis; IPv6: Testataan" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:313 msgid "IPv4: OK; IPv6: Firewalled" -msgstr "" +msgstr "IPv4: Valmis; IPv6: Palomuuritettu" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:314 msgid "IPv4: Testing; IPv6: OK" -msgstr "" +msgstr "IPv4: Testataan; IPv6: Valmis" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:315 msgid "IPv4: Firewalled; IPv6: OK" -msgstr "" +msgstr "IPv4: Palomuuritettu; IPv6: Valmis" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:316 msgid "IPv4: Disabled; IPv6: OK" -msgstr "" +msgstr "IPv4: Otettu pois käytöstä; IPv6: Valmis" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:317 msgid "IPv4: Symmetric NAT; IPv6: OK" -msgstr "" +msgstr "IPv4: Symmetrinen NAT; IPv6: Valmis" #. * IPv4 symmetric NAT, IPv6 firewalled or disabled or no address #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:319 msgid "Symmetric NAT" -msgstr "" +msgstr "Symmetrinen NAT" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:320 msgid "IPv4: Symmetric NAT; IPv6: Testing" -msgstr "" +msgstr "IPv4: Symmetrinen NAT; IPv6: Testataan" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:321 msgid "IPv4: Firewalled; IPv6: Testing" -msgstr "" +msgstr "IPv4: Palomuuritettu; IPv6: Testataan" #. * IPv4 firewalled, IPv6 firewalled or disabled or no address #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:323 @@ -203,23 +206,23 @@ msgstr "Palomuurissa" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:324 msgid "IPv4: Testing; IPv6: Firewalled" -msgstr "" +msgstr "IPv4: Testataan; IPv6: Palomuuritettu" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:325 msgid "IPv4: Disabled; IPv6: Testing" -msgstr "" +msgstr "IPv4: Otettu pois käytöstä; IPv6: Testataan" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:326 msgid "IPv4: Disabled; IPv6: Firewalled" -msgstr "" +msgstr "IPv4: Otettu pois käytöstä; IPv6: Palomuuritettu" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:327 msgid "Disconnected" -msgstr "" +msgstr "Yhteys katkaistu" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:328 msgid "Port Conflict" -msgstr "" +msgstr "Porttiristiriita" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:329 #: ../java/src/net/i2p/router/web/SummaryHelper.java:155 @@ -236,7 +239,7 @@ msgstr "Testataan" #: ../../../router/java/src/net/i2p/router/RouterThrottleImpl.java:135 #: ../../../router/java/src/net/i2p/router/RouterThrottleImpl.java:523 msgid "Rejecting tunnels: Starting up" -msgstr "" +msgstr "Torjutaan käytäviä: Järjestelmää käynnistetään" #: ../../../router/java/src/net/i2p/router/RouterThrottleImpl.java:182 msgid "Rejecting tunnels: High message delay" @@ -286,43 +289,43 @@ msgstr "Torjutaan käytäviä: Järjestelmää suljetaan" msgid "Rejecting tunnels" msgstr "Torjutaan käytäviä" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:212 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:210 #, java-format msgid "Reseeding: got router info from file ({0} successful, {1} errors)." msgstr "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:284 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:282 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:28 msgid "Reseeding" msgstr "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:307 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:305 #, java-format msgid "Reseed fetched only 1 router." msgid_plural "Reseed fetched only {0} routers." msgstr[0] "" msgstr[1] "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:314 msgid "Reseed failed." msgstr "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:317 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:315 #, java-format msgid "See {0} for help." msgstr "Lisätietoja kohdasta {0}." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:318 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 msgid "reseed configuration page" msgstr "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:566 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:697 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:564 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:695 msgid "Reseeding: fetching seed URL." msgstr "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:623 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:733 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:621 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:731 #, java-format msgid "" "Reseeding: fetching router info from seed URL ({0} successful, {1} errors)." @@ -334,11 +337,11 @@ msgstr "" #. Please keep relatively short so it will fit on the graphs. #: ../../../router/java/src/net/i2p/router/tasks/CoalesceStatsEvent.java:33 msgid "Message receive rate (bytes/sec)" -msgstr "" +msgstr "Viestin vastaanottonopeus (tavua/sekunti)" #: ../../../router/java/src/net/i2p/router/tasks/CoalesceStatsEvent.java:34 msgid "Message send rate (bytes/sec)" -msgstr "" +msgstr "Viestin lähetysnopeus (tavua/sekunti)" #: ../../../router/java/src/net/i2p/router/tasks/CoalesceStatsEvent.java:35 msgid "Low-level send rate (bytes/sec)" @@ -387,12 +390,12 @@ msgid "Unreachable on any transport" msgstr "" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:674 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:566 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:577 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:604 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:622 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1348 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2469 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2474 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:92 msgid "Status" msgstr "Tila" @@ -407,12 +410,12 @@ msgid "{0} is used for outbound connections only" msgstr "" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:711 -#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:283 +#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:295 msgid "UPnP is not enabled" msgstr "UPnP ei ole käytössä" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:720 -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:167 msgid "Help" msgstr "Ohje" @@ -436,7 +439,7 @@ msgstr "Määritelmät" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:726 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1352 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2473 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:24 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:33 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:35 @@ -451,7 +454,7 @@ msgstr "Vertaissolmu, reitittimen tiivisteen mukaan tunnistettuna." #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:727 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1353 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Dir" msgstr "" @@ -478,14 +481,14 @@ msgstr "Milloin on viimeksi lähetetty / vastaanotettu paketti" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:735 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1355 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2479 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 msgid "Idle" msgstr "Tyhjäkäynti" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:736 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1356 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "In/Out" msgstr "Sisään/Ulos" @@ -499,14 +502,14 @@ msgstr "Milloin tämä yhteys rakennettiin" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:737 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1357 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:935 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2494 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:961 msgid "Up" msgstr "Toiminnassa" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:738 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1358 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2491 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2496 msgid "Skew" msgstr "Vääristymä" @@ -555,7 +558,7 @@ msgstr "Tämänhetkinen suurin lähetettävä paketin koko / arvioitu suurin vas #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:748 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1359 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2508 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 msgid "TX" msgstr "TX" @@ -565,7 +568,7 @@ msgstr "Vertaissolmulle lähetettyjen pakettien kokonaismäärä" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:749 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1360 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2510 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 msgid "RX" msgstr "RX" @@ -574,7 +577,7 @@ msgid "The total number of packets received from the peer" msgstr "Vertaissolmulta vastaanotettujen pakettien kokonaismäärä" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:750 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2518 msgid "Dup TX" msgstr "Dup TX" @@ -583,7 +586,7 @@ msgid "The total number of packets retransmitted to the peer" msgstr "Vertaissolmulle uudelleenlähetettyjen pakettien kokonaismäärä" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:751 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2520 msgid "Dup RX" msgstr "Dup RX" @@ -591,104 +594,104 @@ msgstr "Dup RX" msgid "The total number of duplicate packets received from the peer" msgstr "Vertaissolmulta vastaanotettujen toistettujen pakettien kokonaismäärä" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:560 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:561 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 msgid "Service" msgstr "Palvelu" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:564 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 msgid "WAN Common Interface Configuration" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:567 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:587 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:614 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:568 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:588 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:615 msgid "Type" msgstr "Tyyppi" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:569 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:589 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:570 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:590 msgid "Upstream" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:571 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:591 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:572 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:592 msgid "Downstream" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:575 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 msgid "WAN PPP Connection" -msgstr "" +msgstr "WAN PPP-yhteys" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:583 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:610 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:288 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:314 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:584 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:611 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:295 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:321 msgid "Uptime" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:593 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:616 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:594 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:617 msgid "External IP" msgstr "Ulkoinen IP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:597 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 msgid "Layer 3 Forwarding" -msgstr "" +msgstr "Kerros 3-edelleenlähetys" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:599 msgid "Default Connection Service" -msgstr "" +msgstr "Oletusyhteyspalvelu" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:602 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 msgid "WAN IP Connection" -msgstr "" +msgstr "WAN IP-yhteys" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:620 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 msgid "WAN Ethernet Link Configuration" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:641 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:642 msgid "Found Device" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:643 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:644 msgid "Subdevice" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:664 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:665 msgid "UPnP Status" msgstr "UPnP tila" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:668 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:669 msgid "Disabled UPnP Devices" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:682 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:683 msgid "" "UPnP has been disabled; Do you have more than one UPnP Internet Gateway " "Device on your LAN ?" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:685 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:686 msgid "UPnP has not found any UPnP-aware, compatible device on your LAN." msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:693 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:694 #, java-format msgid "The current external IP address reported by UPnP is {0}" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:695 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:696 msgid "The current external IP address is not available." msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:699 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:700 #, java-format msgid "UPnP reports the maximum downstream bit rate is {0}bits/sec" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:701 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:702 #, java-format msgid "UPnP reports the maximum upstream bit rate is {0}bits/sec" msgstr "" @@ -697,12 +700,12 @@ msgstr "" #. {1,number,#####} prevents 12345 from being output as 12,345 in the English #. locale. #. If you want the digit separator in your locale, translate as {1}. -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:709 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:710 #, java-format msgid "{0} port {1,number,#####} was successfully forwarded by UPnP." msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:711 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:712 #, java-format msgid "{0} port {1,number,#####} was not forwarded by UPnP." msgstr "" @@ -718,17 +721,17 @@ msgid "NTCP connections" msgstr "NTCP-yhteydet" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1345 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2466 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2471 msgid "Limit" msgstr "Raja" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1346 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2467 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2472 msgid "Timeout" msgstr "Aikakatkaisu" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1354 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2483 msgid "IPv6" msgstr "IPv6" @@ -741,126 +744,126 @@ msgid "Backlogged?" msgstr "" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1375 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2532 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2537 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Inbound" msgstr "Sisääntulevia" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1377 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2534 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2539 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Outbound" msgstr "Ulosmeneviä" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1432 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2699 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2704 #, java-format msgid "{0} peer" msgid_plural "{0} peers" msgstr[0] "{0} vertainen" msgstr[1] "{0} vertaista" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2465 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2470 msgid "UDP connections" msgstr "UDP-yhteydet" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2475 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 msgid "Sort by peer hash" msgstr "Järjestä vertaissolmun tiivisteen mukaan." -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Direction/Introduction" msgstr "Suunta/Esittely" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 msgid "Sort by idle inbound" msgstr "Järjestä sisääntulevien mukaan" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 msgid "Sort by idle outbound" msgstr "Järjestä ulosmenevien mukaan" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 msgid "Sort by inbound rate" msgstr "Järjestä sisääntulonopeuden mukaan" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 msgid "Sort by outbound rate" msgstr "Järjestä ulosmenonopeuden mukaan" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 msgid "Sort by connection uptime" msgstr "Järjestä yhteyden keston mukaan" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 msgid "Sort by clock skew" msgstr "Järjestä aikavääristymän mukaan" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 msgid "Sort by congestion window" msgstr "Järjestä tungosikkunan mukaan" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2502 msgid "Sort by slow start threshold" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2505 msgid "Sort by round trip time" msgstr "Järjestä edestakaisen matkan keston mukaan" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2504 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 msgid "Sort by retransmission timeout" msgstr "Järjestä uudelleenlähetyksen aikakatkaisun mukaan" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2507 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2512 msgid "Sort by outbound maximum transmit unit" msgstr "Järjestä suurimman siirtäyksikön koon mukaan" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 msgid "Sort by packets sent" msgstr "Järjestä lähetettyjen pakettien määrän mukaan" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2511 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 msgid "Sort by packets received" msgstr "Järjestä vastaanotettujen pakettien määrän mukaan" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2519 msgid "Sort by packets retransmitted" msgstr "Järjestä uudelleenlähetettyjen pakettien mukaan" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2521 msgid "Sort by packets received more than once" msgstr "Järjestä useammin kuin kerran vastaanotettujen pakettien mukaan" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2536 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2541 msgid "We offered to introduce them" msgstr "Me tarjoiduimme esittelemään heidät" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2538 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2543 msgid "They offered to introduce us" msgstr "He tarjoituivat esittelemään meidät" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2542 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2547 msgid "Choked" msgstr "Tukossa" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2550 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2555 msgid "1 fail" msgstr "1 epäonnistuminen" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2552 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2557 #, java-format msgid "{0} fails" msgstr "{0} epäonnistumista" #. 1 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2558 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2563 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:166 #: ../java/src/net/i2p/router/web/ProfilesHelper.java:13 msgid "Banned" msgstr "Estetty" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2617 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2622 msgid "backlogged" msgstr "" @@ -877,96 +880,96 @@ msgstr "" msgid "Dropping tunnel requests: Overloaded" msgstr "Torjutaan käytäväpyyntöjä: Ylikuormaa" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:693 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:695 msgid "Rejecting tunnels: Hidden mode" msgstr "" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:721 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:723 msgid "Rejecting tunnels: Request overload" msgstr "Torjutaan käytäviä: Pyyntöjen ylikuormitus" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:752 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:754 msgid "Rejecting tunnels: Connection limit" msgstr "" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:964 -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:997 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:966 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:999 msgid "Dropping tunnel requests: High load" msgstr "Pudotetaan käytäväpyyntöjä: Raskas kuorma" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1076 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1078 msgid "Dropping tunnel requests: Queue time" msgstr "Pudotetaan käytäväpyyntöjä: Jonotusaika" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:884 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:895 #, java-format msgid "New plugin version {0} is available" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:964 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:975 #, java-format msgid "Update check failed for plugin {0}" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:968 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:979 #, java-format msgid "No new version is available for plugin {0}" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:992 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1003 #, java-format msgid "{0}B transferred" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1051 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1062 #, java-format msgid "Install failed from {0}" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1053 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1064 #: ../java/src/net/i2p/router/update/UpdateRunner.java:298 #, java-format msgid "Transfer failed from {0}" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1328 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1339 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1403 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 #: ../java/src/net/i2p/router/web/SummaryHelper.java:715 msgid "Update downloaded" msgstr "Päivitys ladattu" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 msgid "Restarting" msgstr "Uudelleenkäynnistetään" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 msgid "Update verified" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1381 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:189 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:306 #, java-format msgid "from {0}" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1396 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1407 #, java-format msgid "Unsigned update file from {0} is corrupt" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1425 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1436 #, java-format msgid "Failed copy to {0}" msgstr "" -#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:47 +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:49 #: ../java/src/net/i2p/router/update/DevSU3UpdateRunner.java:40 #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:55 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:111 -#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:62 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:64 #: ../java/src/net/i2p/router/update/UnsignedUpdateRunner.java:41 #: ../java/src/net/i2p/router/update/UpdateRunner.java:155 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:573 @@ -975,6 +978,13 @@ msgstr "" msgid "HTTP client proxy tunnel must be running" msgstr "" +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:83 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:242 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:88 +#, java-format +msgid "Requires Java version {0} but installed Java version is {1}" +msgstr "" + #. set status before thread to ensure UI feedback #: ../java/src/net/i2p/router/update/DevSU3UpdateHandler.java:91 #: ../java/src/net/i2p/router/update/PluginUpdateHandler.java:82 @@ -984,24 +994,19 @@ msgstr "" msgid "Updating" msgstr "Päivitetään" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:209 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:218 msgid "In-network updates disabled. Check package manager." msgstr "" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:215 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:224 msgid "No write permission for I2P install directory." msgstr "" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:223 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:232 #, java-format msgid "You must first update to version {0}" msgstr "" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:233 -#, java-format -msgid "Requires Java version {0} but installed Java version is {1}" -msgstr "" - #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:62 #, java-format msgid "Checking for update of plugin {0}" @@ -1013,17 +1018,17 @@ msgstr "" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:72 #, java-format msgid "Bad URL {0}" -msgstr "" +msgstr "Virheellinen verkko-osoite {0}" #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:95 #, java-format msgid "Attempting to install from file {0}" -msgstr "" +msgstr "Yritetään asentaa tiedostosta {0}" #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:98 #, java-format msgid "Failed to install from file {0}, copy failed." -msgstr "" +msgstr "Asentaminen tiedostosta {0} epäonnistui, kopionti epäonnistui." #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:118 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:530 @@ -1179,7 +1184,7 @@ msgstr "Epäonnistui ladata lisäosa {0}:lta" #: ../java/src/net/i2p/router/update/UpdateRunner.java:202 #, java-format msgid "Updating from {0}" -msgstr "" +msgstr "Päivitetään kohteesta {0}" #: ../java/src/net/i2p/router/update/UpdateRunner.java:275 #, java-format @@ -1188,7 +1193,7 @@ msgstr "" #: ../java/src/net/i2p/router/web/BanlistRenderer.java:65 msgid "Permanently banned" -msgstr "" +msgstr "Pysyvästi estetty" #: ../java/src/net/i2p/router/web/BanlistRenderer.java:67 #, java-format @@ -1205,8 +1210,10 @@ msgid "unban now" msgstr "poista esto nyt" #: ../java/src/net/i2p/router/web/CSSHelper.java:149 -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../java/strings/Strings.java:29 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:217 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:221 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:219 @@ -1276,6 +1283,8 @@ msgstr "poista esto nyt" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:217 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:219 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:224 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:228 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:230 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:222 @@ -1301,6 +1310,16 @@ msgstr "poista esto nyt" msgid "I2P Router Console" msgstr "I2P reitittimen ohjauspaneeli" +#: ../java/src/net/i2p/router/web/CertHelper.java:25 +msgid "Local SSL Certificates" +msgstr "Paikalliset SSL-varmenteet" + +#: ../java/src/net/i2p/router/web/CertHelper.java:46 +#: ../java/src/net/i2p/router/web/CertHelper.java:51 +#: ../java/strings/Strings.java:63 +msgid "I2PTunnel" +msgstr "I2PKäytävä" + #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:62 msgid "Error updating the configuration - please see the error logs" msgstr "Virhe päivitettäessä asetuksia - tarkasta virhelokit." @@ -1309,13 +1328,14 @@ msgstr "Virhe päivitettäessä asetuksia - tarkasta virhelokit." #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:96 #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:389 msgid "Configuration saved successfully" -msgstr "" +msgstr "Asetusten tallennus onnistui" #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:74 #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:98 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:622 #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:391 -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:151 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:109 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:160 msgid "" "Error saving the configuration (applied but not saved) - please see the " "error logs" @@ -1324,23 +1344,23 @@ msgstr "Virhe tallennettaessa asetuksia (sovellettu, mutta ei tallennettu) - tar #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:48 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:506 msgid "Save Client Configuration" -msgstr "" +msgstr "Tallenna asiakasasetukset" #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:52 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:572 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:576 msgid "Save Interface Configuration" -msgstr "" +msgstr "Tallenna käyttöliittymäasetukset" #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:56 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:592 msgid "Save WebApp Configuration" -msgstr "" +msgstr "Tallenna webbisovellusasetukset" #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:61 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:609 msgid "Save Plugin Configuration" -msgstr "" +msgstr "Tallenna lisäosa-asetukset" #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:68 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:625 @@ -1351,7 +1371,7 @@ msgstr "Asenna lisäosa" #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:77 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:639 msgid "Install Plugin from File" -msgstr "" +msgstr "Asenna lisäosa tiedostosta" #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:86 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:650 @@ -1362,7 +1382,7 @@ msgstr "Päivitä kaikki asennetut lisäosat" #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:175 #, java-format msgid "Error stopping plugin {0}" -msgstr "Virhe pysähtymättä lisäosa {0}" +msgstr "Virhe pysäyttää lisäosan {0}" #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:143 #, java-format @@ -1382,7 +1402,7 @@ msgstr "Pysäytetty lisäosa {0}" #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:180 #, java-format msgid "Stopped webapp {0}" -msgstr "" +msgstr "Pysäytetty webbisovellus {0}" #. label (IE) #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:209 @@ -1392,11 +1412,11 @@ msgstr "Käynnistä" #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:282 msgid "New client added" -msgstr "" +msgstr "Lisätty uusi asiakas" #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:287 msgid "Client configuration saved successfully" -msgstr "" +msgstr "Asiakasasetusten tallennus onnistui" #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:297 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:323 @@ -1407,17 +1427,17 @@ msgstr "" #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:306 #, java-format msgid "Client {0} stopped" -msgstr "" +msgstr "Asiakas {0} pysäytetty" #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:328 #, java-format msgid "Client {0} started" -msgstr "" +msgstr "Asiakas {0} käynnistetty" #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:343 #, java-format msgid "Client {0} deleted" -msgstr "" +msgstr "Asiakas {0} poistettu" #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:358 msgid "WebApp configuration saved." @@ -1495,7 +1515,7 @@ msgstr "" #: ../java/src/net/i2p/router/web/ConfigUIHandler.java:93 #, java-format msgid "Added user {0}" -msgstr "" +msgstr "Lisätty käyttäjä {0}" #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:619 msgid "Interface configuration saved" @@ -1517,10 +1537,10 @@ msgstr "Muokkaa" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:107 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:502 msgid "Add Client" -msgstr "" +msgstr "Lisää asiakas" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:116 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:503 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:517 #: ../java/src/net/i2p/router/web/SummaryHelper.java:452 msgid "Client" msgstr "Asiakas" @@ -1539,7 +1559,7 @@ msgstr "" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:119 msgid "Class and arguments" -msgstr "" +msgstr "Luokka ja argumentit" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:205 #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:234 @@ -1552,9 +1572,9 @@ msgid "Plugin" msgstr "Plugin" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:248 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:304 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 msgid "Version" msgstr "Versio" @@ -1575,15 +1595,15 @@ msgid "License" msgstr "Lupa" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:294 -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/HomeHelper.java:171 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:157 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/HomeHelper.java:178 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:164 msgid "Website" msgstr "Verkkosivu" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:301 msgid "Update link" -msgstr "" +msgstr "Päivitä linkkiä" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:356 msgid "Stop" @@ -1612,17 +1632,17 @@ msgstr "Poista" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:21 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigUIHandler.java:19 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:970 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:996 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:496 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:516 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:532 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:473 msgid "Delete selected" -msgstr "" +msgstr "Poista valittu" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:23 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1015 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:494 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:502 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:514 @@ -1637,7 +1657,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:520 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:536 msgid "Restore defaults" -msgstr "" +msgstr "Palauta oletukset" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:24 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:26 @@ -1658,11 +1678,11 @@ msgstr "" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:63 msgid "No name entered" -msgstr "" +msgstr "Nimeä ei ole kirjoitettu" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:68 msgid "No URL entered" -msgstr "" +msgstr "Verkko-osoitetta ei ole kirjoitettu" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:84 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:81 @@ -1718,11 +1738,11 @@ msgstr "ei löydy avainrengaalla" msgid "Invalid destination" msgstr "Virheellinen kohde" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:82 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:84 msgid "Log overrides updated" msgstr "Lokien ohitukset päivitetty." -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:163 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:165 msgid "Log configuration saved" msgstr "Lokiasetukset tallennettu" @@ -1770,31 +1790,32 @@ msgstr "WARN" #: ../java/src/net/i2p/router/web/ConfigLoggingHelper.java:85 #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:170 -#: ../java/src/net/i2p/router/web/HomeHelper.java:208 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:904 +#: ../java/src/net/i2p/router/web/HomeHelper.java:215 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 msgid "Remove" msgstr "Poista" #: ../java/src/net/i2p/router/web/ConfigLoggingHelper.java:122 msgid "Select a class to add" -msgstr "" +msgstr "Valitse lisättävä luokka" #. stat groups for stats.jsp #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 #: ../java/strings/Strings.java:58 msgid "Bandwidth" -msgstr "" +msgstr "Kaistanleveys" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 msgid "Home Page" -msgstr "" +msgstr "Kotisivu" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:328 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:335 msgid "Network" msgstr "Verkko" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:320 @@ -1828,6 +1849,7 @@ msgstr "Verkko" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:292 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:322 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:297 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:292 @@ -1846,15 +1868,15 @@ msgid "UI" msgstr "UI" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:179 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:486 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:186 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 #: ../java/strings/Strings.java:73 msgid "Tunnels" msgstr "Käytävät" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 msgid "Clients" -msgstr "" +msgstr "Asiakkaat" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:477 @@ -1866,15 +1888,15 @@ msgid "Logging" msgstr "Lokit" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:185 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:372 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:192 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:386 #: ../java/strings/Strings.java:68 msgid "Peers" msgstr "Vertaiset" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:497 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:230 msgid "Stats" msgstr "Tilastot" @@ -1890,7 +1912,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:491 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:479 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:641 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:593 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:560 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:511 msgid "Save changes" @@ -1902,7 +1924,7 @@ msgstr "Päivitetään IP-osoite" #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:234 msgid "Updating IPv6 setting" -msgstr "" +msgstr "Päivitetään IPv6-asetukset" #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:251 msgid "Disabling TCP completely" @@ -1929,7 +1951,7 @@ msgstr "" #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:280 #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:305 msgid "Warning - ports less than 1024 are not recommended" -msgstr "" +msgstr "Varoitus - porttinumeroja alle 1024 ei suositella" #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:284 #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:311 @@ -2004,7 +2026,7 @@ msgstr "" #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:497 msgid "Updated bandwidth limits" -msgstr "" +msgstr "Päivitetyt kaistanleveysrajat" #: ../java/src/net/i2p/router/web/ConfigNetHelper.java:46 #: ../java/src/net/i2p/router/web/ConfigNetHelper.java:49 @@ -2060,18 +2082,18 @@ msgstr "" #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:47 msgid "Bad speed value" -msgstr "" +msgstr "Väärä nopeusarvo" #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:52 msgid "Bad capacity value" -msgstr "" +msgstr "Väärä kapasiteettiarvo" #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:61 msgid "Unsupported" msgstr "Ei tuettu" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:24 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 msgid "Save changes and reseed now" msgstr "" @@ -2092,7 +2114,7 @@ msgstr "" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:37 msgid "You must enter a URL" -msgstr "" +msgstr "Sinun on kirjoitettava verkko-osoite" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:66 msgid "Reseed in progress, check summary bar for status" @@ -2119,7 +2141,16 @@ msgid_plural "Reseed successful, loaded {0} router infos from file" msgstr[0] "" msgstr[1] "" -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:149 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:99 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +msgid "Reset URL list" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:107 +msgid "URL list reset successfully" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:158 msgid "Configuration saved successfully." msgstr "" @@ -2373,7 +2404,7 @@ msgstr "" #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:129 msgid "Moved" -msgstr "" +msgstr "Siirretty" #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:136 msgid "Saved order of sections." @@ -2469,7 +2500,7 @@ msgstr "Lähtevä vaihtoehtoja" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:471 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:477 msgid "Add user" -msgstr "" +msgstr "Lisää käyttäjä" #: ../java/src/net/i2p/router/web/ConfigUIHandler.java:63 msgid "Theme change saved." @@ -2555,7 +2586,7 @@ msgstr "Italia" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:88 msgid "Japanese" -msgstr "" +msgstr "japani" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:89 msgid "Malagasy" @@ -2567,7 +2598,7 @@ msgstr "Hollanti" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:91 msgid "Norwegian Bokmaal" -msgstr "" +msgstr "Norjan Bokmaal" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:92 msgid "Polish" @@ -2580,7 +2611,7 @@ msgstr "Portugali" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:95 msgid "Romanian" -msgstr "" +msgstr "romania" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:96 msgid "Russian" @@ -2588,7 +2619,7 @@ msgstr "Venäjä" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:97 msgid "Slovak" -msgstr "" +msgstr "slovakki" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:98 msgid "Swedish" @@ -2596,7 +2627,7 @@ msgstr "Ruotsi" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:99 msgid "Turkish" -msgstr "" +msgstr "turkki" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:100 msgid "Ukrainian" @@ -2619,8 +2650,8 @@ msgid "User Name" msgstr "Käyttäjätunnus" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:183 -#: ../java/src/net/i2p/router/web/HomeHelper.java:235 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:972 +#: ../java/src/net/i2p/router/web/HomeHelper.java:242 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:998 msgid "Add" msgstr "Lisää" @@ -2631,7 +2662,7 @@ msgstr "Salasana" #: ../java/src/net/i2p/router/web/ConfigUpdateHandler.java:167 msgid "Update or check already in progress" -msgstr "" +msgstr "Päivitys tai tarkistus on jo käynnissä" #: ../java/src/net/i2p/router/web/ConfigUpdateHandler.java:190 msgid "Update available, attempting to download now" @@ -2689,7 +2720,7 @@ msgstr "" #: ../java/src/net/i2p/router/web/ConfigUpdateHandler.java:280 msgid "Updating trusted keys." -msgstr "" +msgstr "Päivitetään luotetut avaimet." #: ../java/src/net/i2p/router/web/ConfigUpdateHandler.java:292 #, java-format @@ -2747,7 +2778,7 @@ msgstr "Kriittinen virhe" #: ../java/src/net/i2p/router/web/EventLogHelper.java:41 msgid "Installed new version" -msgstr "" +msgstr "Asennettu uusi versio" #: ../java/src/net/i2p/router/web/EventLogHelper.java:42 msgid "Install failed" @@ -2768,7 +2799,7 @@ msgstr "" #: ../java/src/net/i2p/router/web/EventLogHelper.java:46 msgid "Out of memory error" -msgstr "" +msgstr "Muisti loppui-virhe" #: ../java/src/net/i2p/router/web/EventLogHelper.java:47 msgid "Reachability change" @@ -2784,11 +2815,11 @@ msgstr "" #: ../java/src/net/i2p/router/web/EventLogHelper.java:51 msgid "Started router" -msgstr "" +msgstr "Käynnistetty reititin" #: ../java/src/net/i2p/router/web/EventLogHelper.java:52 msgid "Stopped router" -msgstr "" +msgstr "Pysäytetty reititin" #: ../java/src/net/i2p/router/web/EventLogHelper.java:53 msgid "Updated router" @@ -2808,20 +2839,20 @@ msgstr "" #: ../java/src/net/i2p/router/web/EventLogHelper.java:111 msgid "Event type" -msgstr "" +msgstr "Tapahtumatyyppi" #: ../java/src/net/i2p/router/web/EventLogHelper.java:117 #: ../java/src/net/i2p/router/web/EventLogHelper.java:148 msgid "All events" -msgstr "" +msgstr "Kaikki tapahtumat" #: ../java/src/net/i2p/router/web/EventLogHelper.java:122 msgid "Filter events" -msgstr "" +msgstr "Suodata tapahtumat" #: ../java/src/net/i2p/router/web/EventLogHelper.java:170 msgid "No events found" -msgstr "" +msgstr "Tapahtumia ei löytynyt" #: ../java/src/net/i2p/router/web/EventLogHelper.java:171 #, java-format @@ -2845,19 +2876,19 @@ msgstr "Aika" #: ../java/src/net/i2p/router/web/EventLogHelper.java:182 msgid "Event" -msgstr "" +msgstr "Tapahtuma" #: ../java/src/net/i2p/router/web/EventLogHelper.java:184 msgid "Details" -msgstr "" +msgstr "Lisätiedot" -#: ../java/src/net/i2p/router/web/FormHandler.java:251 +#: ../java/src/net/i2p/router/web/FormHandler.java:253 msgid "" "Invalid form submission, probably because you used the 'back' or 'reload' " "button on your browser. Please resubmit." msgstr "" -#: ../java/src/net/i2p/router/web/FormHandler.java:253 +#: ../java/src/net/i2p/router/web/FormHandler.java:255 msgid "" "If the problem persists, verify that you have cookies enabled in your " "browser." @@ -2877,7 +2908,7 @@ msgstr "" #: ../java/src/net/i2p/router/web/GraphHelper.java:223 #: ../java/src/net/i2p/router/web/StatSummarizer.java:332 msgid "Bandwidth usage" -msgstr "" +msgstr "Kaistanleveyskäyttö" #: ../java/src/net/i2p/router/web/GraphHelper.java:238 #, java-format @@ -2886,27 +2917,27 @@ msgstr "" #: ../java/src/net/i2p/router/web/GraphHelper.java:253 msgid "Larger" -msgstr "" +msgstr "Suurempi" #: ../java/src/net/i2p/router/web/GraphHelper.java:259 msgid "Smaller" -msgstr "" +msgstr "Pienempi" #: ../java/src/net/i2p/router/web/GraphHelper.java:265 msgid "Taller" -msgstr "" +msgstr "Kookkaampi" #: ../java/src/net/i2p/router/web/GraphHelper.java:271 msgid "Shorter" -msgstr "" +msgstr "Lyhyempi" #: ../java/src/net/i2p/router/web/GraphHelper.java:277 msgid "Wider" -msgstr "" +msgstr "Leveämpi" #: ../java/src/net/i2p/router/web/GraphHelper.java:283 msgid "Narrower" -msgstr "" +msgstr "Kapeampi" #: ../java/src/net/i2p/router/web/GraphHelper.java:290 msgid "Larger interval" @@ -2936,7 +2967,7 @@ msgstr "" #: ../java/src/net/i2p/router/web/GraphHelper.java:324 msgid "All times are UTC." -msgstr "" +msgstr "Kaikki ajat ovat UTC-aikoina." #: ../java/src/net/i2p/router/web/GraphHelper.java:356 msgid "Configure Graph Display" @@ -2944,11 +2975,11 @@ msgstr "" #: ../java/src/net/i2p/router/web/GraphHelper.java:356 msgid "Select Stats" -msgstr "" +msgstr "Valitse tilastot" #: ../java/src/net/i2p/router/web/GraphHelper.java:360 msgid "Periods" -msgstr "" +msgstr "Ajanjaksot" #: ../java/src/net/i2p/router/web/GraphHelper.java:362 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:517 @@ -2974,7 +3005,7 @@ msgstr "pikseliä" #: ../java/src/net/i2p/router/web/GraphHelper.java:366 msgid "Refresh delay" -msgstr "" +msgstr "Päivitysviive" #: ../java/src/net/i2p/router/web/GraphHelper.java:381 msgid "Store graph data on disk?" @@ -2988,156 +3019,169 @@ msgstr "" msgid "Graph settings saved" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:229 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:236 msgid "Addressbook" msgstr "Osoitekirja" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:227 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:234 msgid "Manage your I2P hosts file here (I2P domain name resolution)" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 msgid "Configure Bandwidth" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:330 msgid "I2P Bandwidth Configuration" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Configure Language" -msgstr "" +msgstr "Aseta kieli" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Console Language Selection" -msgstr "" +msgstr "Pääteikkunakielivalinta" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 msgid "Customize Home Page" -msgstr "" +msgstr "Oma kotisivu" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:346 msgid "I2P Home Page Configuration" -msgstr "" +msgstr "I2P-kotisivuasetus" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:139 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:146 msgid "Anonymous webmail client" -msgstr "" +msgstr "Anonyymi webbipostiasiakas" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:141 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:148 msgid "Email" msgstr "Sähköposti" -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:251 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 msgid "I2P Router Help" msgstr "I2P Reitittimen ohje" -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:161 msgid "Router Console" msgstr "Reitittimen ohjauspaneeli" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:145 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:152 msgid "Built-in anonymous BitTorrent Client" msgstr "Sisäänrakennettu anonyymi BitTorrent-asiakasohjelma" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:147 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:154 msgid "Torrents" msgstr "Torrentit" -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:155 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:162 msgid "Local web server" msgstr "Paikallinen web-palvelin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:41 +#: ../java/src/net/i2p/router/web/HomeHelper.java:43 msgid "The Anoncoin project" -msgstr "" +msgstr "Anoncoin-projekti" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug Reports" -msgstr "" +msgstr "Vikailmoitukset" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug tracker" -msgstr "" +msgstr "Vikaseuraaja" #. "colombo-bt.i2p" + S + _x("The Italian Bittorrent Resource") + S + "http #. ://colombo-bt.i2p/" + S + I + "colomboicon.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Dev Forum" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Development forum" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Bittorrent tracker" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 msgid "diftracker" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:46 +#: ../java/src/net/i2p/router/web/HomeHelper.java:48 msgid "I2P Applications" +msgstr "I2P-sovellukset" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +msgid "Anonymous cryptocurrency exchange" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "FAQ" msgstr "UKK" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "Frequently Asked Questions" msgstr "Usein Kysytyt Kysymykset" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Community forum" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Forum" msgstr "Foorumi" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "" "A public anonymous Git hosting site - supports pulling via Git and HTTP and " "pushing via SSH" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "Anonymous Git Hosting" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:50 +#: ../java/src/net/i2p/router/web/HomeHelper.java:53 msgid "HiddenGate" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "Anonymous wiki - share the knowledge" +msgstr "" + +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "I2P Wiki" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Microblog" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Your premier microblogging service on I2P" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 msgid "Javadocs" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical documentation" msgstr "" @@ -3145,97 +3189,104 @@ msgstr "" #. "http://jisko.i2p/" + S + I + "jisko_console_icon.png" + S + #. _x("Key Server") + S + _x("OpenPGP Keyserver") + S + "http://keys.i2p/" + S #. + I + "education.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +#: ../java/src/net/i2p/router/web/HomeHelper.java:60 msgid "Debian and Tahoe-LAFS repositories" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free Web Hosting" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free eepsite hosting with PHP and MySQL" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "I2P Pastebin" -msgstr "" +msgstr "I2P Pastebin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "Pastebin" msgstr "Pastebin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:58 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 msgid "I2P News" msgstr "I2P-uutiset" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +msgid "Planet I2P" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Add-on directory" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Plugins" msgstr "Lisäosat" -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Postman's Tracker" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "I2P home page" msgstr "I2P:n kotisivu" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "Project Website" +msgstr "Projektiwebbisivu" + +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:68 +msgid "Russian News Feed" msgstr "" #. "Salt" + S + "salt.i2p" + S + "http://salt.i2p/" + S + I + #. "salt_console.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +#: ../java/src/net/i2p/router/web/HomeHelper.java:70 msgid "I2P Network Statistics" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical Docs" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:65 +#: ../java/src/net/i2p/router/web/HomeHelper.java:72 msgid "Trac Wiki" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:66 -msgid "Ugha's Wiki" -msgstr "" - -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Seedless and the Robert BitTorrent applications" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#. _x("Ugha's Wiki") + S + S + "http://ugha.i2p/" + S + I + +#. "billiard_marker.png" + S + +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Sponge's main site" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:108 +#: ../java/src/net/i2p/router/web/HomeHelper.java:115 msgid "The HTTP proxy is not up" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:110 +#: ../java/src/net/i2p/router/web/HomeHelper.java:117 #, java-format msgid "Your browser is not properly configured to use the HTTP proxy at {0}" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:210 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:906 +#: ../java/src/net/i2p/router/web/HomeHelper.java:217 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:932 msgid "Name" msgstr "Nimi" -#: ../java/src/net/i2p/router/web/HomeHelper.java:212 +#: ../java/src/net/i2p/router/web/HomeHelper.java:219 msgid "URL" -msgstr "URL" +msgstr "Verkko-osoite" #: ../java/src/net/i2p/router/web/JobQueueHelper.java:50 msgid "I2P Job Queue" -msgstr "" +msgstr "I2P-työjono" #: ../java/src/net/i2p/router/web/JobQueueHelper.java:51 msgid "Job runners" @@ -3284,11 +3335,11 @@ msgstr "Työ" #: ../java/src/net/i2p/router/web/JobQueueHelper.java:124 msgid "Queued" -msgstr "" +msgstr "Laitettu jonoon" #: ../java/src/net/i2p/router/web/JobQueueHelper.java:141 msgid "Runs" -msgstr "" +msgstr "Suoritetaan" #: ../java/src/net/i2p/router/web/JobQueueHelper.java:142 msgid "Dropped" @@ -3297,21 +3348,21 @@ msgstr "" #: ../java/src/net/i2p/router/web/JobQueueHelper.java:143 #: ../java/src/net/i2p/router/web/JobQueueHelper.java:145 msgid "Avg" -msgstr "" +msgstr "Keskimäärin" #: ../java/src/net/i2p/router/web/JobQueueHelper.java:144 #: ../java/src/net/i2p/router/web/JobQueueHelper.java:146 msgid "Max" -msgstr "" +msgstr "Enintään" #: ../java/src/net/i2p/router/web/JobQueueHelper.java:144 #: ../java/src/net/i2p/router/web/JobQueueHelper.java:146 msgid "Min" -msgstr "" +msgstr "Vähintään" #: ../java/src/net/i2p/router/web/JobQueueHelper.java:145 msgid "Pending" -msgstr "" +msgstr "Odotetaan" #: ../java/src/net/i2p/router/web/JobQueueHelper.java:197 #: ../java/src/net/i2p/router/web/NetDbHelper.java:16 @@ -3357,217 +3408,226 @@ msgstr "" msgid "LeaseSets" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:105 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:106 #: ../java/strings/Strings.java:69 msgid "Router" msgstr "Reititin" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:112 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:113 msgid "not found in network database" msgstr "ei löytynyt verkkotietokannasta" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:156 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 msgid "LeaseSet" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:158 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:163 msgid "Local" msgstr "Paikallinen" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:160 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:165 msgid "Unpublished" msgstr "Julkaisematon" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:176 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:166 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:181 msgid "Destination" msgstr "Kohde" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:173 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:185 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:178 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 msgid "Add to local addressbook" msgstr "Lisää paikalliseen osoitekirjaan" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:217 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:195 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:222 #, java-format msgid "Expires in {0}" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:192 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:219 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:197 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:224 #, java-format msgid "Expired {0} ago" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Gateway" -msgstr "" +msgstr "Yhdyskäytävä" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 msgid "Lease" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:213 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:218 msgid "Tunnel" msgstr "Käytävä" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:280 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:286 msgid "Not initialized" msgstr "Ei alustettu" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:330 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:342 msgid "Network Database Router Statistics" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Count" msgstr "Lukumäärä" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 msgid "Transports" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Country" msgstr "Maa" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:429 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:453 msgid "Our info" msgstr "Meidän tieto" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:431 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:455 msgid "Peer info for" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:433 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:457 msgid "Full entry" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 #: ../java/src/net/i2p/router/web/SummaryHelper.java:152 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:726 msgid "Hidden" -msgstr "" +msgstr "Piilotettu" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 msgid "Updated" msgstr "Päivitetty" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:441 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:444 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:465 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:468 #, java-format msgid "{0} ago" msgstr "{0} sitten" #. shouldnt happen -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:443 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:447 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:467 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:471 msgid "Published" msgstr "Julkaistu" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:449 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 msgid "Signing Key" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:451 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:475 msgid "Address(es)" msgstr "Osoitteet" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:463 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:487 msgid "cost" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "Hidden or starting up" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU" msgstr "SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU with introducers" msgstr "SSU ja esittelijät" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP" msgstr "NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU" msgstr "NTCP ja SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU with introducers" msgstr "NTCP, SSU ja esittelijät" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 Only SSU, introducers" msgstr "IPv6 vain SSU, esittelijät" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU" msgstr "IPv6 SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU, introducers" msgstr "IPv6 SSU, esittelijät" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP" msgstr "IPv6 NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU" msgstr "IPv6 NTCP, SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU, introducers" msgstr "IPv6 NTCP, SSU, esittelijät" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 Only NTCP, SSU, introducers" msgstr "IPv6 vain NTCP, SSU, esittelijät" -#: ../java/src/net/i2p/router/web/NewsHelper.java:295 +#: ../java/src/net/i2p/router/web/NewsFeedHelper.java:80 +#, java-format +msgid "by {0}" +msgstr "" + +#: ../java/src/net/i2p/router/web/NewsHelper.java:292 #, java-format msgid "News last updated {0} ago." msgstr "Uutiset viimeksi päivitetty {0} sitten." -#: ../java/src/net/i2p/router/web/NewsHelper.java:301 +#: ../java/src/net/i2p/router/web/NewsHelper.java:298 #, java-format msgid "News last checked {0} ago." msgstr "Uutiset viimeksi tarkistettu {0} sitten." -#: ../java/src/net/i2p/router/web/NewsHelper.java:310 +#: ../java/src/net/i2p/router/web/NewsHelper.java:307 msgid "Hide news" msgstr "Piilota uutiset" -#: ../java/src/net/i2p/router/web/NewsHelper.java:313 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:647 +#: ../java/src/net/i2p/router/web/NewsHelper.java:310 msgid "Show news" msgstr "Näytä uutiset" +#: ../java/src/net/i2p/router/web/NewsHelper.java:314 +msgid "Show all news" +msgstr "Näytä kaikki uutiset" + #: ../java/src/net/i2p/router/web/PluginStarter.java:140 msgid "Checking for plugin updates" msgstr "" #: ../java/src/net/i2p/router/web/PluginStarter.java:155 +#: ../java/src/net/i2p/router/web/PluginStarter.java:161 msgid "Plugin update check failed" msgstr "" -#: ../java/src/net/i2p/router/web/PluginStarter.java:193 +#: ../java/src/net/i2p/router/web/PluginStarter.java:199 #, java-format msgid "1 plugin updated" msgid_plural "{0} plugins updated" msgstr[0] "" msgstr[1] "" -#: ../java/src/net/i2p/router/web/PluginStarter.java:195 +#: ../java/src/net/i2p/router/web/PluginStarter.java:201 msgid "Plugin update check complete" msgstr "" @@ -3633,7 +3693,7 @@ msgid "Failing" msgstr "" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:135 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:411 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:425 msgid "Integrated" msgstr "" @@ -3817,7 +3877,7 @@ msgstr "" #: ../java/src/net/i2p/router/web/StatsGenerator.java:116 msgid "frequency" -msgstr "" +msgstr "taajuus" #: ../java/src/net/i2p/router/web/StatsGenerator.java:120 msgid "Rolling average events per period" @@ -3850,12 +3910,12 @@ msgstr "" #, java-format msgid "1 event" msgid_plural "{0} events" -msgstr[0] "" -msgstr[1] "" +msgstr[0] "1 tapahtuma" +msgstr[1] "{0} tapahtumaa" #: ../java/src/net/i2p/router/web/StatsGenerator.java:168 msgid "rate" -msgstr "" +msgstr "taajuus" #: ../java/src/net/i2p/router/web/StatsGenerator.java:170 msgid "Average" @@ -3902,279 +3962,289 @@ msgstr "" msgid "Lifetime average value" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:121 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:128 msgid "I2P Router Help & FAQ" msgstr "I2P Reitittimen ohje & UKK" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:123 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:130 msgid "Help & FAQ" msgstr "Ohje & UKK" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:131 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:138 msgid "" "Configure startup of clients and webapps (services); manually start dormant " "services" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:133 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:140 msgid "I2P Services" msgstr "I2P Palvelut" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:169 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:176 msgid "Configure I2P Router" msgstr "I2P Reitittimen asetukset" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:171 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:178 msgid "I2P Internals" msgstr "I2P sisälmykset" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:177 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:484 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:184 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:498 msgid "View existing tunnels and tunnel build status" msgstr "Näytä nykyiset käytävät ja käytävien rakentamistilanne" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:183 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:370 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:190 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:384 msgid "Show all current peer connections" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:189 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:196 msgid "Show recent peer performance profiles" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:191 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:198 msgid "Profiles" msgstr "Profiilit" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:195 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:202 msgid "Show list of all known I2P routers" msgstr "Listaa kaikki tunnetut I2P reitittimet" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:197 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:204 msgid "NetDB" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:201 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:208 msgid "Health Report" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:203 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:210 msgid "Logs" msgstr "Lokit" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:214 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 msgid "Graph router performance" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:216 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 msgid "Graphs" msgstr "Kuvaajat" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:228 msgid "Textual router performance statistics" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:233 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:240 #: ../java/src/net/i2p/router/web/SummaryHelper.java:438 msgid "Local Tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:235 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:242 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:164 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:337 msgid "Hidden Services Manager" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:253 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:260 msgid "General" msgstr "Yleinen" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 msgid "" "Your Local Identity is your unique I2P router identity, similar to an ip " "address but tailored to I2P. " msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:259 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:266 msgid "Never disclose this to anyone, as it can reveal your real world ip." msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:261 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:268 msgid "Local Identity" msgstr "Paikallinen identiteetti" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:272 msgid "Your unique I2P router identity is" msgstr "Tämän I2P reitittimen ainutlaatuinen identiteetti on" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:269 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:276 msgid "never reveal it to anyone" msgstr "älä koskaan paljasta sitä kenellekään" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:271 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 msgid "show" msgstr "näytä" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:275 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:301 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:282 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:308 msgid "The version of the I2P software we are running" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:292 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:318 msgid "How long we've been running for this session" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:326 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:333 msgid "" "Help with configuring your firewall and router for optimal I2P performance" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:337 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:344 msgid "See more information on the wiki" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:339 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:346 msgid "Warning: ECDSA is not available. Update your Java or OS" msgstr "" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:351 -msgid "Configure I2P Updates" +#, java-format +msgid "Warning: Java version {0} is no longer supported by I2P." msgstr "" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 -msgid "I2P Update" +#, java-format +msgid "Update Java to version {0} or higher to receive I2P updates." +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:365 +msgid "Configure I2P Updates" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:378 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:367 +msgid "I2P Update" +msgstr "I2P-päivitys" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:392 msgid "Peers we've been talking to in the last few minutes/last hour" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:381 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:395 msgid "Active" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:390 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:404 msgid "The number of peers available for building client tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:393 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:407 msgid "Fast" msgstr "Nopea" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:399 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:413 msgid "The number of peers available for building exploratory tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:402 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:416 msgid "High capacity" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:408 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:422 msgid "The number of peers available for network database inquiries" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:417 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:431 msgid "The total number of peers in our network database" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:420 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:434 msgid "Known" msgstr "Tuttu" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:440 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:454 msgid "Configure router bandwidth allocation" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:442 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:456 msgid "Bandwidth in/out" msgstr "Kaistaa sisään/ulos" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:462 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:476 msgid "Total" msgstr "Yhteensä" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:469 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:483 msgid "Used" msgstr "Käytetty" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:491 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:505 msgid "" "Used for building and testing tunnels, and communicating with floodfill " "peers" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:494 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:508 msgid "Exploratory" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:514 msgid "Tunnels we are using to provide or access services on the network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:509 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:523 msgid "" "Tunnels we are participating in, directly contributing bandwidth to the " "network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:512 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:526 msgid "Participating" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:518 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:532 msgid "" "The ratio of tunnel hops we provide to tunnel hops we use - a value greater " "than 1.00 indicates a positive contribution to the network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:521 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:535 msgid "Share ratio" msgstr "Jakosuhde" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:534 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:548 msgid "What's in the router's job queue?" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:536 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 msgid "Congestion" msgstr "Tungos" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:541 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:555 msgid "Indicates router performance" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:544 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:558 msgid "Job lag" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:564 msgid "Indicates how quickly outbound messages to other I2P routers are sent" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:553 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:567 msgid "Message delay" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:560 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:574 msgid "Round trip time for a tunnel test" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:563 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:577 msgid "Tunnel lag" msgstr "Käytävän viive" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:570 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:584 msgid "Queued requests from other routers to participate in tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:573 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:587 msgid "Backlog" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:608 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:623 msgid "News & Updates" -msgstr "" +msgstr "Uutiset & Päivitykset" #: ../java/src/net/i2p/router/web/SummaryHelper.java:143 msgid "ERR-Client Manager I2CP Error - check logs" @@ -4187,7 +4257,7 @@ msgstr "VIRHE - aikavääristymää {0}" #: ../java/src/net/i2p/router/web/SummaryHelper.java:170 msgid "ERR-Unresolved TCP Address" -msgstr "" +msgstr "VIRHE - Ratkaisematon TCP-osoite" #: ../java/src/net/i2p/router/web/SummaryHelper.java:174 msgid "ERR-Private TCP Address" @@ -4233,7 +4303,7 @@ msgstr "" #: ../java/src/net/i2p/router/web/SummaryHelper.java:450 msgid "Hidden Service" -msgstr "" +msgstr "Piilotettu palvelu" #: ../java/src/net/i2p/router/web/SummaryHelper.java:454 msgid "Show tunnels" @@ -4285,17 +4355,21 @@ msgid "Click Shutdown and restart to install" msgstr "" #: ../java/src/net/i2p/router/web/SummaryHelper.java:720 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:735 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:737 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:749 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:761 #, java-format msgid "Version {0}" msgstr "Versio {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:734 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:736 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:748 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:760 msgid "Update available" -msgstr "" +msgstr "Päivitys saatavilla" #. Note to translators: parameter is a version, e.g. "0.8.4" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:758 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:784 #, java-format msgid "Download {0} Update" msgstr "" @@ -4304,7 +4378,7 @@ msgstr "" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:766 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:792 #, java-format msgid "Download Signed<br>Development Update<br>{0}" msgstr "" @@ -4313,56 +4387,56 @@ msgstr "" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:774 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 #, java-format msgid "Download Unsigned<br>Update {0}" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:798 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:824 msgid "Help with firewall configuration" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:826 msgid "Check network connection and NAT/firewall" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:819 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:845 msgid "Reseed" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:908 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:934 msgid "Order" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:925 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:951 msgid "Top" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:956 msgid "Move to top" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:940 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:966 msgid "Move up" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:948 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:974 msgid "Down" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:953 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:979 msgid "Move down" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:958 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:984 msgid "Bottom" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:963 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 msgid "Move to bottom" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:975 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1001 msgid "Select a section to add" msgstr "" @@ -4409,100 +4483,100 @@ msgstr "" msgid "dead" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:70 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:69 msgid "Participating tunnels" msgstr "Osallistuu käytäviin" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "Receive on" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Expiration" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Send on" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Rate" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Role" -msgstr "" +msgstr "Rooli" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Usage" -msgstr "" +msgstr "Käyttö" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:111 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:113 msgid "grace period" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:121 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 msgid "Outbound Endpoint" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 msgid "Inbound Gateway" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:127 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:174 msgid "Participant" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:130 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:133 #, java-format msgid "Limited display to the {0} tunnels with the highest usage" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:131 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:135 msgid "Inactive participating tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:132 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:224 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:138 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:232 msgid "Lifetime bandwidth usage" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Expiry" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:165 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 msgid "Participants" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:177 msgid "Endpoint" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 #: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "Build in progress" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 msgid "inbound" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "outbound" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:223 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:231 msgid "No tunnels; waiting for the grace period to end." msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:225 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:233 msgid "in" msgstr "sisään" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:234 msgid "out" msgstr "ulos" @@ -4522,7 +4596,7 @@ msgstr "i2pkäytävä" #: ../java/strings/Strings.java:15 msgid "susimail" -msgstr "" +msgstr "susimail" #: ../java/strings/Strings.java:16 msgid "susidns" @@ -4541,7 +4615,7 @@ msgstr "" #: ../java/strings/Strings.java:23 msgid "SAM application bridge" -msgstr "" +msgstr "SAM-sovellussilta" #: ../java/strings/Strings.java:24 msgid "Application tunnels" @@ -4590,7 +4664,7 @@ msgstr "HTTP Proxy" #. older names for pre-0.7.4 installs #: ../java/strings/Strings.java:43 msgid "eepProxy" -msgstr "" +msgstr "eepProxy" #: ../java/strings/Strings.java:44 msgid "ircProxy" @@ -4625,7 +4699,7 @@ msgstr "keskiyö" #: ../java/strings/Strings.java:59 msgid "BandwidthLimiter" -msgstr "" +msgstr "Kaistaleveysrajoittaja" #: ../java/strings/Strings.java:60 msgid "ClientMessages" @@ -4639,10 +4713,6 @@ msgstr "Salaus" msgid "i2cp" msgstr "i2cp" -#: ../java/strings/Strings.java:63 -msgid "I2PTunnel" -msgstr "I2PKäytävä" - #: ../java/strings/Strings.java:64 msgid "InNetPool" msgstr "" @@ -4689,10 +4759,12 @@ msgstr "avain" msgid "port" msgstr "portti" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 -msgid "configure bandwidth" -msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:146 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:318 +msgid "Certificates" +msgstr "Varmenteet" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:153 @@ -4726,6 +4798,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:149 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:155 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:154 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:149 @@ -4737,10 +4810,11 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/viewprofile_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/webmail_jsp.java:167 msgid "Router is down" -msgstr "" +msgstr "Reititin ei ole käynnissä" #. We have intl defined when this is included, but not when compiled #. standalone. +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:333 @@ -4773,6 +4847,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:305 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:310 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:305 @@ -4788,6 +4863,7 @@ msgid "Refresh (s)" msgstr "" #. ditto +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:337 @@ -4820,6 +4896,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:309 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:339 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:314 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:309 @@ -4834,6 +4911,10 @@ msgstr "" msgid "Enable" msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 +msgid "configure bandwidth" +msgstr "" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:437 msgid "Bandwidth limiter" msgstr "" @@ -4860,7 +4941,7 @@ msgstr "Jaa" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:493 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:475 msgid "NOTE" -msgstr "" +msgstr "HUOMIO" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:481 #, java-format @@ -4910,7 +4991,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:501 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:477 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:639 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:587 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:558 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:509 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:461 @@ -4947,7 +5028,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:457 msgid "Automatic" -msgstr "" +msgstr "Automaattinen" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:463 msgid "Force On" @@ -5043,7 +5124,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:560 msgid "Username" -msgstr "" +msgstr "Käyttäjätunnus" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:564 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:480 @@ -5061,7 +5142,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:578 msgid "WebApp Configuration" -msgstr "" +msgstr "Webbisovellusasetukset" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:580 msgid "" @@ -5183,7 +5264,7 @@ msgstr "Kohteen nimi, tiiviste tai koko avain" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:499 msgid "Encryption Key" -msgstr "" +msgstr "Salausavain" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:148 msgid "config logging" @@ -5199,7 +5280,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:439 msgid "Log file" -msgstr "" +msgstr "Lokitiedosto" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:441 #, java-format @@ -5212,7 +5293,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:447 msgid "Log record format" -msgstr "" +msgstr "Lokitietuemuoto" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:451 msgid "" @@ -5330,11 +5411,11 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:530 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:560 msgid "Experimental" -msgstr "" +msgstr "Kokeellinen" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:532 msgid "IPv4 Configuration" -msgstr "" +msgstr "IPv4-asetukset" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:536 msgid "Disable inbound (Firewalled by Carrier-grade NAT or DS-Lite)" @@ -5342,7 +5423,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:538 msgid "IPv6 Configuration" -msgstr "" +msgstr "IPv6-asetukset" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:542 msgid "Disable IPv6" @@ -5732,7 +5813,7 @@ msgstr "I2P ei toimi hyvin tällaisen palomuurin takaa. Luultavasti et voi ottaa msgid "" "ERR - UDP Port In Use - Set i2np.udp.internalPort=xxxx in advanced config " "and restart" -msgstr "VIRHE - UDP portti käytössä. - Asete i2np.udp.internalPort=xxxx erikoisasetuksissa ja uudelleenkäynnistä." +msgstr "VIRHE - UDP portti käytössä. - Aseta i2np.udp.internalPort=xxxx erikoisasetuksissa ja uudelleenkäynnistä" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:780 msgid "" @@ -5943,51 +6024,51 @@ msgstr "" msgid "Reseed URLs" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:541 msgid "Enable HTTP Proxy?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:543 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:545 msgid "HTTP Proxy Host" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:547 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:549 msgid "HTTP Proxy Port" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:551 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:553 msgid "Use HTTP Proxy Authorization?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:555 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:557 msgid "HTTP Proxy Username" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:559 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:561 msgid "HTTP Proxy Password" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:563 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:565 msgid "Enable HTTPS Proxy?" -msgstr "" +msgstr "Ota käyttöön HTTPS-välityspalvelin?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:567 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:569 msgid "HTTPS Proxy Host" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:571 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:573 msgid "HTTPS Proxy Port" -msgstr "" +msgstr "HTTPS-välityspalvelinportti" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:575 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:577 msgid "Use HTTPS Proxy Authorization?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:579 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:581 msgid "HTTPS Proxy Username" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:583 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:585 msgid "HTTPS Proxy Password" msgstr "" @@ -6298,11 +6379,11 @@ msgstr "Uutiset & I2P Päivitykset" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:449 msgid "Check for news updates" -msgstr "" +msgstr "Tarkista uutispäivitykset" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:451 msgid "News Updates" -msgstr "" +msgstr "Uutispäivityset" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:459 msgid "Update In Progress" @@ -6546,6 +6627,14 @@ msgstr "" msgid "I2P Network Database" msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:148 +msgid "News" +msgstr "" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:344 +msgid "Latest News" +msgstr "Viimeisimmät uutiset" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:152 msgid "WebApp Not Found" msgstr "Web -sovellusta ei löytynyt" @@ -6628,4 +6717,4 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/webmail_jsp.java:336 msgid "I2P Webmail" -msgstr "" +msgstr "I2P-webbiposti" diff --git a/apps/routerconsole/locale/messages_fr.po b/apps/routerconsole/locale/messages_fr.po index 72a77b54aa2bccf7994892e7ee21733a26792037..b7f46967057f1bd863c473f3e90712ed4823608e 100644 --- a/apps/routerconsole/locale/messages_fr.po +++ b/apps/routerconsole/locale/messages_fr.po @@ -24,8 +24,8 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:05+0000\n" -"PO-Revision-Date: 2015-08-14 04:29+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-14 23:29+0000\n" "Last-Translator: Towinet\n" "Language-Team: French (http://www.transifex.com/otf/I2P/language/fr/)\n" "MIME-Version: 1.0\n" @@ -146,19 +146,22 @@ msgid "IPs Permanently Banned" msgstr "Adresses IP bannies de façon permanente" #: ../../../router/java/src/net/i2p/router/Blocklist.java:959 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "From" msgstr "De" #: ../../../router/java/src/net/i2p/router/Blocklist.java:961 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "To" msgstr "Vers" #: ../../../router/java/src/net/i2p/router/Blocklist.java:997 #: ../java/src/net/i2p/router/web/BanlistRenderer.java:48 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:652 +#: ../java/src/net/i2p/router/web/CertHelper.java:77 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:147 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:662 #: ../java/src/net/i2p/router/web/SummaryHelper.java:478 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:137 msgid "none" msgstr "aucun" @@ -296,43 +299,43 @@ msgstr "Refuse les tunnels: arrêt en cours" msgid "Rejecting tunnels" msgstr "Refus des tunnels" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:212 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:210 #, java-format msgid "Reseeding: got router info from file ({0} successful, {1} errors)." msgstr "Ré-essaimage : ai obtenu des infos de routeurs depuis fichier ({0} fructueux, {1} erreurs)." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:284 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:282 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:28 msgid "Reseeding" msgstr "Réamorçage" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:307 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:305 #, java-format msgid "Reseed fetched only 1 router." msgid_plural "Reseed fetched only {0} routers." msgstr[0] "Le réamorçage n''a trouvé qu''un seul routeur." msgstr[1] "Le réamorçage n''a trouvé que {0} routeurs." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:314 msgid "Reseed failed." msgstr "Échec de réamorçage." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:317 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:315 #, java-format msgid "See {0} for help." msgstr "Voir {0} pour l'aide." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:318 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 msgid "reseed configuration page" msgstr "page de configuration du réamorçage" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:566 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:697 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:564 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:695 msgid "Reseeding: fetching seed URL." msgstr "Réamorçage: collecte des URL sources." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:623 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:733 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:621 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:731 #, java-format msgid "" "Reseeding: fetching router info from seed URL ({0} successful, {1} errors)." @@ -397,12 +400,12 @@ msgid "Unreachable on any transport" msgstr "Inaccessible sur tous transport" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:674 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:566 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:577 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:604 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:622 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1348 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2469 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2474 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:92 msgid "Status" msgstr "État" @@ -417,12 +420,12 @@ msgid "{0} is used for outbound connections only" msgstr "{0} est utilisé seulement pour les connexions sortantes" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:711 -#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:283 +#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:295 msgid "UPnP is not enabled" msgstr "UPnP n'est pas activé" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:720 -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:167 msgid "Help" msgstr "Aide" @@ -446,7 +449,7 @@ msgstr "Définitions" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:726 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1352 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2473 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:24 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:33 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:35 @@ -461,7 +464,7 @@ msgstr "Le pair distant, identifié par son hachage routeur" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:727 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1353 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Dir" msgstr "Sens" @@ -488,14 +491,14 @@ msgstr "Temps écoulé depuis la dernière réception/émission d'un paquet " #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:735 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1355 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2479 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 msgid "Idle" msgstr "En attente" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:736 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1356 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "In/Out" msgstr "Entrant/Sortant" @@ -509,14 +512,14 @@ msgstr "Depuis combien de temps cette connexion est établie" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:737 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1357 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:935 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2494 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:961 msgid "Up" msgstr "En marche" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:738 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1358 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2491 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2496 msgid "Skew" msgstr "Dérive" @@ -565,7 +568,7 @@ msgstr "Taille actuelle maximum de paquet envoyé / taille maximum estimée de p #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:748 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1359 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2508 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 msgid "TX" msgstr "TX" @@ -575,7 +578,7 @@ msgstr "Nombre de paquets envoyés au pair" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:749 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1360 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2510 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 msgid "RX" msgstr "RX" @@ -584,7 +587,7 @@ msgid "The total number of packets received from the peer" msgstr "Nombre de paquets reçus du pair" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:750 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2518 msgid "Dup TX" msgstr "TX dupl." @@ -593,7 +596,7 @@ msgid "The total number of packets retransmitted to the peer" msgstr "Nombre de paquets retransmis au pair" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:751 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2520 msgid "Dup RX" msgstr "RX dupl." @@ -601,104 +604,104 @@ msgstr "RX dupl." msgid "The total number of duplicate packets received from the peer" msgstr "Nombre de paquets en double reçus du pair" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:560 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:561 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 msgid "Service" msgstr "Service" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:564 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 msgid "WAN Common Interface Configuration" msgstr "Configuration de l'interface commune Internet" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:567 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:587 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:614 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:568 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:588 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:615 msgid "Type" msgstr "Type" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:569 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:589 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:570 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:590 msgid "Upstream" msgstr "Montant" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:571 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:591 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:572 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:592 msgid "Downstream" msgstr "Descendant" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:575 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 msgid "WAN PPP Connection" msgstr "Connexion Internet PPP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:583 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:610 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:288 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:314 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:584 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:611 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:295 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:321 msgid "Uptime" msgstr "Lancé depuis" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:593 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:616 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:594 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:617 msgid "External IP" msgstr "Adresse IP externe" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:597 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 msgid "Layer 3 Forwarding" msgstr "Transfert niveau 3" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:599 msgid "Default Connection Service" msgstr "Service de connexion par défaut" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:602 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 msgid "WAN IP Connection" msgstr "Connexion IP Internet" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:620 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 msgid "WAN Ethernet Link Configuration" msgstr "Configuration du lien Ethernet Internet" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:641 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:642 msgid "Found Device" msgstr "Appareil détecté" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:643 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:644 msgid "Subdevice" msgstr "Service" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:664 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:665 msgid "UPnP Status" msgstr "État d'UPnP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:668 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:669 msgid "Disabled UPnP Devices" msgstr "Dispositifs UPNP désactivés" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:682 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:683 msgid "" "UPnP has been disabled; Do you have more than one UPnP Internet Gateway " "Device on your LAN ?" msgstr "UPnP a été désactivé; peut-être avez-vous plus d'une passerelle Internet avec UPnP activé sur votre réseau local." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:685 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:686 msgid "UPnP has not found any UPnP-aware, compatible device on your LAN." msgstr "UPnP n'a pas trouvé de passerelle compatible sur votre réseau local." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:693 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:694 #, java-format msgid "The current external IP address reported by UPnP is {0}" msgstr "Adresse IP externe détectée par UPnP : {0}" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:695 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:696 msgid "The current external IP address is not available." msgstr "L'adresse IP externe n'est pas disponible." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:699 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:700 #, java-format msgid "UPnP reports the maximum downstream bit rate is {0}bits/sec" msgstr "UPnP indique un débit descendant maximum de {0}b/s" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:701 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:702 #, java-format msgid "UPnP reports the maximum upstream bit rate is {0}bits/sec" msgstr "UPnP indique un débit montant maximum de {0}b/s" @@ -707,12 +710,12 @@ msgstr "UPnP indique un débit montant maximum de {0}b/s" #. {1,number,#####} prevents 12345 from being output as 12,345 in the English #. locale. #. If you want the digit separator in your locale, translate as {1}. -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:709 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:710 #, java-format msgid "{0} port {1,number,#####} was successfully forwarded by UPnP." msgstr "Le port {0} {1,number,#####} est correctement transféré par UPnP." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:711 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:712 #, java-format msgid "{0} port {1,number,#####} was not forwarded by UPnP." msgstr "Le port {0} {1,number,#####} n'est pas transféré par UPnP." @@ -728,17 +731,17 @@ msgid "NTCP connections" msgstr "Connexions NTCP" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1345 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2466 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2471 msgid "Limit" msgstr "Limite" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1346 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2467 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2472 msgid "Timeout" msgstr "Échéance" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1354 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2483 msgid "IPv6" msgstr "IPv6" @@ -751,126 +754,126 @@ msgid "Backlogged?" msgstr "Réinscrit?" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1375 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2532 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2537 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Inbound" msgstr "Entrant" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1377 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2534 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2539 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Outbound" msgstr "Sortant" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1432 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2699 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2704 #, java-format msgid "{0} peer" msgid_plural "{0} peers" msgstr[0] "{0} pair" msgstr[1] "{0} pairs" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2465 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2470 msgid "UDP connections" msgstr "Connexions UDP" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2475 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 msgid "Sort by peer hash" msgstr "Tri par hachage de pair" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Direction/Introduction" msgstr "Direction/Introduction" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 msgid "Sort by idle inbound" msgstr "Tri par entrant inactif" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 msgid "Sort by idle outbound" msgstr "Tri par sortant inactif" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 msgid "Sort by inbound rate" msgstr "Tri par taux entrant" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 msgid "Sort by outbound rate" msgstr "Tri par taux sortant" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 msgid "Sort by connection uptime" msgstr "Tri par durée de connexion" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 msgid "Sort by clock skew" msgstr "Tri par décalage d'horloge" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 msgid "Sort by congestion window" msgstr "Tri par fenêtre de congestion" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2502 msgid "Sort by slow start threshold" msgstr "Tri par seuil de démarrage lent" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2505 msgid "Sort by round trip time" msgstr "Tri par durée d'aller-retour" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2504 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 msgid "Sort by retransmission timeout" msgstr "Tri pas dépassement de durée de retransmission" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2507 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2512 msgid "Sort by outbound maximum transmit unit" msgstr "Tri par MTU sortant" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 msgid "Sort by packets sent" msgstr "Tri par paquets envoyés" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2511 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 msgid "Sort by packets received" msgstr "Tri par paquets reçus" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2519 msgid "Sort by packets retransmitted" msgstr "Tri par paquets renvoyés" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2521 msgid "Sort by packets received more than once" msgstr "Tri par paquet reçus multiples" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2536 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2541 msgid "We offered to introduce them" msgstr "Propositions de présentation à " -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2538 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2543 msgid "They offered to introduce us" msgstr "Ont proposé leur service" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2542 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2547 msgid "Choked" msgstr "Choqué" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2550 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2555 msgid "1 fail" msgstr "1 échec" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2552 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2557 #, java-format msgid "{0} fails" msgstr "{0} échecs" #. 1 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2558 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2563 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:166 #: ../java/src/net/i2p/router/web/ProfilesHelper.java:13 msgid "Banned" msgstr "Banni" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2617 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2622 msgid "backlogged" msgstr "arriéré " @@ -887,96 +890,96 @@ msgstr "Laisse tomber des demandes de tunnel : haut décalage de travail" msgid "Dropping tunnel requests: Overloaded" msgstr "Perte de demandes de tunnnels : surchargé" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:693 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:695 msgid "Rejecting tunnels: Hidden mode" msgstr "Rejette les tunnels : mode caché" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:721 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:723 msgid "Rejecting tunnels: Request overload" msgstr "Rejet de tunnels : surcharge de requêtes " -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:752 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:754 msgid "Rejecting tunnels: Connection limit" msgstr "Rejet de tunnels: limite de connexions" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:964 -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:997 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:966 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:999 msgid "Dropping tunnel requests: High load" msgstr "Perte de tunnels: forte charge" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1076 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1078 msgid "Dropping tunnel requests: Queue time" msgstr "Demandes de fermeture de tunnel: temps en file d'attente" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:884 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:895 #, java-format msgid "New plugin version {0} is available" msgstr "La nouvelle version {0} du greffon est disponible" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:964 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:975 #, java-format msgid "Update check failed for plugin {0}" msgstr "Échec de la vérification de mise à jour du greffon {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:968 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:979 #, java-format msgid "No new version is available for plugin {0}" msgstr "Pas de nouvelle version pour le greffon {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:992 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1003 #, java-format msgid "{0}B transferred" msgstr "{0}o transférés" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1051 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1062 #, java-format msgid "Install failed from {0}" msgstr "Installation échouée depuis {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1053 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1064 #: ../java/src/net/i2p/router/update/UpdateRunner.java:298 #, java-format msgid "Transfer failed from {0}" msgstr "Échec de transfert depuis {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1328 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1339 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1403 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 #: ../java/src/net/i2p/router/web/SummaryHelper.java:715 msgid "Update downloaded" msgstr "Mise à jour téléchargée" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 msgid "Restarting" msgstr "Redémarrage en cours" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 msgid "Update verified" msgstr "Mise à jour vérifiée" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1381 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:189 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:306 #, java-format msgid "from {0}" msgstr "depuis {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1396 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1407 #, java-format msgid "Unsigned update file from {0} is corrupt" msgstr "Le fichier de mise à jour non signé de {0} est corrompu" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1425 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1436 #, java-format msgid "Failed copy to {0}" msgstr "Échec de copie vers {0}" -#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:47 +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:49 #: ../java/src/net/i2p/router/update/DevSU3UpdateRunner.java:40 #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:55 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:111 -#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:62 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:64 #: ../java/src/net/i2p/router/update/UnsignedUpdateRunner.java:41 #: ../java/src/net/i2p/router/update/UpdateRunner.java:155 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:573 @@ -985,6 +988,13 @@ msgstr "Échec de copie vers {0}" msgid "HTTP client proxy tunnel must be running" msgstr "Le tunnel proxy client HTTP doit être en cours de fonctionnement" +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:83 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:242 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:88 +#, java-format +msgid "Requires Java version {0} but installed Java version is {1}" +msgstr "Nécessite la version {0} Java mais la version Java installée est {1}" + #. set status before thread to ensure UI feedback #: ../java/src/net/i2p/router/update/DevSU3UpdateHandler.java:91 #: ../java/src/net/i2p/router/update/PluginUpdateHandler.java:82 @@ -994,24 +1004,19 @@ msgstr "Le tunnel proxy client HTTP doit être en cours de fonctionnement" msgid "Updating" msgstr "Mise à jour en cours" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:209 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:218 msgid "In-network updates disabled. Check package manager." msgstr "Mises à jour intra-réseau désactivées. Vérifiez le gestionnaire de paquet." -#: ../java/src/net/i2p/router/update/NewsFetcher.java:215 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:224 msgid "No write permission for I2P install directory." msgstr "Pas de permission d'écriture pour le répertoire d'installation I2P." -#: ../java/src/net/i2p/router/update/NewsFetcher.java:223 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:232 #, java-format msgid "You must first update to version {0}" msgstr "Vous devez d''abord mettre à jour vers la version {0}" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:233 -#, java-format -msgid "Requires Java version {0} but installed Java version is {1}" -msgstr "Nécessite la version {0} Java mais la version Java installée est {1}" - #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:62 #, java-format msgid "Checking for update of plugin {0}" @@ -1215,8 +1220,10 @@ msgid "unban now" msgstr "lever le bannissement" #: ../java/src/net/i2p/router/web/CSSHelper.java:149 -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../java/strings/Strings.java:29 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:217 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:221 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:219 @@ -1286,6 +1293,8 @@ msgstr "lever le bannissement" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:217 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:219 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:224 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:228 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:230 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:222 @@ -1311,6 +1320,16 @@ msgstr "lever le bannissement" msgid "I2P Router Console" msgstr "Console du routeur I2P" +#: ../java/src/net/i2p/router/web/CertHelper.java:25 +msgid "Local SSL Certificates" +msgstr "Certificats SSL locaux" + +#: ../java/src/net/i2p/router/web/CertHelper.java:46 +#: ../java/src/net/i2p/router/web/CertHelper.java:51 +#: ../java/strings/Strings.java:63 +msgid "I2PTunnel" +msgstr "I2PTunnel" + #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:62 msgid "Error updating the configuration - please see the error logs" msgstr "Erreur pendant la mise à jour de la configuration: contrôlez les historiques" @@ -1325,7 +1344,8 @@ msgstr "Configuration sauvegardée avec succès" #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:98 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:622 #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:391 -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:151 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:109 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:160 msgid "" "Error saving the configuration (applied but not saved) - please see the " "error logs" @@ -1530,7 +1550,7 @@ msgid "Add Client" msgstr "Ajouter un client" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:116 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:503 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:517 #: ../java/src/net/i2p/router/web/SummaryHelper.java:452 msgid "Client" msgstr "Clients" @@ -1562,9 +1582,9 @@ msgid "Plugin" msgstr "Greffon" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:248 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:304 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 msgid "Version" msgstr "Version" @@ -1585,9 +1605,9 @@ msgid "License" msgstr "Licence" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:294 -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/HomeHelper.java:171 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:157 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/HomeHelper.java:178 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:164 msgid "Website" msgstr "Site web" @@ -1622,7 +1642,7 @@ msgstr "Effacer" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:21 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigUIHandler.java:19 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:970 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:996 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:496 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:516 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:532 @@ -1632,7 +1652,7 @@ msgstr "Efface la sélection" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:23 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1015 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:494 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:502 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:514 @@ -1728,11 +1748,11 @@ msgstr "pas trouvée sur le porte-clés" msgid "Invalid destination" msgstr "Destination incorrecte" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:82 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:84 msgid "Log overrides updated" msgstr "Écrasement des historiques mis à jour" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:163 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:165 msgid "Log configuration saved" msgstr "Configuration des historiques enregistrée" @@ -1780,8 +1800,8 @@ msgstr "WARN" #: ../java/src/net/i2p/router/web/ConfigLoggingHelper.java:85 #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:170 -#: ../java/src/net/i2p/router/web/HomeHelper.java:208 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:904 +#: ../java/src/net/i2p/router/web/HomeHelper.java:215 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 msgid "Remove" msgstr "Supprimer" @@ -1800,11 +1820,12 @@ msgid "Home Page" msgstr "Page d'accueil" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:328 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:335 msgid "Network" msgstr "Réseau" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:320 @@ -1838,6 +1859,7 @@ msgstr "Réseau" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:292 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:322 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:297 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:292 @@ -1856,8 +1878,8 @@ msgid "UI" msgstr "Apparence" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:179 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:486 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:186 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 #: ../java/strings/Strings.java:73 msgid "Tunnels" msgstr "Tunnels" @@ -1876,15 +1898,15 @@ msgid "Logging" msgstr "Historiques" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:185 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:372 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:192 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:386 #: ../java/strings/Strings.java:68 msgid "Peers" msgstr "Pairs" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:497 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:230 msgid "Stats" msgstr "Statistiques" @@ -1900,7 +1922,7 @@ msgstr "Avancé" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:491 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:479 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:641 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:593 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:560 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:511 msgid "Save changes" @@ -2081,7 +2103,7 @@ msgid "Unsupported" msgstr "Non supportée" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:24 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 msgid "Save changes and reseed now" msgstr "Sauvegarder et réamorcer" @@ -2129,7 +2151,16 @@ msgid_plural "Reseed successful, loaded {0} router infos from file" msgstr[0] "Ré-essaimage réussi, {0} info de routeur chargée depuis le fichier" msgstr[1] "Ré-essaimage réussi, {0} infos de routeur chargées depuis le fichier" -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:149 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:99 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +msgid "Reset URL list" +msgstr "Réinitialiser la liste URL" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:107 +msgid "URL list reset successfully" +msgstr "Liste d'URL réinitialisée avec succès" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:158 msgid "Configuration saved successfully." msgstr "Configuration sauvegardée avec succès." @@ -2581,7 +2612,7 @@ msgstr "Norvégien Bokmaal" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:92 msgid "Polish" -msgstr "polonnais" +msgstr "Polonais" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:93 #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:94 @@ -2629,8 +2660,8 @@ msgid "User Name" msgstr "Nom d'utilisateur" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:183 -#: ../java/src/net/i2p/router/web/HomeHelper.java:235 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:972 +#: ../java/src/net/i2p/router/web/HomeHelper.java:242 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:998 msgid "Add" msgstr "Ajout" @@ -2861,13 +2892,13 @@ msgstr "Évènement" msgid "Details" msgstr "Détails" -#: ../java/src/net/i2p/router/web/FormHandler.java:251 +#: ../java/src/net/i2p/router/web/FormHandler.java:253 msgid "" "Invalid form submission, probably because you used the 'back' or 'reload' " "button on your browser. Please resubmit." msgstr "Soumission de formulaire incorrecte: vous avez peut-être utilisé le bouton \"Page précédente\" ou \"Rechargement\" de votre navigateur. Merci de renvoyer." -#: ../java/src/net/i2p/router/web/FormHandler.java:253 +#: ../java/src/net/i2p/router/web/FormHandler.java:255 msgid "" "If the problem persists, verify that you have cookies enabled in your " "browser." @@ -2998,156 +3029,169 @@ msgstr "Enregistrer les réglages et redessiner" msgid "Graph settings saved" msgstr "Réglages des graphiques enregistrés" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:229 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:236 msgid "Addressbook" msgstr "Carnet d'adresses" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:227 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:234 msgid "Manage your I2P hosts file here (I2P domain name resolution)" msgstr "Gérer votre fichier d'hôtes I2P ici (I2P DNS)" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 msgid "Configure Bandwidth" -msgstr "Configure la bande passante" +msgstr "Configurer la bande passante" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:330 msgid "I2P Bandwidth Configuration" msgstr "Configuration bande passante I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Configure Language" msgstr "Configurer la langue" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Console Language Selection" msgstr "Sélection langage console" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 msgid "Customize Home Page" msgstr "Personnaliser la page d'accueil" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:346 msgid "I2P Home Page Configuration" msgstr "Configuration page d'accueil I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:139 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:146 msgid "Anonymous webmail client" msgstr "Client webmail anonyme" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:141 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:148 msgid "Email" msgstr "Messagerie web" -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:251 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 msgid "I2P Router Help" msgstr "Aide du routeur I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:161 msgid "Router Console" msgstr "Console du routeur I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:145 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:152 msgid "Built-in anonymous BitTorrent Client" -msgstr "Client bittorrent anonyme" +msgstr "Client BitTorrent anonyme intégré" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:147 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:154 msgid "Torrents" msgstr "Torrents" -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:155 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:162 msgid "Local web server" msgstr "Serveur web local" -#: ../java/src/net/i2p/router/web/HomeHelper.java:41 +#: ../java/src/net/i2p/router/web/HomeHelper.java:43 msgid "The Anoncoin project" msgstr "Le projet Anoncoin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug Reports" msgstr "Signalements de bug" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug tracker" msgstr "Traqueur bug" #. "colombo-bt.i2p" + S + _x("The Italian Bittorrent Resource") + S + "http #. ://colombo-bt.i2p/" + S + I + "colomboicon.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Dev Forum" msgstr "Forum dev" -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Development forum" msgstr "Forum développement" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Bittorrent tracker" msgstr "Tracker Bittorrent" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 msgid "diftracker" msgstr "diftracker" -#: ../java/src/net/i2p/router/web/HomeHelper.java:46 +#: ../java/src/net/i2p/router/web/HomeHelper.java:48 msgid "I2P Applications" msgstr "Applications I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +msgid "Anonymous cryptocurrency exchange" +msgstr "Échange de crypto-monnaie anonyme" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "FAQ" msgstr "FAQ" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "Frequently Asked Questions" msgstr "FAQ : questions fréquemment posées" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Community forum" msgstr "Forum communauté" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Forum" msgstr "Forum" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "" "A public anonymous Git hosting site - supports pulling via Git and HTTP and " "pushing via SSH" -msgstr "Un site d'hébergement Git public anonyme - soutient le pulling Git et HTTP et pushing via SSH" +msgstr "Un site d'hébergement Git public et anonyme - supporte le pulling Git et HTTP et pushing via SSH" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "Anonymous Git Hosting" -msgstr "Hébergement anonymous Git" +msgstr "Hébergement Git anonyme" -#: ../java/src/net/i2p/router/web/HomeHelper.java:50 +#: ../java/src/net/i2p/router/web/HomeHelper.java:53 msgid "HiddenGate" msgstr "HiddenGate" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "Anonymous wiki - share the knowledge" +msgstr "Wiki anonyme - partager la connaissance" + +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "I2P Wiki" +msgstr "I2P Wiki" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Microblog" msgstr "Microblog" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Your premier microblogging service on I2P" msgstr "Votre premier service de microblogging sur I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 msgid "Javadocs" msgstr "Docs Java" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical documentation" msgstr "Documentation technique" @@ -3155,91 +3199,98 @@ msgstr "Documentation technique" #. "http://jisko.i2p/" + S + I + "jisko_console_icon.png" + S + #. _x("Key Server") + S + _x("OpenPGP Keyserver") + S + "http://keys.i2p/" + S #. + I + "education.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +#: ../java/src/net/i2p/router/web/HomeHelper.java:60 msgid "Debian and Tahoe-LAFS repositories" msgstr "Dépôts Debian et Tahoe-LAFS" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free Web Hosting" -msgstr "Hébergement web libre" +msgstr "Hébergement web gratuit" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free eepsite hosting with PHP and MySQL" -msgstr "Hébergement eepsite libre avec PHP et MySQL" +msgstr "Hébergement gratuit de eepsite avec PHP et MySQL" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "I2P Pastebin" msgstr "Pastebin I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "Pastebin" msgstr "Pastebin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:58 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 msgid "I2P News" msgstr "Actualités I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +msgid "Planet I2P" +msgstr "Planet I2P" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Add-on directory" msgstr "Répertoire add-on" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Plugins" msgstr "Plugins" -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Postman's Tracker" msgstr "Tracker de Postman" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "I2P home page" msgstr "Page d'accueil I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "Project Website" msgstr "Site web du projet" +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:68 +msgid "Russian News Feed" +msgstr "Fil d'actualités Russe" + #. "Salt" + S + "salt.i2p" + S + "http://salt.i2p/" + S + I + #. "salt_console.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +#: ../java/src/net/i2p/router/web/HomeHelper.java:70 msgid "I2P Network Statistics" msgstr "Statistiques réseau I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical Docs" msgstr "Docs techniques" -#: ../java/src/net/i2p/router/web/HomeHelper.java:65 +#: ../java/src/net/i2p/router/web/HomeHelper.java:72 msgid "Trac Wiki" msgstr "Wiki Trac" -#: ../java/src/net/i2p/router/web/HomeHelper.java:66 -msgid "Ugha's Wiki" -msgstr "Wiki d'Ugha" - -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Seedless and the Robert BitTorrent applications" msgstr "Applications BitTorrent Seedless et Robert" -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#. _x("Ugha's Wiki") + S + S + "http://ugha.i2p/" + S + I + +#. "billiard_marker.png" + S + +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Sponge's main site" msgstr "Site principal de Sponge" -#: ../java/src/net/i2p/router/web/HomeHelper.java:108 +#: ../java/src/net/i2p/router/web/HomeHelper.java:115 msgid "The HTTP proxy is not up" msgstr "Le proxy HTTP n'est pas en place" -#: ../java/src/net/i2p/router/web/HomeHelper.java:110 +#: ../java/src/net/i2p/router/web/HomeHelper.java:117 #, java-format msgid "Your browser is not properly configured to use the HTTP proxy at {0}" msgstr "Votre navigateur n''est pas configuré correctement pour utiliser le proxy HTTP à {0}" -#: ../java/src/net/i2p/router/web/HomeHelper.java:210 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:906 +#: ../java/src/net/i2p/router/web/HomeHelper.java:217 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:932 msgid "Name" msgstr "Nom" -#: ../java/src/net/i2p/router/web/HomeHelper.java:212 +#: ../java/src/net/i2p/router/web/HomeHelper.java:219 msgid "URL" msgstr "URL" @@ -3367,217 +3418,226 @@ msgstr "Tous routeurs avec statistiques complètes" msgid "LeaseSets" msgstr "Jeux de baux" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:105 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:106 #: ../java/strings/Strings.java:69 msgid "Router" msgstr "Routeur" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:112 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:113 msgid "not found in network database" msgstr "non trouvé dans la NetDb" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:156 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 msgid "LeaseSet" msgstr "Jeu de baux" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:158 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:163 msgid "Local" msgstr "Local" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:160 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:165 msgid "Unpublished" msgstr "Pas publié" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:176 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:166 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:181 msgid "Destination" msgstr "Destination" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:173 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:185 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:178 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 msgid "Add to local addressbook" msgstr "Ajouter au carnet d'adresses local" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:217 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:195 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:222 #, java-format msgid "Expires in {0}" msgstr "Expirera dans {0}" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:192 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:219 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:197 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:224 #, java-format msgid "Expired {0} ago" msgstr "Périmé il y a {0}" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Gateway" msgstr "Passerelle" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 msgid "Lease" msgstr "Bail" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:213 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:218 msgid "Tunnel" msgstr "Tunnel" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:280 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:286 msgid "Not initialized" msgstr "Pas initialisé" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:330 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:342 msgid "Network Database Router Statistics" msgstr "Statistiques NetDb du routeur " -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Count" msgstr "Nombre" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 msgid "Transports" msgstr "Transports" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Country" msgstr "Pays" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:429 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:453 msgid "Our info" msgstr "Ce routeur" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:431 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:455 msgid "Peer info for" msgstr "Informations pair" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:433 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:457 msgid "Full entry" msgstr "Détails" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 #: ../java/src/net/i2p/router/web/SummaryHelper.java:152 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:726 msgid "Hidden" msgstr "Caché" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 msgid "Updated" msgstr "Mise à jour terminée" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:441 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:444 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:465 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:468 #, java-format msgid "{0} ago" msgstr "il y a {0}" #. shouldnt happen -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:443 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:447 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:467 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:471 msgid "Published" msgstr "Publié il y a" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:449 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 msgid "Signing Key" msgstr "Signature de clé" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:451 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:475 msgid "Address(es)" msgstr "Adresse(s)" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:463 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:487 msgid "cost" msgstr "coût" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "Hidden or starting up" msgstr "Masqué ou en cours de démarrage" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU" msgstr "SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU with introducers" msgstr "SSU avec représentants" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP" msgstr "NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU" msgstr "NTCP et SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU with introducers" msgstr "NTCP et SSU avec représentants" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 Only SSU, introducers" msgstr "IPv6 only SSU, introducers" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU" msgstr "IPv6 SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU, introducers" msgstr "IPv6 SSU, introducers" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP" msgstr "IPv6 NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU" msgstr "IPv6 NTCP, SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU, introducers" msgstr "IPv6 NTCP, SSU, introducers" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 Only NTCP, SSU, introducers" msgstr "IPv6 NTCP seul, SSU, introducers" -#: ../java/src/net/i2p/router/web/NewsHelper.java:295 +#: ../java/src/net/i2p/router/web/NewsFeedHelper.java:80 +#, java-format +msgid "by {0}" +msgstr "par {0}" + +#: ../java/src/net/i2p/router/web/NewsHelper.java:292 #, java-format msgid "News last updated {0} ago." msgstr "Actualités mises à jour il y a {0}." -#: ../java/src/net/i2p/router/web/NewsHelper.java:301 +#: ../java/src/net/i2p/router/web/NewsHelper.java:298 #, java-format msgid "News last checked {0} ago." msgstr "Actualités vérifiées il y a {0}." -#: ../java/src/net/i2p/router/web/NewsHelper.java:310 +#: ../java/src/net/i2p/router/web/NewsHelper.java:307 msgid "Hide news" msgstr "Cacher les actualités" -#: ../java/src/net/i2p/router/web/NewsHelper.java:313 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:647 +#: ../java/src/net/i2p/router/web/NewsHelper.java:310 msgid "Show news" msgstr "Montrer les actualités" +#: ../java/src/net/i2p/router/web/NewsHelper.java:314 +msgid "Show all news" +msgstr "Montrer toutes les nouvelles" + #: ../java/src/net/i2p/router/web/PluginStarter.java:140 msgid "Checking for plugin updates" msgstr "Vérifie pour mises à jour de plugin" #: ../java/src/net/i2p/router/web/PluginStarter.java:155 +#: ../java/src/net/i2p/router/web/PluginStarter.java:161 msgid "Plugin update check failed" msgstr "Le contrôle de mise à jour de greffon a échoué" -#: ../java/src/net/i2p/router/web/PluginStarter.java:193 +#: ../java/src/net/i2p/router/web/PluginStarter.java:199 #, java-format msgid "1 plugin updated" msgid_plural "{0} plugins updated" msgstr[0] "1 plugin mis à jour" msgstr[1] "{0} plugins mis à jour" -#: ../java/src/net/i2p/router/web/PluginStarter.java:195 +#: ../java/src/net/i2p/router/web/PluginStarter.java:201 msgid "Plugin update check complete" msgstr "Verification de mise à jour de plugin accomplie" @@ -3643,7 +3703,7 @@ msgid "Failing" msgstr "Défaillant" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:135 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:411 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:425 msgid "Integrated" msgstr "Bien intégrés" @@ -3912,277 +3972,287 @@ msgstr "Nombre d'évènements de graphiques" msgid "Lifetime average value" msgstr "Durée de vie moyenne" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:121 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:128 msgid "I2P Router Help & FAQ" msgstr "Aide routeur I2P & FAQ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:123 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:130 msgid "Help & FAQ" msgstr "Aide & FAQ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:131 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:138 msgid "" "Configure startup of clients and webapps (services); manually start dormant " "services" msgstr "configurer le démarrage des clients et des applications web (services); démarrer manuellement les services arrêtés" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:133 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:140 msgid "I2P Services" msgstr "Services I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:169 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:176 msgid "Configure I2P Router" msgstr "I2P Routeur Configuration" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:171 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:178 msgid "I2P Internals" msgstr "Configuration" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:177 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:484 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:184 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:498 msgid "View existing tunnels and tunnel build status" msgstr "État des tunnels existants et de la création de tunnels" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:183 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:370 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:190 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:384 msgid "Show all current peer connections" msgstr "Afficher toutes les connexions actuelles aux pairs" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:189 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:196 msgid "Show recent peer performance profiles" msgstr "Afficher les profils de la performance récente des pairs" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:191 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:198 msgid "Profiles" msgstr "Profils" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:195 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:202 msgid "Show list of all known I2P routers" msgstr "Afficher tous les routeurs I2P connus" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:197 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:204 msgid "NetDB" msgstr "NetDb" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:201 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:208 msgid "Health Report" msgstr "Bilan de santé" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:203 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:210 msgid "Logs" msgstr "Historiques" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:214 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 msgid "Graph router performance" msgstr "Graphique de performances du routeur" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:216 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 msgid "Graphs" msgstr "Graphes" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:228 msgid "Textual router performance statistics" msgstr "Statistiques textuelles de performance du routeur" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:233 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:240 #: ../java/src/net/i2p/router/web/SummaryHelper.java:438 msgid "Local Tunnels" msgstr "Tunnels locaux" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:235 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:242 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:164 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:337 msgid "Hidden Services Manager" msgstr "Gestionnaire de services cachés" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:253 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:260 msgid "General" msgstr "Général" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 msgid "" "Your Local Identity is your unique I2P router identity, similar to an ip " "address but tailored to I2P. " msgstr "Votre identité locale est votre identité unique de routeur I2P, semblable à une adresse ip, mais adaptée à I2P." -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:259 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:266 msgid "Never disclose this to anyone, as it can reveal your real world ip." msgstr "Ne divulguez jamais ceci à personne, car il peut révéler votre IP monde réel." -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:261 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:268 msgid "Local Identity" msgstr "Identité locale" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:272 msgid "Your unique I2P router identity is" msgstr "L'identité unique de votre routeur commence par" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:269 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:276 msgid "never reveal it to anyone" msgstr "Ne la révélez JAMAIS à PERSONNE ! (Cliquez pour l'afficher)" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:271 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 msgid "show" msgstr "Détails" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:275 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:301 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:282 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:308 msgid "The version of the I2P software we are running" msgstr "La version du logiciel I2P que nous faisons fonctionner" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:292 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:318 msgid "How long we've been running for this session" msgstr "Durée de cette session" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:326 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:333 msgid "" "Help with configuring your firewall and router for optimal I2P performance" msgstr "Aide à la configuration du pare-feu et du routeur pour optimiser les performances d'I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:337 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:344 msgid "See more information on the wiki" msgstr "Pour plus d'informations lire le wiki" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:339 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:346 msgid "Warning: ECDSA is not available. Update your Java or OS" msgstr "Avertissement: ECDSA n'est pas disponible. Mettez à niveau votre Java ou OS" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:351 +#, java-format +msgid "Warning: Java version {0} is no longer supported by I2P." +msgstr "Avertissement : la version Java {0} n'est plus supportée par I2P." + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#, java-format +msgid "Update Java to version {0} or higher to receive I2P updates." +msgstr "Mettez à niveau Java vers la version {0} ou plus haute afin de recevoir les mises à jour d'I2P." + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:365 msgid "Configure I2P Updates" msgstr "Configure mises à jour I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:367 msgid "I2P Update" msgstr "Mise à jour I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:378 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:392 msgid "Peers we've been talking to in the last few minutes/last hour" msgstr "Pairs auxquels nous avons parlé durant les dernières minutes / heure dernière" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:381 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:395 msgid "Active" msgstr "Actifs" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:390 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:404 msgid "The number of peers available for building client tunnels" msgstr "Le nombre de pairs disponibles pour la construction de tunnels exploratoires" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:393 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:407 msgid "Fast" msgstr "Rapides" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:399 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:413 msgid "The number of peers available for building exploratory tunnels" msgstr "Le nombre de pairs disponibles pour la construction de tunnels exploratoires" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:402 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:416 msgid "High capacity" msgstr "Hautes capacités" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:408 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:422 msgid "The number of peers available for network database inquiries" msgstr "Le nombre de pairs disponibles pour les demandes de bases de données réseau" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:417 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:431 msgid "The total number of peers in our network database" msgstr "Le nombre total de pairs dans notre base de données réseau" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:420 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:434 msgid "Known" msgstr "Connus" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:440 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:454 msgid "Configure router bandwidth allocation" msgstr "Configurer la bande passante du routeur" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:442 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:456 msgid "Bandwidth in/out" msgstr "Bande passante entrante/sortante" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:462 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:476 msgid "Total" msgstr "Totale" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:469 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:483 msgid "Used" msgstr "Utilisée" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:491 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:505 msgid "" "Used for building and testing tunnels, and communicating with floodfill " "peers" msgstr "Utilisés pour construire et tester des tunnels, et communiquer avec les pairs de remplissage par diffusion" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:494 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:508 msgid "Exploratory" msgstr "Exploratoires" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:514 msgid "Tunnels we are using to provide or access services on the network" msgstr "Tunnels que nous utilisons pour fournir ou accéder à des services sur le réseau" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:509 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:523 msgid "" "Tunnels we are participating in, directly contributing bandwidth to the " "network" msgstr "Tunnels auxquels nous participons, contribuant directement à la bande passante du réseau" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:512 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:526 msgid "Participating" msgstr "Participants" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:518 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:532 msgid "" "The ratio of tunnel hops we provide to tunnel hops we use - a value greater " "than 1.00 indicates a positive contribution to the network" msgstr "Le ratio de sauts tunnel que nous offrons aux sauts tunnel que nous utilisons - une valeur supérieure à 1,00 indique une contribution positive au réseau" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:521 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:535 msgid "Share ratio" msgstr "Rapport de partage" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:534 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:548 msgid "What's in the router's job queue?" msgstr "Afficher la file d'attente de travaux du routeur. " -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:536 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 msgid "Congestion" msgstr "Charge" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:541 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:555 msgid "Indicates router performance" msgstr "Indique la performance du routeur" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:544 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:558 msgid "Job lag" msgstr "Retard de tâches" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:564 msgid "Indicates how quickly outbound messages to other I2P routers are sent" msgstr "Indique à quelle vitesse sont envoyés les messages sortants vers d'autres routeurs I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:553 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:567 msgid "Message delay" msgstr "Retard de messages" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:560 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:574 msgid "Round trip time for a tunnel test" msgstr "Temps aller-retour pour un essai tunnel" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:563 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:577 msgid "Tunnel lag" msgstr "Retard de tunnels" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:570 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:584 msgid "Queued requests from other routers to participate in tunnels" msgstr "Requêtes en attente issues d'autres routeurs désireux de participer à des tunnels" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:573 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:587 msgid "Backlog" msgstr "En attente" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:608 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:623 msgid "News & Updates" msgstr "Nouvelles et mises à jour" @@ -4295,17 +4365,21 @@ msgid "Click Shutdown and restart to install" msgstr "Cliquez sur \"Arrêter\" puis \"Démarrer\" pour installer" #: ../java/src/net/i2p/router/web/SummaryHelper.java:720 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:735 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:737 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:749 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:761 #, java-format msgid "Version {0}" msgstr "Version {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:734 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:736 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:748 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:760 msgid "Update available" msgstr "Mise à jour disponible" #. Note to translators: parameter is a version, e.g. "0.8.4" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:758 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:784 #, java-format msgid "Download {0} Update" msgstr "Télécharger la version {0}" @@ -4314,7 +4388,7 @@ msgstr "Télécharger la version {0}" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:766 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:792 #, java-format msgid "Download Signed<br>Development Update<br>{0}" msgstr "Télécharger la <br>mise à jour de développement<br> signée {0}" @@ -4323,56 +4397,56 @@ msgstr "Télécharger la <br>mise à jour de développement<br> signée {0}" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:774 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 #, java-format msgid "Download Unsigned<br>Update {0}" msgstr "Télécharger la version<br> non signée {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:798 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:824 msgid "Help with firewall configuration" msgstr "Aide à la configuration du pare-feu" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:826 msgid "Check network connection and NAT/firewall" msgstr "Vérifier NAT/pare-feu" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:819 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:845 msgid "Reseed" msgstr "Réamorçage" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:908 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:934 msgid "Order" msgstr "Ordre" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:925 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:951 msgid "Top" msgstr "Haut" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:956 msgid "Move to top" msgstr "Déplacer tout en haut" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:940 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:966 msgid "Move up" msgstr "Déplacer vers le haut" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:948 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:974 msgid "Down" msgstr "Bas" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:953 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:979 msgid "Move down" msgstr "Déplacer vers le bas" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:958 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:984 msgid "Bottom" msgstr "Fond" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:963 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 msgid "Move to bottom" msgstr "Déplacer tout en bas" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:975 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1001 msgid "Select a section to add" msgstr "Sélection d'une section à ajouter" @@ -4419,100 +4493,100 @@ msgstr "Tunnels clients pour" msgid "dead" msgstr "Morts" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:70 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:69 msgid "Participating tunnels" msgstr "Tunnels participants" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "Receive on" msgstr "Reçoit sur" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Expiration" msgstr "Expiration" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Send on" msgstr "Envoie sur" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Rate" msgstr "Taux" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Role" msgstr "Rôle" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Usage" msgstr "Utilisation" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:111 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:113 msgid "grace period" msgstr "délai de grâce" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:121 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 msgid "Outbound Endpoint" msgstr "Point terminal sortant" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 msgid "Inbound Gateway" msgstr "Passerelle entrante" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:127 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:174 msgid "Participant" msgstr "Participant" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:130 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:133 #, java-format msgid "Limited display to the {0} tunnels with the highest usage" msgstr "Affichage limité aux {0} tunnels avec le plus haut usage" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:131 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:135 msgid "Inactive participating tunnels" msgstr "Tunnels participants inactifs" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:132 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:224 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:138 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:232 msgid "Lifetime bandwidth usage" msgstr "Utilisation de la bande passante depuis le démarrage" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Expiry" msgstr "Echéance" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:165 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 msgid "Participants" msgstr "Participants" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:177 msgid "Endpoint" msgstr "Point terminal" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 #: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "Build in progress" msgstr "Création en cours" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 msgid "inbound" msgstr "entrant" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "outbound" msgstr "sortant" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:223 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:231 msgid "No tunnels; waiting for the grace period to end." msgstr "Pas de tunnel; attente de la fin du délai de grâce" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:225 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:233 msgid "in" msgstr "entrés" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:234 msgid "out" msgstr "sortis" @@ -4649,10 +4723,6 @@ msgstr "Cryptage" msgid "i2cp" msgstr "i2cp" -#: ../java/strings/Strings.java:63 -msgid "I2PTunnel" -msgstr "I2PTunnel" - #: ../java/strings/Strings.java:64 msgid "InNetPool" msgstr "InNetPool" @@ -4699,10 +4769,12 @@ msgstr "clef" msgid "port" msgstr "port" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 -msgid "configure bandwidth" -msgstr "Configurer la bande passante" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:146 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:318 +msgid "Certificates" +msgstr "Certificats" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:153 @@ -4736,6 +4808,7 @@ msgstr "Configurer la bande passante" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:149 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:155 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:154 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:149 @@ -4751,6 +4824,7 @@ msgstr "Routeur est en panne" #. We have intl defined when this is included, but not when compiled #. standalone. +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:333 @@ -4783,6 +4857,7 @@ msgstr "Routeur est en panne" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:305 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:310 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:305 @@ -4798,6 +4873,7 @@ msgid "Refresh (s)" msgstr "Actualisation auto. (s)" #. ditto +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:337 @@ -4830,6 +4906,7 @@ msgstr "Actualisation auto. (s)" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:309 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:339 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:314 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:309 @@ -4844,6 +4921,10 @@ msgstr "Actualisation auto. (s)" msgid "Enable" msgstr "Activer" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 +msgid "configure bandwidth" +msgstr "Configurer la bande passante" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:437 msgid "Bandwidth limiter" msgstr "Gestionnaire de bande passante" @@ -4920,7 +5001,7 @@ msgstr "Page de configuration réseau avancée" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:501 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:477 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:639 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:587 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:558 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:509 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:461 @@ -5953,51 +6034,51 @@ msgstr "Sans SSL" msgid "Reseed URLs" msgstr "URLs de réamorçage" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:541 msgid "Enable HTTP Proxy?" msgstr "Activer le proxy HTTP ?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:543 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:545 msgid "HTTP Proxy Host" msgstr "Hôte mandataire proxy HTTP" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:547 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:549 msgid "HTTP Proxy Port" msgstr "Port mandataire proxy HTTP" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:551 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:553 msgid "Use HTTP Proxy Authorization?" msgstr "Utiliser l'autorisation proxy HTTP ?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:555 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:557 msgid "HTTP Proxy Username" msgstr "Nom d'utilisateur proxy HTTP" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:559 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:561 msgid "HTTP Proxy Password" msgstr "Mot de passe proxy HTTP" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:563 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:565 msgid "Enable HTTPS Proxy?" msgstr "Activer le proxy HTTPS ?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:567 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:569 msgid "HTTPS Proxy Host" msgstr "Hôte proxy HTTPS" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:571 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:573 msgid "HTTPS Proxy Port" msgstr "Port du proxy HTTP" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:575 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:577 msgid "Use HTTPS Proxy Authorization?" msgstr "Utiliser l'autorisation proxy HTTPS ?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:579 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:581 msgid "HTTPS Proxy Username" msgstr "Nom d'utilisateur proxy HTTPS" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:583 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:585 msgid "HTTPS Proxy Password" msgstr "Mot de passe proxy HTTPS" @@ -6280,7 +6361,7 @@ msgstr "Langue de la console" msgid "" "Please contribute to the router console translation project! Contact the " "developers in #i2p-dev on IRC to help." -msgstr "S'il vous plaît contribuez au projet de traduction de la console routeur ! Contactez les développeurs sur #i2p-dev sur IRC pour aider." +msgstr "S'il vous plaît contribuez au projet de traduction de la console du routeur ! Contactez les développeurs sur #i2p-dev sur IRC pour aider." #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:463 msgid "Apply" @@ -6288,7 +6369,7 @@ msgstr "Appliquer" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:465 msgid "Router Console Password" -msgstr "Mot de passe de console du routeur" +msgstr "Mot de passe de la console du routeur" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:148 msgid "config update" @@ -6470,7 +6551,7 @@ msgstr "Page introuvable" msgid "" "Sorry! You appear to be requesting a non-existent Router Console page or " "resource." -msgstr "Désolé! Vous avez demandé une page ou ressource de la console inexistante. " +msgstr "Désolé ! Vous avez demandé une page ou ressource de la console inexistante." #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error_jsp.java:339 msgid "Error 404" @@ -6556,6 +6637,14 @@ msgstr "base de données réseau" msgid "I2P Network Database" msgstr "Base de données réseau I2P" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:148 +msgid "News" +msgstr "Actualités" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:344 +msgid "Latest News" +msgstr "Actualités les plus récentes" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:152 msgid "WebApp Not Found" msgstr "Application web introuvable" diff --git a/apps/routerconsole/locale/messages_hu.po b/apps/routerconsole/locale/messages_hu.po index fee1b5b08475d9c5eee5c53dff88553281ccda59..749656aa0a31b7d655b497534e3e2919b9293414 100644 --- a/apps/routerconsole/locale/messages_hu.po +++ b/apps/routerconsole/locale/messages_hu.po @@ -11,10 +11,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:05+0000\n" -"PO-Revision-Date: 2015-07-17 12:47+0000\n" -"Last-Translator: benewfy <benewfy@gmail.com>\n" -"Language-Team: Hungarian (http://www.transifex.com/projects/p/I2P/language/hu/)\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-05 17:17+0000\n" +"Last-Translator: kytv <killyourtv@i2pmail.org>\n" +"Language-Team: Hungarian (http://www.transifex.com/otf/I2P/language/hu/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -133,19 +133,22 @@ msgid "IPs Permanently Banned" msgstr "Ãllandóan kitiltott IP-k" #: ../../../router/java/src/net/i2p/router/Blocklist.java:959 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "From" msgstr "Innen" #: ../../../router/java/src/net/i2p/router/Blocklist.java:961 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "To" msgstr "Ide" #: ../../../router/java/src/net/i2p/router/Blocklist.java:997 #: ../java/src/net/i2p/router/web/BanlistRenderer.java:48 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:652 +#: ../java/src/net/i2p/router/web/CertHelper.java:77 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:147 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:662 #: ../java/src/net/i2p/router/web/SummaryHelper.java:478 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:137 msgid "none" msgstr "semmi" @@ -283,43 +286,43 @@ msgstr "Alagutak elutasÃtva: kikapcsolás folyamatban" msgid "Rejecting tunnels" msgstr "Alagutak elutasÃtása" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:212 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:210 #, java-format msgid "Reseeding: got router info from file ({0} successful, {1} errors)." msgstr "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:284 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:282 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:28 msgid "Reseeding" msgstr "Újratáplálás (reseed) folyamatban" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:307 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:305 #, java-format msgid "Reseed fetched only 1 router." msgid_plural "Reseed fetched only {0} routers." msgstr[0] "Az újratáplálás csak 1 routert hozott." msgstr[1] "Az újratáplálás csak {0} routert hozott." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:314 msgid "Reseed failed." msgstr "Újratáplálás (reseed) sikertelen." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:317 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:315 #, java-format msgid "See {0} for help." msgstr "SegÃtségért lásd {0}." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:318 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 msgid "reseed configuration page" msgstr "újratáplálás (reseed) beállÃtási oldal" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:566 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:697 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:564 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:695 msgid "Reseeding: fetching seed URL." msgstr "Újratáplálás: táplálási URL kézbesÃtése." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:623 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:733 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:621 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:731 #, java-format msgid "" "Reseeding: fetching router info from seed URL ({0} successful, {1} errors)." @@ -384,12 +387,12 @@ msgid "Unreachable on any transport" msgstr "Egyik átvitelen sem érhetÅ‘ el" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:674 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:566 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:577 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:604 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:622 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1348 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2469 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2474 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:92 msgid "Status" msgstr "Ãllapot" @@ -404,12 +407,12 @@ msgid "{0} is used for outbound connections only" msgstr "A következÅ‘ csak kimenÅ‘ csatlakozásokhoz használva: {0}" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:711 -#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:283 +#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:295 msgid "UPnP is not enabled" msgstr "UPnP nincs engedélyezve" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:720 -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:167 msgid "Help" msgstr "SegÃtség" @@ -433,7 +436,7 @@ msgstr "Meghatározások" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:726 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1352 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2473 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:24 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:33 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:35 @@ -448,7 +451,7 @@ msgstr "A távoli társ, router hash alapján azonosÃtva" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:727 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1353 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Dir" msgstr "Könyvtár" @@ -475,14 +478,14 @@ msgstr "Mennyi idÅ‘ telt el az utolsó csomag fogadása / küldése óta" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:735 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1355 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2479 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 msgid "Idle" msgstr "Üres" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:736 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1356 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "In/Out" msgstr "Be/Ki" @@ -496,14 +499,14 @@ msgstr "Mennyi ideje lett a kapcsolat létrehozva" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:737 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1357 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:935 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2494 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:961 msgid "Up" msgstr "Fel" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:738 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1358 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2491 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2496 msgid "Skew" msgstr "Pontatlanság" @@ -552,7 +555,7 @@ msgstr "Jelenlegi maximális küldési csomag méret / becsült maximális fogad #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:748 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1359 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2508 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 msgid "TX" msgstr "Küldött" @@ -562,7 +565,7 @@ msgstr "A társnak küldött csomagok teljes száma" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:749 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1360 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2510 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 msgid "RX" msgstr "Fogadott" @@ -571,7 +574,7 @@ msgid "The total number of packets received from the peer" msgstr "A társtól érkezett csomagok teljes száma" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:750 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2518 msgid "Dup TX" msgstr "Duplex Küldött" @@ -580,7 +583,7 @@ msgid "The total number of packets retransmitted to the peer" msgstr "A társnak újraközölt csomagok teljes száma" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:751 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2520 msgid "Dup RX" msgstr "Duplex Fogadott" @@ -588,104 +591,104 @@ msgstr "Duplex Fogadott" msgid "The total number of duplicate packets received from the peer" msgstr "A társtól érkezett duplikált csomagok teljes száma" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:560 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:561 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 msgid "Service" msgstr "Szolgáltatás" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:564 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 msgid "WAN Common Interface Configuration" msgstr "WAN Ãltalános Interfész BeállÃtás" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:567 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:587 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:614 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:568 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:588 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:615 msgid "Type" msgstr "TÃpus" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:569 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:589 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:570 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:590 msgid "Upstream" msgstr "Felfelé menÅ‘" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:571 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:591 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:572 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:592 msgid "Downstream" msgstr "Lefelé jövÅ‘" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:575 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 msgid "WAN PPP Connection" msgstr "WAP PPP Kapcsolat" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:583 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:610 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:288 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:314 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:584 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:611 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:295 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:321 msgid "Uptime" msgstr "IndÃtás óta eltelt idÅ‘" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:593 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:616 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:594 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:617 msgid "External IP" msgstr "KülsÅ‘ IP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:597 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 msgid "Layer 3 Forwarding" msgstr "3. réteg TovábbÃtás" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:599 msgid "Default Connection Service" msgstr "Alapértelmezett Csatlakozási Szolgáltatás" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:602 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 msgid "WAN IP Connection" msgstr "WAN IP Kapcsolat" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:620 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 msgid "WAN Ethernet Link Configuration" msgstr "WAN Ethernet" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:641 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:642 msgid "Found Device" msgstr "Megvan az Eszköz" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:643 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:644 msgid "Subdevice" msgstr "Aleszköz" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:664 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:665 msgid "UPnP Status" msgstr "UPnP Státusz" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:668 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:669 msgid "Disabled UPnP Devices" msgstr "Letiltott UPnP Készülékek" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:682 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:683 msgid "" "UPnP has been disabled; Do you have more than one UPnP Internet Gateway " "Device on your LAN ?" msgstr "UPnP letiltva; van egynél több UPnP Internet Ãtjáró (Gateway) Eszköz a Helyi Hálózaton?" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:685 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:686 msgid "UPnP has not found any UPnP-aware, compatible device on your LAN." msgstr "UPnP nem talált UPnP-t használó kompatibilis eszköt a Helyi Hálózaton." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:693 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:694 #, java-format msgid "The current external IP address reported by UPnP is {0}" msgstr "Az UPnP által visszajelzett jelenlegi külsÅ‘ IP CÃm a következÅ‘: {0}" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:695 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:696 msgid "The current external IP address is not available." msgstr "A jelenleg külsÅ‘ IP cÃm nem áll rendelkezésre." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:699 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:700 #, java-format msgid "UPnP reports the maximum downstream bit rate is {0}bits/sec" msgstr "Az UPnP jelentése szerint a maximális lefelé jövÅ‘ bitráta {0} bit/mp" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:701 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:702 #, java-format msgid "UPnP reports the maximum upstream bit rate is {0}bits/sec" msgstr "Az UPnP jelentése szerint a maximális felfelé menÅ‘ bitráta {0} bit/mp" @@ -694,12 +697,12 @@ msgstr "Az UPnP jelentése szerint a maximális felfelé menÅ‘ bitráta {0} bit/ #. {1,number,#####} prevents 12345 from being output as 12,345 in the English #. locale. #. If you want the digit separator in your locale, translate as {1}. -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:709 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:710 #, java-format msgid "{0} port {1,number,#####} was successfully forwarded by UPnP." msgstr "UPnP sikeresen átirányÃtotta a következÅ‘t: {0} port {1,number,#####}." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:711 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:712 #, java-format msgid "{0} port {1,number,#####} was not forwarded by UPnP." msgstr "Nincs átirányÃtva az UPnP által a következÅ‘: {0} port {1,number,#####}." @@ -715,17 +718,17 @@ msgid "NTCP connections" msgstr "NTCP kapcsolatok" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1345 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2466 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2471 msgid "Limit" msgstr "Határ" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1346 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2467 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2472 msgid "Timeout" msgstr "IdÅ‘túllépés" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1354 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2483 msgid "IPv6" msgstr "IPv6" @@ -738,126 +741,126 @@ msgid "Backlogged?" msgstr "Visszanaplózva?" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1375 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2532 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2537 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Inbound" msgstr "BejövÅ‘" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1377 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2534 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2539 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Outbound" msgstr "KimenÅ‘" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1432 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2699 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2704 #, java-format msgid "{0} peer" msgid_plural "{0} peers" msgstr[0] "{0} peer" msgstr[1] "{0} peer" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2465 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2470 msgid "UDP connections" msgstr "UDP csatlakozások" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2475 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 msgid "Sort by peer hash" msgstr "Rendezés társ hash szerint" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Direction/Introduction" msgstr "Irány/Bemutató" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 msgid "Sort by idle inbound" msgstr "Rendezés üres bejövÅ‘ szerint" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 msgid "Sort by idle outbound" msgstr "Rendezés üres kimenÅ‘ szerint" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 msgid "Sort by inbound rate" msgstr "Rendezés bejövÅ‘ sebesség szerint" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 msgid "Sort by outbound rate" msgstr "Rendezés kimenÅ‘ sebeeség szerint" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 msgid "Sort by connection uptime" msgstr "Rendezés kapcsolat indÃtása óta eltelt idÅ‘ szerint" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 msgid "Sort by clock skew" msgstr "Rendezés óra eltérése szerint" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 msgid "Sort by congestion window" msgstr "Rendezés torlódás ablak szerint" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2502 msgid "Sort by slow start threshold" msgstr "Rendezés lassú indÃtás küszöb szerint" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2505 msgid "Sort by round trip time" msgstr "Rendezés körbejárási idÅ‘ szerint" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2504 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 msgid "Sort by retransmission timeout" msgstr "Rendezés újraátviteli idÅ‘túllépés szerint" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2507 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2512 msgid "Sort by outbound maximum transmit unit" msgstr "Rendezés maximális kimenÅ‘ továbbÃtási egységenként" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 msgid "Sort by packets sent" msgstr "Rendezés küldött csomagok szerint" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2511 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 msgid "Sort by packets received" msgstr "Rendezés fogadott csomagok szerint" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2519 msgid "Sort by packets retransmitted" msgstr "Rendezés újraközvetÃtett csomagok szerint" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2521 msgid "Sort by packets received more than once" msgstr "Rendezés több, mint egyszer fogadott csomagok szerint" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2536 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2541 msgid "We offered to introduce them" msgstr "Fejajánlottuk, hogy bemutatjuk Å‘ket" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2538 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2543 msgid "They offered to introduce us" msgstr "Felajánlották, hogy bemutatnak minket" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2542 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2547 msgid "Choked" msgstr "EltömÅ‘dött" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2550 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2555 msgid "1 fail" msgstr "1 sikertelen" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2552 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2557 #, java-format msgid "{0} fails" msgstr "{0} sikertelen" #. 1 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2558 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2563 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:166 #: ../java/src/net/i2p/router/web/ProfilesHelper.java:13 msgid "Banned" msgstr "Kitiltva" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2617 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2622 msgid "backlogged" msgstr "" @@ -874,96 +877,96 @@ msgstr "" msgid "Dropping tunnel requests: Overloaded" msgstr "Alagút kérések elvetése: túlterhelt" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:693 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:695 msgid "Rejecting tunnels: Hidden mode" msgstr "Alagutak elvetése: Rejtett mód" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:721 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:723 msgid "Rejecting tunnels: Request overload" msgstr "Alagutak elvetése: kérés túlterhelt" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:752 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:754 msgid "Rejecting tunnels: Connection limit" msgstr "Alagutak elvetése: Kapcsolódási korlát" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:964 -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:997 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:966 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:999 msgid "Dropping tunnel requests: High load" msgstr "Alagút kérések elvetése: Magas töltöttség" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1076 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1078 msgid "Dropping tunnel requests: Queue time" msgstr "Alagút kérések elvetése: Sorba állÃtási idÅ‘" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:884 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:895 #, java-format msgid "New plugin version {0} is available" msgstr "ElérhetÅ‘ új kiegészÃtÅ‘ verzió: {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:964 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:975 #, java-format msgid "Update check failed for plugin {0}" msgstr "{0} kiegészÃtÅ‘ frissÃtés keresése sikertelen" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:968 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:979 #, java-format msgid "No new version is available for plugin {0}" msgstr "Nincs elérhetÅ‘ új verzió a következÅ‘ kiegészÃtÅ‘höz: {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:992 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1003 #, java-format msgid "{0}B transferred" msgstr "{0} B átviltelre került." -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1051 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1062 #, java-format msgid "Install failed from {0}" msgstr "Sikertelen telepÃtés tÅ‘le: {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1053 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1064 #: ../java/src/net/i2p/router/update/UpdateRunner.java:298 #, java-format msgid "Transfer failed from {0}" msgstr "Sikertelen átvitel a következÅ‘tÅ‘l: {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1328 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1339 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1403 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 #: ../java/src/net/i2p/router/web/SummaryHelper.java:715 msgid "Update downloaded" msgstr "FrissÃtés letöltve" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 msgid "Restarting" msgstr "ÚjraindÃtás" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 msgid "Update verified" msgstr "FrissÃtés igazolva" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1381 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:189 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:306 #, java-format msgid "from {0}" msgstr "innen {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1396 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1407 #, java-format msgid "Unsigned update file from {0} is corrupt" msgstr "Az aláÃrás nélküli frissÃtési fájl korrupt a következÅ‘tÅ‘l: {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1425 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1436 #, java-format msgid "Failed copy to {0}" msgstr "Sikertelen másolás a következÅ‘re: {0}" -#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:47 +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:49 #: ../java/src/net/i2p/router/update/DevSU3UpdateRunner.java:40 #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:55 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:111 -#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:62 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:64 #: ../java/src/net/i2p/router/update/UnsignedUpdateRunner.java:41 #: ../java/src/net/i2p/router/update/UpdateRunner.java:155 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:573 @@ -972,6 +975,13 @@ msgstr "Sikertelen másolás a következÅ‘re: {0}" msgid "HTTP client proxy tunnel must be running" msgstr "HTTP kliens proxy alagútnak futnia kell" +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:83 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:242 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:88 +#, java-format +msgid "Requires Java version {0} but installed Java version is {1}" +msgstr "{0} Java verzió szükséges, de a telepÃtett Java verzió {1}" + #. set status before thread to ensure UI feedback #: ../java/src/net/i2p/router/update/DevSU3UpdateHandler.java:91 #: ../java/src/net/i2p/router/update/PluginUpdateHandler.java:82 @@ -981,24 +991,19 @@ msgstr "HTTP kliens proxy alagútnak futnia kell" msgid "Updating" msgstr "FrissÃtés" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:209 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:218 msgid "In-network updates disabled. Check package manager." msgstr "" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:215 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:224 msgid "No write permission for I2P install directory." msgstr "" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:223 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:232 #, java-format msgid "You must first update to version {0}" msgstr "ElÅ‘ször frissÃtened kell a {0} verzióra" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:233 -#, java-format -msgid "Requires Java version {0} but installed Java version is {1}" -msgstr "{0} Java verzió szükséges, de a telepÃtett Java verzió {1}" - #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:62 #, java-format msgid "Checking for update of plugin {0}" @@ -1202,8 +1207,10 @@ msgid "unban now" msgstr "Kitiltás visszavonása most" #: ../java/src/net/i2p/router/web/CSSHelper.java:149 -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../java/strings/Strings.java:29 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:217 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:221 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:219 @@ -1273,6 +1280,8 @@ msgstr "Kitiltás visszavonása most" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:217 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:219 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:224 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:228 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:230 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:222 @@ -1298,6 +1307,16 @@ msgstr "Kitiltás visszavonása most" msgid "I2P Router Console" msgstr "I2P Router Konzol" +#: ../java/src/net/i2p/router/web/CertHelper.java:25 +msgid "Local SSL Certificates" +msgstr "" + +#: ../java/src/net/i2p/router/web/CertHelper.java:46 +#: ../java/src/net/i2p/router/web/CertHelper.java:51 +#: ../java/strings/Strings.java:63 +msgid "I2PTunnel" +msgstr "I2PAlagút" + #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:62 msgid "Error updating the configuration - please see the error logs" msgstr "Hiba a beállÃtások frissÃtésekor - kérlek, nézd át a hibanaplót" @@ -1312,7 +1331,8 @@ msgstr "BeállÃtások sikeresen elmentve" #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:98 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:622 #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:391 -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:151 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:109 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:160 msgid "" "Error saving the configuration (applied but not saved) - please see the " "error logs" @@ -1517,7 +1537,7 @@ msgid "Add Client" msgstr "Kliens Hozzáadása" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:116 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:503 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:517 #: ../java/src/net/i2p/router/web/SummaryHelper.java:452 msgid "Client" msgstr "Kliens" @@ -1549,9 +1569,9 @@ msgid "Plugin" msgstr "KiegészÃtÅ‘" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:248 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:304 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 msgid "Version" msgstr "Verzió" @@ -1572,9 +1592,9 @@ msgid "License" msgstr "Licensz" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:294 -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/HomeHelper.java:171 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:157 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/HomeHelper.java:178 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:164 msgid "Website" msgstr "Weboldal" @@ -1609,7 +1629,7 @@ msgstr "Törlés" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:21 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigUIHandler.java:19 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:970 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:996 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:496 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:516 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:532 @@ -1619,7 +1639,7 @@ msgstr "Kiválasztottak Törlése" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:23 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1015 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:494 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:502 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:514 @@ -1715,11 +1735,11 @@ msgstr "nem található a kulcstárban" msgid "Invalid destination" msgstr "Érvénytelen célállomás" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:82 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:84 msgid "Log overrides updated" msgstr "Napló felülbÃrálás frissÃtve" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:163 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:165 msgid "Log configuration saved" msgstr "Napló beállÃtások elmentve" @@ -1767,8 +1787,8 @@ msgstr "WARN" #: ../java/src/net/i2p/router/web/ConfigLoggingHelper.java:85 #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:170 -#: ../java/src/net/i2p/router/web/HomeHelper.java:208 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:904 +#: ../java/src/net/i2p/router/web/HomeHelper.java:215 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 msgid "Remove" msgstr "EltávolÃtás" @@ -1787,11 +1807,12 @@ msgid "Home Page" msgstr "KezdÅ‘lap" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:328 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:335 msgid "Network" msgstr "Hálózat" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:320 @@ -1825,6 +1846,7 @@ msgstr "Hálózat" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:292 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:322 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:297 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:292 @@ -1843,8 +1865,8 @@ msgid "UI" msgstr "KezelÅ‘felület" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:179 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:486 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:186 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 #: ../java/strings/Strings.java:73 msgid "Tunnels" msgstr "Alagút" @@ -1863,15 +1885,15 @@ msgid "Logging" msgstr "Naplózás" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:185 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:372 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:192 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:386 #: ../java/strings/Strings.java:68 msgid "Peers" msgstr "Társ" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:497 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:230 msgid "Stats" msgstr "Statisztika" @@ -1887,7 +1909,7 @@ msgstr "Haladó" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:491 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:479 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:641 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:593 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:560 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:511 msgid "Save changes" @@ -2068,7 +2090,7 @@ msgid "Unsupported" msgstr "Nem támogatott" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:24 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 msgid "Save changes and reseed now" msgstr "Változtatások mentése és újratáplálás" @@ -2116,7 +2138,16 @@ msgid_plural "Reseed successful, loaded {0} router infos from file" msgstr[0] "" msgstr[1] "" -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:149 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:99 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +msgid "Reset URL list" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:107 +msgid "URL list reset successfully" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:158 msgid "Configuration saved successfully." msgstr "BeállÃtások mentése sikeres." @@ -2616,8 +2647,8 @@ msgid "User Name" msgstr "" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:183 -#: ../java/src/net/i2p/router/web/HomeHelper.java:235 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:972 +#: ../java/src/net/i2p/router/web/HomeHelper.java:242 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:998 msgid "Add" msgstr "Hozzáadás" @@ -2848,13 +2879,13 @@ msgstr "Esemény" msgid "Details" msgstr "Részletek" -#: ../java/src/net/i2p/router/web/FormHandler.java:251 +#: ../java/src/net/i2p/router/web/FormHandler.java:253 msgid "" "Invalid form submission, probably because you used the 'back' or 'reload' " "button on your browser. Please resubmit." msgstr "Úrlap küldése sikertelen, valószÃnűleg a \"vissza\" vagy az \"újratöltés\" gombokat használtad a böngészÅ‘ben. Kérlek, hogy küldd újra." -#: ../java/src/net/i2p/router/web/FormHandler.java:253 +#: ../java/src/net/i2p/router/web/FormHandler.java:255 msgid "" "If the problem persists, verify that you have cookies enabled in your " "browser." @@ -2985,156 +3016,169 @@ msgstr "BeállÃtások mentése és ábra újrarajzolása" msgid "Graph settings saved" msgstr "Ãbra beállÃtások elmentve" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:229 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:236 msgid "Addressbook" msgstr "CÃmjegyzék" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:227 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:234 msgid "Manage your I2P hosts file here (I2P domain name resolution)" msgstr "I2P hosts fájl kezelése itt (I2P domain név feloldás)" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 msgid "Configure Bandwidth" msgstr "Sávszélesség BeállÃtása" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:330 msgid "I2P Bandwidth Configuration" msgstr "I2P Sávszélességének BeállÃtása" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Configure Language" msgstr "Nyelv BeállÃtása" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Console Language Selection" msgstr "Kozol Nyelvének Kiválasztása" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 msgid "Customize Home Page" msgstr "KezdÅ‘lap Testreszabása" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:346 msgid "I2P Home Page Configuration" msgstr "I2P KezdÅ‘lap BeállÃtása" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:139 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:146 msgid "Anonymous webmail client" msgstr "AnonÃm webes e-mail kliens" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:141 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:148 msgid "Email" msgstr "E-mail" -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:251 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 msgid "I2P Router Help" msgstr "I2P Router SegÃtség" -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:161 msgid "Router Console" msgstr "Router Konzol" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:145 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:152 msgid "Built-in anonymous BitTorrent Client" msgstr "BeépÃtett anonÃm BitTorrent Kliens" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:147 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:154 msgid "Torrents" msgstr "Torrent" -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:155 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:162 msgid "Local web server" msgstr "Helyi web szerver" -#: ../java/src/net/i2p/router/web/HomeHelper.java:41 +#: ../java/src/net/i2p/router/web/HomeHelper.java:43 msgid "The Anoncoin project" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug Reports" msgstr "Hibajelentés" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug tracker" msgstr "HibakövetÅ‘" #. "colombo-bt.i2p" + S + _x("The Italian Bittorrent Resource") + S + "http #. ://colombo-bt.i2p/" + S + I + "colomboicon.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Dev Forum" msgstr "FejlesztÅ‘i Fórum" -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Development forum" msgstr "Fejlesztési fórum" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Bittorrent tracker" msgstr "Bittorrent követÅ‘ (tracker)" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 msgid "diftracker" msgstr "diftracker" -#: ../java/src/net/i2p/router/web/HomeHelper.java:46 +#: ../java/src/net/i2p/router/web/HomeHelper.java:48 msgid "I2P Applications" msgstr "I2P Alkalmazások" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +msgid "Anonymous cryptocurrency exchange" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "FAQ" msgstr "GYIK" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "Frequently Asked Questions" msgstr "Gyakran Ismételt Kérdések" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Community forum" msgstr "Közösségi fórum" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Forum" msgstr "Fórum" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "" "A public anonymous Git hosting site - supports pulling via Git and HTTP and " "pushing via SSH" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "Anonymous Git Hosting" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:50 +#: ../java/src/net/i2p/router/web/HomeHelper.java:53 msgid "HiddenGate" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "Anonymous wiki - share the knowledge" +msgstr "" + +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "I2P Wiki" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Microblog" msgstr "Mikroblog" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Your premier microblogging service on I2P" msgstr "Az elsÅ‘számú mikroblog szolgáltatás az I2P hálózaton" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 msgid "Javadocs" msgstr "Java dokumentumok" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical documentation" msgstr "Szakmai dokumentáció" @@ -3142,91 +3186,98 @@ msgstr "Szakmai dokumentáció" #. "http://jisko.i2p/" + S + I + "jisko_console_icon.png" + S + #. _x("Key Server") + S + _x("OpenPGP Keyserver") + S + "http://keys.i2p/" + S #. + I + "education.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +#: ../java/src/net/i2p/router/web/HomeHelper.java:60 msgid "Debian and Tahoe-LAFS repositories" msgstr "Debian és Tahoe-LAFS szoftvertár" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free Web Hosting" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free eepsite hosting with PHP and MySQL" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "I2P Pastebin" msgstr "I2P Webes SzövegmegjelenÃtÅ‘ (Pastebin)" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "Pastebin" msgstr "Webes SzövegmegjelenÃtÅ‘ (Pastebin)" -#: ../java/src/net/i2p/router/web/HomeHelper.java:58 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 msgid "I2P News" msgstr "I2P HÃrek" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +msgid "Planet I2P" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Add-on directory" msgstr "KiegészÃtÅ‘ könyvtár" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Plugins" msgstr "KiegészÃtÅ‘k" -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Postman's Tracker" msgstr "Postman KövetÅ‘je (tracker)" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "I2P home page" msgstr "I2P honlap" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "Project Website" msgstr "Projekt weboldala" +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:68 +msgid "Russian News Feed" +msgstr "" + #. "Salt" + S + "salt.i2p" + S + "http://salt.i2p/" + S + I + #. "salt_console.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +#: ../java/src/net/i2p/router/web/HomeHelper.java:70 msgid "I2P Network Statistics" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical Docs" msgstr "Szakmai dokumentáció" -#: ../java/src/net/i2p/router/web/HomeHelper.java:65 +#: ../java/src/net/i2p/router/web/HomeHelper.java:72 msgid "Trac Wiki" msgstr "Trac Wiki" -#: ../java/src/net/i2p/router/web/HomeHelper.java:66 -msgid "Ugha's Wiki" -msgstr "Ugha wikije" - -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Seedless and the Robert BitTorrent applications" msgstr "Seedless és a Robert BitTorrent alkalmazások" -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#. _x("Ugha's Wiki") + S + S + "http://ugha.i2p/" + S + I + +#. "billiard_marker.png" + S + +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Sponge's main site" msgstr "Sponge fÅ‘oldala" -#: ../java/src/net/i2p/router/web/HomeHelper.java:108 +#: ../java/src/net/i2p/router/web/HomeHelper.java:115 msgid "The HTTP proxy is not up" msgstr "A HTTP proxy nincs bekapcsolva" -#: ../java/src/net/i2p/router/web/HomeHelper.java:110 +#: ../java/src/net/i2p/router/web/HomeHelper.java:117 #, java-format msgid "Your browser is not properly configured to use the HTTP proxy at {0}" msgstr "A böngészÅ‘d nincs megfelelÅ‘en beállÃtva, hogy HTTP proxyt használjon a következÅ‘n: {0}" -#: ../java/src/net/i2p/router/web/HomeHelper.java:210 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:906 +#: ../java/src/net/i2p/router/web/HomeHelper.java:217 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:932 msgid "Name" msgstr "Név" -#: ../java/src/net/i2p/router/web/HomeHelper.java:212 +#: ../java/src/net/i2p/router/web/HomeHelper.java:219 msgid "URL" msgstr "URL" @@ -3354,217 +3405,226 @@ msgstr "Összes router minden adattal" msgid "LeaseSets" msgstr "LeaseSet-ek" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:105 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:106 #: ../java/strings/Strings.java:69 msgid "Router" msgstr "Router" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:112 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:113 msgid "not found in network database" msgstr "nem található a hálózati adatbázisban" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:156 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 msgid "LeaseSet" msgstr "LeaseSet" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:158 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:163 msgid "Local" msgstr "Helyi" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:160 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:165 msgid "Unpublished" msgstr "Nem közzétett" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:176 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:166 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:181 msgid "Destination" msgstr "Célállomás" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:173 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:185 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:178 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 msgid "Add to local addressbook" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:217 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:195 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:222 #, java-format msgid "Expires in {0}" msgstr "Lejár {0} belül" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:192 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:219 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:197 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:224 #, java-format msgid "Expired {0} ago" msgstr "Lejárt {0} ezelÅ‘tt" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Gateway" msgstr "Ãtjáró (Gateway)" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 msgid "Lease" msgstr "Kiad" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:213 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:218 msgid "Tunnel" msgstr "Alagút" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:280 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:286 msgid "Not initialized" msgstr "Nincs inicializálva" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:330 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:342 msgid "Network Database Router Statistics" msgstr "Hálózati Adatbázis Router Statisztika" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Count" msgstr "Mennyiség" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 msgid "Transports" msgstr "Ãtvitel" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Country" msgstr "Ország" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:429 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:453 msgid "Our info" msgstr "Mi infónk" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:431 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:455 msgid "Peer info for" msgstr "Társ infó a következÅ‘nek" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:433 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:457 msgid "Full entry" msgstr "Teljes bejegyzés" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 #: ../java/src/net/i2p/router/web/SummaryHelper.java:152 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:726 msgid "Hidden" msgstr "Rejtett" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 msgid "Updated" msgstr "FrissÃtett" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:441 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:444 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:465 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:468 #, java-format msgid "{0} ago" msgstr "{0} elÅ‘tt" #. shouldnt happen -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:443 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:447 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:467 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:471 msgid "Published" msgstr "Közzétett" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:449 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 msgid "Signing Key" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:451 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:475 msgid "Address(es)" msgstr "CÃm(ek)" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:463 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:487 msgid "cost" msgstr "költség" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "Hidden or starting up" msgstr "Rejtett vagy indul" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU" msgstr "SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU with introducers" msgstr "SSU bemutatókkal" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP" msgstr "NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU" msgstr "NTCP és SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU with introducers" msgstr "NTCP és SSU bemutatókkal" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 Only SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU" msgstr "IPv6 SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP" msgstr "IPv6 NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU" msgstr "IPv6 NTCP, SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 Only NTCP, SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NewsHelper.java:295 +#: ../java/src/net/i2p/router/web/NewsFeedHelper.java:80 +#, java-format +msgid "by {0}" +msgstr "" + +#: ../java/src/net/i2p/router/web/NewsHelper.java:292 #, java-format msgid "News last updated {0} ago." msgstr "HÃrek utoljára frissÃtve: {0} " -#: ../java/src/net/i2p/router/web/NewsHelper.java:301 +#: ../java/src/net/i2p/router/web/NewsHelper.java:298 #, java-format msgid "News last checked {0} ago." msgstr "HÃrek utoljára ellenÅ‘rzve ezelÅ‘tt: {0} " -#: ../java/src/net/i2p/router/web/NewsHelper.java:310 +#: ../java/src/net/i2p/router/web/NewsHelper.java:307 msgid "Hide news" msgstr "HÃrek elrejtése" -#: ../java/src/net/i2p/router/web/NewsHelper.java:313 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:647 +#: ../java/src/net/i2p/router/web/NewsHelper.java:310 msgid "Show news" msgstr "HÃrek mutatása" +#: ../java/src/net/i2p/router/web/NewsHelper.java:314 +msgid "Show all news" +msgstr "" + #: ../java/src/net/i2p/router/web/PluginStarter.java:140 msgid "Checking for plugin updates" msgstr "KiegészÃtÅ‘ frissÃtések keresése" #: ../java/src/net/i2p/router/web/PluginStarter.java:155 +#: ../java/src/net/i2p/router/web/PluginStarter.java:161 msgid "Plugin update check failed" msgstr "" -#: ../java/src/net/i2p/router/web/PluginStarter.java:193 +#: ../java/src/net/i2p/router/web/PluginStarter.java:199 #, java-format msgid "1 plugin updated" msgid_plural "{0} plugins updated" msgstr[0] "1 kiegészÃtÅ‘ lett frissÃtve" msgstr[1] "{0} kiegészÃtÅ‘ lett frissÃtve" -#: ../java/src/net/i2p/router/web/PluginStarter.java:195 +#: ../java/src/net/i2p/router/web/PluginStarter.java:201 msgid "Plugin update check complete" msgstr "KiegészÃtÅ‘k frissÃtéseinek ellenÅ‘rzése elkészült" @@ -3630,7 +3690,7 @@ msgid "Failing" msgstr "Elromló" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:135 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:411 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:425 msgid "Integrated" msgstr "Integrált" @@ -3899,277 +3959,287 @@ msgstr "Ãbra Események Száma" msgid "Lifetime average value" msgstr "Élethossz átlag érték" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:121 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:128 msgid "I2P Router Help & FAQ" msgstr "I2P Router SegÃtség és GYIK" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:123 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:130 msgid "Help & FAQ" msgstr "SegÃtség és GYIK" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:131 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:138 msgid "" "Configure startup of clients and webapps (services); manually start dormant " "services" msgstr "BeállÃtások a kliensek és webalkalmazások (szolgáltatások) indÃtására vonatkozóan; elfekvÅ‘ szolgáltatások kézi indÃtása" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:133 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:140 msgid "I2P Services" msgstr "I2P Szolgáltatások" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:169 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:176 msgid "Configure I2P Router" msgstr "I2P Router BeállÃtása" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:171 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:178 msgid "I2P Internals" msgstr "I2P BelsÅ‘" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:177 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:484 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:184 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:498 msgid "View existing tunnels and tunnel build status" msgstr "LétezÅ‘ alagutak és alagút épÃtési állapot megtekintése" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:183 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:370 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:190 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:384 msgid "Show all current peer connections" msgstr "Minden jelenlegi társ csatlakozás megjelenÃtése" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:189 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:196 msgid "Show recent peer performance profiles" msgstr "A legutóbbi társ teljesÃtmény profilok megjelenÃtése" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:191 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:198 msgid "Profiles" msgstr "Profil" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:195 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:202 msgid "Show list of all known I2P routers" msgstr "Minden ismert I2P router listájának megjelenÃtése" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:197 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:204 msgid "NetDB" msgstr "NetDB" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:201 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:208 msgid "Health Report" msgstr "Egészségi Ãllapot" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:203 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:210 msgid "Logs" msgstr "Napló" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:214 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 msgid "Graph router performance" msgstr "Ãbra router teljesÃtmény" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:216 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 msgid "Graphs" msgstr "Ãbra" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:228 msgid "Textual router performance statistics" msgstr "Szöveges router teljesÃtmény statisztika" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:233 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:240 #: ../java/src/net/i2p/router/web/SummaryHelper.java:438 msgid "Local Tunnels" msgstr "Helyi Alagutak" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:235 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:242 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:164 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:337 msgid "Hidden Services Manager" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:253 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:260 msgid "General" msgstr "Ãltalános" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 msgid "" "Your Local Identity is your unique I2P router identity, similar to an ip " "address but tailored to I2P. " msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:259 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:266 msgid "Never disclose this to anyone, as it can reveal your real world ip." msgstr "Ezt ne tedd közzé, mert tartalmazza az igazi ip cÃmedet." -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:261 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:268 msgid "Local Identity" msgstr "Helyi Személyazonosság" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:272 msgid "Your unique I2P router identity is" msgstr "Egyedi I2P router azonosÃtód a következÅ‘:" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:269 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:276 msgid "never reveal it to anyone" msgstr "soha ne fedd fel senkinek" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:271 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 msgid "show" msgstr "Mutat" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:275 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:301 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:282 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:308 msgid "The version of the I2P software we are running" msgstr "A futó I2P alkalmazás verziója" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:292 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:318 msgid "How long we've been running for this session" msgstr "Mióta fut ez a munkaszakasz" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:326 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:333 msgid "" "Help with configuring your firewall and router for optimal I2P performance" msgstr "SegÃtség a tűzfal és router beállÃtására az I2P optimális teljesÃtménye érdekében" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:337 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:344 msgid "See more information on the wiki" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:339 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:346 msgid "Warning: ECDSA is not available. Update your Java or OS" msgstr "" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:351 +#, java-format +msgid "Warning: Java version {0} is no longer supported by I2P." +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#, java-format +msgid "Update Java to version {0} or higher to receive I2P updates." +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:365 msgid "Configure I2P Updates" msgstr "I2P frissÃtések konfigurálása" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:367 msgid "I2P Update" msgstr "I2P frissÃtés" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:378 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:392 msgid "Peers we've been talking to in the last few minutes/last hour" msgstr "Utóbbi percek/óra kapcsolatai" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:381 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:395 msgid "Active" msgstr "AktÃv" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:390 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:404 msgid "The number of peers available for building client tunnels" msgstr "A kliens csatornát létrehozó kapcsolatok száma" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:393 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:407 msgid "Fast" msgstr "Gyors" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:399 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:413 msgid "The number of peers available for building exploratory tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:402 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:416 msgid "High capacity" msgstr "Nagy kapacitású" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:408 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:422 msgid "The number of peers available for network database inquiries" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:417 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:431 msgid "The total number of peers in our network database" msgstr "A hálózati adatbázisban szereplÅ‘ összes kapcsolat száma" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:420 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:434 msgid "Known" msgstr "Ismert" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:440 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:454 msgid "Configure router bandwidth allocation" msgstr "A router szávszélesség elosztásának beállÃtása" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:442 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:456 msgid "Bandwidth in/out" msgstr "Sávszélesség Be/Ki" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:462 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:476 msgid "Total" msgstr "Összes" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:469 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:483 msgid "Used" msgstr "Használt" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:491 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:505 msgid "" "Used for building and testing tunnels, and communicating with floodfill " "peers" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:494 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:508 msgid "Exploratory" msgstr "FelderÃtÅ‘" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:514 msgid "Tunnels we are using to provide or access services on the network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:509 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:523 msgid "" "Tunnels we are participating in, directly contributing bandwidth to the " "network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:512 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:526 msgid "Participating" msgstr "RésztvevÅ‘" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:518 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:532 msgid "" "The ratio of tunnel hops we provide to tunnel hops we use - a value greater " "than 1.00 indicates a positive contribution to the network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:521 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:535 msgid "Share ratio" msgstr "Megosztási ráta" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:534 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:548 msgid "What's in the router's job queue?" msgstr "Mi van a router munka várólistájában?" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:536 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 msgid "Congestion" msgstr "Torlódás" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:541 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:555 msgid "Indicates router performance" msgstr "A router teljesÃtményét szemlélteti" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:544 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:558 msgid "Job lag" msgstr "Feladat késés" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:564 msgid "Indicates how quickly outbound messages to other I2P routers are sent" msgstr "Más I2P routereknek küldött üzenetek gyorsaságát szemlélteti" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:553 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:567 msgid "Message delay" msgstr "Üzenet késés" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:560 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:574 msgid "Round trip time for a tunnel test" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:563 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:577 msgid "Tunnel lag" msgstr "Alagút lemaradás" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:570 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:584 msgid "Queued requests from other routers to participate in tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:573 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:587 msgid "Backlog" msgstr "Vissznapló" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:608 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:623 msgid "News & Updates" msgstr "HÃrek & FrissÃtések" @@ -4282,17 +4352,21 @@ msgid "Click Shutdown and restart to install" msgstr "TelepÃtéshez kattints a lekapcsolás és újraindÃtás -ra" #: ../java/src/net/i2p/router/web/SummaryHelper.java:720 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:735 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:737 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:749 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:761 #, java-format msgid "Version {0}" msgstr "{0} Verzió" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:734 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:736 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:748 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:760 msgid "Update available" msgstr "FrissÃtés elérhetÅ‘" #. Note to translators: parameter is a version, e.g. "0.8.4" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:758 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:784 #, java-format msgid "Download {0} Update" msgstr "{0} FrissÃtés Letöltése" @@ -4301,7 +4375,7 @@ msgstr "{0} FrissÃtés Letöltése" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:766 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:792 #, java-format msgid "Download Signed<br>Development Update<br>{0}" msgstr "" @@ -4310,56 +4384,56 @@ msgstr "" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:774 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 #, java-format msgid "Download Unsigned<br>Update {0}" msgstr "AláÃrás nélküli<br>FrissÃtés Letöltése {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:798 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:824 msgid "Help with firewall configuration" msgstr "SegÃtség a tűzfal beállÃtásához" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:826 msgid "Check network connection and NAT/firewall" msgstr "EllenÅ‘rizd a hálózati kapcsolatokat és a NAT-ot/tűzfalat" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:819 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:845 msgid "Reseed" msgstr "Újratáplálás (reseed)" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:908 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:934 msgid "Order" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:925 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:951 msgid "Top" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:956 msgid "Move to top" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:940 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:966 msgid "Move up" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:948 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:974 msgid "Down" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:953 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:979 msgid "Move down" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:958 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:984 msgid "Bottom" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:963 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 msgid "Move to bottom" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:975 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1001 msgid "Select a section to add" msgstr "" @@ -4406,100 +4480,100 @@ msgstr "Kliens alagutak a következÅ‘höz" msgid "dead" msgstr "halott" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:70 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:69 msgid "Participating tunnels" msgstr "RésztvevÅ‘ alagutak" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "Receive on" msgstr "Fogadás a következÅ‘n" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Expiration" msgstr "Lejárat" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Send on" msgstr "Küldés a következÅ‘n" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Rate" msgstr "Ráta" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Role" msgstr "Szerep" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Usage" msgstr "Használat" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:111 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:113 msgid "grace period" msgstr "türelmi idÅ‘" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:121 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 msgid "Outbound Endpoint" msgstr "KimenÅ‘ Végpont" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 msgid "Inbound Gateway" msgstr "BejövÅ‘ Ãtjáró (Gateway)" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:127 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:174 msgid "Participant" msgstr "RésztvevÅ‘" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:130 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:133 #, java-format msgid "Limited display to the {0} tunnels with the highest usage" msgstr "KijelzÅ‘ limitálva {0} alagútra legtöbb használattal" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:131 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:135 msgid "Inactive participating tunnels" msgstr "Nem aktÃv résztvevÅ‘ alagút" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:132 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:224 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:138 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:232 msgid "Lifetime bandwidth usage" msgstr "Élethossz sávszélesség használat" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Expiry" msgstr "Lejárat" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:165 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 msgid "Participants" msgstr "RésztvevÅ‘k" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:177 msgid "Endpoint" msgstr "Végpont" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 #: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "Build in progress" msgstr "ÉpÃtés folyamatban" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 msgid "inbound" msgstr "BejövÅ‘" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "outbound" msgstr "kimenÅ‘" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:223 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:231 msgid "No tunnels; waiting for the grace period to end." msgstr "Nincsenek alagutak; várakozás a türelmi idÅ‘ végéig." -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:225 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:233 msgid "in" msgstr "be" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:234 msgid "out" msgstr "ki" @@ -4636,10 +4710,6 @@ msgstr "TitkosÃtás" msgid "i2cp" msgstr "i2cp" -#: ../java/strings/Strings.java:63 -msgid "I2PTunnel" -msgstr "I2PAlagút" - #: ../java/strings/Strings.java:64 msgid "InNetPool" msgstr "InNetKészlet" @@ -4686,10 +4756,12 @@ msgstr "kulcs" msgid "port" msgstr "port" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 -msgid "configure bandwidth" -msgstr "sávszélesség beállÃtása" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:146 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:318 +msgid "Certificates" +msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:153 @@ -4723,6 +4795,7 @@ msgstr "sávszélesség beállÃtása" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:149 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:155 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:154 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:149 @@ -4738,6 +4811,7 @@ msgstr "Router " #. We have intl defined when this is included, but not when compiled #. standalone. +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:333 @@ -4770,6 +4844,7 @@ msgstr "Router " #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:305 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:310 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:305 @@ -4785,6 +4860,7 @@ msgid "Refresh (s)" msgstr "FrissÃt" #. ditto +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:337 @@ -4817,6 +4893,7 @@ msgstr "FrissÃt" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:309 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:339 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:314 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:309 @@ -4831,6 +4908,10 @@ msgstr "FrissÃt" msgid "Enable" msgstr "Engedélyezés" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 +msgid "configure bandwidth" +msgstr "sávszélesség beállÃtása" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:437 msgid "Bandwidth limiter" msgstr "Sávszélesség korlátozása" @@ -4907,7 +4988,7 @@ msgstr "Haladó hálózati beállÃtások lap" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:501 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:477 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:639 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:587 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:558 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:509 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:461 @@ -5940,51 +6021,51 @@ msgstr "Kizárólag nem-SSL használata" msgid "Reseed URLs" msgstr "Újratáplálási URL-ek" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:541 msgid "Enable HTTP Proxy?" msgstr "HTTP Proxy engedélyezve legyen?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:543 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:545 msgid "HTTP Proxy Host" msgstr "HTTP Proxy Hoszt" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:547 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:549 msgid "HTTP Proxy Port" msgstr "HTTP Proxy Port" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:551 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:553 msgid "Use HTTP Proxy Authorization?" msgstr "HTTP Proxy-hitelesÃtés használata?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:555 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:557 msgid "HTTP Proxy Username" msgstr "HTTP Proxy Felhasználónév" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:559 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:561 msgid "HTTP Proxy Password" msgstr "HTTP Proxy Jelszó" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:563 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:565 msgid "Enable HTTPS Proxy?" msgstr "HTTPS Proxy engedélyezése?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:567 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:569 msgid "HTTPS Proxy Host" msgstr "HTTPS Proxy Hoszt" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:571 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:573 msgid "HTTPS Proxy Port" msgstr "HTTPS Proxy Port" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:575 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:577 msgid "Use HTTPS Proxy Authorization?" msgstr "HTTPS Proxy-hitelesÃtés használata?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:579 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:581 msgid "HTTPS Proxy Username" msgstr "HTTPS Proxy Felhasználónév" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:583 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:585 msgid "HTTPS Proxy Password" msgstr "HTTPS Proxy Jelszó" @@ -6543,6 +6624,14 @@ msgstr "" msgid "I2P Network Database" msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:148 +msgid "News" +msgstr "" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:344 +msgid "Latest News" +msgstr "" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:152 msgid "WebApp Not Found" msgstr "WebAlkalmazás Nem Található" diff --git a/apps/routerconsole/locale/messages_it.po b/apps/routerconsole/locale/messages_it.po index 931aa5c65d9150587c1357a1a24fbcfdde34b717..93b0a9d80dab6485e741cb87a24348f9c1b09603 100644 --- a/apps/routerconsole/locale/messages_it.po +++ b/apps/routerconsole/locale/messages_it.po @@ -25,10 +25,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:05+0000\n" -"PO-Revision-Date: 2015-07-17 01:31+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-05 17:17+0000\n" "Last-Translator: kytv <killyourtv@i2pmail.org>\n" -"Language-Team: Italian (http://www.transifex.com/projects/p/I2P/language/it/)\n" +"Language-Team: Italian (http://www.transifex.com/otf/I2P/language/it/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -147,19 +147,22 @@ msgid "IPs Permanently Banned" msgstr "IP Permanentemente Bannati" #: ../../../router/java/src/net/i2p/router/Blocklist.java:959 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "From" msgstr "Da" #: ../../../router/java/src/net/i2p/router/Blocklist.java:961 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "To" msgstr "A" #: ../../../router/java/src/net/i2p/router/Blocklist.java:997 #: ../java/src/net/i2p/router/web/BanlistRenderer.java:48 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:652 +#: ../java/src/net/i2p/router/web/CertHelper.java:77 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:147 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:662 #: ../java/src/net/i2p/router/web/SummaryHelper.java:478 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:137 msgid "none" msgstr "nessuno" @@ -297,43 +300,43 @@ msgstr "Rifiutando i tunnel: Arresto" msgid "Rejecting tunnels" msgstr "Rifiutando i tunnel" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:212 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:210 #, java-format msgid "Reseeding: got router info from file ({0} successful, {1} errors)." msgstr "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:284 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:282 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:28 msgid "Reseeding" msgstr "Reseeding" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:307 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:305 #, java-format msgid "Reseed fetched only 1 router." msgid_plural "Reseed fetched only {0} routers." msgstr[0] "Il reseed ha recuperato solo 1 router." msgstr[1] "Il reseed ha recuperato solo {0} router." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:314 msgid "Reseed failed." msgstr "Reseed fallito" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:317 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:315 #, java-format msgid "See {0} for help." msgstr "Guarda {0} per aiuto" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:318 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 msgid "reseed configuration page" msgstr "Pagina di configurazione del reseed" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:566 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:697 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:564 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:695 msgid "Reseeding: fetching seed URL." msgstr "Reseed: recupero dell'URL dei seed." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:623 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:733 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:621 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:731 #, java-format msgid "" "Reseeding: fetching router info from seed URL ({0} successful, {1} errors)." @@ -398,12 +401,12 @@ msgid "Unreachable on any transport" msgstr "Irraggiungibile su ogni trasporto" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:674 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:566 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:577 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:604 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:622 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1348 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2469 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2474 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:92 msgid "Status" msgstr "Stato" @@ -418,12 +421,12 @@ msgid "{0} is used for outbound connections only" msgstr "{0} è usato solo per le connessioni in uscita" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:711 -#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:283 +#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:295 msgid "UPnP is not enabled" msgstr "UPnP non è abilitato" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:720 -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:167 msgid "Help" msgstr "Aiuto" @@ -447,7 +450,7 @@ msgstr "Definizioni" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:726 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1352 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2473 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:24 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:33 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:35 @@ -462,7 +465,7 @@ msgstr "Peer remoto, identificato dall'hash del router" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:727 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1353 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Dir" msgstr "Cartella" @@ -489,14 +492,14 @@ msgstr "Quanto è passato dalla ricezione/invio di un pacchetto" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:735 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1355 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2479 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 msgid "Idle" msgstr "Inattivo" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:736 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1356 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "In/Out" msgstr "Entrata/Uscita" @@ -510,14 +513,14 @@ msgstr "Quanto è passato dall'inizio di questa connessione" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:737 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1357 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:935 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2494 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:961 msgid "Up" msgstr "Su" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:738 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1358 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2491 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2496 msgid "Skew" msgstr "Disallinea" @@ -566,7 +569,7 @@ msgstr "Dimensione corrente massima pacchetti in invio / dimensione massima stim #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:748 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1359 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2508 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 msgid "TX" msgstr "TX" @@ -576,7 +579,7 @@ msgstr "Il numero totale di pacchetti inviati al peer" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:749 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1360 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2510 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 msgid "RX" msgstr "RX" @@ -585,7 +588,7 @@ msgid "The total number of packets received from the peer" msgstr "Il numero totale di pacchetti ricevuti dal peer" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:750 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2518 msgid "Dup TX" msgstr "Dup TX" @@ -594,7 +597,7 @@ msgid "The total number of packets retransmitted to the peer" msgstr "Il numero totale di pacchetti ritrasmessi al peer" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:751 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2520 msgid "Dup RX" msgstr "Dup RX" @@ -602,104 +605,104 @@ msgstr "Dup RX" msgid "The total number of duplicate packets received from the peer" msgstr "Il numero totale di pacchetti duplicati ricevuti dal peer" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:560 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:561 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 msgid "Service" msgstr "Servizio" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:564 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 msgid "WAN Common Interface Configuration" msgstr "Configurazione Interfaccia Comune WAN" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:567 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:587 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:614 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:568 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:588 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:615 msgid "Type" msgstr "Tipo" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:569 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:589 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:570 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:590 msgid "Upstream" msgstr "Flusso in uscita" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:571 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:591 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:572 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:592 msgid "Downstream" msgstr "Flusso in entrata" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:575 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 msgid "WAN PPP Connection" msgstr "Connessione WAN PPP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:583 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:610 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:288 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:314 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:584 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:611 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:295 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:321 msgid "Uptime" msgstr "Intervallo di attività " -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:593 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:616 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:594 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:617 msgid "External IP" msgstr "IP esterno" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:597 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 msgid "Layer 3 Forwarding" msgstr "Inoltro Layer 3" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:599 msgid "Default Connection Service" msgstr "Servizio di Connessione di Default" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:602 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 msgid "WAN IP Connection" msgstr "Connessione IP WAN" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:620 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 msgid "WAN Ethernet Link Configuration" msgstr "Configurazione Link WAN Ethernet" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:641 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:642 msgid "Found Device" msgstr "Trovato Dispositivo" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:643 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:644 msgid "Subdevice" msgstr "Sottodispositivo" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:664 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:665 msgid "UPnP Status" msgstr "Stato UPnP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:668 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:669 msgid "Disabled UPnP Devices" msgstr "Disabilita i dispositivi UPnP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:682 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:683 msgid "" "UPnP has been disabled; Do you have more than one UPnP Internet Gateway " "Device on your LAN ?" msgstr "UPnP è stato disabilitato. Hai più di un Dispositivo Internet Gateway UPnP sulla tua LAN?" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:685 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:686 msgid "UPnP has not found any UPnP-aware, compatible device on your LAN." msgstr "UPnP non ha trovato nessun dispositivo compatibile UPnP-aware sulla tua LAN." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:693 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:694 #, java-format msgid "The current external IP address reported by UPnP is {0}" msgstr "L''indirizzo IP esterno corrente riportato da UPnP è {0}" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:695 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:696 msgid "The current external IP address is not available." msgstr "L'indirizzo IP esterno corrente non è disponibile." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:699 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:700 #, java-format msgid "UPnP reports the maximum downstream bit rate is {0}bits/sec" msgstr "UPnP riporta che il tasso massimo di bit in entrata è {0}bit/sec" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:701 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:702 #, java-format msgid "UPnP reports the maximum upstream bit rate is {0}bits/sec" msgstr "UPnP riporta che il tasso massimo di bit in uscita è {0}bit/sec" @@ -708,12 +711,12 @@ msgstr "UPnP riporta che il tasso massimo di bit in uscita è {0}bit/sec" #. {1,number,#####} prevents 12345 from being output as 12,345 in the English #. locale. #. If you want the digit separator in your locale, translate as {1}. -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:709 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:710 #, java-format msgid "{0} port {1,number,#####} was successfully forwarded by UPnP." msgstr "{0} porta {1,number,#####} è stata inoltrata con successo da UPnP." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:711 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:712 #, java-format msgid "{0} port {1,number,#####} was not forwarded by UPnP." msgstr "{0} porta {1,number,#####} non è stata inoltrata da UPnP." @@ -729,17 +732,17 @@ msgid "NTCP connections" msgstr "Connessioni NTCP" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1345 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2466 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2471 msgid "Limit" msgstr "Limite" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1346 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2467 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2472 msgid "Timeout" msgstr "Intervallo" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1354 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2483 msgid "IPv6" msgstr "IPv6" @@ -752,126 +755,126 @@ msgid "Backlogged?" msgstr "Arretrato?" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1375 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2532 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2537 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Inbound" msgstr "In ingresso" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1377 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2534 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2539 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Outbound" msgstr "In uscita" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1432 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2699 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2704 #, java-format msgid "{0} peer" msgid_plural "{0} peers" msgstr[0] "{0} peer" msgstr[1] "{0} peer" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2465 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2470 msgid "UDP connections" msgstr "Connessioni UDP" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2475 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 msgid "Sort by peer hash" msgstr "Ordina secondo l' hash dei peer" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Direction/Introduction" msgstr "Direzione/Introduzione" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 msgid "Sort by idle inbound" msgstr "Ordina secondo il tempo di inattività dei tunnel in entrata" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 msgid "Sort by idle outbound" msgstr "Ordina secondo il tempo di inattività dei tunnel in uscita" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 msgid "Sort by inbound rate" msgstr "Ordina secondo la velocità dei tunnel in entrata" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 msgid "Sort by outbound rate" msgstr "Ordina secondo la velocità dei tunnel in uscita" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 msgid "Sort by connection uptime" msgstr "Ordina per tempo di connessione" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 msgid "Sort by clock skew" msgstr "Ordina secondo la discrepanza di ciclo" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 msgid "Sort by congestion window" msgstr "Ordina per finestra di congestione" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2502 msgid "Sort by slow start threshold" msgstr "Ordina secondo la soglia di avvio lento" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2505 msgid "Sort by round trip time" msgstr "Ordina per tempo di ciclo" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2504 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 msgid "Sort by retransmission timeout" msgstr "Ordina secondo l'intervallo di ritrasmissione" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2507 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2512 msgid "Sort by outbound maximum transmit unit" msgstr "Ordina secondo l'unità massima di trasmissione in uscita" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 msgid "Sort by packets sent" msgstr "Ordina per pacchetti inviati" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2511 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 msgid "Sort by packets received" msgstr "Ordina per pacchetti ricevuti" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2519 msgid "Sort by packets retransmitted" msgstr "Ordina per pacchetti ritrasmessi" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2521 msgid "Sort by packets received more than once" msgstr "Ordina per pacchetti ricevuti più di una volta" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2536 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2541 msgid "We offered to introduce them" msgstr "Ci siamo offerti di introdurli" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2538 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2543 msgid "They offered to introduce us" msgstr "Hanno offerto di introdurci" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2542 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2547 msgid "Choked" msgstr "Congestionato" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2550 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2555 msgid "1 fail" msgstr "1 fallimento" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2552 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2557 #, java-format msgid "{0} fails" msgstr "{0} fallimenti" #. 1 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2558 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2563 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:166 #: ../java/src/net/i2p/router/web/ProfilesHelper.java:13 msgid "Banned" msgstr "Bannato" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2617 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2622 msgid "backlogged" msgstr "ritardi" @@ -888,96 +891,96 @@ msgstr "" msgid "Dropping tunnel requests: Overloaded" msgstr "Abbandono delle richieste tunnel: Carico troppo elevato" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:693 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:695 msgid "Rejecting tunnels: Hidden mode" msgstr "" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:721 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:723 msgid "Rejecting tunnels: Request overload" msgstr "Rifiuto dei tunnel: Troppe richieste" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:752 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:754 msgid "Rejecting tunnels: Connection limit" msgstr "Rifiuto dei tunnels: Limite di connessioni raggiunto" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:964 -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:997 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:966 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:999 msgid "Dropping tunnel requests: High load" msgstr "Abbandono delle richieste tunnel: Carico elevato" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1076 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1078 msgid "Dropping tunnel requests: Queue time" msgstr "Abbandono delle richieste tunnel: Tempo della coda scaduto" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:884 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:895 #, java-format msgid "New plugin version {0} is available" msgstr "Una nuova versione del plugin {0} è disponibile" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:964 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:975 #, java-format msgid "Update check failed for plugin {0}" msgstr "Controllo aggiornamenti per il plugin {0} fallito" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:968 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:979 #, java-format msgid "No new version is available for plugin {0}" msgstr "Nessuna nuova versione del plugin {0} è disponibile" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:992 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1003 #, java-format msgid "{0}B transferred" msgstr "{0}B trasferiti" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1051 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1062 #, java-format msgid "Install failed from {0}" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1053 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1064 #: ../java/src/net/i2p/router/update/UpdateRunner.java:298 #, java-format msgid "Transfer failed from {0}" msgstr "Trasferimento fallito da {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1328 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1339 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1403 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 #: ../java/src/net/i2p/router/web/SummaryHelper.java:715 msgid "Update downloaded" msgstr "Aggiornamento scaricato" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 msgid "Restarting" msgstr "Riavvio" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 msgid "Update verified" msgstr "Aggiornamento verificato" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1381 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:189 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:306 #, java-format msgid "from {0}" msgstr "da {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1396 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1407 #, java-format msgid "Unsigned update file from {0} is corrupt" msgstr "Il file di aggiornamento non firmato ricevuto da {0} è corrotto" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1425 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1436 #, java-format msgid "Failed copy to {0}" msgstr "Copia a {0} fallita" -#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:47 +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:49 #: ../java/src/net/i2p/router/update/DevSU3UpdateRunner.java:40 #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:55 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:111 -#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:62 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:64 #: ../java/src/net/i2p/router/update/UnsignedUpdateRunner.java:41 #: ../java/src/net/i2p/router/update/UpdateRunner.java:155 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:573 @@ -986,6 +989,13 @@ msgstr "Copia a {0} fallita" msgid "HTTP client proxy tunnel must be running" msgstr "" +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:83 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:242 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:88 +#, java-format +msgid "Requires Java version {0} but installed Java version is {1}" +msgstr "Richiede la versione {0} di Java ma è installata la versione {1}" + #. set status before thread to ensure UI feedback #: ../java/src/net/i2p/router/update/DevSU3UpdateHandler.java:91 #: ../java/src/net/i2p/router/update/PluginUpdateHandler.java:82 @@ -995,24 +1005,19 @@ msgstr "" msgid "Updating" msgstr "In aggiornamento" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:209 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:218 msgid "In-network updates disabled. Check package manager." msgstr "Aggiornamenti in-network disabilitati. Controlla il packet manager." -#: ../java/src/net/i2p/router/update/NewsFetcher.java:215 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:224 msgid "No write permission for I2P install directory." msgstr "Non hai i permessi di scrittura per la cartella di installazione di I2P." -#: ../java/src/net/i2p/router/update/NewsFetcher.java:223 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:232 #, java-format msgid "You must first update to version {0}" msgstr "Devi prima aggiornare alla versione {0}" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:233 -#, java-format -msgid "Requires Java version {0} but installed Java version is {1}" -msgstr "Richiede la versione {0} di Java ma è installata la versione {1}" - #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:62 #, java-format msgid "Checking for update of plugin {0}" @@ -1216,8 +1221,10 @@ msgid "unban now" msgstr "riammissione istantanea" #: ../java/src/net/i2p/router/web/CSSHelper.java:149 -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../java/strings/Strings.java:29 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:217 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:221 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:219 @@ -1287,6 +1294,8 @@ msgstr "riammissione istantanea" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:217 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:219 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:224 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:228 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:230 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:222 @@ -1312,6 +1321,16 @@ msgstr "riammissione istantanea" msgid "I2P Router Console" msgstr "Console router I2P " +#: ../java/src/net/i2p/router/web/CertHelper.java:25 +msgid "Local SSL Certificates" +msgstr "" + +#: ../java/src/net/i2p/router/web/CertHelper.java:46 +#: ../java/src/net/i2p/router/web/CertHelper.java:51 +#: ../java/strings/Strings.java:63 +msgid "I2PTunnel" +msgstr "Tunnel I2P" + #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:62 msgid "Error updating the configuration - please see the error logs" msgstr "Errore nell'aggiornamento della configurazione - vedere i log di errore" @@ -1326,7 +1345,8 @@ msgstr "Configurazione salvata con successo" #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:98 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:622 #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:391 -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:151 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:109 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:160 msgid "" "Error saving the configuration (applied but not saved) - please see the " "error logs" @@ -1531,7 +1551,7 @@ msgid "Add Client" msgstr "Aggiugi client" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:116 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:503 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:517 #: ../java/src/net/i2p/router/web/SummaryHelper.java:452 msgid "Client" msgstr "Client" @@ -1563,9 +1583,9 @@ msgid "Plugin" msgstr "Plugin" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:248 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:304 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 msgid "Version" msgstr "Versione" @@ -1586,9 +1606,9 @@ msgid "License" msgstr "Licenza" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:294 -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/HomeHelper.java:171 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:157 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/HomeHelper.java:178 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:164 msgid "Website" msgstr "Sito web" @@ -1623,7 +1643,7 @@ msgstr "Cancella" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:21 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigUIHandler.java:19 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:970 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:996 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:496 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:516 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:532 @@ -1633,7 +1653,7 @@ msgstr "Elimina selezionati" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:23 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1015 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:494 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:502 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:514 @@ -1729,11 +1749,11 @@ msgstr "non trovato nel keyring" msgid "Invalid destination" msgstr "Destinazione non valida" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:82 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:84 msgid "Log overrides updated" msgstr "Sovrascrittura dei log aggiornata" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:163 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:165 msgid "Log configuration saved" msgstr "Configurazione eventi salvata" @@ -1781,8 +1801,8 @@ msgstr "WARN" #: ../java/src/net/i2p/router/web/ConfigLoggingHelper.java:85 #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:170 -#: ../java/src/net/i2p/router/web/HomeHelper.java:208 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:904 +#: ../java/src/net/i2p/router/web/HomeHelper.java:215 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 msgid "Remove" msgstr "Rimuovi" @@ -1801,11 +1821,12 @@ msgid "Home Page" msgstr "Pagina Principale" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:328 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:335 msgid "Network" msgstr "Rete" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:320 @@ -1839,6 +1860,7 @@ msgstr "Rete" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:292 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:322 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:297 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:292 @@ -1857,8 +1879,8 @@ msgid "UI" msgstr "Interfaccia Utente" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:179 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:486 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:186 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 #: ../java/strings/Strings.java:73 msgid "Tunnels" msgstr "Tunnel" @@ -1877,15 +1899,15 @@ msgid "Logging" msgstr "Registro" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:185 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:372 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:192 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:386 #: ../java/strings/Strings.java:68 msgid "Peers" msgstr "Peer" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:497 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:230 msgid "Stats" msgstr "Statistiche" @@ -1901,7 +1923,7 @@ msgstr "Avanzate" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:491 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:479 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:641 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:593 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:560 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:511 msgid "Save changes" @@ -2082,7 +2104,7 @@ msgid "Unsupported" msgstr "Non supportato" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:24 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 msgid "Save changes and reseed now" msgstr "Salva i cambiamenti ed effettua il reseed" @@ -2130,7 +2152,16 @@ msgid_plural "Reseed successful, loaded {0} router infos from file" msgstr[0] "" msgstr[1] "" -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:149 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:99 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +msgid "Reset URL list" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:107 +msgid "URL list reset successfully" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:158 msgid "Configuration saved successfully." msgstr "La configurazione è stata salvata con successo" @@ -2630,8 +2661,8 @@ msgid "User Name" msgstr "Nome Utente" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:183 -#: ../java/src/net/i2p/router/web/HomeHelper.java:235 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:972 +#: ../java/src/net/i2p/router/web/HomeHelper.java:242 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:998 msgid "Add" msgstr "Aggiungi" @@ -2862,13 +2893,13 @@ msgstr "" msgid "Details" msgstr "" -#: ../java/src/net/i2p/router/web/FormHandler.java:251 +#: ../java/src/net/i2p/router/web/FormHandler.java:253 msgid "" "Invalid form submission, probably because you used the 'back' or 'reload' " "button on your browser. Please resubmit." msgstr "Sottomissione di form non valida, probabilmente hai usato il pulsante 'indietro' o 'aggiorna' del tuo browser. Per favore rimandalo." -#: ../java/src/net/i2p/router/web/FormHandler.java:253 +#: ../java/src/net/i2p/router/web/FormHandler.java:255 msgid "" "If the problem persists, verify that you have cookies enabled in your " "browser." @@ -2999,156 +3030,169 @@ msgstr "Salva impostazioni e ridisegna grafici" msgid "Graph settings saved" msgstr "Impostazioni del grafico salvate" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:229 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:236 msgid "Addressbook" msgstr "Rubrica" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:227 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:234 msgid "Manage your I2P hosts file here (I2P domain name resolution)" msgstr "Gestisci qui i tuoi file host I2P (risoluzione del nome di dominio I2P)" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 msgid "Configure Bandwidth" msgstr "Configura Larghezza di Banda" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:330 msgid "I2P Bandwidth Configuration" msgstr "Configurazione Larghezza di Banda I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Configure Language" msgstr "Cambia Lingua" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Console Language Selection" msgstr "Selezione Lingua della console" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 msgid "Customize Home Page" msgstr "Personalizza Pagina Principale" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:346 msgid "I2P Home Page Configuration" msgstr "Configurazione Pagina Principale I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:139 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:146 msgid "Anonymous webmail client" msgstr "Client di posta elettronica anonimo" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:141 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:148 msgid "Email" msgstr "E-mail" -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:251 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 msgid "I2P Router Help" msgstr "Aiuto per il router I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:161 msgid "Router Console" msgstr "Console del Router" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:145 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:152 msgid "Built-in anonymous BitTorrent Client" msgstr "Client BitTorrent anonimo incorporato" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:147 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:154 msgid "Torrents" msgstr "Torrent" -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:155 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:162 msgid "Local web server" msgstr "Server web locale" -#: ../java/src/net/i2p/router/web/HomeHelper.java:41 +#: ../java/src/net/i2p/router/web/HomeHelper.java:43 msgid "The Anoncoin project" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug Reports" msgstr "Rapporto bug" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug tracker" msgstr "Tracker dei bug " #. "colombo-bt.i2p" + S + _x("The Italian Bittorrent Resource") + S + "http #. ://colombo-bt.i2p/" + S + I + "colomboicon.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Dev Forum" msgstr "Forum Sviluppatori" -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Development forum" msgstr "Forum di sviluppo" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Bittorrent tracker" msgstr "Tracker Bittorrent" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 msgid "diftracker" msgstr "diftracker" -#: ../java/src/net/i2p/router/web/HomeHelper.java:46 +#: ../java/src/net/i2p/router/web/HomeHelper.java:48 msgid "I2P Applications" msgstr "Applicazioni I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +msgid "Anonymous cryptocurrency exchange" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "FAQ" msgstr "FAQ" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "Frequently Asked Questions" msgstr "Domande Poste Frequentemente" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Community forum" msgstr "Forum della comunità " -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Forum" msgstr "Forum" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "" "A public anonymous Git hosting site - supports pulling via Git and HTTP and " "pushing via SSH" msgstr "Un anonimo e pubblico Git hosting site - supporta lo scaricamento tramite Git - HTTP e invia tramite SSH" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "Anonymous Git Hosting" msgstr "Git Hosting Anonimo" -#: ../java/src/net/i2p/router/web/HomeHelper.java:50 +#: ../java/src/net/i2p/router/web/HomeHelper.java:53 msgid "HiddenGate" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "Anonymous wiki - share the knowledge" +msgstr "" + +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "I2P Wiki" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Microblog" msgstr "Microblog" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Your premier microblogging service on I2P" msgstr "Il tuo primo servizio di microblog su i2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 msgid "Javadocs" msgstr "Javadocs" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical documentation" msgstr "Documentazione Tecnica" @@ -3156,91 +3200,98 @@ msgstr "Documentazione Tecnica" #. "http://jisko.i2p/" + S + I + "jisko_console_icon.png" + S + #. _x("Key Server") + S + _x("OpenPGP Keyserver") + S + "http://keys.i2p/" + S #. + I + "education.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +#: ../java/src/net/i2p/router/web/HomeHelper.java:60 msgid "Debian and Tahoe-LAFS repositories" msgstr "Repositorie Debian e Tahoe-LAFS" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free Web Hosting" msgstr "Free Web Hosting" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free eepsite hosting with PHP and MySQL" msgstr "Free eepsite hosting con PHP e MySQL" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "I2P Pastebin" msgstr "I2P Pastebin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "Pastebin" msgstr "Pastebin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:58 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 msgid "I2P News" msgstr "Notizie I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +msgid "Planet I2P" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Add-on directory" msgstr "Elenco Add-on" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Plugins" msgstr "Plugin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Postman's Tracker" msgstr "Tracker Postman" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "I2P home page" msgstr "Pagina Principale I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "Project Website" msgstr "Sito del Progetto" +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:68 +msgid "Russian News Feed" +msgstr "" + #. "Salt" + S + "salt.i2p" + S + "http://salt.i2p/" + S + I + #. "salt_console.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +#: ../java/src/net/i2p/router/web/HomeHelper.java:70 msgid "I2P Network Statistics" msgstr "Statistiche Rete I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical Docs" msgstr "Documenti Tecnici" -#: ../java/src/net/i2p/router/web/HomeHelper.java:65 +#: ../java/src/net/i2p/router/web/HomeHelper.java:72 msgid "Trac Wiki" msgstr "Wiki Trac" -#: ../java/src/net/i2p/router/web/HomeHelper.java:66 -msgid "Ugha's Wiki" -msgstr "Wiki Ugha" - -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Seedless and the Robert BitTorrent applications" msgstr "Applicazioni Seedless e Robert BitTorrent" -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#. _x("Ugha's Wiki") + S + S + "http://ugha.i2p/" + S + I + +#. "billiard_marker.png" + S + +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Sponge's main site" msgstr "Sito principale di Sponge" -#: ../java/src/net/i2p/router/web/HomeHelper.java:108 +#: ../java/src/net/i2p/router/web/HomeHelper.java:115 msgid "The HTTP proxy is not up" msgstr "Il proxy HTTP non è avviato" -#: ../java/src/net/i2p/router/web/HomeHelper.java:110 +#: ../java/src/net/i2p/router/web/HomeHelper.java:117 #, java-format msgid "Your browser is not properly configured to use the HTTP proxy at {0}" msgstr "Il tuo browser non è configurato correttamente per usare il proxy HTTP al {0}" -#: ../java/src/net/i2p/router/web/HomeHelper.java:210 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:906 +#: ../java/src/net/i2p/router/web/HomeHelper.java:217 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:932 msgid "Name" msgstr "Nome" -#: ../java/src/net/i2p/router/web/HomeHelper.java:212 +#: ../java/src/net/i2p/router/web/HomeHelper.java:219 msgid "URL" msgstr "URL" @@ -3368,217 +3419,226 @@ msgstr "Tutti i Router con tutte le statistiche" msgid "LeaseSets" msgstr "Insiemi di Lease" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:105 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:106 #: ../java/strings/Strings.java:69 msgid "Router" msgstr "Router" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:112 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:113 msgid "not found in network database" msgstr "non trovato nel database della rete" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:156 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 msgid "LeaseSet" msgstr "Serie di Lease" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:158 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:163 msgid "Local" msgstr "Locale" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:160 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:165 msgid "Unpublished" msgstr "Non pubblicato" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:176 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:166 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:181 msgid "Destination" msgstr "Destinazione" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:173 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:185 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:178 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 msgid "Add to local addressbook" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:217 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:195 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:222 #, java-format msgid "Expires in {0}" msgstr "Scade in {0}" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:192 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:219 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:197 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:224 #, java-format msgid "Expired {0} ago" msgstr "Scaduto {0} fa" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Gateway" msgstr "Gateway" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 msgid "Lease" msgstr "Lease" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:213 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:218 msgid "Tunnel" msgstr "Tunnel" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:280 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:286 msgid "Not initialized" msgstr "Non inizializzata" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:330 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:342 msgid "Network Database Router Statistics" msgstr "Statistiche del Router nel Database della Rete" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Count" msgstr "Conto" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 msgid "Transports" msgstr "Trasporti" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Country" msgstr "Paese" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:429 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:453 msgid "Our info" msgstr "Informazioni su di noi" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:431 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:455 msgid "Peer info for" msgstr "Informazioni del Peer per" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:433 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:457 msgid "Full entry" msgstr "Voce completa" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 #: ../java/src/net/i2p/router/web/SummaryHelper.java:152 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:726 msgid "Hidden" msgstr "Nascosto" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 msgid "Updated" msgstr "Aggiornato" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:441 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:444 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:465 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:468 #, java-format msgid "{0} ago" msgstr "{0} fa" #. shouldnt happen -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:443 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:447 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:467 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:471 msgid "Published" msgstr "Pubblicato" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:449 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 msgid "Signing Key" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:451 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:475 msgid "Address(es)" msgstr "Indirizzo/i" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:463 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:487 msgid "cost" msgstr "costo" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "Hidden or starting up" msgstr "Nascosto o in avvio" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU" msgstr "SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU with introducers" msgstr "SSU con introduttori" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP" msgstr "NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU" msgstr "NTCP e SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU with introducers" msgstr "NTCP e SSU con introduttori" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 Only SSU, introducers" msgstr "IPv6 solo SSU, presentatori" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU" msgstr "IPv6 SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU, introducers" msgstr "IPv6 SSU, presentatori" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP" msgstr "IPv6 NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU" msgstr "IPv6 NTCP, SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU, introducers" msgstr "IPv6 NTCP, SSU, presentatori" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 Only NTCP, SSU, introducers" msgstr "IPv6 solo NTCP, SSU, presentatori" -#: ../java/src/net/i2p/router/web/NewsHelper.java:295 +#: ../java/src/net/i2p/router/web/NewsFeedHelper.java:80 +#, java-format +msgid "by {0}" +msgstr "" + +#: ../java/src/net/i2p/router/web/NewsHelper.java:292 #, java-format msgid "News last updated {0} ago." msgstr "Notizie aggiornate {0} fa." -#: ../java/src/net/i2p/router/web/NewsHelper.java:301 +#: ../java/src/net/i2p/router/web/NewsHelper.java:298 #, java-format msgid "News last checked {0} ago." msgstr "Notizie controllate {0} fa." -#: ../java/src/net/i2p/router/web/NewsHelper.java:310 +#: ../java/src/net/i2p/router/web/NewsHelper.java:307 msgid "Hide news" msgstr "Nascondi notizie" -#: ../java/src/net/i2p/router/web/NewsHelper.java:313 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:647 +#: ../java/src/net/i2p/router/web/NewsHelper.java:310 msgid "Show news" msgstr "Mostra notizie" +#: ../java/src/net/i2p/router/web/NewsHelper.java:314 +msgid "Show all news" +msgstr "" + #: ../java/src/net/i2p/router/web/PluginStarter.java:140 msgid "Checking for plugin updates" msgstr "Controllando nuovi aggiornamenti dei plugin" #: ../java/src/net/i2p/router/web/PluginStarter.java:155 +#: ../java/src/net/i2p/router/web/PluginStarter.java:161 msgid "Plugin update check failed" msgstr "" -#: ../java/src/net/i2p/router/web/PluginStarter.java:193 +#: ../java/src/net/i2p/router/web/PluginStarter.java:199 #, java-format msgid "1 plugin updated" msgid_plural "{0} plugins updated" msgstr[0] "1 plugin aggiornato" msgstr[1] "{0} plugin aggiornati" -#: ../java/src/net/i2p/router/web/PluginStarter.java:195 +#: ../java/src/net/i2p/router/web/PluginStarter.java:201 msgid "Plugin update check complete" msgstr "Controllo nuovi aggiornamenti plugin completato" @@ -3644,7 +3704,7 @@ msgid "Failing" msgstr "In fallimento" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:135 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:411 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:425 msgid "Integrated" msgstr "Integrato" @@ -3913,277 +3973,287 @@ msgstr "Grafo Conteggio Eventi " msgid "Lifetime average value" msgstr "Valore medio nell'arco di vita" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:121 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:128 msgid "I2P Router Help & FAQ" msgstr "Aiuto & Router I2P; FAQ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:123 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:130 msgid "Help & FAQ" msgstr "Aiuto & FAQ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:131 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:138 msgid "" "Configure startup of clients and webapps (services); manually start dormant " "services" msgstr "Configura l'avvio di client e webapps (servizi); avvia manualmente servizi dormienti" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:133 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:140 msgid "I2P Services" msgstr "Servizi I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:169 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:176 msgid "Configure I2P Router" msgstr "Configura il Router I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:171 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:178 msgid "I2P Internals" msgstr "Interni I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:177 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:484 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:184 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:498 msgid "View existing tunnels and tunnel build status" msgstr "Vedi i tunnel esistenti e lo stato della costruzione dei tunnel" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:183 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:370 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:190 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:384 msgid "Show all current peer connections" msgstr "Mostra tutte le connessioni correnti dei peer" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:189 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:196 msgid "Show recent peer performance profiles" msgstr "Mostra i profili di prestazioni recenti dei peer" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:191 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:198 msgid "Profiles" msgstr "Profili" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:195 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:202 msgid "Show list of all known I2P routers" msgstr "Mostra la lista di tutti i router I2P conosciuti" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:197 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:204 msgid "NetDB" msgstr "NetDB" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:201 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:208 msgid "Health Report" msgstr "Rapporto di salute" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:203 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:210 msgid "Logs" msgstr "Registri" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:214 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 msgid "Graph router performance" msgstr "Grafico delle prestazioni del router" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:216 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 msgid "Graphs" msgstr "Grafici" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:228 msgid "Textual router performance statistics" msgstr "Statistiche testuali delle prestazioni del router" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:233 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:240 #: ../java/src/net/i2p/router/web/SummaryHelper.java:438 msgid "Local Tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:235 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:242 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:164 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:337 msgid "Hidden Services Manager" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:253 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:260 msgid "General" msgstr "Generale" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 msgid "" "Your Local Identity is your unique I2P router identity, similar to an ip " "address but tailored to I2P. " msgstr "La tua identità locale è rappresentata dall'identità del tuo i2P router, che è simile ad un indirizzo ip ma appartenente alla rete i2P." -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:259 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:266 msgid "Never disclose this to anyone, as it can reveal your real world ip." msgstr "NON divulgare queste stringhe a nessuno, esse potrebbero rivelare il tuo vero ip." -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:261 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:268 msgid "Local Identity" msgstr "Identità locale" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:272 msgid "Your unique I2P router identity is" msgstr "La tua identità unica del router I2P è" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:269 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:276 msgid "never reveal it to anyone" msgstr "non rivelarla mai a nessuno" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:271 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 msgid "show" msgstr "mostra" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:275 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:301 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:282 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:308 msgid "The version of the I2P software we are running" msgstr "La versione di I2P che stai eseguendo" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:292 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:318 msgid "How long we've been running for this session" msgstr "Da quanto tempo stiamo funzionando in questa sessione" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:326 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:333 msgid "" "Help with configuring your firewall and router for optimal I2P performance" msgstr "Aiuto nella configurazione del tuo firewall e del tuo router per ottenere prestazioni ottimali da I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:337 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:344 msgid "See more information on the wiki" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:339 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:346 msgid "Warning: ECDSA is not available. Update your Java or OS" msgstr "" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:351 +#, java-format +msgid "Warning: Java version {0} is no longer supported by I2P." +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#, java-format +msgid "Update Java to version {0} or higher to receive I2P updates." +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:365 msgid "Configure I2P Updates" msgstr "Configura aggiornamenti I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:367 msgid "I2P Update" msgstr "Aggiornamento I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:378 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:392 msgid "Peers we've been talking to in the last few minutes/last hour" msgstr "Peers con i quali abbiamo comunicato negli ultimi minuti/ultima ora" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:381 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:395 msgid "Active" msgstr "Attivo" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:390 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:404 msgid "The number of peers available for building client tunnels" msgstr "Numero di peers disponibili per costruire i client-tunnel" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:393 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:407 msgid "Fast" msgstr "Veloce" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:399 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:413 msgid "The number of peers available for building exploratory tunnels" msgstr "Numero di peers disponibili per costruire tunnel di esplorazione" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:402 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:416 msgid "High capacity" msgstr "Alta capacità " -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:408 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:422 msgid "The number of peers available for network database inquiries" msgstr "Numero di peers disponibili per le ricerche" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:417 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:431 msgid "The total number of peers in our network database" msgstr "Numero totale di peers nel nostro database di reti" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:420 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:434 msgid "Known" msgstr "Conosciuto" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:440 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:454 msgid "Configure router bandwidth allocation" msgstr "Configura l'allocazione di banda del router" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:442 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:456 msgid "Bandwidth in/out" msgstr "Largheza di banda entrata/uscita" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:462 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:476 msgid "Total" msgstr "Totale" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:469 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:483 msgid "Used" msgstr "Usato" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:491 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:505 msgid "" "Used for building and testing tunnels, and communicating with floodfill " "peers" msgstr "Usato per costruire/testare i tunnel e comunicare con i peers di accumulo" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:494 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:508 msgid "Exploratory" msgstr "Esplorativo" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:514 msgid "Tunnels we are using to provide or access services on the network" msgstr "Tunnel che stiamo usando per promuovere o accedere a servizi in rete" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:509 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:523 msgid "" "Tunnels we are participating in, directly contributing bandwidth to the " "network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:512 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:526 msgid "Participating" msgstr "Partecipando" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:518 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:532 msgid "" "The ratio of tunnel hops we provide to tunnel hops we use - a value greater " "than 1.00 indicates a positive contribution to the network" msgstr "Il rapporto tra hops di tunnel che proponiamo rispetto a quelli che usiamo, più il valore si avvicina a 1.00 più contribuiamo alla rete i2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:521 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:535 msgid "Share ratio" msgstr "Tasso di condivisione" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:534 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:548 msgid "What's in the router's job queue?" msgstr "Cosa c'è nella coda di lavoro del router?" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:536 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 msgid "Congestion" msgstr "Congestione" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:541 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:555 msgid "Indicates router performance" msgstr "Indica le performance del router" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:544 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:558 msgid "Job lag" msgstr "Ritardo nel compito" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:564 msgid "Indicates how quickly outbound messages to other I2P routers are sent" msgstr "Indica quanto veloci sono i messaggi in uscita verso gli altri router I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:553 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:567 msgid "Message delay" msgstr "Ritardo nel messaggio" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:560 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:574 msgid "Round trip time for a tunnel test" msgstr "Test (tempo) di un ciclo tunnel" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:563 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:577 msgid "Tunnel lag" msgstr "Lag del tunnel" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:570 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:584 msgid "Queued requests from other routers to participate in tunnels" msgstr "Richieste in coda da parte di altri routers per partecipare ai tunnel" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:573 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:587 msgid "Backlog" msgstr "Arretrati" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:608 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:623 msgid "News & Updates" msgstr "News & Aggiornamenti" @@ -4296,17 +4366,21 @@ msgid "Click Shutdown and restart to install" msgstr "Cliccare Spegni per riavviare e installare" #: ../java/src/net/i2p/router/web/SummaryHelper.java:720 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:735 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:737 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:749 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:761 #, java-format msgid "Version {0}" msgstr "Versione {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:734 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:736 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:748 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:760 msgid "Update available" msgstr "Aggiornamento disponibile" #. Note to translators: parameter is a version, e.g. "0.8.4" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:758 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:784 #, java-format msgid "Download {0} Update" msgstr "Scaricamento {0} Aggiornamento" @@ -4315,7 +4389,7 @@ msgstr "Scaricamento {0} Aggiornamento" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:766 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:792 #, java-format msgid "Download Signed<br>Development Update<br>{0}" msgstr "" @@ -4324,56 +4398,56 @@ msgstr "" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:774 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 #, java-format msgid "Download Unsigned<br>Update {0}" msgstr "Scaricamento Aggiornamento {0} Non Firmato<br>" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:798 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:824 msgid "Help with firewall configuration" msgstr "Aiuto con la configurazione del firewall" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:826 msgid "Check network connection and NAT/firewall" msgstr "Controlla la connessione di rete e il NAT/firewall" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:819 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:845 msgid "Reseed" msgstr "Reseed" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:908 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:934 msgid "Order" msgstr "Ordine" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:925 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:951 msgid "Top" msgstr "Sopra" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:956 msgid "Move to top" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:940 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:966 msgid "Move up" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:948 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:974 msgid "Down" msgstr "Sotto" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:953 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:979 msgid "Move down" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:958 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:984 msgid "Bottom" msgstr "Basso" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:963 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 msgid "Move to bottom" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:975 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1001 msgid "Select a section to add" msgstr "Seleziona una sezione da aggiungere" @@ -4420,100 +4494,100 @@ msgstr "Client tunnel per" msgid "dead" msgstr "morto" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:70 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:69 msgid "Participating tunnels" msgstr "Tunnel partecipanti" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "Receive on" msgstr "Ricevi su" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Expiration" msgstr "Scadenza" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Send on" msgstr "Manda su" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Rate" msgstr "Tasso" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Role" msgstr "Ruolo" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Usage" msgstr "Utilizzo" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:111 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:113 msgid "grace period" msgstr "periodo di cortesia" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:121 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 msgid "Outbound Endpoint" msgstr "Punto Finale in Uscita" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 msgid "Inbound Gateway" msgstr "Gateway In Entrata" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:127 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:174 msgid "Participant" msgstr "Partecipante" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:130 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:133 #, java-format msgid "Limited display to the {0} tunnels with the highest usage" msgstr "Visualizzazione limitata ai {0} tunnel con il più alto utilizzo" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:131 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:135 msgid "Inactive participating tunnels" msgstr "Tunnel partecipanti inattivi" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:132 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:224 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:138 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:232 msgid "Lifetime bandwidth usage" msgstr "Utilizzo di banda durante l'arco di esistenza" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Expiry" msgstr "Scadenza" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:165 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 msgid "Participants" msgstr "Partecipanti" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:177 msgid "Endpoint" msgstr "Punto finale" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 #: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "Build in progress" msgstr "Costruzione in corso" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 msgid "inbound" msgstr "in entrata" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "outbound" msgstr "in uscita" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:223 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:231 msgid "No tunnels; waiting for the grace period to end." msgstr "Nessun tunnel; in attesa che il periodo di cortesia termini " -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:225 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:233 msgid "in" msgstr "in entrata" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:234 msgid "out" msgstr "in uscita" @@ -4650,10 +4724,6 @@ msgstr "Cifratura" msgid "i2cp" msgstr "i2cp" -#: ../java/strings/Strings.java:63 -msgid "I2PTunnel" -msgstr "Tunnel I2P" - #: ../java/strings/Strings.java:64 msgid "InNetPool" msgstr "InNetPool" @@ -4700,10 +4770,12 @@ msgstr "chiave" msgid "port" msgstr "porta" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 -msgid "configure bandwidth" -msgstr "configura larghezza di banda" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:146 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:318 +msgid "Certificates" +msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:153 @@ -4737,6 +4809,7 @@ msgstr "configura larghezza di banda" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:149 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:155 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:154 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:149 @@ -4752,6 +4825,7 @@ msgstr "Il router è offline" #. We have intl defined when this is included, but not when compiled #. standalone. +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:333 @@ -4784,6 +4858,7 @@ msgstr "Il router è offline" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:305 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:310 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:305 @@ -4799,6 +4874,7 @@ msgid "Refresh (s)" msgstr "Aggiornamento (i)" #. ditto +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:337 @@ -4831,6 +4907,7 @@ msgstr "Aggiornamento (i)" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:309 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:339 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:314 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:309 @@ -4845,6 +4922,10 @@ msgstr "Aggiornamento (i)" msgid "Enable" msgstr "Abilita" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 +msgid "configure bandwidth" +msgstr "configura larghezza di banda" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:437 msgid "Bandwidth limiter" msgstr "Limitatore di Banda" @@ -4921,7 +5002,7 @@ msgstr "Pagina di configurazione avanzata della rete" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:501 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:477 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:639 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:587 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:558 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:509 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:461 @@ -5954,51 +6035,51 @@ msgstr "Usa solamente non-SSL" msgid "Reseed URLs" msgstr "Effettua il Reseed degli URL" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:541 msgid "Enable HTTP Proxy?" msgstr "Abilita Proxy HTTP?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:543 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:545 msgid "HTTP Proxy Host" msgstr "Host Proxy HTTP" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:547 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:549 msgid "HTTP Proxy Port" msgstr "Porta del Proxy HTTP" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:551 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:553 msgid "Use HTTP Proxy Authorization?" msgstr "Usa l'Autorizzazione HTTP Proxy?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:555 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:557 msgid "HTTP Proxy Username" msgstr "Nome utente HTTP Proxy" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:559 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:561 msgid "HTTP Proxy Password" msgstr "Password HTTP Proxy" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:563 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:565 msgid "Enable HTTPS Proxy?" msgstr "Abilita Proxy HTTPS?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:567 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:569 msgid "HTTPS Proxy Host" msgstr "Host HTTPS Proxy" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:571 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:573 msgid "HTTPS Proxy Port" msgstr "Porta HTTPS Proxy" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:575 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:577 msgid "Use HTTPS Proxy Authorization?" msgstr "Usa l'Autorizzazione HTTPS Proxy?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:579 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:581 msgid "HTTPS Proxy Username" msgstr "Nome utente HTTPS Proxy" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:583 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:585 msgid "HTTPS Proxy Password" msgstr "Password HTTPS Proxy" @@ -6557,6 +6638,14 @@ msgstr "Database della rete" msgid "I2P Network Database" msgstr "Database delle Rete I2P" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:148 +msgid "News" +msgstr "" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:344 +msgid "Latest News" +msgstr "" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:152 msgid "WebApp Not Found" msgstr "WebApp non trovata" diff --git a/apps/routerconsole/locale/messages_ja.po b/apps/routerconsole/locale/messages_ja.po index dd3e9b6348dbcdb21e140d1b6b5a3ee5400da565..df94e01a0fd83059fae53fcfaf9ad7bd8c5d5453 100644 --- a/apps/routerconsole/locale/messages_ja.po +++ b/apps/routerconsole/locale/messages_ja.po @@ -17,9 +17,9 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:05+0000\n" -"PO-Revision-Date: 2015-08-31 09:17+0000\n" -"Last-Translator: ã‚¿ã‚«ãƒã‚· <indexial@outlook.jp>\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-05 17:17+0000\n" +"Last-Translator: kytv <killyourtv@i2pmail.org>\n" "Language-Team: Japanese (http://www.transifex.com/otf/I2P/language/ja/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -131,19 +131,22 @@ msgid "IPs Permanently Banned" msgstr "永久ã«ç¦æ¢ã•れ㟠IP" #: ../../../router/java/src/net/i2p/router/Blocklist.java:959 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "From" msgstr "é€ä¿¡å…ƒ" #: ../../../router/java/src/net/i2p/router/Blocklist.java:961 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "To" msgstr "é€ä¿¡å…ˆ" #: ../../../router/java/src/net/i2p/router/Blocklist.java:997 #: ../java/src/net/i2p/router/web/BanlistRenderer.java:48 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:652 +#: ../java/src/net/i2p/router/web/CertHelper.java:77 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:147 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:662 #: ../java/src/net/i2p/router/web/SummaryHelper.java:478 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:137 msgid "none" msgstr "ãªã—" @@ -281,42 +284,42 @@ msgstr "トンãƒãƒ«ã‚’æ‹’å¦ä¸: シャットダウン" msgid "Rejecting tunnels" msgstr "トンãƒãƒ«ã‚’æ‹’å¦ä¸" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:212 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:210 #, java-format msgid "Reseeding: got router info from file ({0} successful, {1} errors)." msgstr "å†ã‚·ãƒ¼ãƒ‰ä¸: ファイルã‹ã‚‰ãƒ«ãƒ¼ã‚¿æƒ…å ±ã‚’å–å¾— ({0} æˆåŠŸ, {1} 個エラー)。" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:284 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:282 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:28 msgid "Reseeding" msgstr "リシードä¸" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:307 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:305 #, java-format msgid "Reseed fetched only 1 router." msgid_plural "Reseed fetched only {0} routers." msgstr[0] "リシード㯠{0} ルーターã®ã¿å–å¾—ã—ã¾ã—ãŸã€‚" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:314 msgid "Reseed failed." msgstr "リシード失敗。" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:317 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:315 #, java-format msgid "See {0} for help." msgstr "ヘルプã«ã¤ã„ã¦ã¯ {0} ã‚’ã”覧ãã ã•ã„。" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:318 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 msgid "reseed configuration page" msgstr "リシードè¨å®šãƒšãƒ¼ã‚¸" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:566 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:697 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:564 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:695 msgid "Reseeding: fetching seed URL." msgstr "リシードä¸: シード URL ã‚’å–å¾—ä¸" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:623 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:733 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:621 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:731 #, java-format msgid "" "Reseeding: fetching router info from seed URL ({0} successful, {1} errors)." @@ -381,12 +384,12 @@ msgid "Unreachable on any transport" msgstr "ã™ã¹ã¦ã®ãƒˆãƒ©ãƒ³ã‚¹ãƒãƒ¼ãƒˆã«åˆ°é”ä¸å¯" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:674 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:566 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:577 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:604 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:622 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1348 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2469 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2474 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:92 msgid "Status" msgstr "ステータス" @@ -401,12 +404,12 @@ msgid "{0} is used for outbound connections only" msgstr "{0} ã¯é€ä¿¡æŽ¥ç¶šã«ã®ã¿ä½¿ç”¨ã•れã¾ã™ã€‚" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:711 -#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:283 +#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:295 msgid "UPnP is not enabled" msgstr "UPnP ã¯æœ‰åйã§ã¯ã‚りã¾ã›ã‚“" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:720 -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:167 msgid "Help" msgstr "ヘルプ" @@ -430,7 +433,7 @@ msgstr "定義" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:726 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1352 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2473 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:24 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:33 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:35 @@ -445,7 +448,7 @@ msgstr "リモートピアã€ãƒ«ãƒ¼ã‚¿ãƒ¼ãƒãƒƒã‚·ãƒ¥ã«ã‚ˆã‚Šè˜åˆ¥" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:727 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1353 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Dir" msgstr "ディレクトリ" @@ -472,14 +475,14 @@ msgstr "パケットãŒå—ä¿¡/é€ä¿¡ã•れã¦ã‹ã‚‰ã®çµŒéŽæ™‚é–“" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:735 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1355 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2479 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 msgid "Idle" msgstr "アイドル" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:736 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1356 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "In/Out" msgstr "入出力" @@ -493,14 +496,14 @@ msgstr "ã“ã®æŽ¥ç¶šãŒç¢ºç«‹ä»¥å¾Œã®çµŒéŽæ™‚é–“" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:737 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1357 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:935 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2494 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:961 msgid "Up" msgstr "アップ" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:738 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1358 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2491 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2496 msgid "Skew" msgstr "スã‚ュー" @@ -549,7 +552,7 @@ msgstr "ç¾åœ¨ã®æœ€å¤§é€ä¿¡ãƒ‘ケットサイズ / 推定最大å—信パケッ #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:748 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1359 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2508 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 msgid "TX" msgstr "TX" @@ -559,7 +562,7 @@ msgstr "ピアã«é€ä¿¡ã•れãŸãƒ‘ケットã®åˆè¨ˆæ•°" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:749 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1360 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2510 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 msgid "RX" msgstr "RX" @@ -568,7 +571,7 @@ msgid "The total number of packets received from the peer" msgstr "ピアã‹ã‚‰å—ä¿¡ã—ãŸãƒ‘ケットã®åˆè¨ˆæ•°" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:750 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2518 msgid "Dup TX" msgstr "Dup TX" @@ -577,7 +580,7 @@ msgid "The total number of packets retransmitted to the peer" msgstr "ピアã«å†é€ã•れãŸãƒ‘ケットã®åˆè¨ˆæ•°" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:751 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2520 msgid "Dup RX" msgstr "Dup RX" @@ -585,104 +588,104 @@ msgstr "Dup RX" msgid "The total number of duplicate packets received from the peer" msgstr "ピアã‹ã‚‰å—ä¿¡ã—ãŸé‡è¤‡ãƒ‘ケットã®åˆè¨ˆæ•°" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:560 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:561 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 msgid "Service" msgstr "サービス" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:564 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 msgid "WAN Common Interface Configuration" msgstr "WAN 共通インターフェースè¨å®š" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:567 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:587 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:614 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:568 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:588 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:615 msgid "Type" msgstr "タイプ" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:569 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:589 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:570 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:590 msgid "Upstream" msgstr "アップストリーム" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:571 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:591 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:572 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:592 msgid "Downstream" msgstr "ダウンストリーム" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:575 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 msgid "WAN PPP Connection" msgstr "WAN PPP 接続" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:583 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:610 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:288 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:314 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:584 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:611 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:295 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:321 msgid "Uptime" msgstr "ç¨¼åƒæ™‚é–“" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:593 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:616 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:594 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:617 msgid "External IP" msgstr "外部 IP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:597 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 msgid "Layer 3 Forwarding" msgstr "レイヤ3 フォワーディング" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:599 msgid "Default Connection Service" msgstr "ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®æŽ¥ç¶šã‚µãƒ¼ãƒ“ã‚¹" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:602 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 msgid "WAN IP Connection" msgstr "WAN IP 接続" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:620 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 msgid "WAN Ethernet Link Configuration" msgstr "WAN イーサãƒãƒƒãƒˆãƒªãƒ³ã‚¯è¨å®š" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:641 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:642 msgid "Found Device" msgstr "デãƒã‚¤ã‚¹ã‚’検出" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:643 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:644 msgid "Subdevice" msgstr "サブデãƒã‚¤ã‚¹" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:664 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:665 msgid "UPnP Status" msgstr "UPnP 状態" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:668 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:669 msgid "Disabled UPnP Devices" msgstr "UPnP を無効化" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:682 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:683 msgid "" "UPnP has been disabled; Do you have more than one UPnP Internet Gateway " "Device on your LAN ?" msgstr "UPnP ã¯ç„¡åŠ¹åŒ–ã•れã¾ã—ãŸã€‚ LAN 上ã«2ã¤ä»¥ä¸Šã® UPnP インターãƒãƒƒãƒˆã‚²ãƒ¼ãƒˆã‚¦ã‚§ã‚¤ãƒ‡ãƒã‚¤ã‚¹ãŒã‚りã¾ã™ã‹ï¼Ÿ" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:685 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:686 msgid "UPnP has not found any UPnP-aware, compatible device on your LAN." msgstr "UpNP 㯠LAN 上㫠UPnP ã‚’èªè˜ã—ã€äº’æ›æ€§ã®ã‚るデãƒã‚¤ã‚¹ã‚’検出ã—ã¾ã›ã‚“ã§ã—ãŸã€‚" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:693 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:694 #, java-format msgid "The current external IP address reported by UPnP is {0}" msgstr "UPnP ãŒå ±å‘Šã—ãŸç¾åœ¨ã®å¤–部 IP アドレス㯠{0}" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:695 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:696 msgid "The current external IP address is not available." msgstr "ç¾åœ¨ã®å¤–部 IP アドレスã¯åˆ©ç”¨ã§ãã¾ã›ã‚“。" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:699 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:700 #, java-format msgid "UPnP reports the maximum downstream bit rate is {0}bits/sec" msgstr "UPnP ã¯ã€æœ€å¤§ãƒ€ã‚¦ãƒ³ã‚¹ãƒˆãƒªãƒ¼ãƒ ビット速度㌠{0} ビット/ç§’ã ã¨å ±å‘Šã—ã¦ã„ã¾ã™" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:701 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:702 #, java-format msgid "UPnP reports the maximum upstream bit rate is {0}bits/sec" msgstr "UPnP ã¯æœ€å¤§ã‚¢ãƒƒãƒ—ストリームビット速度㌠{0} ビット/ç§’ã ã¨å ±å‘Šã—ã¦ã„ã¾ã™" @@ -691,12 +694,12 @@ msgstr "UPnP ã¯æœ€å¤§ã‚¢ãƒƒãƒ—ストリームビット速度㌠{0} ビット/ #. {1,number,#####} prevents 12345 from being output as 12,345 in the English #. locale. #. If you want the digit separator in your locale, translate as {1}. -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:709 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:710 #, java-format msgid "{0} port {1,number,#####} was successfully forwarded by UPnP." msgstr "{0} ãƒãƒ¼ãƒˆ {1,number,#####} 㯠UPnP ã«ã‚ˆã£ã¦ã€æ£å¸¸ã«è»¢é€ã•れã¾ã—ãŸã€‚" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:711 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:712 #, java-format msgid "{0} port {1,number,#####} was not forwarded by UPnP." msgstr "{0} ãƒãƒ¼ãƒˆ {1,number,#####} 㯠UPnP ã«ã‚ˆã£ã¦è»¢é€ã•れã¾ã›ã‚“ã§ã—ãŸã€‚" @@ -712,17 +715,17 @@ msgid "NTCP connections" msgstr "NTCP 接続" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1345 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2466 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2471 msgid "Limit" msgstr "制é™" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1346 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2467 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2472 msgid "Timeout" msgstr "タイムアウト" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1354 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2483 msgid "IPv6" msgstr "IPv6" @@ -735,125 +738,125 @@ msgid "Backlogged?" msgstr "ãƒãƒƒã‚°ãƒã‚°ã•れã¦ã„ã¾ã™ã‹ï¼Ÿ" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1375 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2532 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2537 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Inbound" msgstr "ç€ä¿¡" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1377 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2534 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2539 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Outbound" msgstr "é€ä¿¡" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1432 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2699 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2704 #, java-format msgid "{0} peer" msgid_plural "{0} peers" msgstr[0] "{0} ピア" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2465 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2470 msgid "UDP connections" msgstr "UDP 接続" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2475 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 msgid "Sort by peer hash" msgstr "ピアãƒãƒƒã‚·ãƒ¥ã§ã‚½ãƒ¼ãƒˆ" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Direction/Introduction" msgstr "説明/指示" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 msgid "Sort by idle inbound" msgstr "アイドルã®å—ä¿¡ã§ã‚½ãƒ¼ãƒˆ" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 msgid "Sort by idle outbound" msgstr "アイドルã®é€ä¿¡ã§ã‚½ãƒ¼ãƒˆ" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 msgid "Sort by inbound rate" msgstr "å—信速度ã§ã‚½ãƒ¼ãƒˆ" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 msgid "Sort by outbound rate" msgstr "é€ä¿¡é€Ÿåº¦ã§ã‚½ãƒ¼ãƒˆ" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 msgid "Sort by connection uptime" msgstr "æŽ¥ç¶šç¨¼åƒæ™‚é–“ã§ã‚½ãƒ¼ãƒˆ" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 msgid "Sort by clock skew" msgstr "クãƒãƒƒã‚¯ã‚¹ã‚ューã§ã‚½ãƒ¼ãƒˆ" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 msgid "Sort by congestion window" msgstr "輻輳ウィンドウã§ã‚½ãƒ¼ãƒˆ" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2502 msgid "Sort by slow start threshold" msgstr "スãƒãƒ¼ã‚¹ã‚¿ãƒ¼ãƒˆã—ãã„値ã§ã‚½ãƒ¼ãƒˆ" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2505 msgid "Sort by round trip time" msgstr "往復時間ã§ã‚½ãƒ¼ãƒˆ" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2504 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 msgid "Sort by retransmission timeout" msgstr "å†é€ä¿¡ã‚¿ã‚¤ãƒ アウトã§ã‚½ãƒ¼ãƒˆ" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2507 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2512 msgid "Sort by outbound maximum transmit unit" msgstr "é€ä¿¡æœ€å¤§ä¼é€å˜ä½ã§ã‚½ãƒ¼ãƒˆ" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 msgid "Sort by packets sent" msgstr "é€ä¿¡ãƒ‘ケットã§ã‚½ãƒ¼ãƒˆ" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2511 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 msgid "Sort by packets received" msgstr "å—信パケットã§ã‚½ãƒ¼ãƒˆ" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2519 msgid "Sort by packets retransmitted" msgstr "å†é€ãƒ‘ケットã§ã‚½ãƒ¼ãƒˆ" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2521 msgid "Sort by packets received more than once" msgstr "二度以上å—ä¿¡ã—ãŸãƒ‘ケットã§ã‚½ãƒ¼ãƒˆ" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2536 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2541 msgid "We offered to introduce them" msgstr "We offered to introduce them" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2538 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2543 msgid "They offered to introduce us" msgstr "They offered to introduce us" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2542 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2547 msgid "Choked" msgstr "絞られã¾ã—ãŸ" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2550 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2555 msgid "1 fail" msgstr "1 回失敗" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2552 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2557 #, java-format msgid "{0} fails" msgstr "{0} 回失敗" #. 1 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2558 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2563 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:166 #: ../java/src/net/i2p/router/web/ProfilesHelper.java:13 msgid "Banned" msgstr "ç¦æ¢ã•れã¾ã—ãŸ" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2617 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2622 msgid "backlogged" msgstr "ãƒãƒƒã‚°ãƒã‚°ã•れã¾ã—ãŸ" @@ -870,96 +873,96 @@ msgstr "トンãƒãƒ«ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’䏿–: 高ã„ジョブラグ" msgid "Dropping tunnel requests: Overloaded" msgstr "トンãƒãƒ«è¦æ±‚ドãƒãƒƒãƒ—: éŽè² è·" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:693 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:695 msgid "Rejecting tunnels: Hidden mode" msgstr "トンãƒãƒ«ã‚’æ‹’å¦: Hidden モード" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:721 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:723 msgid "Rejecting tunnels: Request overload" msgstr "トンãƒãƒ«ã‚’æ‹’å¦ä¸: リクエストéŽè² è·" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:752 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:754 msgid "Rejecting tunnels: Connection limit" msgstr "トンãƒãƒ«ã‚’æ‹’å¦ä¸: 接続制é™" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:964 -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:997 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:966 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:999 msgid "Dropping tunnel requests: High load" msgstr "トンãƒãƒ«è¦æ±‚ドãƒãƒƒãƒ—: 高ã„ãƒãƒ¼ãƒ‰" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1076 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1078 msgid "Dropping tunnel requests: Queue time" msgstr "トンãƒãƒ«è¦æ±‚ドãƒãƒƒãƒ—: ã‚ュー時間" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:884 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:895 #, java-format msgid "New plugin version {0} is available" msgstr "æ–°ã—ã„プラグインã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ {0} ãŒåˆ©ç”¨ã§ãã¾ã™ã€‚" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:964 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:975 #, java-format msgid "Update check failed for plugin {0}" msgstr "プラグイン {0} ã®ã‚¢ãƒƒãƒ—デート確èªã«å¤±æ•—" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:968 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:979 #, java-format msgid "No new version is available for plugin {0}" msgstr "プラグイン {0} ã®æ–°ã—ã„ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã¯åˆ©ç”¨ã§ãã¾ã›ã‚“。" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:992 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1003 #, java-format msgid "{0}B transferred" msgstr "{0}B 転é€" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1051 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1062 #, java-format msgid "Install failed from {0}" msgstr "{0} ã‹ã‚‰ã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã«å¤±æ•—" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1053 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1064 #: ../java/src/net/i2p/router/update/UpdateRunner.java:298 #, java-format msgid "Transfer failed from {0}" msgstr "{0} ã‹ã‚‰ã®è»¢é€ã«å¤±æ•—ã—ã¾ã—ãŸ" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1328 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1339 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1403 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 #: ../java/src/net/i2p/router/web/SummaryHelper.java:715 msgid "Update downloaded" msgstr "æ›´æ–°ãŒãƒ€ã‚¦ãƒ³ãƒãƒ¼ãƒ‰ã•れã¾ã—ãŸ" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 msgid "Restarting" msgstr "å†èµ·å‹•ä¸" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 msgid "Update verified" msgstr "æ›´æ–°ãŒç¢ºèªã•れã¾ã—ãŸ" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1381 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:189 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:306 #, java-format msgid "from {0}" msgstr "{0} ã‹ã‚‰" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1396 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1407 #, java-format msgid "Unsigned update file from {0} is corrupt" msgstr "{0} ã‹ã‚‰ã®ç½²åã•れã¦ã„ãªã„更新ファイルã¯ç ´æã—ã¦ã„ã¾ã™" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1425 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1436 #, java-format msgid "Failed copy to {0}" msgstr "{0} ã¸ã®ã‚³ãƒ”ーã«å¤±æ•—" -#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:47 +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:49 #: ../java/src/net/i2p/router/update/DevSU3UpdateRunner.java:40 #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:55 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:111 -#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:62 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:64 #: ../java/src/net/i2p/router/update/UnsignedUpdateRunner.java:41 #: ../java/src/net/i2p/router/update/UpdateRunner.java:155 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:573 @@ -968,6 +971,13 @@ msgstr "{0} ã¸ã®ã‚³ãƒ”ーã«å¤±æ•—" msgid "HTTP client proxy tunnel must be running" msgstr "HTTPクライアントプãƒã‚シトンãƒãƒ«ãŒèµ·å‹•ã—ã¦ã„ã‚‹å¿…è¦ãŒã‚りã¾ã™" +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:83 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:242 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:88 +#, java-format +msgid "Requires Java version {0} but installed Java version is {1}" +msgstr "Java ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ {0} ãŒå¿…è¦ã§ã™ãŒã€ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•れã¦ã„ã‚‹ Java ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã¯ {1} ã§ã™" + #. set status before thread to ensure UI feedback #: ../java/src/net/i2p/router/update/DevSU3UpdateHandler.java:91 #: ../java/src/net/i2p/router/update/PluginUpdateHandler.java:82 @@ -977,24 +987,19 @@ msgstr "HTTPクライアントプãƒã‚シトンãƒãƒ«ãŒèµ·å‹•ã—ã¦ã„ã‚‹å¿… msgid "Updating" msgstr "æ›´æ–°ä¸" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:209 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:218 msgid "In-network updates disabled. Check package manager." msgstr "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯å†…アップデートãŒç„¡åйã«ãªã‚Šã¾ã—ãŸã€‚パッケージマãƒãƒ¼ã‚¸ãƒ£ãƒ¼ã‚’確èªã—ã¦ãã ã•ã„。" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:215 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:224 msgid "No write permission for I2P install directory." msgstr "I2P ã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«å¯¾ã™ã‚‹æ›¸ãè¾¼ã¿æ¨©é™ãŒã‚りã¾ã›ã‚“。" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:223 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:232 #, java-format msgid "You must first update to version {0}" msgstr "ã¾ãšãƒãƒ¼ã‚¸ãƒ§ãƒ³ {0} ã«ã‚¢ãƒƒãƒ—デートã—ãªã‘れã°ãªã‚Šã¾ã›ã‚“" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:233 -#, java-format -msgid "Requires Java version {0} but installed Java version is {1}" -msgstr "Java ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ {0} ãŒå¿…è¦ã§ã™ãŒã€ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•れã¦ã„ã‚‹ Java ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã¯ {1} ã§ã™" - #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:62 #, java-format msgid "Checking for update of plugin {0}" @@ -1198,8 +1203,10 @@ msgid "unban now" msgstr "今ã™ãç¦æ¢è§£é™¤" #: ../java/src/net/i2p/router/web/CSSHelper.java:149 -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../java/strings/Strings.java:29 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:217 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:221 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:219 @@ -1269,6 +1276,8 @@ msgstr "今ã™ãç¦æ¢è§£é™¤" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:217 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:219 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:224 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:228 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:230 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:222 @@ -1294,6 +1303,16 @@ msgstr "今ã™ãç¦æ¢è§£é™¤" msgid "I2P Router Console" msgstr "I2P ルーターコンソール" +#: ../java/src/net/i2p/router/web/CertHelper.java:25 +msgid "Local SSL Certificates" +msgstr "" + +#: ../java/src/net/i2p/router/web/CertHelper.java:46 +#: ../java/src/net/i2p/router/web/CertHelper.java:51 +#: ../java/strings/Strings.java:63 +msgid "I2PTunnel" +msgstr "I2PTunnel" + #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:62 msgid "Error updating the configuration - please see the error logs" msgstr "è¨å®šã‚’æ›´æ–°ã™ã‚‹éš›ã«ã‚¨ãƒ©ãƒ¼ - エラーãƒã‚°ã‚’確èªã—ã¦ãã ã•ã„" @@ -1308,7 +1327,8 @@ msgstr "è¨å®šã¯æ£å¸¸ã«ä¿å˜ã•れã¾ã—ãŸ" #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:98 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:622 #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:391 -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:151 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:109 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:160 msgid "" "Error saving the configuration (applied but not saved) - please see the " "error logs" @@ -1513,7 +1533,7 @@ msgid "Add Client" msgstr "ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã‚’è¿½åŠ " #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:116 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:503 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:517 #: ../java/src/net/i2p/router/web/SummaryHelper.java:452 msgid "Client" msgstr "クライアント" @@ -1545,9 +1565,9 @@ msgid "Plugin" msgstr "プラグイン" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:248 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:304 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 msgid "Version" msgstr "ãƒãƒ¼ã‚¸ãƒ§ãƒ³" @@ -1568,9 +1588,9 @@ msgid "License" msgstr "ライセンス" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:294 -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/HomeHelper.java:171 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:157 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/HomeHelper.java:178 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:164 msgid "Website" msgstr "ウェブサイト" @@ -1605,7 +1625,7 @@ msgstr "削除" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:21 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigUIHandler.java:19 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:970 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:996 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:496 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:516 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:532 @@ -1615,7 +1635,7 @@ msgstr "é¸æŠžå‰Šé™¤" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:23 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1015 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:494 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:502 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:514 @@ -1711,11 +1731,11 @@ msgstr "ã‚ーホルダーãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“" msgid "Invalid destination" msgstr "無効ãªå®›å…ˆ" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:82 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:84 msgid "Log overrides updated" msgstr "ãƒã‚°ã‚ªãƒ¼ãƒãƒ¼ãƒ©ã‚¤ãƒ‰ãŒæ›´æ–°ã•れã¾ã—ãŸ" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:163 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:165 msgid "Log configuration saved" msgstr "ãƒã‚°è¨å®šãŒä¿å˜ã•れã¾ã—ãŸ" @@ -1763,8 +1783,8 @@ msgstr "WARN" #: ../java/src/net/i2p/router/web/ConfigLoggingHelper.java:85 #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:170 -#: ../java/src/net/i2p/router/web/HomeHelper.java:208 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:904 +#: ../java/src/net/i2p/router/web/HomeHelper.java:215 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 msgid "Remove" msgstr "削除" @@ -1783,11 +1803,12 @@ msgid "Home Page" msgstr "ホームページ" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:328 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:335 msgid "Network" msgstr "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:320 @@ -1821,6 +1842,7 @@ msgstr "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:292 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:322 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:297 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:292 @@ -1839,8 +1861,8 @@ msgid "UI" msgstr "UI" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:179 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:486 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:186 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 #: ../java/strings/Strings.java:73 msgid "Tunnels" msgstr "トンãƒãƒ«" @@ -1859,15 +1881,15 @@ msgid "Logging" msgstr "ãƒã‚®ãƒ³ã‚°" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:185 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:372 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:192 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:386 #: ../java/strings/Strings.java:68 msgid "Peers" msgstr "ピア" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:497 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:230 msgid "Stats" msgstr "統計" @@ -1883,7 +1905,7 @@ msgstr "詳細" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:491 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:479 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:641 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:593 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:560 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:511 msgid "Save changes" @@ -2064,7 +2086,7 @@ msgid "Unsupported" msgstr "éžã‚µãƒãƒ¼ãƒˆ" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:24 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 msgid "Save changes and reseed now" msgstr "変更をä¿å˜ã—ã€ä»Šã™ãリシード" @@ -2111,7 +2133,16 @@ msgid "Reseed successful, loaded {0} router info from file" msgid_plural "Reseed successful, loaded {0} router infos from file" msgstr[0] "リシードæˆåŠŸã€ãƒ•ァイルã‹ã‚‰ {0} ä»¶ã®ãƒ«ãƒ¼ã‚¿æƒ…å ±ã‚’èªã¿è¾¼ã¿ã¾ã—ãŸ" -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:149 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:99 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +msgid "Reset URL list" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:107 +msgid "URL list reset successfully" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:158 msgid "Configuration saved successfully." msgstr "è¨å®šã¯æ£å¸¸ã«ä¿å˜ã•れã¾ã—ãŸã€‚" @@ -2608,8 +2639,8 @@ msgid "User Name" msgstr "ユーザーå" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:183 -#: ../java/src/net/i2p/router/web/HomeHelper.java:235 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:972 +#: ../java/src/net/i2p/router/web/HomeHelper.java:242 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:998 msgid "Add" msgstr "è¿½åŠ " @@ -2840,13 +2871,13 @@ msgstr "イベント" msgid "Details" msgstr "詳細" -#: ../java/src/net/i2p/router/web/FormHandler.java:251 +#: ../java/src/net/i2p/router/web/FormHandler.java:253 msgid "" "Invalid form submission, probably because you used the 'back' or 'reload' " "button on your browser. Please resubmit." msgstr "無効ãªãƒ•ォームã‹ã‚‰ã®é€ä¿¡ã€ãŠãらãブラウザã§ã€Œæˆ»ã‚‹ã€ã‹ã€Œãƒªãƒãƒ¼ãƒ‰ã€ãƒœã‚¿ãƒ³ã‚’使用ã—ãŸãŸã‚ã§ã™ã€‚å†é€ä¿¡ã—ã¦ãã ã•ã„。" -#: ../java/src/net/i2p/router/web/FormHandler.java:253 +#: ../java/src/net/i2p/router/web/FormHandler.java:255 msgid "" "If the problem persists, verify that you have cookies enabled in your " "browser." @@ -2977,156 +3008,169 @@ msgstr "è¨å®šã‚’ä¿æ¸©ã—ã¦ã‚°ãƒ©ãƒ•ã‚’å†æç”»ã™ã‚‹" msgid "Graph settings saved" msgstr "グラフè¨å®šãŒä¿å˜ã•れã¾ã—ãŸ" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:229 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:236 msgid "Addressbook" msgstr "アドレスブック" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:227 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:234 msgid "Manage your I2P hosts file here (I2P domain name resolution)" msgstr "ã“ã“ã§ I2P ã® hosts ãƒ•ã‚¡ã‚¤ãƒ«ã‚’ç®¡ç† (I2P ã®ãƒ‰ãƒ¡ã‚¤ãƒ³å解決)" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 msgid "Configure Bandwidth" msgstr "帯域幅をè¨å®š" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:330 msgid "I2P Bandwidth Configuration" msgstr "I2P 帯域幅è¨å®š" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Configure Language" msgstr "言語è¨å®š" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Console Language Selection" msgstr "コンソールã®è¨€èªžé¸æŠž" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 msgid "Customize Home Page" msgstr "ホームページã®ã‚«ã‚¹ã‚¿ãƒžã‚¤ã‚º" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:346 msgid "I2P Home Page Configuration" msgstr "I2Pã®ãƒ›ãƒ¼ãƒ ページカスタマイズ" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:139 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:146 msgid "Anonymous webmail client" msgstr "匿åウェブメールクライアント" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:141 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:148 msgid "Email" msgstr "Eメール" -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:251 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 msgid "I2P Router Help" msgstr "I2P ルーターヘルプ" -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:161 msgid "Router Console" msgstr "ルーターコンソール" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:145 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:152 msgid "Built-in anonymous BitTorrent Client" msgstr "内蔵匿å BitTorrent クライアント" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:147 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:154 msgid "Torrents" msgstr "Torrent" -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:155 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:162 msgid "Local web server" msgstr "ãƒãƒ¼ã‚«ãƒ«ã‚¦ã‚§ãƒ–サーãƒãƒ¼" -#: ../java/src/net/i2p/router/web/HomeHelper.java:41 +#: ../java/src/net/i2p/router/web/HomeHelper.java:43 msgid "The Anoncoin project" msgstr "Anoncoinプãƒã‚¸ã‚§ã‚¯ãƒˆ" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug Reports" msgstr "ãƒã‚°ãƒ¬ãƒãƒ¼ãƒˆ" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug tracker" msgstr "ãƒã‚°ãƒˆãƒ©ãƒƒã‚«ãƒ¼" #. "colombo-bt.i2p" + S + _x("The Italian Bittorrent Resource") + S + "http #. ://colombo-bt.i2p/" + S + I + "colomboicon.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Dev Forum" msgstr "開発フォーラム" -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Development forum" msgstr "開発フォーラム" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Bittorrent tracker" msgstr "Bittorrentトラッカー" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 msgid "diftracker" msgstr "difトラッカー" -#: ../java/src/net/i2p/router/web/HomeHelper.java:46 +#: ../java/src/net/i2p/router/web/HomeHelper.java:48 msgid "I2P Applications" msgstr "I2Pアプリケーション" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +msgid "Anonymous cryptocurrency exchange" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "FAQ" msgstr "FAQ" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "Frequently Asked Questions" msgstr "よãã‚る質å•" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Community forum" msgstr "コミュニケーションフォーラム" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Forum" msgstr "フォーラム" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "" "A public anonymous Git hosting site - supports pulling via Git and HTTP and " "pushing via SSH" msgstr "公開匿å Git ホスティングサイト - Git ãŠã‚ˆã³ HTTP を通ã˜ãŸ pull ã¨SSH を通ã˜ãŸ push をサãƒãƒ¼ãƒˆã—ã¾ã™" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "Anonymous Git Hosting" msgstr "Anonymous Git Hosting" -#: ../java/src/net/i2p/router/web/HomeHelper.java:50 +#: ../java/src/net/i2p/router/web/HomeHelper.java:53 msgid "HiddenGate" msgstr "HiddenGate" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "Anonymous wiki - share the knowledge" +msgstr "" + +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "I2P Wiki" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Microblog" msgstr "マイクãƒãƒ–ãƒã‚°" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Your premier microblogging service on I2P" msgstr "I2P ã§æœ€ã‚‚よã使ã†çŸæ–‡æŠ•稿サービス" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 msgid "Javadocs" msgstr "Javadocs" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical documentation" msgstr "技術仕様" @@ -3134,91 +3178,98 @@ msgstr "技術仕様" #. "http://jisko.i2p/" + S + I + "jisko_console_icon.png" + S + #. _x("Key Server") + S + _x("OpenPGP Keyserver") + S + "http://keys.i2p/" + S #. + I + "education.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +#: ../java/src/net/i2p/router/web/HomeHelper.java:60 msgid "Debian and Tahoe-LAFS repositories" msgstr "Debian 㨠Tahoe-LAFS ã®ãƒ¬ãƒã‚¸ãƒˆãƒª" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free Web Hosting" msgstr "ç„¡æ–™ã®ã‚¦ã‚§ãƒ–ホスティング" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free eepsite hosting with PHP and MySQL" msgstr "PHP,MySQL付ãã®ç„¡æ–™eepサイトホスティング" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "I2P Pastebin" msgstr "I2P Pastebin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "Pastebin" msgstr "Pastebi" -#: ../java/src/net/i2p/router/web/HomeHelper.java:58 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 msgid "I2P News" msgstr "I2P ニュース" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +msgid "Planet I2P" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Add-on directory" msgstr "アドオンディレクトリ" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Plugins" msgstr "プラグイン" -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Postman's Tracker" msgstr "Postmanã®ãƒˆãƒ©ãƒƒã‚«ãƒ¼" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "I2P home page" msgstr "I2Pホームページ" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "Project Website" msgstr "プãƒã‚¸ã‚§ã‚¯ãƒˆã®ã‚¦ã‚§ãƒ–サイト" +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:68 +msgid "Russian News Feed" +msgstr "" + #. "Salt" + S + "salt.i2p" + S + "http://salt.i2p/" + S + I + #. "salt_console.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +#: ../java/src/net/i2p/router/web/HomeHelper.java:70 msgid "I2P Network Statistics" msgstr "I2P ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯çµ±è¨ˆ" -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical Docs" msgstr "技術仕様" -#: ../java/src/net/i2p/router/web/HomeHelper.java:65 +#: ../java/src/net/i2p/router/web/HomeHelper.java:72 msgid "Trac Wiki" msgstr "Trac Wiki" -#: ../java/src/net/i2p/router/web/HomeHelper.java:66 -msgid "Ugha's Wiki" -msgstr "Ugha's Wiki" - -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Seedless and the Robert BitTorrent applications" msgstr "Seedless ãŠã‚ˆã³ Robert BitTorrent アプリケーション" -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#. _x("Ugha's Wiki") + S + S + "http://ugha.i2p/" + S + I + +#. "billiard_marker.png" + S + +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Sponge's main site" msgstr "Sponge ã®ãƒ¡ã‚¤ãƒ³ã‚µã‚¤ãƒˆ" -#: ../java/src/net/i2p/router/web/HomeHelper.java:108 +#: ../java/src/net/i2p/router/web/HomeHelper.java:115 msgid "The HTTP proxy is not up" msgstr "HTTPプãƒã‚ã‚·ã¯èµ·å‹•ã—ã¦ã„ã¾ã›ã‚“" -#: ../java/src/net/i2p/router/web/HomeHelper.java:110 +#: ../java/src/net/i2p/router/web/HomeHelper.java:117 #, java-format msgid "Your browser is not properly configured to use the HTTP proxy at {0}" msgstr "ã‚ãªãŸã®ãƒ–ラウザ㯠{0} ã§ HTTP プãƒã‚シを使用ã™ã‚‹ã‚ˆã†ã«æ£ã—ãè¨å®šã•れã¦ã„ã¾ã›ã‚“" -#: ../java/src/net/i2p/router/web/HomeHelper.java:210 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:906 +#: ../java/src/net/i2p/router/web/HomeHelper.java:217 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:932 msgid "Name" msgstr "åå‰" -#: ../java/src/net/i2p/router/web/HomeHelper.java:212 +#: ../java/src/net/i2p/router/web/HomeHelper.java:219 msgid "URL" msgstr "URL" @@ -3346,216 +3397,225 @@ msgstr "ã™ã¹ã¦ã®ãƒ«ãƒ¼ã‚¿ãƒ¼ï¼ˆå…¨ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ï¼‰" msgid "LeaseSets" msgstr "リースセット" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:105 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:106 #: ../java/strings/Strings.java:69 msgid "Router" msgstr "ルーター" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:112 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:113 msgid "not found in network database" msgstr "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹å†…ã«è¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—ãŸ" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:156 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 msgid "LeaseSet" msgstr "リースセット" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:158 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:163 msgid "Local" msgstr "ãƒãƒ¼ã‚«ãƒ«" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:160 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:165 msgid "Unpublished" msgstr "未公開" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:176 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:166 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:181 msgid "Destination" msgstr "宛先" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:173 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:185 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:178 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 msgid "Add to local addressbook" msgstr "ãƒãƒ¼ã‚«ãƒ«ã®ã‚¢ãƒ‰ãƒ¬ã‚¹å¸³ã«è¿½åŠ " -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:217 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:195 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:222 #, java-format msgid "Expires in {0}" msgstr "{0} ã«æœŸé™åˆ‡ã‚Œ" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:192 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:219 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:197 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:224 #, java-format msgid "Expired {0} ago" msgstr "{0} å‰ã«æœŸé™åˆ‡ã‚Œ" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Gateway" msgstr "ゲートウェイ" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 msgid "Lease" msgstr "リース" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:213 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:218 msgid "Tunnel" msgstr "トンãƒãƒ«" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:280 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:286 msgid "Not initialized" msgstr "æœªåˆæœŸåŒ–" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:330 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:342 msgid "Network Database Router Statistics" msgstr "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ãƒ«ãƒ¼ã‚¿ãƒ¼çµ±è¨ˆ" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Count" msgstr "カウント" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 msgid "Transports" msgstr "トランスãƒãƒ¼ãƒˆ" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Country" msgstr "国" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:429 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:453 msgid "Our info" msgstr "æƒ…å ±" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:431 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:455 msgid "Peer info for" msgstr "次ã®ãƒ”ã‚¢ã®æƒ…å ±: " -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:433 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:457 msgid "Full entry" msgstr "フルエントリ" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 #: ../java/src/net/i2p/router/web/SummaryHelper.java:152 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:726 msgid "Hidden" msgstr "éžè¡¨ç¤º" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 msgid "Updated" msgstr "æ›´æ–°" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:441 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:444 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:465 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:468 #, java-format msgid "{0} ago" msgstr "{0} å‰" #. shouldnt happen -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:443 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:447 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:467 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:471 msgid "Published" msgstr "公開済ã¿" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:449 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 msgid "Signing Key" msgstr "ç½²åã‚ー" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:451 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:475 msgid "Address(es)" msgstr "アドレス" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:463 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:487 msgid "cost" msgstr "コスト" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "Hidden or starting up" msgstr "éš ã™ã‹èµ·å‹•ä¸" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU" msgstr "SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU with introducers" msgstr "イントãƒãƒ‡ãƒ¥ãƒ¼ã‚µãƒ¼ä»˜ã SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP" msgstr "NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU" msgstr "NTCP åŠã³ SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU with introducers" msgstr "NTCP åŠã³ã‚¤ãƒ³ãƒˆãƒãƒ‡ãƒ¥ãƒ¼ã‚µãƒ¼ä»˜ã SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 Only SSU, introducers" msgstr "IPv6 ã®ã¿ SSUã€ã‚¤ãƒ³ãƒˆãƒãƒ‡ãƒ¥ãƒ¼ã‚µãƒ¼" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU" msgstr "IPv6 SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU, introducers" msgstr "IPv6 SSUã€ã‚¤ãƒ³ãƒˆãƒãƒ‡ãƒ¥ãƒ¼ã‚µãƒ¼" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP" msgstr "IPv6 NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU" msgstr "IPv6 NTCP, SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU, introducers" msgstr "IPv6 NTCP, SSU, イントãƒãƒ‡ãƒ¥ãƒ¼ã‚µãƒ¼" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 Only NTCP, SSU, introducers" msgstr "IPv6 ã®ã¿ NTCP, SSU, イントãƒãƒ‡ãƒ¥ãƒ¼ã‚µãƒ¼" -#: ../java/src/net/i2p/router/web/NewsHelper.java:295 +#: ../java/src/net/i2p/router/web/NewsFeedHelper.java:80 +#, java-format +msgid "by {0}" +msgstr "" + +#: ../java/src/net/i2p/router/web/NewsHelper.java:292 #, java-format msgid "News last updated {0} ago." msgstr "ニュース㯠{0} ã«æœ€çµ‚更新。" -#: ../java/src/net/i2p/router/web/NewsHelper.java:301 +#: ../java/src/net/i2p/router/web/NewsHelper.java:298 #, java-format msgid "News last checked {0} ago." msgstr "ニュース㯠{0} ã«æœ€çµ‚確èªã€‚" -#: ../java/src/net/i2p/router/web/NewsHelper.java:310 +#: ../java/src/net/i2p/router/web/NewsHelper.java:307 msgid "Hide news" msgstr "ニュースをéžè¡¨ç¤º" -#: ../java/src/net/i2p/router/web/NewsHelper.java:313 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:647 +#: ../java/src/net/i2p/router/web/NewsHelper.java:310 msgid "Show news" msgstr "ニュースを表示" +#: ../java/src/net/i2p/router/web/NewsHelper.java:314 +msgid "Show all news" +msgstr "" + #: ../java/src/net/i2p/router/web/PluginStarter.java:140 msgid "Checking for plugin updates" msgstr "プラグインã®ã‚¢ãƒƒãƒ—デートをãƒã‚§ãƒƒã‚¯ä¸" #: ../java/src/net/i2p/router/web/PluginStarter.java:155 +#: ../java/src/net/i2p/router/web/PluginStarter.java:161 msgid "Plugin update check failed" msgstr "プラグインã®ã‚¢ãƒƒãƒ—デート確èªå¤±æ•—" -#: ../java/src/net/i2p/router/web/PluginStarter.java:193 +#: ../java/src/net/i2p/router/web/PluginStarter.java:199 #, java-format msgid "1 plugin updated" msgid_plural "{0} plugins updated" msgstr[0] "{0} 個ã®ãƒ—ラグインをアップデートã—ã¾ã—ãŸ" -#: ../java/src/net/i2p/router/web/PluginStarter.java:195 +#: ../java/src/net/i2p/router/web/PluginStarter.java:201 msgid "Plugin update check complete" msgstr "プラグインã®ã‚¢ãƒƒãƒ—デート確èªå®Œäº†" @@ -3618,7 +3678,7 @@ msgid "Failing" msgstr "失敗" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:135 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:411 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:425 msgid "Integrated" msgstr "çµ±åˆæ¸ˆã¿" @@ -3885,277 +3945,287 @@ msgstr "グラフイベントカウント" msgid "Lifetime average value" msgstr "生涯平å‡å€¤" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:121 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:128 msgid "I2P Router Help & FAQ" msgstr "I2P ルーターヘルプ & FAQ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:123 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:130 msgid "Help & FAQ" msgstr "ヘルプ㨠FAQ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:131 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:138 msgid "" "Configure startup of clients and webapps (services); manually start dormant " "services" msgstr "クライアントã¨ã‚¦ã‚§ãƒ–アプリ (サービス) ã®ã‚¹ã‚¿ãƒ¼ãƒˆã‚¢ãƒƒãƒ—ã‚’æ§‹æˆã€‚手動ã§ä¼‘æ¢ã‚µãƒ¼ãƒ“スを開始" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:133 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:140 msgid "I2P Services" msgstr "I2P サービス" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:169 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:176 msgid "Configure I2P Router" msgstr "I2P ルーターを構æˆ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:171 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:178 msgid "I2P Internals" msgstr "I2P 内部" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:177 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:484 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:184 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:498 msgid "View existing tunnels and tunnel build status" msgstr "æ—¢å˜ã®ãƒˆãƒ³ãƒãƒ«ã¨ãƒˆãƒ³ãƒãƒ«ä½œæˆã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ã‚’表示" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:183 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:370 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:190 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:384 msgid "Show all current peer connections" msgstr "ç¾åœ¨ã®ãƒ”ア接続をã™ã¹ã¦è¡¨ç¤º" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:189 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:196 msgid "Show recent peer performance profiles" msgstr "最近ã®ãƒ”アパフォーマンスプãƒãƒ•ァイルを表示" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:191 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:198 msgid "Profiles" msgstr "プãƒãƒ•ァイル" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:195 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:202 msgid "Show list of all known I2P routers" msgstr "æ—¢å˜ã®å…¨ I2P ルーターã®ä¸€è¦§ã‚’表示" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:197 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:204 msgid "NetDB" msgstr "NetDB" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:201 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:208 msgid "Health Report" msgstr "å¥å…¨åº¦å ±å‘Š" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:203 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:210 msgid "Logs" msgstr "ãƒã‚°" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:214 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 msgid "Graph router performance" msgstr "ルーターパフォーマンスをグラフ化" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:216 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 msgid "Graphs" msgstr "グラフ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:228 msgid "Textual router performance statistics" msgstr "テã‚ストã®ãƒ«ãƒ¼ã‚¿ãƒ¼ãƒ‘フォーマンス統計" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:233 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:240 #: ../java/src/net/i2p/router/web/SummaryHelper.java:438 msgid "Local Tunnels" msgstr "ãƒãƒ¼ã‚«ãƒ«ãƒˆãƒ³ãƒãƒ«" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:235 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:242 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:164 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:337 msgid "Hidden Services Manager" msgstr "Hidden サービスマãƒãƒ¼ã‚¸ãƒ£ãƒ¼" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:253 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:260 msgid "General" msgstr "一般" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 msgid "" "Your Local Identity is your unique I2P router identity, similar to an ip " "address but tailored to I2P. " msgstr "ãƒãƒ¼ã‚«ãƒ«è˜åˆ¥åã¯ä¸€æ„㪠I2P ルーターã®è˜åˆ¥åã§ã‚り〠IP アドレスã«è¿‘ã„ã§ã™ãŒã€ I2P ã«åˆã‚ã›ã¦ã„ã¾ã™ã€‚" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:259 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:266 msgid "Never disclose this to anyone, as it can reveal your real world ip." msgstr "実際㮠IP ãŒã°ã‚Œã‹ããªã„ã®ã§ã€èª°ã«ã‚‚ã“れを明ã‹ã•ãªã„ã§ãã ã•ã„。" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:261 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:268 msgid "Local Identity" msgstr "ãƒãƒ¼ã‚«ãƒ«è˜åˆ¥å" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:272 msgid "Your unique I2P router identity is" msgstr "ã‚ãªãŸã®ä¸€æ„㪠I2P ルーターè˜åˆ¥åã¯" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:269 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:276 msgid "never reveal it to anyone" msgstr "誰ã«ã‚‚決ã—ã¦æ˜Žã‹ã•ãªã„" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:271 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 msgid "show" msgstr "表示" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:275 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:301 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:282 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:308 msgid "The version of the I2P software we are running" msgstr "èµ·å‹•ä¸ã® I2P ソフトウェアã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:292 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:318 msgid "How long we've been running for this session" msgstr "ã“ã®ã‚»ãƒƒã‚·ãƒ§ãƒ³ã§ã©ã‚Œã ã‘ã®é–“èµ·å‹•ã—ã¦ã„ã‚‹ã‹" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:326 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:333 msgid "" "Help with configuring your firewall and router for optimal I2P performance" msgstr "最é©ãª I2P パフォーマンスを得るãŸã‚ã«ãƒ•ァイアーウォールã¨ãƒ«ãƒ¼ã‚¿ãƒ¼ã‚’æ§‹æˆã™ã‚‹ã®ã«å½¹ç«‹ã¡ã¾ã™" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:337 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:344 msgid "See more information on the wiki" msgstr "wiki 上ã§è©³ç´°ã‚’表示" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:339 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:346 msgid "Warning: ECDSA is not available. Update your Java or OS" msgstr "è¦å‘Š: ECDSA ãŒåˆ©ç”¨ã§ãã¾ã›ã‚“。 Java ã¾ãŸã¯ OS ã‚’æ›´æ–°ã—ã¦ãã ã•ã„" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:351 +#, java-format +msgid "Warning: Java version {0} is no longer supported by I2P." +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#, java-format +msgid "Update Java to version {0} or higher to receive I2P updates." +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:365 msgid "Configure I2P Updates" msgstr "I2P ã®ã‚¢ãƒƒãƒ—デートを構æˆ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:367 msgid "I2P Update" msgstr "I2P アップデート" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:378 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:392 msgid "Peers we've been talking to in the last few minutes/last hour" msgstr "éŽåŽ»æ•°åˆ†/数時間内ã«é€šä¿¡ã—ãŸãƒ”ã‚¢" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:381 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:395 msgid "Active" msgstr "アクティブ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:390 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:404 msgid "The number of peers available for building client tunnels" msgstr "クライアントトンãƒãƒ«ã®ãƒ“ルドã«åˆ©ç”¨ã§ãるピアノ数" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:393 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:407 msgid "Fast" msgstr "高速" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:399 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:413 msgid "The number of peers available for building exploratory tunnels" msgstr "予備トンãƒãƒ«ã®å½¢æˆã«åˆ©ç”¨ã§ãã‚‹ãƒ”ã‚¢ã®æ•°" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:402 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:416 msgid "High capacity" msgstr "高許容数" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:408 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:422 msgid "The number of peers available for network database inquiries" msgstr "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã«åˆ©ç”¨ã§ãã‚‹ãƒ”ã‚¢ã®æ•°ã®ç…§ä¼š" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:417 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:431 msgid "The total number of peers in our network database" msgstr "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹å†…ã®åˆè¨ˆãƒ”ア数" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:420 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:434 msgid "Known" msgstr "既知" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:440 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:454 msgid "Configure router bandwidth allocation" msgstr "ルーターã®å¸¯åŸŸå¹…割り当ã¦ã‚’è¨å®š" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:442 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:456 msgid "Bandwidth in/out" msgstr "帯域幅 入力/出力" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:462 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:476 msgid "Total" msgstr "åˆè¨ˆ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:469 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:483 msgid "Used" msgstr "使用済ã¿" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:491 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:505 msgid "" "Used for building and testing tunnels, and communicating with floodfill " "peers" msgstr "トンãƒãƒ«ã®ä½œæˆãƒ»ãƒ†ã‚¹ãƒˆã¨ã€floodfillピアã¨ã‚³ãƒŸãƒ¥ãƒ‹ã‚±ãƒ¼ã‚·ãƒ§ãƒ³ã‚’å–ã‚‹ã®ã«ä½¿ç”¨ã•れãŸ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:494 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:508 msgid "Exploratory" msgstr "予備" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:514 msgid "Tunnels we are using to provide or access services on the network" msgstr "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ä¸Šã§ã‚µãƒ¼ãƒ“スをæä¾›ã¾ãŸã¯ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã—ã¦ã„るトンãƒãƒ«" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:509 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:523 msgid "" "Tunnels we are participating in, directly contributing bandwidth to the " "network" msgstr "å‚åŠ ã—ã¦ã„ã¦ã€ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã®å¸¯åŸŸå¹…ã«ç›´æŽ¥è²¢çŒ®ã—ã¦ã„るトンãƒãƒ«" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:512 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:526 msgid "Participating" msgstr "å‚åŠ ä¸" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:518 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:532 msgid "" "The ratio of tunnel hops we provide to tunnel hops we use - a value greater " "than 1.00 indicates a positive contribution to the network" msgstr "使用ã™ã‚‹ãƒˆãƒ³ãƒãƒ«ãƒ›ãƒƒãƒ—ã«æä¾›ã—ã¦ã„るトンãƒãƒ«ã®ãƒ›ãƒƒãƒ—率 - 1000より大ããªå€¤ã¯ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã¸ã®ãƒã‚¸ãƒ†ã‚£ãƒ–ãªè²¢çŒ®ã‚’示ã—ã¾ã™" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:521 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:535 msgid "Share ratio" msgstr "共有比率" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:534 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:548 msgid "What's in the router's job queue?" msgstr "ルーターã®ã‚¸ãƒ§ãƒ–ã‚ューã«ä½•ãŒã‚ã‚‹ã‹ï¼Ÿ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:536 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 msgid "Congestion" msgstr "混雑状態" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:541 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:555 msgid "Indicates router performance" msgstr "ルーターパフォーマンスを表示" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:544 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:558 msgid "Job lag" msgstr "ジョブラグ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:564 msgid "Indicates how quickly outbound messages to other I2P routers are sent" msgstr "ã»ã‹ã® I2P ã®ãƒ«ãƒ¼ã‚¿ãƒ¼ã¸ã®é€ä¿¡ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒé€ã‚‰ã‚ŒãŸéš›ã®é€Ÿã•を表示" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:553 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:567 msgid "Message delay" msgstr "メッセージé…å»¶" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:560 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:574 msgid "Round trip time for a tunnel test" msgstr "トンãƒãƒ«ãƒ†ã‚¹ãƒˆã®ãƒ©ã‚¦ãƒ³ãƒ‰ãƒˆãƒªãƒƒãƒ—時間" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:563 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:577 msgid "Tunnel lag" msgstr "トンãƒãƒ«ãƒ©ã‚°" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:570 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:584 msgid "Queued requests from other routers to participate in tunnels" msgstr "トンãƒãƒ«ã«å‚åŠ ã—ã¦ã„ã‚‹ã»ã‹ã®ãƒ«ãƒ¼ã‚¿ãƒ¼ã‹ã‚‰ã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’ã‚ューã«å…¥ã‚Œã¾ã—ãŸ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:573 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:587 msgid "Backlog" msgstr "ãƒãƒƒã‚¯ãƒ©ã‚°" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:608 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:623 msgid "News & Updates" msgstr "ニュースã¨ã‚¢ãƒƒãƒ—デート" @@ -4268,17 +4338,21 @@ msgid "Click Shutdown and restart to install" msgstr "インストールã™ã‚‹ã«ã¯ã‚·ãƒ£ãƒƒãƒˆãƒ€ã‚¦ãƒ³ã‚’クリックã—ã¦å†èµ·å‹•" #: ../java/src/net/i2p/router/web/SummaryHelper.java:720 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:735 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:737 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:749 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:761 #, java-format msgid "Version {0}" msgstr "ãƒãƒ¼ã‚¸ãƒ§ãƒ³ {0} " -#: ../java/src/net/i2p/router/web/SummaryHelper.java:734 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:736 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:748 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:760 msgid "Update available" msgstr "アップデートãŒåˆ©ç”¨ã§ãã¾ã™" #. Note to translators: parameter is a version, e.g. "0.8.4" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:758 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:784 #, java-format msgid "Download {0} Update" msgstr "{0} ã®ã‚¢ãƒƒãƒ—デートをダウンãƒãƒ¼ãƒ‰" @@ -4287,7 +4361,7 @@ msgstr "{0} ã®ã‚¢ãƒƒãƒ—デートをダウンãƒãƒ¼ãƒ‰" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:766 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:792 #, java-format msgid "Download Signed<br>Development Update<br>{0}" msgstr "ç½²åã•れã¦ã„ã‚‹<br>開発アップデートをダウンãƒãƒ¼ãƒ‰<br>{0}" @@ -4296,56 +4370,56 @@ msgstr "ç½²åã•れã¦ã„ã‚‹<br>開発アップデートをダウンãƒãƒ¼ãƒ‰<b #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:774 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 #, java-format msgid "Download Unsigned<br>Update {0}" msgstr "ç½²åã•れã¦ã„ãªã„ {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:798 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:824 msgid "Help with firewall configuration" msgstr "ãƒ•ã‚¡ã‚¤ã‚¢ãƒ¼ã‚¦ã‚©ãƒ¼ãƒ«ã®æ§‹æˆã«å½¹ç«‹ã¡ã¾ã™" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:826 msgid "Check network connection and NAT/firewall" msgstr "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯æŽ¥ç¶šãŠã‚ˆã³ NAT/ファイアーウォールを確èªã—ã¦ãã ã•ã„" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:819 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:845 msgid "Reseed" msgstr "リシード" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:908 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:934 msgid "Order" msgstr "é †åº" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:925 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:951 msgid "Top" msgstr "上部" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:956 msgid "Move to top" msgstr "上部ã«ç§»å‹•" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:940 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:966 msgid "Move up" msgstr "上ã«ç§»å‹•" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:948 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:974 msgid "Down" msgstr "下" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:953 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:979 msgid "Move down" msgstr "下ã«ç§»å‹•" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:958 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:984 msgid "Bottom" msgstr "下部" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:963 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 msgid "Move to bottom" msgstr "下部ã«ç§»å‹•" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:975 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1001 msgid "Select a section to add" msgstr "è¿½åŠ ã™ã‚‹ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã‚’é¸æŠž" @@ -4392,100 +4466,100 @@ msgstr "" msgid "dead" msgstr "æ»äº¡" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:70 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:69 msgid "Participating tunnels" msgstr "å‚åŠ ã—ã¦ã„るトンãƒãƒ«" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "Receive on" msgstr "å—信時間: " -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Expiration" msgstr "期é™åˆ‡ã‚Œ" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Send on" msgstr "é€ä¿¡æ™‚é–“" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Rate" msgstr "割åˆ" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Role" msgstr "役割" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Usage" msgstr "使用é‡" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:111 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:113 msgid "grace period" msgstr "猶予期間" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:121 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 msgid "Outbound Endpoint" msgstr "é€ä¿¡ã‚¨ãƒ³ãƒ‰ãƒã‚¤ãƒ³ãƒˆ" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 msgid "Inbound Gateway" msgstr "å—信ゲートウェイ" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:127 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:174 msgid "Participant" msgstr "å‚åŠ " -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:130 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:133 #, java-format msgid "Limited display to the {0} tunnels with the highest usage" msgstr "使用度ãŒé«˜ã„ {0} トンãƒãƒ«ã«è¡¨ç¤ºã‚’制é™" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:131 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:135 msgid "Inactive participating tunnels" msgstr "アクティブã§ãªã„å‚åŠ ã—ã¦ã„るトンãƒãƒ«" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:132 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:224 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:138 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:232 msgid "Lifetime bandwidth usage" msgstr "生涯帯域幅使用é‡" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Expiry" msgstr "終了" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:165 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 msgid "Participants" msgstr "å‚åŠ " -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:177 msgid "Endpoint" msgstr "エンドãƒã‚¤ãƒ³ãƒˆ" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 #: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "Build in progress" msgstr "æ§‹æˆé€²è¡Œä¸" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 msgid "inbound" msgstr "å—ä¿¡" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "outbound" msgstr "é€ä¿¡" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:223 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:231 msgid "No tunnels; waiting for the grace period to end." msgstr "トンãƒãƒ«ãªã—。猶予期間ãŒçµ‚了ã™ã‚‹ã¾ã§å¾…機ä¸" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:225 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:233 msgid "in" msgstr "入力" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:234 msgid "out" msgstr "出力" @@ -4622,10 +4696,6 @@ msgstr "æš—å·åŒ–" msgid "i2cp" msgstr "" -#: ../java/strings/Strings.java:63 -msgid "I2PTunnel" -msgstr "I2PTunnel" - #: ../java/strings/Strings.java:64 msgid "InNetPool" msgstr "" @@ -4672,10 +4742,12 @@ msgstr "" msgid "port" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 -msgid "configure bandwidth" -msgstr "帯域幅をè¨å®š" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:146 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:318 +msgid "Certificates" +msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:153 @@ -4709,6 +4781,7 @@ msgstr "帯域幅をè¨å®š" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:149 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:155 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:154 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:149 @@ -4724,6 +4797,7 @@ msgstr "" #. We have intl defined when this is included, but not when compiled #. standalone. +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:333 @@ -4756,6 +4830,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:305 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:310 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:305 @@ -4771,6 +4846,7 @@ msgid "Refresh (s)" msgstr "" #. ditto +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:337 @@ -4803,6 +4879,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:309 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:339 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:314 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:309 @@ -4817,6 +4894,10 @@ msgstr "" msgid "Enable" msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 +msgid "configure bandwidth" +msgstr "帯域幅をè¨å®š" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:437 msgid "Bandwidth limiter" msgstr "帯域幅リミッター" @@ -4893,7 +4974,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:501 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:477 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:639 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:587 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:558 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:509 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:461 @@ -5926,51 +6007,51 @@ msgstr "" msgid "Reseed URLs" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:541 msgid "Enable HTTP Proxy?" msgstr "HTTP プãƒã‚シを有効ã«ã—ã¾ã™ã‹ï¼Ÿ" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:543 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:545 msgid "HTTP Proxy Host" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:547 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:549 msgid "HTTP Proxy Port" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:551 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:553 msgid "Use HTTP Proxy Authorization?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:555 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:557 msgid "HTTP Proxy Username" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:559 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:561 msgid "HTTP Proxy Password" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:563 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:565 msgid "Enable HTTPS Proxy?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:567 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:569 msgid "HTTPS Proxy Host" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:571 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:573 msgid "HTTPS Proxy Port" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:575 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:577 msgid "Use HTTPS Proxy Authorization?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:579 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:581 msgid "HTTPS Proxy Username" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:583 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:585 msgid "HTTPS Proxy Password" msgstr "" @@ -6529,6 +6610,14 @@ msgstr "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹" msgid "I2P Network Database" msgstr "I2P ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:148 +msgid "News" +msgstr "" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:344 +msgid "Latest News" +msgstr "" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:152 msgid "WebApp Not Found" msgstr "" diff --git a/apps/routerconsole/locale/messages_nb.po b/apps/routerconsole/locale/messages_nb.po index 6eb9abad32cacac4f6f17789c5d497c806f5bd47..a5abb60c450b81a2f2348178a304c7ecb126af61 100644 --- a/apps/routerconsole/locale/messages_nb.po +++ b/apps/routerconsole/locale/messages_nb.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:05+0000\n" -"PO-Revision-Date: 2015-07-17 01:31+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-05 17:17+0000\n" "Last-Translator: kytv <killyourtv@i2pmail.org>\n" -"Language-Team: Norwegian BokmÃ¥l (http://www.transifex.com/projects/p/I2P/language/nb/)\n" +"Language-Team: Norwegian BokmÃ¥l (http://www.transifex.com/otf/I2P/language/nb/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -135,19 +135,22 @@ msgid "IPs Permanently Banned" msgstr "" #: ../../../router/java/src/net/i2p/router/Blocklist.java:959 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "From" msgstr "Fra" #: ../../../router/java/src/net/i2p/router/Blocklist.java:961 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "To" msgstr "Til" #: ../../../router/java/src/net/i2p/router/Blocklist.java:997 #: ../java/src/net/i2p/router/web/BanlistRenderer.java:48 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:652 +#: ../java/src/net/i2p/router/web/CertHelper.java:77 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:147 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:662 #: ../java/src/net/i2p/router/web/SummaryHelper.java:478 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:137 msgid "none" msgstr "" @@ -285,43 +288,43 @@ msgstr "Avviser tunneler: Avslutter" msgid "Rejecting tunnels" msgstr "Avviser tunneler" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:212 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:210 #, java-format msgid "Reseeding: got router info from file ({0} successful, {1} errors)." msgstr "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:284 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:282 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:28 msgid "Reseeding" msgstr "Reseeding" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:307 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:305 #, java-format msgid "Reseed fetched only 1 router." msgid_plural "Reseed fetched only {0} routers." msgstr[0] "Reseed mottok bare 1 ruter." msgstr[1] "Reseed mottok bare {0} rutere." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:314 msgid "Reseed failed." msgstr "Reseed feilet." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:317 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:315 #, java-format msgid "See {0} for help." msgstr "Se {0} for hjelp." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:318 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 msgid "reseed configuration page" msgstr "reseed instillings side" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:566 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:697 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:564 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:695 msgid "Reseeding: fetching seed URL." msgstr "Reseeding: mottar seed URL." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:623 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:733 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:621 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:731 #, java-format msgid "" "Reseeding: fetching router info from seed URL ({0} successful, {1} errors)." @@ -386,12 +389,12 @@ msgid "Unreachable on any transport" msgstr "Utilgjengelig pÃ¥ alle transporter" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:674 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:566 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:577 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:604 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:622 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1348 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2469 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2474 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:92 msgid "Status" msgstr "Status" @@ -406,12 +409,12 @@ msgid "{0} is used for outbound connections only" msgstr "{0} er brukt for bare utgÃ¥ende tilkoblinger" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:711 -#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:283 +#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:295 msgid "UPnP is not enabled" msgstr "" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:720 -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:167 msgid "Help" msgstr "Hjelp" @@ -435,7 +438,7 @@ msgstr "Definisjoner" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:726 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1352 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2473 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:24 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:33 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:35 @@ -450,7 +453,7 @@ msgstr "Den eksterne peer, identifisert av ruter hash" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:727 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1353 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Dir" msgstr "Mappe" @@ -477,14 +480,14 @@ msgstr "Hvor lenge siden en pakke har blitt mottat / sendt" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:735 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1355 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2479 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 msgid "Idle" msgstr "Tomgang" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:736 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1356 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "In/Out" msgstr "Inn/Ut" @@ -498,14 +501,14 @@ msgstr "Hvor lenge siden denne tilkoblingen var etablert" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:737 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1357 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:935 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2494 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:961 msgid "Up" msgstr "Opp" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:738 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1358 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2491 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2496 msgid "Skew" msgstr "klokkeforskyvning" @@ -554,7 +557,7 @@ msgstr "" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:748 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1359 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2508 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 msgid "TX" msgstr "TX" @@ -564,7 +567,7 @@ msgstr "Totalt antall pakker sendt til peer" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:749 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1360 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2510 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 msgid "RX" msgstr "RX" @@ -573,7 +576,7 @@ msgid "The total number of packets received from the peer" msgstr "Det totale antall pakker mottatt fra peer" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:750 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2518 msgid "Dup TX" msgstr "Dup TX" @@ -582,7 +585,7 @@ msgid "The total number of packets retransmitted to the peer" msgstr "Det totale antallet pakker videresendes til peer" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:751 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2520 msgid "Dup RX" msgstr "Dup RX" @@ -590,104 +593,104 @@ msgstr "Dup RX" msgid "The total number of duplicate packets received from the peer" msgstr "Det totale antall dupliserte pakker mottatt fra peer" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:560 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:561 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 msgid "Service" msgstr "Tjeneste" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:564 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 msgid "WAN Common Interface Configuration" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:567 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:587 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:614 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:568 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:588 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:615 msgid "Type" msgstr "Type" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:569 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:589 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:570 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:590 msgid "Upstream" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:571 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:591 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:572 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:592 msgid "Downstream" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:575 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 msgid "WAN PPP Connection" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:583 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:610 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:288 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:314 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:584 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:611 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:295 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:321 msgid "Uptime" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:593 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:616 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:594 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:617 msgid "External IP" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:597 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 msgid "Layer 3 Forwarding" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:599 msgid "Default Connection Service" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:602 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 msgid "WAN IP Connection" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:620 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 msgid "WAN Ethernet Link Configuration" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:641 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:642 msgid "Found Device" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:643 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:644 msgid "Subdevice" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:664 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:665 msgid "UPnP Status" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:668 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:669 msgid "Disabled UPnP Devices" msgstr "Deaktiverte UPnP-enheter" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:682 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:683 msgid "" "UPnP has been disabled; Do you have more than one UPnP Internet Gateway " "Device on your LAN ?" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:685 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:686 msgid "UPnP has not found any UPnP-aware, compatible device on your LAN." msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:693 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:694 #, java-format msgid "The current external IP address reported by UPnP is {0}" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:695 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:696 msgid "The current external IP address is not available." msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:699 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:700 #, java-format msgid "UPnP reports the maximum downstream bit rate is {0}bits/sec" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:701 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:702 #, java-format msgid "UPnP reports the maximum upstream bit rate is {0}bits/sec" msgstr "" @@ -696,12 +699,12 @@ msgstr "" #. {1,number,#####} prevents 12345 from being output as 12,345 in the English #. locale. #. If you want the digit separator in your locale, translate as {1}. -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:709 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:710 #, java-format msgid "{0} port {1,number,#####} was successfully forwarded by UPnP." msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:711 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:712 #, java-format msgid "{0} port {1,number,#####} was not forwarded by UPnP." msgstr "" @@ -717,17 +720,17 @@ msgid "NTCP connections" msgstr "NTCP tilkoblinger" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1345 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2466 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2471 msgid "Limit" msgstr "Begrensing" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1346 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2467 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2472 msgid "Timeout" msgstr "Timeout" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1354 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2483 msgid "IPv6" msgstr "IPv6" @@ -740,126 +743,126 @@ msgid "Backlogged?" msgstr "Backlogged?" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1375 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2532 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2537 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Inbound" msgstr "InngÃ¥ende" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1377 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2534 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2539 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Outbound" msgstr "UtgÃ¥ende" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1432 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2699 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2704 #, java-format msgid "{0} peer" msgid_plural "{0} peers" msgstr[0] "" msgstr[1] "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2465 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2470 msgid "UDP connections" msgstr "UDP tilkoblinger" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2475 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 msgid "Sort by peer hash" msgstr "Sorter ut ifra peer hash" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Direction/Introduction" msgstr "Rettning/Innledning" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 msgid "Sort by idle inbound" msgstr "Sorter etter tomgang ingÃ¥ende" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 msgid "Sort by idle outbound" msgstr "Sorter etter tomgang utgÃ¥ende" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 msgid "Sort by inbound rate" msgstr "Sorter etter inngÃ¥ende hastighet" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 msgid "Sort by outbound rate" msgstr "Sorter etter utgÃ¥ende hastighet" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 msgid "Sort by connection uptime" msgstr "Sorter etter tilkobling oppetid" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 msgid "Sort by clock skew" msgstr "Sorter etter klokkeforskyvning" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 msgid "Sort by congestion window" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2502 msgid "Sort by slow start threshold" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2505 msgid "Sort by round trip time" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2504 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 msgid "Sort by retransmission timeout" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2507 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2512 msgid "Sort by outbound maximum transmit unit" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 msgid "Sort by packets sent" msgstr "Sorter etter pakker sendt" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2511 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 msgid "Sort by packets received" msgstr "Sorter etter pakker mottatt" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2519 msgid "Sort by packets retransmitted" msgstr "Sorter etter videresendte pakker " -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2521 msgid "Sort by packets received more than once" msgstr "Sorter etter pakker som er mottatt mer enn én gang" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2536 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2541 msgid "We offered to introduce them" msgstr "Vi tilbød Ã¥ introdusere dem" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2538 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2543 msgid "They offered to introduce us" msgstr "De tilbød seg Ã¥ introdusere oss" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2542 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2547 msgid "Choked" msgstr "Kvalt" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2550 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2555 msgid "1 fail" msgstr "1 feil" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2552 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2557 #, java-format msgid "{0} fails" msgstr "{0} feiler" #. 1 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2558 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2563 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:166 #: ../java/src/net/i2p/router/web/ProfilesHelper.java:13 msgid "Banned" msgstr "Bannet" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2617 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2622 msgid "backlogged" msgstr "" @@ -876,96 +879,96 @@ msgstr "" msgid "Dropping tunnel requests: Overloaded" msgstr "Dropper tunnel forespørsler: Overlastet" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:693 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:695 msgid "Rejecting tunnels: Hidden mode" msgstr "" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:721 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:723 msgid "Rejecting tunnels: Request overload" msgstr "Avviser tunneler: Forespørsler overbelastning" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:752 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:754 msgid "Rejecting tunnels: Connection limit" msgstr "Avviser tunneler: tilkobling grensen er nÃ¥dd" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:964 -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:997 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:966 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:999 msgid "Dropping tunnel requests: High load" msgstr "Dropper tunnel forespørsler: Høy last" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1076 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1078 msgid "Dropping tunnel requests: Queue time" msgstr "Dropper tunneler forespørsler: Kø tid" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:884 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:895 #, java-format msgid "New plugin version {0} is available" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:964 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:975 #, java-format msgid "Update check failed for plugin {0}" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:968 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:979 #, java-format msgid "No new version is available for plugin {0}" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:992 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1003 #, java-format msgid "{0}B transferred" msgstr "{0}B overført" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1051 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1062 #, java-format msgid "Install failed from {0}" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1053 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1064 #: ../java/src/net/i2p/router/update/UpdateRunner.java:298 #, java-format msgid "Transfer failed from {0}" msgstr "Overføring fra {0} feilet" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1328 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1339 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1403 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 #: ../java/src/net/i2p/router/web/SummaryHelper.java:715 msgid "Update downloaded" msgstr "Oppdatering nedlastet" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 msgid "Restarting" msgstr "Starter om igjen" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 msgid "Update verified" msgstr "Oppdatering kontrollert" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1381 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:189 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:306 #, java-format msgid "from {0}" msgstr "fra {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1396 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1407 #, java-format msgid "Unsigned update file from {0} is corrupt" msgstr "Usignert oppdateringsfil fra {0} er korrupt" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1425 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1436 #, java-format msgid "Failed copy to {0}" msgstr "Klarte ikke Ã¥ kopiere til {0}" -#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:47 +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:49 #: ../java/src/net/i2p/router/update/DevSU3UpdateRunner.java:40 #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:55 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:111 -#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:62 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:64 #: ../java/src/net/i2p/router/update/UnsignedUpdateRunner.java:41 #: ../java/src/net/i2p/router/update/UpdateRunner.java:155 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:573 @@ -974,6 +977,13 @@ msgstr "Klarte ikke Ã¥ kopiere til {0}" msgid "HTTP client proxy tunnel must be running" msgstr "" +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:83 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:242 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:88 +#, java-format +msgid "Requires Java version {0} but installed Java version is {1}" +msgstr "Krever Java-versjon {0}, installert versjon av java er {1}" + #. set status before thread to ensure UI feedback #: ../java/src/net/i2p/router/update/DevSU3UpdateHandler.java:91 #: ../java/src/net/i2p/router/update/PluginUpdateHandler.java:82 @@ -983,24 +993,19 @@ msgstr "" msgid "Updating" msgstr "Oppdaterer" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:209 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:218 msgid "In-network updates disabled. Check package manager." msgstr "" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:215 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:224 msgid "No write permission for I2P install directory." msgstr "" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:223 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:232 #, java-format msgid "You must first update to version {0}" msgstr "" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:233 -#, java-format -msgid "Requires Java version {0} but installed Java version is {1}" -msgstr "Krever Java-versjon {0}, installert versjon av java er {1}" - #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:62 #, java-format msgid "Checking for update of plugin {0}" @@ -1204,8 +1209,10 @@ msgid "unban now" msgstr "" #: ../java/src/net/i2p/router/web/CSSHelper.java:149 -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../java/strings/Strings.java:29 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:217 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:221 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:219 @@ -1275,6 +1282,8 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:217 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:219 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:224 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:228 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:230 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:222 @@ -1300,6 +1309,16 @@ msgstr "" msgid "I2P Router Console" msgstr "I2P Ruter Konsoll" +#: ../java/src/net/i2p/router/web/CertHelper.java:25 +msgid "Local SSL Certificates" +msgstr "" + +#: ../java/src/net/i2p/router/web/CertHelper.java:46 +#: ../java/src/net/i2p/router/web/CertHelper.java:51 +#: ../java/strings/Strings.java:63 +msgid "I2PTunnel" +msgstr "" + #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:62 msgid "Error updating the configuration - please see the error logs" msgstr "" @@ -1314,7 +1333,8 @@ msgstr "Innstillingene er lagret" #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:98 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:622 #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:391 -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:151 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:109 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:160 msgid "" "Error saving the configuration (applied but not saved) - please see the " "error logs" @@ -1519,7 +1539,7 @@ msgid "Add Client" msgstr "Legg til klient" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:116 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:503 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:517 #: ../java/src/net/i2p/router/web/SummaryHelper.java:452 msgid "Client" msgstr "Klient" @@ -1551,9 +1571,9 @@ msgid "Plugin" msgstr "Plugin" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:248 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:304 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 msgid "Version" msgstr "Versjon" @@ -1574,9 +1594,9 @@ msgid "License" msgstr "Lisens" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:294 -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/HomeHelper.java:171 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:157 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/HomeHelper.java:178 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:164 msgid "Website" msgstr "Webside" @@ -1611,7 +1631,7 @@ msgstr "Slett" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:21 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigUIHandler.java:19 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:970 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:996 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:496 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:516 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:532 @@ -1621,7 +1641,7 @@ msgstr "" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:23 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1015 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:494 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:502 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:514 @@ -1717,11 +1737,11 @@ msgstr "Ikke funnet i nøkkelringen" msgid "Invalid destination" msgstr "Ugyldig destinasjon" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:82 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:84 msgid "Log overrides updated" msgstr "Logg overstyring oppdatert" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:163 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:165 msgid "Log configuration saved" msgstr "Logg konfigurasjon lagret" @@ -1769,8 +1789,8 @@ msgstr "ADVARSEL" #: ../java/src/net/i2p/router/web/ConfigLoggingHelper.java:85 #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:170 -#: ../java/src/net/i2p/router/web/HomeHelper.java:208 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:904 +#: ../java/src/net/i2p/router/web/HomeHelper.java:215 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 msgid "Remove" msgstr "Fjern" @@ -1789,11 +1809,12 @@ msgid "Home Page" msgstr "Startside" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:328 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:335 msgid "Network" msgstr "Nettverk" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:320 @@ -1827,6 +1848,7 @@ msgstr "Nettverk" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:292 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:322 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:297 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:292 @@ -1845,8 +1867,8 @@ msgid "UI" msgstr "UI" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:179 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:486 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:186 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 #: ../java/strings/Strings.java:73 msgid "Tunnels" msgstr "Tunneller" @@ -1865,15 +1887,15 @@ msgid "Logging" msgstr "Logging" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:185 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:372 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:192 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:386 #: ../java/strings/Strings.java:68 msgid "Peers" msgstr "Peers" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:497 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:230 msgid "Stats" msgstr "Statestikk" @@ -1889,7 +1911,7 @@ msgstr "Avansert" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:491 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:479 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:641 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:593 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:560 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:511 msgid "Save changes" @@ -2070,7 +2092,7 @@ msgid "Unsupported" msgstr "Uegnet" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:24 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 msgid "Save changes and reseed now" msgstr "Lagre endringene og reseed nÃ¥" @@ -2118,7 +2140,16 @@ msgid_plural "Reseed successful, loaded {0} router infos from file" msgstr[0] "" msgstr[1] "" -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:149 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:99 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +msgid "Reset URL list" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:107 +msgid "URL list reset successfully" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:158 msgid "Configuration saved successfully." msgstr "Konfigurasjonen ble lagret" @@ -2618,8 +2649,8 @@ msgid "User Name" msgstr "Brukernavn" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:183 -#: ../java/src/net/i2p/router/web/HomeHelper.java:235 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:972 +#: ../java/src/net/i2p/router/web/HomeHelper.java:242 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:998 msgid "Add" msgstr "Legg til" @@ -2850,13 +2881,13 @@ msgstr "" msgid "Details" msgstr "" -#: ../java/src/net/i2p/router/web/FormHandler.java:251 +#: ../java/src/net/i2p/router/web/FormHandler.java:253 msgid "" "Invalid form submission, probably because you used the 'back' or 'reload' " "button on your browser. Please resubmit." msgstr "" -#: ../java/src/net/i2p/router/web/FormHandler.java:253 +#: ../java/src/net/i2p/router/web/FormHandler.java:255 msgid "" "If the problem persists, verify that you have cookies enabled in your " "browser." @@ -2987,156 +3018,169 @@ msgstr "" msgid "Graph settings saved" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:229 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:236 msgid "Addressbook" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:227 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:234 msgid "Manage your I2P hosts file here (I2P domain name resolution)" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 msgid "Configure Bandwidth" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:330 msgid "I2P Bandwidth Configuration" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Configure Language" msgstr "SprÃ¥kvalg" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Console Language Selection" msgstr "Valg av sprÃ¥k for konsoll" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 msgid "Customize Home Page" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:346 msgid "I2P Home Page Configuration" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:139 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:146 msgid "Anonymous webmail client" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:141 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:148 msgid "Email" msgstr "E-post" -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:251 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 msgid "I2P Router Help" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:161 msgid "Router Console" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:145 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:152 msgid "Built-in anonymous BitTorrent Client" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:147 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:154 msgid "Torrents" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:155 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:162 msgid "Local web server" msgstr "Lokal vev-tjener" -#: ../java/src/net/i2p/router/web/HomeHelper.java:41 +#: ../java/src/net/i2p/router/web/HomeHelper.java:43 msgid "The Anoncoin project" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug Reports" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug tracker" msgstr "" #. "colombo-bt.i2p" + S + _x("The Italian Bittorrent Resource") + S + "http #. ://colombo-bt.i2p/" + S + I + "colomboicon.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Dev Forum" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Development forum" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Bittorrent tracker" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 msgid "diftracker" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:46 +#: ../java/src/net/i2p/router/web/HomeHelper.java:48 msgid "I2P Applications" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +msgid "Anonymous cryptocurrency exchange" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "FAQ" msgstr "OSS" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "Frequently Asked Questions" msgstr "Ofte-Stilte-SpørsmÃ¥l" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Community forum" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Forum" msgstr "Forum" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "" "A public anonymous Git hosting site - supports pulling via Git and HTTP and " "pushing via SSH" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "Anonymous Git Hosting" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:50 +#: ../java/src/net/i2p/router/web/HomeHelper.java:53 msgid "HiddenGate" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "Anonymous wiki - share the knowledge" +msgstr "" + +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "I2P Wiki" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Microblog" msgstr "Mikroblogg" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Your premier microblogging service on I2P" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 msgid "Javadocs" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical documentation" msgstr "Teknisk dokumentasjon" @@ -3144,91 +3188,98 @@ msgstr "Teknisk dokumentasjon" #. "http://jisko.i2p/" + S + I + "jisko_console_icon.png" + S + #. _x("Key Server") + S + _x("OpenPGP Keyserver") + S + "http://keys.i2p/" + S #. + I + "education.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +#: ../java/src/net/i2p/router/web/HomeHelper.java:60 msgid "Debian and Tahoe-LAFS repositories" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free Web Hosting" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free eepsite hosting with PHP and MySQL" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "I2P Pastebin" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "Pastebin" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:58 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 msgid "I2P News" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +msgid "Planet I2P" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Add-on directory" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Plugins" msgstr "Programtillegg" -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Postman's Tracker" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "I2P home page" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "Project Website" msgstr "" +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:68 +msgid "Russian News Feed" +msgstr "" + #. "Salt" + S + "salt.i2p" + S + "http://salt.i2p/" + S + I + #. "salt_console.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +#: ../java/src/net/i2p/router/web/HomeHelper.java:70 msgid "I2P Network Statistics" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical Docs" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:65 +#: ../java/src/net/i2p/router/web/HomeHelper.java:72 msgid "Trac Wiki" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:66 -msgid "Ugha's Wiki" -msgstr "" - -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Seedless and the Robert BitTorrent applications" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#. _x("Ugha's Wiki") + S + S + "http://ugha.i2p/" + S + I + +#. "billiard_marker.png" + S + +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Sponge's main site" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:108 +#: ../java/src/net/i2p/router/web/HomeHelper.java:115 msgid "The HTTP proxy is not up" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:110 +#: ../java/src/net/i2p/router/web/HomeHelper.java:117 #, java-format msgid "Your browser is not properly configured to use the HTTP proxy at {0}" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:210 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:906 +#: ../java/src/net/i2p/router/web/HomeHelper.java:217 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:932 msgid "Name" msgstr "Navn" -#: ../java/src/net/i2p/router/web/HomeHelper.java:212 +#: ../java/src/net/i2p/router/web/HomeHelper.java:219 msgid "URL" msgstr "" @@ -3356,217 +3407,226 @@ msgstr "" msgid "LeaseSets" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:105 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:106 #: ../java/strings/Strings.java:69 msgid "Router" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:112 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:113 msgid "not found in network database" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:156 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 msgid "LeaseSet" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:158 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:163 msgid "Local" msgstr "Lokal" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:160 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:165 msgid "Unpublished" msgstr "Upublisert" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:176 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:166 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:181 msgid "Destination" msgstr "Destinasjon" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:173 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:185 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:178 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 msgid "Add to local addressbook" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:217 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:195 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:222 #, java-format msgid "Expires in {0}" msgstr "Utløper om {0}" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:192 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:219 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:197 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:224 #, java-format msgid "Expired {0} ago" msgstr "Utløp for {0} siden" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Gateway" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 msgid "Lease" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:213 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:218 msgid "Tunnel" msgstr "Tunnel" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:280 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:286 msgid "Not initialized" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:330 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:342 msgid "Network Database Router Statistics" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Count" msgstr "Antall" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 msgid "Transports" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Country" msgstr "Land" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:429 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:453 msgid "Our info" msgstr "VÃ¥r informasjon" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:431 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:455 msgid "Peer info for" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:433 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:457 msgid "Full entry" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 #: ../java/src/net/i2p/router/web/SummaryHelper.java:152 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:726 msgid "Hidden" msgstr "Skjult" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 msgid "Updated" msgstr "Oppdatert" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:441 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:444 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:465 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:468 #, java-format msgid "{0} ago" msgstr "{0} siden" #. shouldnt happen -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:443 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:447 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:467 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:471 msgid "Published" msgstr "Publisert" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:449 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 msgid "Signing Key" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:451 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:475 msgid "Address(es)" msgstr "Adresse(r)" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:463 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:487 msgid "cost" msgstr "kostnad" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "Hidden or starting up" msgstr "Skjult eller starter opp" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU with introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU with introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 Only SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 Only NTCP, SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NewsHelper.java:295 +#: ../java/src/net/i2p/router/web/NewsFeedHelper.java:80 +#, java-format +msgid "by {0}" +msgstr "" + +#: ../java/src/net/i2p/router/web/NewsHelper.java:292 #, java-format msgid "News last updated {0} ago." msgstr "" -#: ../java/src/net/i2p/router/web/NewsHelper.java:301 +#: ../java/src/net/i2p/router/web/NewsHelper.java:298 #, java-format msgid "News last checked {0} ago." msgstr "" -#: ../java/src/net/i2p/router/web/NewsHelper.java:310 +#: ../java/src/net/i2p/router/web/NewsHelper.java:307 msgid "Hide news" msgstr "Gjem nyheter" -#: ../java/src/net/i2p/router/web/NewsHelper.java:313 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:647 +#: ../java/src/net/i2p/router/web/NewsHelper.java:310 msgid "Show news" msgstr "Vis nyheter" +#: ../java/src/net/i2p/router/web/NewsHelper.java:314 +msgid "Show all news" +msgstr "" + #: ../java/src/net/i2p/router/web/PluginStarter.java:140 msgid "Checking for plugin updates" msgstr "" #: ../java/src/net/i2p/router/web/PluginStarter.java:155 +#: ../java/src/net/i2p/router/web/PluginStarter.java:161 msgid "Plugin update check failed" msgstr "" -#: ../java/src/net/i2p/router/web/PluginStarter.java:193 +#: ../java/src/net/i2p/router/web/PluginStarter.java:199 #, java-format msgid "1 plugin updated" msgid_plural "{0} plugins updated" msgstr[0] "" msgstr[1] "" -#: ../java/src/net/i2p/router/web/PluginStarter.java:195 +#: ../java/src/net/i2p/router/web/PluginStarter.java:201 msgid "Plugin update check complete" msgstr "" @@ -3632,7 +3692,7 @@ msgid "Failing" msgstr "Mislyktes" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:135 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:411 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:425 msgid "Integrated" msgstr "Integrert" @@ -3901,277 +3961,287 @@ msgstr "" msgid "Lifetime average value" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:121 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:128 msgid "I2P Router Help & FAQ" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:123 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:130 msgid "Help & FAQ" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:131 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:138 msgid "" "Configure startup of clients and webapps (services); manually start dormant " "services" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:133 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:140 msgid "I2P Services" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:169 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:176 msgid "Configure I2P Router" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:171 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:178 msgid "I2P Internals" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:177 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:484 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:184 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:498 msgid "View existing tunnels and tunnel build status" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:183 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:370 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:190 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:384 msgid "Show all current peer connections" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:189 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:196 msgid "Show recent peer performance profiles" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:191 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:198 msgid "Profiles" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:195 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:202 msgid "Show list of all known I2P routers" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:197 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:204 msgid "NetDB" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:201 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:208 msgid "Health Report" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:203 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:210 msgid "Logs" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:214 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 msgid "Graph router performance" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:216 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 msgid "Graphs" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:228 msgid "Textual router performance statistics" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:233 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:240 #: ../java/src/net/i2p/router/web/SummaryHelper.java:438 msgid "Local Tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:235 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:242 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:164 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:337 msgid "Hidden Services Manager" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:253 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:260 msgid "General" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 msgid "" "Your Local Identity is your unique I2P router identity, similar to an ip " "address but tailored to I2P. " msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:259 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:266 msgid "Never disclose this to anyone, as it can reveal your real world ip." msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:261 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:268 msgid "Local Identity" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:272 msgid "Your unique I2P router identity is" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:269 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:276 msgid "never reveal it to anyone" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:271 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 msgid "show" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:275 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:301 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:282 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:308 msgid "The version of the I2P software we are running" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:292 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:318 msgid "How long we've been running for this session" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:326 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:333 msgid "" "Help with configuring your firewall and router for optimal I2P performance" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:337 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:344 msgid "See more information on the wiki" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:339 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:346 msgid "Warning: ECDSA is not available. Update your Java or OS" msgstr "" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:351 -msgid "Configure I2P Updates" +#, java-format +msgid "Warning: Java version {0} is no longer supported by I2P." msgstr "" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#, java-format +msgid "Update Java to version {0} or higher to receive I2P updates." +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:365 +msgid "Configure I2P Updates" +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:367 msgid "I2P Update" msgstr "I2P-oppdatering" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:378 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:392 msgid "Peers we've been talking to in the last few minutes/last hour" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:381 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:395 msgid "Active" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:390 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:404 msgid "The number of peers available for building client tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:393 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:407 msgid "Fast" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:399 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:413 msgid "The number of peers available for building exploratory tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:402 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:416 msgid "High capacity" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:408 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:422 msgid "The number of peers available for network database inquiries" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:417 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:431 msgid "The total number of peers in our network database" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:420 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:434 msgid "Known" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:440 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:454 msgid "Configure router bandwidth allocation" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:442 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:456 msgid "Bandwidth in/out" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:462 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:476 msgid "Total" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:469 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:483 msgid "Used" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:491 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:505 msgid "" "Used for building and testing tunnels, and communicating with floodfill " "peers" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:494 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:508 msgid "Exploratory" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:514 msgid "Tunnels we are using to provide or access services on the network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:509 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:523 msgid "" "Tunnels we are participating in, directly contributing bandwidth to the " "network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:512 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:526 msgid "Participating" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:518 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:532 msgid "" "The ratio of tunnel hops we provide to tunnel hops we use - a value greater " "than 1.00 indicates a positive contribution to the network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:521 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:535 msgid "Share ratio" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:534 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:548 msgid "What's in the router's job queue?" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:536 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 msgid "Congestion" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:541 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:555 msgid "Indicates router performance" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:544 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:558 msgid "Job lag" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:564 msgid "Indicates how quickly outbound messages to other I2P routers are sent" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:553 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:567 msgid "Message delay" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:560 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:574 msgid "Round trip time for a tunnel test" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:563 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:577 msgid "Tunnel lag" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:570 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:584 msgid "Queued requests from other routers to participate in tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:573 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:587 msgid "Backlog" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:608 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:623 msgid "News & Updates" msgstr "" @@ -4284,17 +4354,21 @@ msgid "Click Shutdown and restart to install" msgstr "Klikk SlÃ¥ av og omstart for Ã¥ installere" #: ../java/src/net/i2p/router/web/SummaryHelper.java:720 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:735 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:737 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:749 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:761 #, java-format msgid "Version {0}" msgstr "Versjon {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:734 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:736 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:748 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:760 msgid "Update available" msgstr "Oppdateringer tilgjengelig" #. Note to translators: parameter is a version, e.g. "0.8.4" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:758 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:784 #, java-format msgid "Download {0} Update" msgstr "" @@ -4303,7 +4377,7 @@ msgstr "" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:766 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:792 #, java-format msgid "Download Signed<br>Development Update<br>{0}" msgstr "" @@ -4312,56 +4386,56 @@ msgstr "" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:774 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 #, java-format msgid "Download Unsigned<br>Update {0}" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:798 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:824 msgid "Help with firewall configuration" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:826 msgid "Check network connection and NAT/firewall" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:819 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:845 msgid "Reseed" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:908 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:934 msgid "Order" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:925 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:951 msgid "Top" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:956 msgid "Move to top" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:940 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:966 msgid "Move up" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:948 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:974 msgid "Down" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:953 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:979 msgid "Move down" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:958 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:984 msgid "Bottom" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:963 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 msgid "Move to bottom" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:975 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1001 msgid "Select a section to add" msgstr "" @@ -4408,100 +4482,100 @@ msgstr "Klient-tunneler for" msgid "dead" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:70 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:69 msgid "Participating tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "Receive on" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Expiration" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Send on" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Rate" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Role" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Usage" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:111 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:113 msgid "grace period" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:121 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 msgid "Outbound Endpoint" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 msgid "Inbound Gateway" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:127 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:174 msgid "Participant" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:130 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:133 #, java-format msgid "Limited display to the {0} tunnels with the highest usage" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:131 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:135 msgid "Inactive participating tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:132 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:224 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:138 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:232 msgid "Lifetime bandwidth usage" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Expiry" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:165 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 msgid "Participants" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:177 msgid "Endpoint" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 #: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "Build in progress" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 msgid "inbound" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "outbound" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:223 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:231 msgid "No tunnels; waiting for the grace period to end." msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:225 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:233 msgid "in" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:234 msgid "out" msgstr "" @@ -4638,10 +4712,6 @@ msgstr "Kryptering" msgid "i2cp" msgstr "" -#: ../java/strings/Strings.java:63 -msgid "I2PTunnel" -msgstr "" - #: ../java/strings/Strings.java:64 msgid "InNetPool" msgstr "" @@ -4688,10 +4758,12 @@ msgstr "" msgid "port" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 -msgid "configure bandwidth" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:146 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:318 +msgid "Certificates" msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:153 @@ -4725,6 +4797,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:149 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:155 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:154 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:149 @@ -4740,6 +4813,7 @@ msgstr "" #. We have intl defined when this is included, but not when compiled #. standalone. +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:333 @@ -4772,6 +4846,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:305 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:310 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:305 @@ -4787,6 +4862,7 @@ msgid "Refresh (s)" msgstr "" #. ditto +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:337 @@ -4819,6 +4895,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:309 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:339 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:314 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:309 @@ -4833,6 +4910,10 @@ msgstr "" msgid "Enable" msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 +msgid "configure bandwidth" +msgstr "" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:437 msgid "Bandwidth limiter" msgstr "" @@ -4909,7 +4990,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:501 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:477 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:639 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:587 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:558 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:509 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:461 @@ -5942,51 +6023,51 @@ msgstr "" msgid "Reseed URLs" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:541 msgid "Enable HTTP Proxy?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:543 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:545 msgid "HTTP Proxy Host" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:547 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:549 msgid "HTTP Proxy Port" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:551 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:553 msgid "Use HTTP Proxy Authorization?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:555 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:557 msgid "HTTP Proxy Username" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:559 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:561 msgid "HTTP Proxy Password" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:563 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:565 msgid "Enable HTTPS Proxy?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:567 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:569 msgid "HTTPS Proxy Host" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:571 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:573 msgid "HTTPS Proxy Port" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:575 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:577 msgid "Use HTTPS Proxy Authorization?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:579 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:581 msgid "HTTPS Proxy Username" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:583 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:585 msgid "HTTPS Proxy Password" msgstr "" @@ -6545,6 +6626,14 @@ msgstr "" msgid "I2P Network Database" msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:148 +msgid "News" +msgstr "" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:344 +msgid "Latest News" +msgstr "" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:152 msgid "WebApp Not Found" msgstr "" diff --git a/apps/routerconsole/locale/messages_nl.po b/apps/routerconsole/locale/messages_nl.po index f77331c855cc02c9a203e5a24a5a939792487860..9aacac2f07382316bb126762b328caa71a270c41 100644 --- a/apps/routerconsole/locale/messages_nl.po +++ b/apps/routerconsole/locale/messages_nl.po @@ -12,7 +12,7 @@ # foo <foo@bar>, 2009 # Jrnr601 <jerobben@gmail.com>, 2012 # Jrnr601 <jerobben@gmail.com>, 2012 -# Desirius <martinjefmeyers@gmail.com>, 2014 +# Desirius <martinjefmeyers@gmail.com>, 2014-2015 # Nathan Follens, 2015 # Nathan Follens, 2015 # attesor <random901@zoho.com>, 2012 @@ -23,10 +23,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:05+0000\n" -"PO-Revision-Date: 2015-07-17 01:31+0000\n" -"Last-Translator: kytv <killyourtv@i2pmail.org>\n" -"Language-Team: Dutch (http://www.transifex.com/projects/p/I2P/language/nl/)\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-07 09:59+0000\n" +"Last-Translator: Desirius <martinjefmeyers@gmail.com>\n" +"Language-Team: Dutch (http://www.transifex.com/otf/I2P/language/nl/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -97,8 +97,8 @@ msgstr[1] "{0} dagen" #, java-format msgid "1 year" msgid_plural "{0} years" -msgstr[0] "" -msgstr[1] "" +msgstr[0] "1 jaar" +msgstr[1] "{0} jaar" #: ../../../core/java/src/net/i2p/data/DataHelper.java:1549 #: ../../../core/java/src/net/i2p/data/DataHelper.java:1596 @@ -145,19 +145,22 @@ msgid "IPs Permanently Banned" msgstr "Permanent verbannen IPs" #: ../../../router/java/src/net/i2p/router/Blocklist.java:959 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "From" msgstr "Van" #: ../../../router/java/src/net/i2p/router/Blocklist.java:961 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "To" msgstr "Naar" #: ../../../router/java/src/net/i2p/router/Blocklist.java:997 #: ../java/src/net/i2p/router/web/BanlistRenderer.java:48 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:652 +#: ../java/src/net/i2p/router/web/CertHelper.java:77 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:147 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:662 #: ../java/src/net/i2p/router/web/SummaryHelper.java:478 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:137 msgid "none" msgstr "geen" @@ -295,43 +298,43 @@ msgstr "Tunnels geweigerd: Aan het afsluiten" msgid "Rejecting tunnels" msgstr "Tunnels geweigerd" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:212 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:210 #, java-format msgid "Reseeding: got router info from file ({0} successful, {1} errors)." -msgstr "" +msgstr "Reseeden: heb router info van bestand gekregen ({0} succesvol, {1} fouten)." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:284 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:282 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:28 msgid "Reseeding" msgstr "Reseeden" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:307 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:305 #, java-format msgid "Reseed fetched only 1 router." msgid_plural "Reseed fetched only {0} routers." msgstr[0] "Reseed heeft slechts 1 router opgehaald." msgstr[1] "Reseed heeft slechts {0} routers opgehaald." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:314 msgid "Reseed failed." -msgstr "Reseed gefaald" +msgstr "Reseed mislukt." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:317 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:315 #, java-format msgid "See {0} for help." msgstr "Zie {0} voor hulp." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:318 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 msgid "reseed configuration page" msgstr "reseed configuratie pagina" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:566 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:697 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:564 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:695 msgid "Reseeding: fetching seed URL." msgstr "Reseed: opvragen seed URL." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:623 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:733 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:621 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:731 #, java-format msgid "" "Reseeding: fetching router info from seed URL ({0} successful, {1} errors)." @@ -367,11 +370,11 @@ msgstr "Bekende snelle peers" #: ../../../router/java/src/net/i2p/router/tasks/CoalesceStatsEvent.java:41 msgid "Known integrated (floodfill) peers" -msgstr "" +msgstr "Bekende geïntegreerde (floodfill) peers" #: ../../../router/java/src/net/i2p/router/tasks/CoalesceStatsEvent.java:42 msgid "Size of tunnel acceptor backlog" -msgstr "" +msgstr "Grootte van tunnel acceptor backlog" #: ../../../router/java/src/net/i2p/router/transport/CommSystemFacadeImpl.java:502 msgid "NetDb entry" @@ -389,19 +392,19 @@ msgstr "Handtekening type niet ondersteund" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:618 msgid "No support for our signature type" -msgstr "" +msgstr "Geen ondersteuning voor ons handtekening type" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:622 msgid "Unreachable on any transport" msgstr "Onbereikbaar op alle transports" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:674 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:566 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:577 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:604 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:622 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1348 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2469 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2474 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:92 msgid "Status" msgstr "Status" @@ -416,12 +419,12 @@ msgid "{0} is used for outbound connections only" msgstr "{0} is alleen gebruikt voor uitgaande connecties" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:711 -#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:283 +#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:295 msgid "UPnP is not enabled" msgstr "UPnP is niet ingeschakeld." #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:720 -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:167 msgid "Help" msgstr "Help" @@ -445,7 +448,7 @@ msgstr "Definities" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:726 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1352 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2473 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:24 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:33 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:35 @@ -460,7 +463,7 @@ msgstr "De remote peer, geïdentificeerd door de router hash" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:727 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1353 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Dir" msgstr "Richting" @@ -487,14 +490,14 @@ msgstr "Hoe lang sinds een pakket ontvangen / verstuurd is" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:735 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1355 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2479 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 msgid "Idle" msgstr "Idle" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:736 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1356 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "In/Out" msgstr "In/Uit" @@ -508,14 +511,14 @@ msgstr "Hoe lang sinds deze connectie is gemaakt" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:737 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1357 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:935 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2494 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:961 msgid "Up" msgstr "Up" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:738 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1358 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2491 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2496 msgid "Skew" msgstr "Afwijking" @@ -564,7 +567,7 @@ msgstr "Huidige maximum verzonden pakket grootte / verwachte maximimum ontvangen #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:748 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1359 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2508 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 msgid "TX" msgstr "TX" @@ -574,7 +577,7 @@ msgstr "Het totaal aantal pakketten verzonden aan de peer" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:749 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1360 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2510 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 msgid "RX" msgstr "RX" @@ -583,7 +586,7 @@ msgid "The total number of packets received from the peer" msgstr "Het totaal aantal ontvangen pakketten van de peer" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:750 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2518 msgid "Dup TX" msgstr "Dup TX" @@ -592,7 +595,7 @@ msgid "The total number of packets retransmitted to the peer" msgstr "Het totaal aantal pakketten dat opnieuw is verzonden aan de peer" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:751 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2520 msgid "Dup RX" msgstr "Dup RX" @@ -600,104 +603,104 @@ msgstr "Dup RX" msgid "The total number of duplicate packets received from the peer" msgstr "Het totaal aantal pakketten dat dubbel is ontvangen van de peer" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:560 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:561 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 msgid "Service" msgstr "Service" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:564 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 msgid "WAN Common Interface Configuration" msgstr "WAN Common Interface Configuratie" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:567 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:587 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:614 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:568 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:588 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:615 msgid "Type" msgstr "Type" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:569 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:589 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:570 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:590 msgid "Upstream" msgstr "Upstream" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:571 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:591 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:572 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:592 msgid "Downstream" msgstr "Downstream" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:575 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 msgid "WAN PPP Connection" msgstr "WAN PPP Verbinding" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:583 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:610 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:288 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:314 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:584 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:611 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:295 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:321 msgid "Uptime" msgstr "Uptime" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:593 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:616 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:594 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:617 msgid "External IP" msgstr "Extern IP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:597 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 msgid "Layer 3 Forwarding" msgstr "Layer 3 Forwarding" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:599 msgid "Default Connection Service" msgstr "Standaard Verbindingsdienst" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:602 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 msgid "WAN IP Connection" msgstr "WAN IP Verbinding" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:620 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 msgid "WAN Ethernet Link Configuration" msgstr "WAN Ethernet Link Configuratie" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:641 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:642 msgid "Found Device" msgstr "Apparaat gevonden" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:643 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:644 msgid "Subdevice" msgstr "Subapparaat" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:664 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:665 msgid "UPnP Status" msgstr "UPnP Status" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:668 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:669 msgid "Disabled UPnP Devices" msgstr "UPnP apparaten uitgeschakeld" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:682 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:683 msgid "" "UPnP has been disabled; Do you have more than one UPnP Internet Gateway " "Device on your LAN ?" msgstr "UPnP is uitgeschakeld; Heb je meer dan 1 UPnP Internet Gateway Apparaat op je LAN?" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:685 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:686 msgid "UPnP has not found any UPnP-aware, compatible device on your LAN." msgstr "UPnP heeft geen UPnP-geschikte, compatibele apparaten op uw LAN gevonden." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:693 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:694 #, java-format msgid "The current external IP address reported by UPnP is {0}" msgstr "Volgens UPnP is het huidige externe IP-adres {0}" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:695 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:696 msgid "The current external IP address is not available." msgstr "Het huidige externe IP-adres is niet beschikbaar." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:699 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:700 #, java-format msgid "UPnP reports the maximum downstream bit rate is {0}bits/sec" msgstr "Volgens UPnP is de maximale downstream bit rate {0}bits/sec" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:701 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:702 #, java-format msgid "UPnP reports the maximum upstream bit rate is {0}bits/sec" msgstr "Volgens UPnP is de maximale upstream bit rate {0}bits/sec" @@ -706,12 +709,12 @@ msgstr "Volgens UPnP is de maximale upstream bit rate {0}bits/sec" #. {1,number,#####} prevents 12345 from being output as 12,345 in the English #. locale. #. If you want the digit separator in your locale, translate as {1}. -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:709 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:710 #, java-format msgid "{0} port {1,number,#####} was successfully forwarded by UPnP." msgstr "{0} poort {1,number,,#####} is succesvol geforward door UPnP." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:711 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:712 #, java-format msgid "{0} port {1,number,#####} was not forwarded by UPnP." msgstr "{0} poort {1,number,,#####} is niet geforward door UPnP." @@ -727,17 +730,17 @@ msgid "NTCP connections" msgstr "NTCP connecties" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1345 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2466 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2471 msgid "Limit" msgstr "Limiet" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1346 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2467 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2472 msgid "Timeout" msgstr "Time-out" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1354 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2483 msgid "IPv6" msgstr "IPv6" @@ -750,126 +753,126 @@ msgid "Backlogged?" msgstr "In achterstand?" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1375 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2532 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2537 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Inbound" msgstr "Inkomend" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1377 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2534 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2539 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Outbound" msgstr "Uitgaand" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1432 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2699 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2704 #, java-format msgid "{0} peer" msgid_plural "{0} peers" msgstr[0] "{0} peer" msgstr[1] "{0} peers" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2465 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2470 msgid "UDP connections" msgstr "UDP connecties" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2475 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 msgid "Sort by peer hash" msgstr "Gesorteerd op peer hash" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Direction/Introduction" msgstr "Richting/Introductie" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 msgid "Sort by idle inbound" msgstr "Gesorteerd op idle inkomend" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 msgid "Sort by idle outbound" msgstr "Gesorteerd op idle uitgaand" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 msgid "Sort by inbound rate" msgstr "Gesorteerd op inkomende snelheid" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 msgid "Sort by outbound rate" msgstr "Gesorteerd op uitgaande snelheid" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 msgid "Sort by connection uptime" msgstr "Gesorteerd op uptime van de connectie" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 msgid "Sort by clock skew" msgstr "Gesorteerd op klok afwijking" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 msgid "Sort by congestion window" msgstr "Gesorteerd op congestion window" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2502 msgid "Sort by slow start threshold" msgstr "Gesorteerd op vertraagde-start drempel" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2505 msgid "Sort by round trip time" msgstr "Gesorteerd op rondgangstijd" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2504 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 msgid "Sort by retransmission timeout" msgstr "Gesorteerd op herzendings time-out" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2507 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2512 msgid "Sort by outbound maximum transmit unit" msgstr "Gesorteerd op uitgaande maximum verzend unit" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 msgid "Sort by packets sent" msgstr "Gesorteerd op verzonden pakketten" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2511 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 msgid "Sort by packets received" msgstr "Gesorteerd op ontvangen pakketten" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2519 msgid "Sort by packets retransmitted" msgstr "Gesorteerd op herzonden pakketten" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2521 msgid "Sort by packets received more than once" msgstr "Gesorteerd op meerdere keren ontvangen pakketten" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2536 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2541 msgid "We offered to introduce them" msgstr "We hebben aangeboden ze te introduceren" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2538 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2543 msgid "They offered to introduce us" msgstr "Zij hebben aangeboden ons te introduceren" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2542 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2547 msgid "Choked" msgstr "Verstikt" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2550 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2555 msgid "1 fail" msgstr "1 gefaald" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2552 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2557 #, java-format msgid "{0} fails" msgstr "{0} gefaald" #. 1 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2558 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2563 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:166 #: ../java/src/net/i2p/router/web/ProfilesHelper.java:13 msgid "Banned" msgstr "Verbannen" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2617 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2622 msgid "backlogged" msgstr "achterstand" @@ -879,110 +882,117 @@ msgstr "Negeer tunnel aanvragen: Te traag" #: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:260 msgid "Dropping tunnel requests: High job lag" -msgstr "" +msgstr "Negeer tunnel aanvragen: Hoge werk vertraging" #. don't even bother, since we are so overloaded locally #: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:451 msgid "Dropping tunnel requests: Overloaded" msgstr "Negeer tunnel aanvragen: Overladen" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:693 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:695 msgid "Rejecting tunnels: Hidden mode" msgstr "Tunnels worden afgewezen: Verborgen modus" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:721 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:723 msgid "Rejecting tunnels: Request overload" msgstr "Weiger tunnels: Overladen met aanvragen" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:752 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:754 msgid "Rejecting tunnels: Connection limit" msgstr "Weiger tunnels: Connectie limiet" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:964 -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:997 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:966 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:999 msgid "Dropping tunnel requests: High load" msgstr "Negeer tunnel aanvragen: Hoge load" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1076 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1078 msgid "Dropping tunnel requests: Queue time" msgstr "Negeer tunnel aanvragen: Wachttijd" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:884 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:895 #, java-format msgid "New plugin version {0} is available" msgstr "Nieuwe plugin versie {0} is beschikbaar" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:964 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:975 #, java-format msgid "Update check failed for plugin {0}" msgstr "Update check voor plugin {0} gefaald" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:968 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:979 #, java-format msgid "No new version is available for plugin {0}" msgstr "Geen nieuwe versie beschikbaar voor plugin {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:992 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1003 #, java-format msgid "{0}B transferred" msgstr "{0}B ontvangen" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1051 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1062 #, java-format msgid "Install failed from {0}" -msgstr "" +msgstr "Installatie mislukt van {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1053 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1064 #: ../java/src/net/i2p/router/update/UpdateRunner.java:298 #, java-format msgid "Transfer failed from {0}" -msgstr "Overdracht gefaald van {0}" +msgstr "Overdracht mislukt van {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1328 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1339 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1403 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 #: ../java/src/net/i2p/router/web/SummaryHelper.java:715 msgid "Update downloaded" msgstr "Update gedownload" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 msgid "Restarting" msgstr "Herstarten" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 msgid "Update verified" msgstr "Update geverifieerd" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1381 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:189 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:306 #, java-format msgid "from {0}" msgstr "van {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1396 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1407 #, java-format msgid "Unsigned update file from {0} is corrupt" msgstr "Niet-ondertekende update bestand van {0} is corrupt" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1425 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1436 #, java-format msgid "Failed copy to {0}" -msgstr "Kopie naar {0} gefaald" +msgstr "Kopie naar {0} mislukt" -#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:47 +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:49 #: ../java/src/net/i2p/router/update/DevSU3UpdateRunner.java:40 #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:55 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:111 -#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:62 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:64 #: ../java/src/net/i2p/router/update/UnsignedUpdateRunner.java:41 #: ../java/src/net/i2p/router/update/UpdateRunner.java:155 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:573 #: ../java/src/net/i2p/router/web/ConfigUpdateHandler.java:177 #: ../java/src/net/i2p/router/web/PluginStarter.java:157 msgid "HTTP client proxy tunnel must be running" -msgstr "" +msgstr "HTTP cliënt proxy tunnel moet gestart zijn" + +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:83 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:242 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:88 +#, java-format +msgid "Requires Java version {0} but installed Java version is {1}" +msgstr "Je hebt Java versie {0} nodig, maar hebt Java versie {1} geïnstalleerd" #. set status before thread to ensure UI feedback #: ../java/src/net/i2p/router/update/DevSU3UpdateHandler.java:91 @@ -993,24 +1003,19 @@ msgstr "" msgid "Updating" msgstr "Aan het updaten" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:209 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:218 msgid "In-network updates disabled. Check package manager." msgstr "In-netwerk updates uitgeschakeld. Controleer de pakket manager." -#: ../java/src/net/i2p/router/update/NewsFetcher.java:215 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:224 msgid "No write permission for I2P install directory." msgstr "Geen schrijf toestemming voor de I2P installatie map." -#: ../java/src/net/i2p/router/update/NewsFetcher.java:223 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:232 #, java-format msgid "You must first update to version {0}" msgstr "Je moet eerst updaten naar versie {0}" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:233 -#, java-format -msgid "Requires Java version {0} but installed Java version is {1}" -msgstr "Je hebt Java versie {0} nodig, maar hebt Java versie {1} geïnstalleerd" - #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:62 #, java-format msgid "Checking for update of plugin {0}" @@ -1065,7 +1070,7 @@ msgstr "Plugin van {0} bevat een ongeldige sleutel" #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:329 #, java-format msgid "Plugin signature verification of {0} failed" -msgstr "Plugin handtekening verificatie van {0} gefaald" +msgstr "Plugin handtekening verificatie van {0} mislukt" #. don't display signer, we're really checking the key not the signer name #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:280 @@ -1157,7 +1162,7 @@ msgstr "De plugin is alleen voor upgrades, maar de plugin is niet geïnstalleerd #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:514 #, java-format msgid "Failed to install plugin in {0}" -msgstr "Installatie van plugin in {0} gefaald" +msgstr "Installatie van plugin in {0} mislukt" #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:521 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:549 @@ -1197,7 +1202,7 @@ msgstr "Geen nieuwe versie gevonden op {0}" #: ../java/src/net/i2p/router/web/BanlistRenderer.java:65 msgid "Permanently banned" -msgstr "" +msgstr "Permanent gebant" #: ../java/src/net/i2p/router/web/BanlistRenderer.java:67 #, java-format @@ -1214,8 +1219,10 @@ msgid "unban now" msgstr "Hef verbanning nu op" #: ../java/src/net/i2p/router/web/CSSHelper.java:149 -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../java/strings/Strings.java:29 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:217 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:221 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:219 @@ -1285,6 +1292,8 @@ msgstr "Hef verbanning nu op" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:217 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:219 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:224 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:228 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:230 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:222 @@ -1310,6 +1319,16 @@ msgstr "Hef verbanning nu op" msgid "I2P Router Console" msgstr "I2P Router Console" +#: ../java/src/net/i2p/router/web/CertHelper.java:25 +msgid "Local SSL Certificates" +msgstr "Locale SSL Certificaten" + +#: ../java/src/net/i2p/router/web/CertHelper.java:46 +#: ../java/src/net/i2p/router/web/CertHelper.java:51 +#: ../java/strings/Strings.java:63 +msgid "I2PTunnel" +msgstr "I2PTunnel" + #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:62 msgid "Error updating the configuration - please see the error logs" msgstr "Fout bij updaten dan de configuratie - kijk in de fout logs" @@ -1324,7 +1343,8 @@ msgstr "Configuratie succesvol opgeslagen" #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:98 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:622 #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:391 -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:151 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:109 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:160 msgid "" "Error saving the configuration (applied but not saved) - please see the " "error logs" @@ -1360,7 +1380,7 @@ msgstr "Installeer Plugin" #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:77 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:639 msgid "Install Plugin from File" -msgstr "" +msgstr "Installeer Plugin vanuit Bestand" #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:86 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:650 @@ -1460,11 +1480,11 @@ msgstr "Geen plugin URL gespecificeerd." #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:421 #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:79 msgid "You must enter a file" -msgstr "" +msgstr "Je moet een bestand opgeven" #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:464 msgid "Install from file failed" -msgstr "" +msgstr "Installatie van bestand is mislukt" #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:479 #, java-format @@ -1483,7 +1503,7 @@ msgstr "Alle plugins worden geupdate" #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:528 #, java-format msgid "Installing plugin from {0}" -msgstr "" +msgstr "Plugin van {0} aan het installeren" #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:549 #, java-format @@ -1529,7 +1549,7 @@ msgid "Add Client" msgstr "Client Toevoegen" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:116 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:503 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:517 #: ../java/src/net/i2p/router/web/SummaryHelper.java:452 msgid "Client" msgstr "Client" @@ -1561,9 +1581,9 @@ msgid "Plugin" msgstr "Plugin" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:248 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:304 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 msgid "Version" msgstr "Versie" @@ -1584,9 +1604,9 @@ msgid "License" msgstr "Licentie" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:294 -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/HomeHelper.java:171 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:157 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/HomeHelper.java:178 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:164 msgid "Website" msgstr "Website" @@ -1621,7 +1641,7 @@ msgstr "Verwijder" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:21 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigUIHandler.java:19 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:970 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:996 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:496 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:516 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:532 @@ -1631,7 +1651,7 @@ msgstr "Verwijderd selectie" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:23 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1015 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:494 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:502 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:514 @@ -1727,11 +1747,11 @@ msgstr "niet gevonden in sleutelbos" msgid "Invalid destination" msgstr "Ongeldige bestemming" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:82 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:84 msgid "Log overrides updated" msgstr "Log overschrijving bijgewerkt" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:163 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:165 msgid "Log configuration saved" msgstr "Log configuratie opgeslagen" @@ -1779,8 +1799,8 @@ msgstr "WARN" #: ../java/src/net/i2p/router/web/ConfigLoggingHelper.java:85 #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:170 -#: ../java/src/net/i2p/router/web/HomeHelper.java:208 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:904 +#: ../java/src/net/i2p/router/web/HomeHelper.java:215 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 msgid "Remove" msgstr "Verwijder" @@ -1799,11 +1819,12 @@ msgid "Home Page" msgstr "Home Page" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:328 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:335 msgid "Network" msgstr "Netwerk" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:320 @@ -1837,6 +1858,7 @@ msgstr "Netwerk" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:292 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:322 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:297 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:292 @@ -1855,8 +1877,8 @@ msgid "UI" msgstr "UI" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:179 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:486 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:186 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 #: ../java/strings/Strings.java:73 msgid "Tunnels" msgstr "Tunnels" @@ -1875,15 +1897,15 @@ msgid "Logging" msgstr "Logging" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:185 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:372 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:192 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:386 #: ../java/strings/Strings.java:68 msgid "Peers" msgstr "Peers" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:497 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:230 msgid "Stats" msgstr "Statistieken" @@ -1899,7 +1921,7 @@ msgstr "Geavanceerd" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:491 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:479 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:641 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:593 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:560 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:511 msgid "Save changes" @@ -1924,7 +1946,7 @@ msgstr "TCP adres opwaarderen naar {0}" #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:263 msgid "Disabling inbound TCP" -msgstr "Inkomende TCP uitschakelen" +msgstr "Inkomend TCP verkeer uitschakelen" #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:265 msgid "Updating inbound TCP address to auto" @@ -1980,11 +2002,11 @@ msgstr "Laptop modes uitgeschakeld" #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:359 msgid "Disabling inbound IPv4" -msgstr "" +msgstr "Inkomend IPv4 verkeer uitschakelen" #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:361 msgid "Enabling inbound IPv4" -msgstr "" +msgstr "Inkomend IPv4 verkeer inschakelen" #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:369 msgid "Disabling UDP" @@ -2080,7 +2102,7 @@ msgid "Unsupported" msgstr "Niet ondersteund" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:24 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 msgid "Save changes and reseed now" msgstr "Sla wijzigingen op en reseed nu" @@ -2097,38 +2119,47 @@ msgstr "Reseed proces aan het starten" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:32 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:491 msgid "Reseed from URL" -msgstr "" +msgstr "Reseed van URL" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:37 msgid "You must enter a URL" -msgstr "" +msgstr "Je moet een URL invoeren" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:66 msgid "Reseed in progress, check summary bar for status" -msgstr "" +msgstr "Reseed is bezig, zie samenvatting balk voor de status" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:68 msgid "Reseed complete, check summary bar for status" -msgstr "" +msgstr "Reseed compleet, zie samenvatting balk voor de status" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:74 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:503 msgid "Reseed from file" -msgstr "" +msgstr "Reseed uit bestand" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:84 #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:91 msgid "Reseed from file failed" -msgstr "" +msgstr "Reseed uit bestand mislukt" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:86 #, java-format msgid "Reseed successful, loaded {0} router info from file" msgid_plural "Reseed successful, loaded {0} router infos from file" -msgstr[0] "" -msgstr[1] "" +msgstr[0] "Reseed succesvol, {0} router info uit bestand geladen" +msgstr[1] "Reseed succesvol, {0} router info's uit bestand geladen" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:99 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +msgid "Reset URL list" +msgstr "Reset URL lijst" -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:149 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:107 +msgid "URL list reset successfully" +msgstr "URL lijst succesvol gereset" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:158 msgid "Configuration saved successfully." msgstr "Configuratie succesvol opgeslagen." @@ -2593,7 +2624,7 @@ msgstr "Roemeens" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:96 msgid "Russian" -msgstr "Russies" +msgstr "Russisch" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:97 msgid "Slovak" @@ -2628,8 +2659,8 @@ msgid "User Name" msgstr "Gebruikersnaam" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:183 -#: ../java/src/net/i2p/router/web/HomeHelper.java:235 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:972 +#: ../java/src/net/i2p/router/web/HomeHelper.java:242 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:998 msgid "Add" msgstr "Voeg toe" @@ -2703,12 +2734,12 @@ msgstr "Updaten vertrouwde sleutels." #: ../java/src/net/i2p/router/web/ConfigUpdateHandler.java:292 #, java-format msgid "Updating unsigned update URL to {0}" -msgstr "Niet-ondertekende update URL vernieuwen naar {0}" +msgstr "Niet-ondertekende update URL bijwerken naar {0}" #: ../java/src/net/i2p/router/web/ConfigUpdateHandler.java:304 #, java-format msgid "Updating signed development build URL to {0}" -msgstr "" +msgstr "Ondertekende ontwikkel build URL bijwerken naar {0}" #: ../java/src/net/i2p/router/web/ConfigUpdateHelper.java:132 msgid "Every" @@ -2760,7 +2791,7 @@ msgstr "Nieuwe versie geïnstalleerd" #: ../java/src/net/i2p/router/web/EventLogHelper.java:42 msgid "Install failed" -msgstr "Installatie heeft gefaald" +msgstr "Installatie is mislukt" #: ../java/src/net/i2p/router/web/EventLogHelper.java:43 msgid "Network error" @@ -2860,13 +2891,13 @@ msgstr "Gebeurtenis" msgid "Details" msgstr "Details" -#: ../java/src/net/i2p/router/web/FormHandler.java:251 +#: ../java/src/net/i2p/router/web/FormHandler.java:253 msgid "" "Invalid form submission, probably because you used the 'back' or 'reload' " "button on your browser. Please resubmit." msgstr "Ongeldig formulier verzonden, mogelijk omdat je de 'terug' of 'vernieuw' knop in je browser hebt gebruikt. Probeer opnieuw te verzenden." -#: ../java/src/net/i2p/router/web/FormHandler.java:253 +#: ../java/src/net/i2p/router/web/FormHandler.java:255 msgid "" "If the problem persists, verify that you have cookies enabled in your " "browser." @@ -2997,156 +3028,169 @@ msgstr "Sla instellingen op en herteken grafieken" msgid "Graph settings saved" msgstr "Grafiek instellingen opgeslagen" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:229 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:236 msgid "Addressbook" msgstr "Adresboek" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:227 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:234 msgid "Manage your I2P hosts file here (I2P domain name resolution)" msgstr "Beheer je I2P hosts bestand hier (I2P domeinnaam bepaling)" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 msgid "Configure Bandwidth" msgstr "Stel Bandreedte in" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:330 msgid "I2P Bandwidth Configuration" msgstr "I2P Bandbreedte Configuratie" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Configure Language" msgstr "Stel taal in" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Console Language Selection" msgstr "Console Taalinstellingen" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 msgid "Customize Home Page" msgstr "Pas Home Page aan" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:346 msgid "I2P Home Page Configuration" msgstr "I2P Home Page Configuratie" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:139 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:146 msgid "Anonymous webmail client" msgstr "Anonieme webmail client" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:141 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:148 msgid "Email" msgstr "Email" -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:251 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 msgid "I2P Router Help" msgstr "I2P Router Hulp" -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:161 msgid "Router Console" msgstr "Router Console" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:145 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:152 msgid "Built-in anonymous BitTorrent Client" msgstr "Ingebouwde anonieme BitTorrent Client" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:147 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:154 msgid "Torrents" msgstr "Torrents" -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:155 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:162 msgid "Local web server" msgstr "Lokale webserver" -#: ../java/src/net/i2p/router/web/HomeHelper.java:41 +#: ../java/src/net/i2p/router/web/HomeHelper.java:43 msgid "The Anoncoin project" msgstr "Het Anoncoin project" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug Reports" msgstr "Bug Reports" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug tracker" msgstr "Bug tracker" #. "colombo-bt.i2p" + S + _x("The Italian Bittorrent Resource") + S + "http #. ://colombo-bt.i2p/" + S + I + "colomboicon.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Dev Forum" msgstr "Dev Forum" -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Development forum" msgstr "Development forum" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Bittorrent tracker" msgstr "Bittorrent tracker" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 msgid "diftracker" msgstr "diftracker" -#: ../java/src/net/i2p/router/web/HomeHelper.java:46 +#: ../java/src/net/i2p/router/web/HomeHelper.java:48 msgid "I2P Applications" msgstr "I2P Applicaties" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +msgid "Anonymous cryptocurrency exchange" +msgstr "Anonieme cryptocurrency uitwisseling" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "FAQ" msgstr "FAQ" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "Frequently Asked Questions" msgstr "Vaak gestelde vragen" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Community forum" msgstr "Community forum" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Forum" msgstr "Forum" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "" "A public anonymous Git hosting site - supports pulling via Git and HTTP and " "pushing via SSH" msgstr "Een publieke, anonieme Git hosting website - ondersteund downloaden via Git en HTTP en uploaden via SSH" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "Anonymous Git Hosting" msgstr "Anonieme Git Hosting" -#: ../java/src/net/i2p/router/web/HomeHelper.java:50 +#: ../java/src/net/i2p/router/web/HomeHelper.java:53 msgid "HiddenGate" msgstr "HiddenGate" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "Anonymous wiki - share the knowledge" +msgstr "Anonieme wiki - deel de kennis" + +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "I2P Wiki" +msgstr "I2P wiki" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Microblog" msgstr "Microblog" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Your premier microblogging service on I2P" msgstr "De beste microbloggingdienst op I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 msgid "Javadocs" msgstr "Javadocs" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical documentation" msgstr "Technische documentatie" @@ -3154,91 +3198,98 @@ msgstr "Technische documentatie" #. "http://jisko.i2p/" + S + I + "jisko_console_icon.png" + S + #. _x("Key Server") + S + _x("OpenPGP Keyserver") + S + "http://keys.i2p/" + S #. + I + "education.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +#: ../java/src/net/i2p/router/web/HomeHelper.java:60 msgid "Debian and Tahoe-LAFS repositories" msgstr "Debian en Tahoe-LAFS magazijn" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free Web Hosting" msgstr "Gratis Web Hosting" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free eepsite hosting with PHP and MySQL" msgstr "Gratis eepsite hosting met PHP en MySQL" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "I2P Pastebin" msgstr "I2P Pastebin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "Pastebin" msgstr "Pastebin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:58 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 msgid "I2P News" msgstr "I2P Nieuws" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +msgid "Planet I2P" +msgstr "Planeet I2P" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Add-on directory" msgstr "Add-on map" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Plugins" msgstr "Plugins" -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Postman's Tracker" msgstr "Postman's Tracker" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "I2P home page" msgstr "I2P home page" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "Project Website" msgstr "Project Website" +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:68 +msgid "Russian News Feed" +msgstr "Russische Nieuws Feed" + #. "Salt" + S + "salt.i2p" + S + "http://salt.i2p/" + S + I + #. "salt_console.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +#: ../java/src/net/i2p/router/web/HomeHelper.java:70 msgid "I2P Network Statistics" msgstr "I2P Netwerkstatistieken" -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical Docs" msgstr "Technische documenten" -#: ../java/src/net/i2p/router/web/HomeHelper.java:65 +#: ../java/src/net/i2p/router/web/HomeHelper.java:72 msgid "Trac Wiki" msgstr "Trac Wiki" -#: ../java/src/net/i2p/router/web/HomeHelper.java:66 -msgid "Ugha's Wiki" -msgstr "Ugha's Wiki" - -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Seedless and the Robert BitTorrent applications" msgstr "Seedless en de Robert BitTorrent applicatie" -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#. _x("Ugha's Wiki") + S + S + "http://ugha.i2p/" + S + I + +#. "billiard_marker.png" + S + +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Sponge's main site" msgstr "Sponge's hoofdsite" -#: ../java/src/net/i2p/router/web/HomeHelper.java:108 +#: ../java/src/net/i2p/router/web/HomeHelper.java:115 msgid "The HTTP proxy is not up" msgstr "De HTTP proxy is niet ingeschakeld" -#: ../java/src/net/i2p/router/web/HomeHelper.java:110 +#: ../java/src/net/i2p/router/web/HomeHelper.java:117 #, java-format msgid "Your browser is not properly configured to use the HTTP proxy at {0}" msgstr "Je browser is niet juist geconfigureerd om de HTTP proxy op {0} te gebruiken" -#: ../java/src/net/i2p/router/web/HomeHelper.java:210 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:906 +#: ../java/src/net/i2p/router/web/HomeHelper.java:217 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:932 msgid "Name" msgstr "Naam" -#: ../java/src/net/i2p/router/web/HomeHelper.java:212 +#: ../java/src/net/i2p/router/web/HomeHelper.java:219 msgid "URL" msgstr "URL" @@ -3301,7 +3352,7 @@ msgstr "Lopen" #: ../java/src/net/i2p/router/web/JobQueueHelper.java:142 msgid "Dropped" -msgstr "" +msgstr "Laten vallen" #: ../java/src/net/i2p/router/web/JobQueueHelper.java:143 #: ../java/src/net/i2p/router/web/JobQueueHelper.java:145 @@ -3366,217 +3417,226 @@ msgstr "Alle Routers met volledige statistieken" msgid "LeaseSets" msgstr "LeaseSets" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:105 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:106 #: ../java/strings/Strings.java:69 msgid "Router" msgstr "Router" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:112 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:113 msgid "not found in network database" msgstr "niet gevonden in netwerk database" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:156 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 msgid "LeaseSet" msgstr "LeaseSet" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:158 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:163 msgid "Local" msgstr "Lokaal" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:160 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:165 msgid "Unpublished" msgstr "Niet-gepubliceerd" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:176 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:166 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:181 msgid "Destination" msgstr "Bestemming" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:173 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:185 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:178 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 msgid "Add to local addressbook" msgstr "Toevoegen aan lokaal adresboek" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:217 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:195 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:222 #, java-format msgid "Expires in {0}" msgstr "Verloopt in {0}" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:192 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:219 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:197 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:224 #, java-format msgid "Expired {0} ago" msgstr "Verliep {0} geleden" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Gateway" msgstr "Gateway" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 msgid "Lease" msgstr "Lease" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:213 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:218 msgid "Tunnel" msgstr "Tunnel" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:280 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:286 msgid "Not initialized" msgstr "Niet geïnitialiseerd" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:330 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:342 msgid "Network Database Router Statistics" msgstr "Netwerk Database Router Statistieken" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Count" msgstr "Aantal" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 msgid "Transports" msgstr "Transports" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Country" msgstr "Land" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:429 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:453 msgid "Our info" msgstr "Onze info" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:431 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:455 msgid "Peer info for" msgstr "Peer info voor" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:433 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:457 msgid "Full entry" msgstr "Volledige item" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 #: ../java/src/net/i2p/router/web/SummaryHelper.java:152 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:726 msgid "Hidden" msgstr "Verborgen" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 msgid "Updated" msgstr "Geupdate" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:441 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:444 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:465 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:468 #, java-format msgid "{0} ago" msgstr "{0} geleden" #. shouldnt happen -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:443 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:447 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:467 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:471 msgid "Published" msgstr "Gepubliceerd" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:449 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 msgid "Signing Key" msgstr "Handtekening sleutel" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:451 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:475 msgid "Address(es)" msgstr "Adres(sen)" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:463 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:487 msgid "cost" msgstr "kosten" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "Hidden or starting up" msgstr "Verborgen of aan het opstarten" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU" msgstr "SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU with introducers" msgstr "SSU met introducers" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP" msgstr "NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU" msgstr "NTCP en SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU with introducers" msgstr "NTCP en SSU met introducers" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 Only SSU, introducers" msgstr "IPv6 Only SSU, aanbieders" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU" msgstr "IPv6 SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU, introducers" msgstr "IPv6 SSU, aanbieders" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP" msgstr "IPv6 NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU" msgstr "IPv6 NTCP, SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU, introducers" msgstr "IPv6 NTCP, SSU, aanbieders" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 Only NTCP, SSU, introducers" msgstr "IPv6 Only NTCP, SSU, aanbieders" -#: ../java/src/net/i2p/router/web/NewsHelper.java:295 +#: ../java/src/net/i2p/router/web/NewsFeedHelper.java:80 +#, java-format +msgid "by {0}" +msgstr "door {0}" + +#: ../java/src/net/i2p/router/web/NewsHelper.java:292 #, java-format msgid "News last updated {0} ago." msgstr "Nieuws {0} geleden voor het laatste geupdate." -#: ../java/src/net/i2p/router/web/NewsHelper.java:301 +#: ../java/src/net/i2p/router/web/NewsHelper.java:298 #, java-format msgid "News last checked {0} ago." msgstr "Nieuws {0} geleden voor het laatste gecontrolleerd." -#: ../java/src/net/i2p/router/web/NewsHelper.java:310 +#: ../java/src/net/i2p/router/web/NewsHelper.java:307 msgid "Hide news" msgstr "Verberg nieuws" -#: ../java/src/net/i2p/router/web/NewsHelper.java:313 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:647 +#: ../java/src/net/i2p/router/web/NewsHelper.java:310 msgid "Show news" msgstr "Toon nieuws" +#: ../java/src/net/i2p/router/web/NewsHelper.java:314 +msgid "Show all news" +msgstr "Al het nieuws laten zien" + #: ../java/src/net/i2p/router/web/PluginStarter.java:140 msgid "Checking for plugin updates" msgstr "Nakijken op plugin updates" #: ../java/src/net/i2p/router/web/PluginStarter.java:155 +#: ../java/src/net/i2p/router/web/PluginStarter.java:161 msgid "Plugin update check failed" -msgstr "" +msgstr "Plugin update check mislukt" -#: ../java/src/net/i2p/router/web/PluginStarter.java:193 +#: ../java/src/net/i2p/router/web/PluginStarter.java:199 #, java-format msgid "1 plugin updated" msgid_plural "{0} plugins updated" msgstr[0] "1 plugin geupdate" msgstr[1] "{0} plugins geupdate" -#: ../java/src/net/i2p/router/web/PluginStarter.java:195 +#: ../java/src/net/i2p/router/web/PluginStarter.java:201 msgid "Plugin update check complete" msgstr "Plugin update check voltooid" @@ -3642,7 +3702,7 @@ msgid "Failing" msgstr "Gefaald" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:135 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:411 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:425 msgid "Integrated" msgstr "Geïntegreerd" @@ -3911,277 +3971,287 @@ msgstr "Grafiek Aantal Gebeurtenissen" msgid "Lifetime average value" msgstr "Levenslange gemiddelde waarde" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:121 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:128 msgid "I2P Router Help & FAQ" msgstr "I2P Router Hulp & FAQ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:123 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:130 msgid "Help & FAQ" msgstr "Hulp & FAQ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:131 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:138 msgid "" "Configure startup of clients and webapps (services); manually start dormant " "services" msgstr "Configureer de opstart van clients en webapps (services); start sluimerende services handmatig" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:133 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:140 msgid "I2P Services" msgstr "I2P Services" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:169 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:176 msgid "Configure I2P Router" msgstr "Configureer I2P Router" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:171 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:178 msgid "I2P Internals" msgstr "I2P Intern" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:177 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:484 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:184 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:498 msgid "View existing tunnels and tunnel build status" msgstr "Bekijk bestaande tunnels en tunnel opbouw status" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:183 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:370 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:190 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:384 msgid "Show all current peer connections" msgstr "Toon alle huidige peer connecties" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:189 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:196 msgid "Show recent peer performance profiles" msgstr "Toon recente peer prestatie profielen" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:191 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:198 msgid "Profiles" msgstr "Profielen" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:195 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:202 msgid "Show list of all known I2P routers" msgstr "Toon lijst met alle bekende I2P routers" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:197 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:204 msgid "NetDB" msgstr "NetDB" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:201 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:208 msgid "Health Report" msgstr "Gezondheids Rapport" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:203 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:210 msgid "Logs" msgstr "Logs" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:214 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 msgid "Graph router performance" msgstr "Grafieken router prestatie" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:216 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 msgid "Graphs" msgstr "Grafieken" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:228 msgid "Textual router performance statistics" msgstr "Tekstuele router prestatie statistieken" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:233 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:240 #: ../java/src/net/i2p/router/web/SummaryHelper.java:438 msgid "Local Tunnels" msgstr "Lokale tunnels" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:235 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:242 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:164 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:337 msgid "Hidden Services Manager" msgstr "Verborgen diensten-beheerder" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:253 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:260 msgid "General" msgstr "Algemeen" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 msgid "" "Your Local Identity is your unique I2P router identity, similar to an ip " "address but tailored to I2P. " msgstr "Jouw Local Identity is jouw unieke I2P router identiteit, vergelijkbaar met een IP-adres, maar dan voor I2P." -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:259 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:266 msgid "Never disclose this to anyone, as it can reveal your real world ip." msgstr "Laat anderen dit nooit weten, aangezien het je echte IP kan openbaren." -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:261 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:268 msgid "Local Identity" msgstr "Lokale Identiteit" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:272 msgid "Your unique I2P router identity is" msgstr "Je unique I2P router identiteit is" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:269 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:276 msgid "never reveal it to anyone" msgstr "vertel dit aan niemand" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:271 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 msgid "show" msgstr "toon" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:275 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:301 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:282 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:308 msgid "The version of the I2P software we are running" msgstr "De in gebruik zijnde versie van de I2P software" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:292 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:318 msgid "How long we've been running for this session" msgstr "Hoe lang draaien we al voor deze sessie" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:326 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:333 msgid "" "Help with configuring your firewall and router for optimal I2P performance" msgstr "Hulp bij het configureren van je firewall en router voor optimale I2P prestatie" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:337 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:344 msgid "See more information on the wiki" msgstr "Bekijk de wiki voor meer informatie" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:339 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:346 msgid "Warning: ECDSA is not available. Update your Java or OS" msgstr "Waarschuwing: ECDSA is niet beschikbaar. Werk Java of je besturingssysteem bij" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:351 +#, java-format +msgid "Warning: Java version {0} is no longer supported by I2P." +msgstr "Waarschuwing: Java versie {0} is niet langer ondersteund door I2P." + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#, java-format +msgid "Update Java to version {0} or higher to receive I2P updates." +msgstr "Update naar Java versie {0} of hoger om I2P updates te ontvangen." + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:365 msgid "Configure I2P Updates" msgstr "Configureer I2P Updates" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:367 msgid "I2P Update" msgstr "I2P Update" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:378 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:392 msgid "Peers we've been talking to in the last few minutes/last hour" msgstr "Peers waarmee wij in de laatste minuten/het laatste uur gecommuniceerd hebben." -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:381 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:395 msgid "Active" msgstr "Actief" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:390 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:404 msgid "The number of peers available for building client tunnels" msgstr "Het aantal peers beschikbaar voor het bouwen van client tunnels." -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:393 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:407 msgid "Fast" msgstr "Snel" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:399 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:413 msgid "The number of peers available for building exploratory tunnels" msgstr "Het aantal peers beschikbaar voor het bouwen van exploratory tunnels." -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:402 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:416 msgid "High capacity" msgstr "Grote capaciteit" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:408 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:422 msgid "The number of peers available for network database inquiries" msgstr "Het aantal peers beschikbaar voor netwerk database aanvragen" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:417 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:431 msgid "The total number of peers in our network database" msgstr "Het totaal aantal peers in onze netwerkdatabase" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:420 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:434 msgid "Known" msgstr "Bekend" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:440 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:454 msgid "Configure router bandwidth allocation" msgstr "Configureer router bandbreedte toewijzing" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:442 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:456 msgid "Bandwidth in/out" msgstr "Bandbreedte in/uit" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:462 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:476 msgid "Total" msgstr "Totaal" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:469 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:483 msgid "Used" msgstr "Gebruikt" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:491 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:505 msgid "" "Used for building and testing tunnels, and communicating with floodfill " "peers" msgstr "Gebruikt voor het bouwen en testen van tunnels, en om te communiceren met floodfill peers" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:494 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:508 msgid "Exploratory" msgstr "Onderzoekend" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:514 msgid "Tunnels we are using to provide or access services on the network" msgstr "Tunnels die we gebruiken om diensten in het netwerk te voorzien of om toegang toe te hebben" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:509 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:523 msgid "" "Tunnels we are participating in, directly contributing bandwidth to the " "network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:512 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:526 msgid "Participating" msgstr "Deelnemend" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:518 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:532 msgid "" "The ratio of tunnel hops we provide to tunnel hops we use - a value greater " "than 1.00 indicates a positive contribution to the network" msgstr "De verhouding van tunnel hops die we leveren en tunnel hops die we gebruiken - een waarde groter dan 1.00 geeft aan dat je positief bijdraagt aan het netwerk" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:521 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:535 msgid "Share ratio" msgstr "Share rato" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:534 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:548 msgid "What's in the router's job queue?" msgstr "Wat is er in de taken wachtrij van de router?" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:536 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 msgid "Congestion" msgstr "Verstopping" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:541 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:555 msgid "Indicates router performance" msgstr "Geeft aan hoe de router presteert" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:544 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:558 msgid "Job lag" msgstr "Taak vertraging" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:564 msgid "Indicates how quickly outbound messages to other I2P routers are sent" msgstr "Geeft aan hoe snel uitgaande berichten naar andere I2P routers verstuurd worden" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:553 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:567 msgid "Message delay" msgstr "Bericht vertraging" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:560 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:574 msgid "Round trip time for a tunnel test" msgstr "Heen en weer tijd voor een tunnel test" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:563 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:577 msgid "Tunnel lag" msgstr "Tunnel vertraging" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:570 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:584 msgid "Queued requests from other routers to participate in tunnels" msgstr "Wachtrij van verzoeken van andere routers om deel te nemen in tunnels" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:573 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:587 msgid "Backlog" msgstr "Achterstand" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:608 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:623 msgid "News & Updates" msgstr "Nieuws & Updates" @@ -4208,7 +4278,7 @@ msgstr "ERR-SymmetricNAT" #: ../java/src/net/i2p/router/web/SummaryHelper.java:183 msgid "WARN-Firewalled with Inbound TCP Enabled" -msgstr "WARN-Firewall met Inkomende TCP Ingeschakeld" +msgstr "WARN-Firewall met Inkomend TCP verkeer Ingeschakeld" #: ../java/src/net/i2p/router/web/SummaryHelper.java:188 msgid "WARN-Firewalled and Floodfill" @@ -4294,17 +4364,21 @@ msgid "Click Shutdown and restart to install" msgstr "Klik Afsluiten and herstart om te installeren" #: ../java/src/net/i2p/router/web/SummaryHelper.java:720 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:735 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:737 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:749 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:761 #, java-format msgid "Version {0}" msgstr "Versie {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:734 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:736 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:748 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:760 msgid "Update available" msgstr "Update beschikbaar" #. Note to translators: parameter is a version, e.g. "0.8.4" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:758 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:784 #, java-format msgid "Download {0} Update" msgstr "Download {0} Update" @@ -4313,65 +4387,65 @@ msgstr "Download {0} Update" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:766 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:792 #, java-format msgid "Download Signed<br>Development Update<br>{0}" -msgstr "" +msgstr "Download ondertekende Ontwikkel update {0}" #. Note to translators: parameter is a date and time, e.g. "02-Mar 20:34 UTC" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:774 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 #, java-format msgid "Download Unsigned<br>Update {0}" msgstr "Download Niet-ondertekende <br> Update {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:798 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:824 msgid "Help with firewall configuration" msgstr "Hulp met firewall configuratie" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:826 msgid "Check network connection and NAT/firewall" msgstr "Controleer netwerk connectie en NAT/firewall" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:819 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:845 msgid "Reseed" msgstr "Reseed" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:908 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:934 msgid "Order" msgstr "Volgorde" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:925 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:951 msgid "Top" msgstr "Bovenaan" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:956 msgid "Move to top" -msgstr "" +msgstr "Verplaats naar begin" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:940 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:966 msgid "Move up" -msgstr "" +msgstr "Verplaats omhoog" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:948 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:974 msgid "Down" msgstr "Onder" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:953 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:979 msgid "Move down" -msgstr "" +msgstr "Verplaats omlaag" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:958 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:984 msgid "Bottom" msgstr "Onderaan" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:963 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 msgid "Move to bottom" -msgstr "" +msgstr "Verplaats naar eind" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:975 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1001 msgid "Select a section to add" msgstr "Selecteer een sectie om toe te voegen" @@ -4418,100 +4492,100 @@ msgstr "Client tunnels voor" msgid "dead" msgstr "dood" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:70 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:69 msgid "Participating tunnels" msgstr "Deelnemende tunnels" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "Receive on" msgstr "Ontvangen op" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Expiration" msgstr "Verloop" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Send on" msgstr "Verzonden op" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Rate" msgstr "Rato" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Role" msgstr "Rol" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Usage" msgstr "Gebruik" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:111 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:113 msgid "grace period" msgstr "overgangs periode" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:121 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 msgid "Outbound Endpoint" msgstr "Uitgaande Eindpunt" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 msgid "Inbound Gateway" msgstr "Inkomende Gateway" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:127 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:174 msgid "Participant" msgstr "Deelnemer" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:130 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:133 #, java-format msgid "Limited display to the {0} tunnels with the highest usage" msgstr "Gelimiteerde weergave voor de {0} tunnels met het hoogste gebruik" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:131 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:135 msgid "Inactive participating tunnels" msgstr "Inactieve deelnemende tunnels" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:132 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:224 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:138 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:232 msgid "Lifetime bandwidth usage" msgstr "Levenslang bandbreedte gebruik" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Expiry" msgstr "Verloop" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:165 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 msgid "Participants" msgstr "Deelnemers" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:177 msgid "Endpoint" msgstr "Eindpunt" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 #: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "Build in progress" msgstr "In aanbouw" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 msgid "inbound" msgstr "inkomend" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "outbound" msgstr "uitgaand" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:223 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:231 msgid "No tunnels; waiting for the grace period to end." msgstr "Geen tunnels; wacht totdat de overgangs periode verlopen is." -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:225 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:233 msgid "in" msgstr "in" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:234 msgid "out" msgstr "uit" @@ -4578,7 +4652,7 @@ msgstr "Open Router Console in web browser bij opstarten" #: ../java/strings/Strings.java:37 msgid "shared clients (DSA)" -msgstr "" +msgstr "gedeelde cliënten (DSA)" #: ../java/strings/Strings.java:38 msgid "IRC proxy" @@ -4648,10 +4722,6 @@ msgstr "Encryption" msgid "i2cp" msgstr "i2cp" -#: ../java/strings/Strings.java:63 -msgid "I2PTunnel" -msgstr "I2PTunnel" - #: ../java/strings/Strings.java:64 msgid "InNetPool" msgstr "InNetPool" @@ -4698,10 +4768,12 @@ msgstr "key" msgid "port" msgstr "port" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 -msgid "configure bandwidth" -msgstr "stel bandbreedte in" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:146 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:318 +msgid "Certificates" +msgstr "Certificaten" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:153 @@ -4735,6 +4807,7 @@ msgstr "stel bandbreedte in" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:149 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:155 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:154 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:149 @@ -4750,6 +4823,7 @@ msgstr "Router staat uit" #. We have intl defined when this is included, but not when compiled #. standalone. +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:333 @@ -4782,6 +4856,7 @@ msgstr "Router staat uit" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:305 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:310 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:305 @@ -4797,6 +4872,7 @@ msgid "Refresh (s)" msgstr "Ververs (s)" #. ditto +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:337 @@ -4829,6 +4905,7 @@ msgstr "Ververs (s)" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:309 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:339 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:314 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:309 @@ -4843,6 +4920,10 @@ msgstr "Ververs (s)" msgid "Enable" msgstr "Inschakelen" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 +msgid "configure bandwidth" +msgstr "stel bandbreedte in" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:437 msgid "Bandwidth limiter" msgstr "Bandbreedte beperker" @@ -4919,7 +5000,7 @@ msgstr " network configuratie pagina" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:501 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:477 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:639 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:587 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:558 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:509 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:461 @@ -4938,33 +5019,33 @@ msgstr "I2P Geavanceerde Configuratie" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:435 msgid "Floodfill Configuration" -msgstr "" +msgstr "Fooldfill configuratie" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:437 msgid "" "Floodill participation helps the network, but may use more of your " "computer's resources." -msgstr "" +msgstr "Meedoen aan floodfill helpt het netwerk, maar kan meer van je computer's resources gebruik maken." #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:442 msgid "This router is currently a floodfill participant." -msgstr "" +msgstr "Deze router werkt op dit moment mee aan floodfill." #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:446 msgid "This router is not currently a floodfill participant." -msgstr "" +msgstr "Deze router werkt op dit moment niet mee aan floodfill." #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:457 msgid "Automatic" -msgstr "" +msgstr "Automatisch" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:463 msgid "Force On" -msgstr "" +msgstr "Forceer Aan" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:469 msgid "Disable" -msgstr "" +msgstr "Uitschakelen" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:473 msgid "Advanced I2P Configuration" @@ -5100,7 +5181,7 @@ msgstr "De plugins hier beneden zijn gestart door de webConsole client." #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:616 msgid "Plugin Installation from URL" -msgstr "" +msgstr "Plugin installatie van URL" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:618 #, java-format @@ -5113,19 +5194,19 @@ msgstr "Om een plugin te installeren, voer de download URL in:" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:631 msgid "Plugin Installation from File" -msgstr "" +msgstr "Plugin installatie vanuit Bestand" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:635 msgid "Install plugin from file." -msgstr "" +msgstr "Installeer plugin vanuit bestand." #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:637 msgid "Select xpi2p or su3 file" -msgstr "" +msgstr "Selecteer xpi2p of su3 bestand" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:646 msgid "Update All Plugins" -msgstr "" +msgstr "Update alle plugins" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:150 msgid "config home" @@ -5343,11 +5424,11 @@ msgstr "Experimenteel" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:532 msgid "IPv4 Configuration" -msgstr "" +msgstr "IPv4 configuratie" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:536 msgid "Disable inbound (Firewalled by Carrier-grade NAT or DS-Lite)" -msgstr "" +msgstr "Inkomend verkeer uitschakelen (Gefirewalled door provider-kwaliteit NAT of DS-Lite)" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:538 msgid "IPv6 Configuration" @@ -5658,19 +5739,19 @@ msgstr "Voor een betere deelname als floodfill router, moet je je firewall opene #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:744 msgid "WARN - Firewalled with Inbound TCP Enabled" -msgstr "WARN - Firewall en Inkomende TCP Ingeschakeld" +msgstr "WARN - Firewall en Inkomend TCP verkeer Ingeschakeld" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:746 msgid "" "You have configured inbound TCP, however your UDP port is firewalled, and " "therefore it is likely that your TCP port is firewalled as well." -msgstr "Je hebt inkomende TCP geconfigureerd, echter aangezien je UDP poort achter een firewall zit, is het waarschijnlijk dat dit ook voor je TCP poort het geval is." +msgstr "Je hebt inkomend TCP verkeer geconfigureerd, echter aangezien je UDP poort achter een firewall zit, is het waarschijnlijk dat dit ook voor je TCP poort het geval is." #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:748 msgid "" "If your TCP port is firewalled with inbound TCP enabled, routers will not be" " able to contact you via TCP, which will hurt the network." -msgstr "Indien je TCP poort achter een firewall zit met inkomende TCP ingeschakeld, kunnen routers geen verbinding met je maken via TCP, dit is niet goed voor het netwerk." +msgstr "Indien je TCP poort achter een firewall zit met inkomend TCP verkeer ingeschakeld, kunnen routers geen verbinding met je maken via TCP, dit is niet goed voor het netwerk." #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:750 msgid "Please open your firewall or disable inbound TCP above." @@ -5682,7 +5763,7 @@ msgstr "WARN - Firewall met UDP Uitgeschakeld" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:754 msgid "You have configured inbound TCP, however you have disabled UDP." -msgstr "Je hebt inkomende TCP geconfigureerd, echter UDP is uitgeschakeld." +msgstr "Je hebt inkomend TCP verkeer geconfigureerd, echter UDP is uitgeschakeld." #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:756 msgid "" @@ -5773,7 +5854,7 @@ msgstr "ERR - UDP Uitgeschakeld en Inkomende TCP host/poort niet gezet" msgid "" "You have not configured inbound TCP with a hostname and port above, however " "you have disabled UDP." -msgstr "Je hebt inkomende TCP hierboven niet geconfigureerd met een hostname en poort, echter heb je je UDP uitgeschakeld." +msgstr "Je hebt inkomend TCP verkeer hierboven niet geconfigureerd met een hostname en poort, echter heb je je UDP uitgeschakeld." #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:792 msgid "Therefore your router cannot accept inbound connections." @@ -5864,7 +5945,7 @@ msgstr "Reseeden is het opstart proces dat gebruikt wordt om andere routers te v #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:477 msgid "" "If reseeding has failed, you should first check your network connection." -msgstr "Wanneer reseeden heeft gefaald moet je eerst je netwerkverbinding controlleren." +msgstr "Wanneer reseeden is mislukt moet je eerst je netwerkverbinding controlleren." #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:479 #, java-format @@ -5877,50 +5958,50 @@ msgstr "de FAQ" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:483 msgid "Manual Reseed from URL" -msgstr "" +msgstr "Hanmatige Reseed van URL" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:485 msgid "Enter zip or su3 URL" -msgstr "" +msgstr "Voer een zip of su3 URL in" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:487 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:499 msgid "" "The su3 format is preferred, as it will be verified as signed by a trusted " "source." -msgstr "" +msgstr "Het su3 formaat wordt geprefereerd, omdat het geverifieerd wordt als ondertekend door een vertrouwde bron." #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:489 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:501 msgid "" "The zip format is unsigned; use a zip file only from a source that you " "trust." -msgstr "" +msgstr "Het zip formaat is niet ondertekend; gebruik een zip bestand alleen van een bron die je vertrouwt." #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:495 msgid "Manual Reseed from File" -msgstr "" +msgstr "Handmatige Reseed uit bestand" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:497 msgid "Select zip or su3 file" -msgstr "" +msgstr "Selecteer zip of su3 bestand" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:505 msgid "Create Reseed File" -msgstr "" +msgstr "Maak Reseed bestand aan" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:507 msgid "" "Create a new reseed zip file you may share for others to reseed manually." -msgstr "" +msgstr "Maak een nieuw reseed zip bestand aan wat je met anderen kan delen om handmatig te reseeden." #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:509 msgid "This file will never contain your own router's identity or IP." -msgstr "" +msgstr "Dit bestand bevat nooit je eigen router's identiteit of IP." #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:511 msgid "Create reseed file" -msgstr "" +msgstr "Maak reseed bestand aan" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:515 msgid "Reseeding Configuration" @@ -5930,7 +6011,7 @@ msgstr "Reseeden Configuratie" msgid "" "Change these only if HTTPS is blocked by a restrictive firewall and reseed " "has failed." -msgstr "" +msgstr "Verander dit alleen als HTTPS geblokkeerd is door een firewall en reseeden is mislukt." #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:521 msgid "Reseed URL Selection" @@ -5952,51 +6033,51 @@ msgstr "Gebruik geen SSL" msgid "Reseed URLs" msgstr "Reseed URLs" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:541 msgid "Enable HTTP Proxy?" msgstr "HTTP Proxy inschakelen?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:543 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:545 msgid "HTTP Proxy Host" msgstr "HTTP Proxy Host" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:547 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:549 msgid "HTTP Proxy Port" msgstr "HTTP Proxy Poort" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:551 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:553 msgid "Use HTTP Proxy Authorization?" msgstr "HTTP Proxy Autorisatie gebruiken?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:555 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:557 msgid "HTTP Proxy Username" msgstr "HTTP Proxy Gebruikersnaam" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:559 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:561 msgid "HTTP Proxy Password" msgstr "HTTP Proxy Wachtwoord" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:563 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:565 msgid "Enable HTTPS Proxy?" msgstr "HTTPS Proxy inschakelen?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:567 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:569 msgid "HTTPS Proxy Host" msgstr "HTTPS Proxy Host" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:571 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:573 msgid "HTTPS Proxy Port" msgstr "HTTPS Proxy Poort" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:575 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:577 msgid "Use HTTPS Proxy Authorization?" msgstr "HTTPS Proxy Autorisatie gebruiken?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:579 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:581 msgid "HTTPS Proxy Username" msgstr "HTTPS Proxy Gebruikersnaam" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:583 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:585 msgid "HTTPS Proxy Password" msgstr "HTTPS Proxy Wachtwoord" @@ -6355,11 +6436,11 @@ msgstr "Vertrouwde sleutels" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:517 msgid "Update with signed development builds?" -msgstr "" +msgstr "Update met ondertekende ontwikkel builds?" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:521 msgid "Signed Build URL" -msgstr "" +msgstr "Ondertekende Build URL" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:525 msgid "Update with unsigned development builds?" @@ -6555,6 +6636,14 @@ msgstr "netwerk database" msgid "I2P Network Database" msgstr "I2P Netwerk Database" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:148 +msgid "News" +msgstr "Nieuws" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:344 +msgid "Latest News" +msgstr "Laatste Nieuws" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:152 msgid "WebApp Not Found" msgstr "WebApp Niet Gevonden" @@ -6570,7 +6659,7 @@ msgstr "De gevraagde web applicatie draait niet." #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:352 #, java-format msgid "Please visit the {0}config clients page{1} to start it." -msgstr "" +msgstr "Bezoek de {0}configureer cliënten pagina{1} om het te starten." #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:146 msgid "peer connections" diff --git a/apps/routerconsole/locale/messages_pl.po b/apps/routerconsole/locale/messages_pl.po index edc8c64214c6f8d292875b211a6957537d008c4e..bedc60f38bb81e42c7581459d93d37834b5a54cb 100644 --- a/apps/routerconsole/locale/messages_pl.po +++ b/apps/routerconsole/locale/messages_pl.po @@ -7,6 +7,7 @@ # PolishAnon <b790979@klzlk.com>, 2011, 2012 # Warton <businesshehe@yahoo.com>, 2011, 2012 # Karolina <karolina@bitwylesne.pl>, 2014 +# Marek Wegrzyn <tribunalsuck@gmail.com>, 2015 # polacco <polacco@i2pmail.org>, 2015 # polacco <polacco@i2pmail.org>, 2012 # polacco <polacco@i2pmail.org>, 2012,2015 @@ -21,9 +22,9 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:05+0000\n" -"PO-Revision-Date: 2015-08-30 21:53+0000\n" -"Last-Translator: Taporpo Ne <taporpone@gmail.com>\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-05 17:17+0000\n" +"Last-Translator: kytv <killyourtv@i2pmail.org>\n" "Language-Team: Polish (http://www.transifex.com/otf/I2P/language/pl/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -151,19 +152,22 @@ msgid "IPs Permanently Banned" msgstr "Adresy IP zablokowane permanentnie" #: ../../../router/java/src/net/i2p/router/Blocklist.java:959 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "From" msgstr "Od" #: ../../../router/java/src/net/i2p/router/Blocklist.java:961 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "To" msgstr "Do" #: ../../../router/java/src/net/i2p/router/Blocklist.java:997 #: ../java/src/net/i2p/router/web/BanlistRenderer.java:48 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:652 +#: ../java/src/net/i2p/router/web/CertHelper.java:77 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:147 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:662 #: ../java/src/net/i2p/router/web/SummaryHelper.java:478 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:137 msgid "none" msgstr "brak" @@ -301,17 +305,17 @@ msgstr "Odrzucanie tuneli: Zamykanie" msgid "Rejecting tunnels" msgstr "Odrzucanie tuneli" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:212 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:210 #, java-format msgid "Reseeding: got router info from file ({0} successful, {1} errors)." msgstr "Ponowne seedowanie: pobrano informacje o węźle z pliku ({0} udane, {1} błędów)" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:284 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:282 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:28 msgid "Reseeding" msgstr "Ponowne seedowanie" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:307 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:305 #, java-format msgid "Reseed fetched only 1 router." msgid_plural "Reseed fetched only {0} routers." @@ -319,26 +323,26 @@ msgstr[0] "Ponowny seed pobraÅ‚ tylko 1 wÄ™zeÅ‚." msgstr[1] "Ponowny seed pobraÅ‚ tylko {0} wÄ™zÅ‚y." msgstr[2] "Ponowny seed pobraÅ‚ tylko {0} wÄ™złów." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:314 msgid "Reseed failed." msgstr "Ponowne seedowanie nie udane" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:317 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:315 #, java-format msgid "See {0} for help." msgstr "Zobacz {0} w celu uzyskania pomocy." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:318 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 msgid "reseed configuration page" msgstr "strona ustawieÅ„ ponownego seedowania" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:566 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:697 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:564 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:695 msgid "Reseeding: fetching seed URL." msgstr "Ponowne seedowanie: pobieranie URL seeda" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:623 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:733 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:621 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:731 #, java-format msgid "" "Reseeding: fetching router info from seed URL ({0} successful, {1} errors)." @@ -403,12 +407,12 @@ msgid "Unreachable on any transport" msgstr "NieosiÄ…galne na każdym transporcie" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:674 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:566 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:577 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:604 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:622 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1348 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2469 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2474 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:92 msgid "Status" msgstr "Stan" @@ -423,12 +427,12 @@ msgid "{0} is used for outbound connections only" msgstr "{0} jest używane tylko do połączeÅ„ wychodzÄ…cych" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:711 -#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:283 +#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:295 msgid "UPnP is not enabled" msgstr "UPnP nie jest włączone" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:720 -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:167 msgid "Help" msgstr "Pomoc" @@ -452,7 +456,7 @@ msgstr "Definicje" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:726 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1352 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2473 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:24 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:33 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:35 @@ -467,7 +471,7 @@ msgstr "Zdalny uczestnik, zidentifikowany przez hash wÄ™zÅ‚a" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:727 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1353 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Dir" msgstr "Kier." @@ -494,14 +498,14 @@ msgstr "Jak dÅ‚ugo od czasu, gdy pakiet zostaÅ‚ odebrany / wysÅ‚any" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:735 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1355 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2479 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 msgid "Idle" msgstr "Bezczynny" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:736 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1356 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "In/Out" msgstr "WejÅ›cie / WyjÅ›cie" @@ -515,14 +519,14 @@ msgstr "Jak dÅ‚ugo od czasu, gdy połączenie zostaÅ‚o ustanowione" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:737 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1357 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:935 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2494 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:961 msgid "Up" msgstr "W górÄ™" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:738 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1358 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2491 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2496 msgid "Skew" msgstr "Odchylenie" @@ -571,7 +575,7 @@ msgstr "Obecny maksymalny rozmiar pakietu wysyÅ‚ania / szacowany maksymalny rozm #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:748 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1359 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2508 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 msgid "TX" msgstr "TX" @@ -581,7 +585,7 @@ msgstr "CaÅ‚kowita liczba pakietów wysÅ‚anych do uczestnika" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:749 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1360 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2510 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 msgid "RX" msgstr "RX" @@ -590,7 +594,7 @@ msgid "The total number of packets received from the peer" msgstr "CaÅ‚kowita liczba pakietów otrzymanych od uczestnika" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:750 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2518 msgid "Dup TX" msgstr "Dup TX" @@ -599,7 +603,7 @@ msgid "The total number of packets retransmitted to the peer" msgstr "CaÅ‚kowita liczba pakietów retransmitowanych do uczestnika" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:751 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2520 msgid "Dup RX" msgstr "Dup RX" @@ -607,104 +611,104 @@ msgstr "Dup RX" msgid "The total number of duplicate packets received from the peer" msgstr "CaÅ‚kowita liczba zduplikowanych pakietów otrzymanych od uczestnika" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:560 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:561 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 msgid "Service" msgstr "UsÅ‚uga" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:564 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 msgid "WAN Common Interface Configuration" msgstr "Konfiguracja Wspólnego Interfejsu WAN" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:567 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:587 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:614 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:568 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:588 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:615 msgid "Type" msgstr "Rodzaj" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:569 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:589 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:570 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:590 msgid "Upstream" msgstr "WysyÅ‚anie danych" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:571 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:591 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:572 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:592 msgid "Downstream" msgstr "Pobieranie danych" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:575 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 msgid "WAN PPP Connection" msgstr "Połączenie WAN PPP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:583 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:610 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:288 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:314 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:584 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:611 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:295 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:321 msgid "Uptime" msgstr "Czas dziaÅ‚ania" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:593 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:616 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:594 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:617 msgid "External IP" msgstr "ZewnÄ™trzny adres IP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:597 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 msgid "Layer 3 Forwarding" msgstr "Kierowanie przepÅ‚ywem danych w warstwie 3" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:599 msgid "Default Connection Service" msgstr "UsÅ‚uga DomyÅ›lnego Połączenia" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:602 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 msgid "WAN IP Connection" msgstr "Połączenie WAN IP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:620 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 msgid "WAN Ethernet Link Configuration" msgstr "Konfiguracja łącza Ethernet'owego WAN" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:641 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:642 msgid "Found Device" msgstr "Znaleziono urzÄ…dzenie" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:643 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:644 msgid "Subdevice" msgstr "UrzÄ…dzenie podrzÄ™dne" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:664 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:665 msgid "UPnP Status" msgstr "Stan UPnP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:668 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:669 msgid "Disabled UPnP Devices" msgstr "Nieaktywne UrzÄ…dzenia UPnP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:682 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:683 msgid "" "UPnP has been disabled; Do you have more than one UPnP Internet Gateway " "Device on your LAN ?" msgstr "UsÅ‚uga UPnP zostaÅ‚a wyłączona. Czy posiadasz wiÄ™cej, niż jedno urzÄ…dzenie bram internetowych UPnP w Twojej sieci LAN?" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:685 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:686 msgid "UPnP has not found any UPnP-aware, compatible device on your LAN." msgstr "Nie odnalaziono żadnych urzÄ…dzeÅ„ zgodnych z UPnP w Twojej sieci LAN." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:693 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:694 #, java-format msgid "The current external IP address reported by UPnP is {0}" msgstr "Aktualny zewnÄ™trzny adres IP zgÅ‚aszany przez UPnP to {0}" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:695 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:696 msgid "The current external IP address is not available." msgstr "Aktualny zewnÄ™trzny adres IP nie jest dostÄ™pny." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:699 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:700 #, java-format msgid "UPnP reports the maximum downstream bit rate is {0}bits/sec" msgstr "UPnP zgÅ‚asza, że maksymalna prÄ™dkość pobierania wynosi {0}bitów/sek" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:701 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:702 #, java-format msgid "UPnP reports the maximum upstream bit rate is {0}bits/sec" msgstr "UPnP zgÅ‚asza, że maksymalna prÄ™dkość wysyÅ‚ania wynosi {0}bitów/sek" @@ -713,12 +717,12 @@ msgstr "UPnP zgÅ‚asza, że maksymalna prÄ™dkość wysyÅ‚ania wynosi {0}bitów/se #. {1,number,#####} prevents 12345 from being output as 12,345 in the English #. locale. #. If you want the digit separator in your locale, translate as {1}. -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:709 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:710 #, java-format msgid "{0} port {1,number,#####} was successfully forwarded by UPnP." msgstr "{0} port {1,number,#####} zostaÅ‚ pomyÅ›lnie przekierowany przez UPnP." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:711 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:712 #, java-format msgid "{0} port {1,number,#####} was not forwarded by UPnP." msgstr "{0} port {1,number,#####} nie zostaÅ‚ przekierowany przez UPnP." @@ -734,17 +738,17 @@ msgid "NTCP connections" msgstr "Połączenia NTCP" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1345 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2466 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2471 msgid "Limit" msgstr "Limit" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1346 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2467 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2472 msgid "Timeout" msgstr "Limit czasu" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1354 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2483 msgid "IPv6" msgstr "IPv6" @@ -757,19 +761,19 @@ msgid "Backlogged?" msgstr "ZalegÅ‚oÅ›ci?" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1375 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2532 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2537 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Inbound" msgstr "PrzychodzÄ…ce" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1377 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2534 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2539 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Outbound" msgstr "WychodzÄ…ce" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1432 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2699 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2704 #, java-format msgid "{0} peer" msgid_plural "{0} peers" @@ -777,107 +781,107 @@ msgstr[0] "{0} uczestnik" msgstr[1] "{0} uczestnicy" msgstr[2] "{0} uczestników" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2465 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2470 msgid "UDP connections" msgstr "Połączenia UDP" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2475 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 msgid "Sort by peer hash" msgstr "Sortuj wedÅ‚ug hashu uczestnika" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Direction/Introduction" msgstr "Kierunek/Wprowadzenie" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 msgid "Sort by idle inbound" msgstr "Sortuj wedÅ‚ug bezczynnych przychodzÄ…cych" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 msgid "Sort by idle outbound" msgstr "Sortuj wedÅ‚ug bezczynnych wychodzÄ…cych" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 msgid "Sort by inbound rate" msgstr "Sortuj wedÅ‚ug prÄ™dkoÅ›ci przychodzÄ…cych" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 msgid "Sort by outbound rate" msgstr "Sortuj wedÅ‚ug prÄ™dkoÅ›ci wychodzÄ…cych" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 msgid "Sort by connection uptime" msgstr "Sortuj wedÅ‚ug czasu dziaÅ‚ania połączenia" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 msgid "Sort by clock skew" msgstr "Sortuj wedÅ‚ug odchylenia zegara" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 msgid "Sort by congestion window" msgstr "Sortuj wedÅ‚ug okna zatÅ‚oczenia" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2502 msgid "Sort by slow start threshold" msgstr "Sortuj wedÅ‚ug progu powolnego startu" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2505 msgid "Sort by round trip time" msgstr "Sortuj wedÅ‚ug czasu podróży w obie strony" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2504 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 msgid "Sort by retransmission timeout" msgstr "Sortuj wedÅ‚ug limitu czasu retransmisji" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2507 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2512 msgid "Sort by outbound maximum transmit unit" msgstr "Sortuj wedÅ‚ug maksymalnej wychodzÄ…cych jednostki transmisji" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 msgid "Sort by packets sent" msgstr "Sortuj wedÅ‚ug pakietów wysÅ‚anych" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2511 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 msgid "Sort by packets received" msgstr "Sortuj wedÅ‚ug pakietów otrzymanych" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2519 msgid "Sort by packets retransmitted" msgstr "Sortuj wedÅ‚ug pakietów retransmitowanych" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2521 msgid "Sort by packets received more than once" msgstr "Sortuj wedÅ‚ug pakietów otrzymanych wiÄ™cej niż jeden raz" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2536 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2541 msgid "We offered to introduce them" msgstr "ZaproponowaliÅ›my, że ich wprowadzimy" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2538 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2543 msgid "They offered to introduce us" msgstr "Zaproponowali, że nas wprowadzÄ…" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2542 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2547 msgid "Choked" msgstr "ZdÅ‚awiony" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2550 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2555 msgid "1 fail" msgstr "1 porażka" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2552 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2557 #, java-format msgid "{0} fails" msgstr "{0} nieudanych" #. 1 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2558 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2563 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:166 #: ../java/src/net/i2p/router/web/ProfilesHelper.java:13 msgid "Banned" msgstr "Zbanowany" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2617 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2622 msgid "backlogged" msgstr "zalogowano" @@ -894,103 +898,110 @@ msgstr "" msgid "Dropping tunnel requests: Overloaded" msgstr "Odrzucanie żądaÅ„ o tunele: PrzeÅ‚adowanie" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:693 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:695 msgid "Rejecting tunnels: Hidden mode" msgstr "Odrzucanie tuneli: Tryb Ukryty" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:721 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:723 msgid "Rejecting tunnels: Request overload" msgstr "Odrzucanie tuneli: PrzeÅ‚adowanie żądaÅ„" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:752 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:754 msgid "Rejecting tunnels: Connection limit" msgstr "Odrzucanie tuneli: Limit połączenia" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:964 -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:997 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:966 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:999 msgid "Dropping tunnel requests: High load" msgstr "Odrzucanie żądaÅ„ o tunele: Wysokie obciążenie" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1076 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1078 msgid "Dropping tunnel requests: Queue time" msgstr "Odrzucanie żądaÅ„ o tunele: Czas kolejki" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:884 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:895 #, java-format msgid "New plugin version {0} is available" msgstr "Nowa wersja {0} wtyczki jest dostÄ™pna" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:964 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:975 #, java-format msgid "Update check failed for plugin {0}" msgstr "Nieudane sprawdzanie aktualizacji dla wtyczki {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:968 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:979 #, java-format msgid "No new version is available for plugin {0}" msgstr "Brak nowych wersji dla wtyczki {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:992 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1003 #, java-format msgid "{0}B transferred" msgstr "{0} bajtów przesÅ‚ano" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1051 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1062 #, java-format msgid "Install failed from {0}" msgstr "Nieudana instalacja z {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1053 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1064 #: ../java/src/net/i2p/router/update/UpdateRunner.java:298 #, java-format msgid "Transfer failed from {0}" msgstr "Nieudany transfer z {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1328 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1339 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1403 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 #: ../java/src/net/i2p/router/web/SummaryHelper.java:715 msgid "Update downloaded" msgstr "Uaktualnienie Å›ciÄ…gniÄ™te" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 msgid "Restarting" msgstr "RestartujÄ™" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 msgid "Update verified" msgstr "Zweryfikowano aktualizacjÄ™" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1381 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:189 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:306 #, java-format msgid "from {0}" msgstr "z {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1396 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1407 #, java-format msgid "Unsigned update file from {0} is corrupt" msgstr "Niepodpisana aktualizacja z pliku {0} jest uszkodzona" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1425 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1436 #, java-format msgid "Failed copy to {0}" msgstr "Nie udaÅ‚o siÄ™ skopiować do {0}" -#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:47 +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:49 #: ../java/src/net/i2p/router/update/DevSU3UpdateRunner.java:40 #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:55 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:111 -#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:62 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:64 #: ../java/src/net/i2p/router/update/UnsignedUpdateRunner.java:41 #: ../java/src/net/i2p/router/update/UpdateRunner.java:155 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:573 #: ../java/src/net/i2p/router/web/ConfigUpdateHandler.java:177 #: ../java/src/net/i2p/router/web/PluginStarter.java:157 msgid "HTTP client proxy tunnel must be running" -msgstr "" +msgstr "Tunel proxy klienta HTTP musi dziaÅ‚ać" + +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:83 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:242 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:88 +#, java-format +msgid "Requires Java version {0} but installed Java version is {1}" +msgstr "Wymagana jest Java w wersji {0}. Obecna zainstalowana wersja to {1}" #. set status before thread to ensure UI feedback #: ../java/src/net/i2p/router/update/DevSU3UpdateHandler.java:91 @@ -1001,24 +1012,19 @@ msgstr "" msgid "Updating" msgstr "Uaktualniam" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:209 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:218 msgid "In-network updates disabled. Check package manager." msgstr "Aktualizacje wewnÄ…trz sieciowe wyłączone. Sprawdź managera pakietów." -#: ../java/src/net/i2p/router/update/NewsFetcher.java:215 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:224 msgid "No write permission for I2P install directory." msgstr "Brak praw do zapisu w katalogu instalacyjnym I2P." -#: ../java/src/net/i2p/router/update/NewsFetcher.java:223 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:232 #, java-format msgid "You must first update to version {0}" msgstr "Najpierw musisz aktualizować do wersji {0}" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:233 -#, java-format -msgid "Requires Java version {0} but installed Java version is {1}" -msgstr "Wymagana jest Java w wersji {0}. Obecna zainstalowana wersja to {1}" - #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:62 #, java-format msgid "Checking for update of plugin {0}" @@ -1222,8 +1228,10 @@ msgid "unban now" msgstr "odbanuj teraz" #: ../java/src/net/i2p/router/web/CSSHelper.java:149 -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../java/strings/Strings.java:29 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:217 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:221 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:219 @@ -1293,6 +1301,8 @@ msgstr "odbanuj teraz" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:217 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:219 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:224 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:228 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:230 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:222 @@ -1318,6 +1328,16 @@ msgstr "odbanuj teraz" msgid "I2P Router Console" msgstr "Konsola WÄ™zÅ‚a I2P" +#: ../java/src/net/i2p/router/web/CertHelper.java:25 +msgid "Local SSL Certificates" +msgstr "" + +#: ../java/src/net/i2p/router/web/CertHelper.java:46 +#: ../java/src/net/i2p/router/web/CertHelper.java:51 +#: ../java/strings/Strings.java:63 +msgid "I2PTunnel" +msgstr "Tunel I2P" + #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:62 msgid "Error updating the configuration - please see the error logs" msgstr "Błąd podczas aktualizowania ustawieÅ„ – zobacz logi błędów" @@ -1332,7 +1352,8 @@ msgstr "Konfiguracja zapisana pomyÅ›lnie" #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:98 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:622 #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:391 -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:151 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:109 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:160 msgid "" "Error saving the configuration (applied but not saved) - please see the " "error logs" @@ -1537,7 +1558,7 @@ msgid "Add Client" msgstr "Dodaj klienta" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:116 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:503 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:517 #: ../java/src/net/i2p/router/web/SummaryHelper.java:452 msgid "Client" msgstr "Klienckie" @@ -1569,9 +1590,9 @@ msgid "Plugin" msgstr "Wtyczka" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:248 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:304 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 msgid "Version" msgstr "Wersja" @@ -1592,9 +1613,9 @@ msgid "License" msgstr "Licencja" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:294 -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/HomeHelper.java:171 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:157 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/HomeHelper.java:178 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:164 msgid "Website" msgstr "Strona internetowa" @@ -1629,7 +1650,7 @@ msgstr "UsuÅ„" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:21 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigUIHandler.java:19 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:970 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:996 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:496 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:516 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:532 @@ -1639,7 +1660,7 @@ msgstr "UsuÅ„ zaznaczone" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:23 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1015 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:494 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:502 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:514 @@ -1735,11 +1756,11 @@ msgstr "nie znaleziono w bazie kluczy" msgid "Invalid destination" msgstr "NieprawidÅ‚owe miejsce przeznaczenia" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:82 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:84 msgid "Log overrides updated" msgstr "Nadpisanie logów zaktualizowane" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:163 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:165 msgid "Log configuration saved" msgstr "Zapisano ustawienia logów" @@ -1787,8 +1808,8 @@ msgstr "WARN" #: ../java/src/net/i2p/router/web/ConfigLoggingHelper.java:85 #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:170 -#: ../java/src/net/i2p/router/web/HomeHelper.java:208 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:904 +#: ../java/src/net/i2p/router/web/HomeHelper.java:215 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 msgid "Remove" msgstr "UsuÅ„" @@ -1807,11 +1828,12 @@ msgid "Home Page" msgstr "Strona Główna" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:328 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:335 msgid "Network" msgstr "Sieć" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:320 @@ -1845,6 +1867,7 @@ msgstr "Sieć" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:292 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:322 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:297 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:292 @@ -1863,8 +1886,8 @@ msgid "UI" msgstr "UI" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:179 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:486 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:186 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 #: ../java/strings/Strings.java:73 msgid "Tunnels" msgstr "Tunele" @@ -1883,15 +1906,15 @@ msgid "Logging" msgstr "Zapisywanie do loga" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:185 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:372 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:192 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:386 #: ../java/strings/Strings.java:68 msgid "Peers" msgstr "Uczestnicy" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:497 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:230 msgid "Stats" msgstr "Statystyki" @@ -1907,7 +1930,7 @@ msgstr "Zaawansowane" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:491 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:479 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:641 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:593 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:560 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:511 msgid "Save changes" @@ -2088,7 +2111,7 @@ msgid "Unsupported" msgstr "NieobsÅ‚ugiwane" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:24 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 msgid "Save changes and reseed now" msgstr "Zapisz zmiany i reseeduj teraz" @@ -2137,7 +2160,16 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:149 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:99 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +msgid "Reset URL list" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:107 +msgid "URL list reset successfully" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:158 msgid "Configuration saved successfully." msgstr "Zapisano pomyÅ›lnie ustawienia." @@ -2640,8 +2672,8 @@ msgid "User Name" msgstr "Nazwa użytkownika" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:183 -#: ../java/src/net/i2p/router/web/HomeHelper.java:235 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:972 +#: ../java/src/net/i2p/router/web/HomeHelper.java:242 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:998 msgid "Add" msgstr "Dodaj" @@ -2872,13 +2904,13 @@ msgstr "Wydarzenie" msgid "Details" msgstr "Szczegóły" -#: ../java/src/net/i2p/router/web/FormHandler.java:251 +#: ../java/src/net/i2p/router/web/FormHandler.java:253 msgid "" "Invalid form submission, probably because you used the 'back' or 'reload' " "button on your browser. Please resubmit." msgstr "Błędna forma zgÅ‚oszenia, prawdopodobnie użyÅ‚eÅ› przycisku 'wstecz' lub 'odÅ›wież' w swojej przeglÄ…darce. Spróbuj ponownie." -#: ../java/src/net/i2p/router/web/FormHandler.java:253 +#: ../java/src/net/i2p/router/web/FormHandler.java:255 msgid "" "If the problem persists, verify that you have cookies enabled in your " "browser." @@ -3009,156 +3041,169 @@ msgstr "Zapisz ustawienia i odÅ›wież wykresy" msgid "Graph settings saved" msgstr "Zapisano ustawienia rysowania wykresów" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:229 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:236 msgid "Addressbook" msgstr "Książka adresowa" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:227 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:234 msgid "Manage your I2P hosts file here (I2P domain name resolution)" msgstr "ZarzÄ…dzaj swoim plikiem hosta I2P tutaj (nazwa domeny I2P)" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 msgid "Configure Bandwidth" msgstr "Konfiguruj przepustowość" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:330 msgid "I2P Bandwidth Configuration" msgstr "Konfiguracja przepustowoÅ›ci I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Configure Language" msgstr "Skonfiguruj jÄ™zyk" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Console Language Selection" msgstr "Wybór JÄ™zyka Konsoli" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 msgid "Customize Home Page" msgstr "Dostosuj stronÄ™ głównÄ…" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:346 msgid "I2P Home Page Configuration" msgstr "Konfiguracja strony domowej I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:139 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:146 msgid "Anonymous webmail client" msgstr "Anonimowy klient pocztowy" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:141 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:148 msgid "Email" msgstr "Email" -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:251 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 msgid "I2P Router Help" msgstr "Pomoc wÄ™zÅ‚a I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:161 msgid "Router Console" msgstr "Konsola wÄ™zÅ‚a" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:145 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:152 msgid "Built-in anonymous BitTorrent Client" msgstr "Wbudowany anonimowy klient sieci BitTorrent" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:147 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:154 msgid "Torrents" msgstr "Torrenty" -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:155 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:162 msgid "Local web server" msgstr "Serwer lokalnej sieci" -#: ../java/src/net/i2p/router/web/HomeHelper.java:41 +#: ../java/src/net/i2p/router/web/HomeHelper.java:43 msgid "The Anoncoin project" msgstr "Projekt Anoncoin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug Reports" msgstr "Raporty o błędach" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug tracker" msgstr "System Å›ledzenia błędów" #. "colombo-bt.i2p" + S + _x("The Italian Bittorrent Resource") + S + "http #. ://colombo-bt.i2p/" + S + I + "colomboicon.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Dev Forum" msgstr "Forum Developerskie" -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Development forum" msgstr "Forum developerskie" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Bittorrent tracker" msgstr "Tracker Bittorrent" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 msgid "diftracker" msgstr "diftracker" -#: ../java/src/net/i2p/router/web/HomeHelper.java:46 +#: ../java/src/net/i2p/router/web/HomeHelper.java:48 msgid "I2P Applications" msgstr "Aplikacje I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +msgid "Anonymous cryptocurrency exchange" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "FAQ" msgstr "FAQ" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "Frequently Asked Questions" msgstr "Najczęściej zadawane pytania" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Community forum" msgstr "Forum spoÅ‚ecznoÅ›ci" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Forum" msgstr "Forum" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "" "A public anonymous Git hosting site - supports pulling via Git and HTTP and " "pushing via SSH" msgstr "Publiczno anonimowa strona hostingowa Git - wspomaga Å›ciaganie przez Git i HTTP oraz wysyÅ‚anie przez SSH" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "Anonymous Git Hosting" msgstr "Anonimowy Hosting Git" -#: ../java/src/net/i2p/router/web/HomeHelper.java:50 +#: ../java/src/net/i2p/router/web/HomeHelper.java:53 msgid "HiddenGate" msgstr "HiddenGate" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "Anonymous wiki - share the knowledge" +msgstr "" + +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "I2P Wiki" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Microblog" msgstr "Mikroblog" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Your premier microblogging service on I2P" msgstr "WiodÄ…cy serwis microblogingowy I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 msgid "Javadocs" msgstr "Javadocs" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical documentation" msgstr "Dokumentacja techniczna" @@ -3166,91 +3211,98 @@ msgstr "Dokumentacja techniczna" #. "http://jisko.i2p/" + S + I + "jisko_console_icon.png" + S + #. _x("Key Server") + S + _x("OpenPGP Keyserver") + S + "http://keys.i2p/" + S #. + I + "education.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +#: ../java/src/net/i2p/router/web/HomeHelper.java:60 msgid "Debian and Tahoe-LAFS repositories" msgstr "Repozytoria Debian i Tahoe-LAFS" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free Web Hosting" msgstr "Darmowy Dostawca UsÅ‚ug Hostingowych" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free eepsite hosting with PHP and MySQL" msgstr "Darmowy hosting eepsitów w PHP i MySQL" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "I2P Pastebin" msgstr "I2P Pastebin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "Pastebin" msgstr "Pastebin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:58 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 msgid "I2P News" msgstr "WiadomoÅ›ci I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +msgid "Planet I2P" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Add-on directory" msgstr "Katalog dodatków" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Plugins" msgstr "Wtyczki" -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Postman's Tracker" msgstr "UrzÄ…dzenie Å›ledzÄ…ce Postmana" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "I2P home page" msgstr "Strona domowa I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "Project Website" msgstr "Strona projektu" +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:68 +msgid "Russian News Feed" +msgstr "" + #. "Salt" + S + "salt.i2p" + S + "http://salt.i2p/" + S + I + #. "salt_console.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +#: ../java/src/net/i2p/router/web/HomeHelper.java:70 msgid "I2P Network Statistics" msgstr "Statystyki Sieci I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical Docs" msgstr "Dokumentacja techniczna" -#: ../java/src/net/i2p/router/web/HomeHelper.java:65 +#: ../java/src/net/i2p/router/web/HomeHelper.java:72 msgid "Trac Wiki" msgstr "Trac Wiki" -#: ../java/src/net/i2p/router/web/HomeHelper.java:66 -msgid "Ugha's Wiki" -msgstr "Ugha's Wiki" - -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Seedless and the Robert BitTorrent applications" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#. _x("Ugha's Wiki") + S + S + "http://ugha.i2p/" + S + I + +#. "billiard_marker.png" + S + +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Sponge's main site" msgstr "Główna strona Sponge'a" -#: ../java/src/net/i2p/router/web/HomeHelper.java:108 +#: ../java/src/net/i2p/router/web/HomeHelper.java:115 msgid "The HTTP proxy is not up" msgstr "HTTP proxy nie dziaÅ‚a" -#: ../java/src/net/i2p/router/web/HomeHelper.java:110 +#: ../java/src/net/i2p/router/web/HomeHelper.java:117 #, java-format msgid "Your browser is not properly configured to use the HTTP proxy at {0}" msgstr "Twoja przeglÄ…darka nie jest poprawnie skonfigurowana, aby używać HTTP proxy na {0}" -#: ../java/src/net/i2p/router/web/HomeHelper.java:210 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:906 +#: ../java/src/net/i2p/router/web/HomeHelper.java:217 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:932 msgid "Name" msgstr "Nazwa" -#: ../java/src/net/i2p/router/web/HomeHelper.java:212 +#: ../java/src/net/i2p/router/web/HomeHelper.java:219 msgid "URL" msgstr "URL" @@ -3378,210 +3430,219 @@ msgstr "Wszytkie wÄ™zÅ‚y z peÅ‚nymi statystykami" msgid "LeaseSets" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:105 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:106 #: ../java/strings/Strings.java:69 msgid "Router" msgstr "WÄ™zeÅ‚" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:112 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:113 msgid "not found in network database" msgstr "nie znaleziono w bazie danych sieci" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:156 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 msgid "LeaseSet" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:158 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:163 msgid "Local" msgstr "Lokalny" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:160 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:165 msgid "Unpublished" msgstr "Nieopublikowany" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:176 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:166 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:181 msgid "Destination" msgstr "Miejsce przeznaczenia" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:173 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:185 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:178 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 msgid "Add to local addressbook" msgstr "Dodaj do lokalnej książki adresowej" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:217 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:195 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:222 #, java-format msgid "Expires in {0}" msgstr "Wygasa {0}" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:192 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:219 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:197 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:224 #, java-format msgid "Expired {0} ago" msgstr "WygasÅ‚o {0} temu" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Gateway" msgstr "Brama" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 msgid "Lease" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:213 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:218 msgid "Tunnel" msgstr "Tunel" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:280 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:286 msgid "Not initialized" msgstr "Nie zainicjalizowany" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:330 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:342 msgid "Network Database Router Statistics" msgstr "Statystyka Sieciowej Bazy Danych WÄ™zÅ‚a" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Count" msgstr "Policz" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 msgid "Transports" msgstr "Transporty" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Country" msgstr "Kraj" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:429 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:453 msgid "Our info" msgstr "Nasze informacje" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:431 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:455 msgid "Peer info for" msgstr "Info dla uczestnika" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:433 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:457 msgid "Full entry" msgstr "PeÅ‚ny wpis" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 #: ../java/src/net/i2p/router/web/SummaryHelper.java:152 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:726 msgid "Hidden" msgstr "Ukryte" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 msgid "Updated" msgstr "Uaktualnione" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:441 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:444 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:465 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:468 #, java-format msgid "{0} ago" msgstr "{0} temu" #. shouldnt happen -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:443 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:447 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:467 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:471 msgid "Published" msgstr "Opublikowane" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:449 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 msgid "Signing Key" msgstr "Klucz podpisujÄ…cy" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:451 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:475 msgid "Address(es)" msgstr "Adres(y)" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:463 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:487 msgid "cost" msgstr "koszt" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "Hidden or starting up" msgstr "Ukryte lub uruchamia siÄ™" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU" msgstr "SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU with introducers" msgstr "SSU z przedstawicielami" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP" msgstr "NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU" msgstr "NTCP i SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU with introducers" msgstr "NTCP i SSU z przedstawicielami" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 Only SSU, introducers" msgstr "IPv6 tylko SSU, przedstawiciele" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU" msgstr "IPv6 SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU, introducers" msgstr "IPv6 SSU, przedstawiciele" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP" msgstr "IPv6 NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU" msgstr "IPv6 NTCP, SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU, introducers" msgstr "IPv6 NTCP, SSU, przedstawiciele" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 Only NTCP, SSU, introducers" msgstr "IPv6 tylko NTCP, SSU, przedstawicieli" -#: ../java/src/net/i2p/router/web/NewsHelper.java:295 +#: ../java/src/net/i2p/router/web/NewsFeedHelper.java:80 +#, java-format +msgid "by {0}" +msgstr "" + +#: ../java/src/net/i2p/router/web/NewsHelper.java:292 #, java-format msgid "News last updated {0} ago." msgstr "WiadomoÅ›ci uaktualnione {0} temu." -#: ../java/src/net/i2p/router/web/NewsHelper.java:301 +#: ../java/src/net/i2p/router/web/NewsHelper.java:298 #, java-format msgid "News last checked {0} ago." msgstr "WiadomoÅ›ci ostatnio sprawdzono {0} temu." -#: ../java/src/net/i2p/router/web/NewsHelper.java:310 +#: ../java/src/net/i2p/router/web/NewsHelper.java:307 msgid "Hide news" msgstr "Ukryj wiadomoÅ›ci" -#: ../java/src/net/i2p/router/web/NewsHelper.java:313 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:647 +#: ../java/src/net/i2p/router/web/NewsHelper.java:310 msgid "Show news" msgstr "Pokaż wiadomoÅ›ci" +#: ../java/src/net/i2p/router/web/NewsHelper.java:314 +msgid "Show all news" +msgstr "" + #: ../java/src/net/i2p/router/web/PluginStarter.java:140 msgid "Checking for plugin updates" msgstr "Sprawdzanie aktualizacji dla wtyczek" #: ../java/src/net/i2p/router/web/PluginStarter.java:155 +#: ../java/src/net/i2p/router/web/PluginStarter.java:161 msgid "Plugin update check failed" msgstr "" -#: ../java/src/net/i2p/router/web/PluginStarter.java:193 +#: ../java/src/net/i2p/router/web/PluginStarter.java:199 #, java-format msgid "1 plugin updated" msgid_plural "{0} plugins updated" @@ -3589,7 +3650,7 @@ msgstr[0] "1 wtyczka zaktualizowana" msgstr[1] "{0} wtyczki zaktualizowane" msgstr[2] "{0} wtyczek zaktualizowanych" -#: ../java/src/net/i2p/router/web/PluginStarter.java:195 +#: ../java/src/net/i2p/router/web/PluginStarter.java:201 msgid "Plugin update check complete" msgstr "Sprawdzanie dostÄ™pnoÅ›ci aktualizacji dla wtyczek zakoÅ„czone" @@ -3658,7 +3719,7 @@ msgid "Failing" msgstr "" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:135 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:411 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:425 msgid "Integrated" msgstr "Zintegrowani" @@ -3929,277 +3990,287 @@ msgstr "Wykresu czÄ™stotliwoÅ›ci wydarzeÅ„" msgid "Lifetime average value" msgstr "liczba życiowej Å›redniej" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:121 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:128 msgid "I2P Router Help & FAQ" msgstr "Pomoc wÄ™zÅ‚a I2P oraz Najczęściej zadawane pytania" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:123 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:130 msgid "Help & FAQ" msgstr "Pomoc i FAQ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:131 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:138 msgid "" "Configure startup of clients and webapps (services); manually start dormant " "services" msgstr "Konfiguruj rozruch klientów i aplikacji sieciowych (usÅ‚ug); rÄ™cznie uruchom uÅ›pione usÅ‚ugi" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:133 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:140 msgid "I2P Services" msgstr "UsÅ‚ugi I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:169 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:176 msgid "Configure I2P Router" msgstr "Skonfiguruj wÄ™zeÅ‚ I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:171 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:178 msgid "I2P Internals" msgstr "WnÄ™trznoÅ›ci I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:177 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:484 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:184 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:498 msgid "View existing tunnels and tunnel build status" msgstr "WyÅ›wietl istniejÄ…ce tunele i status budowy tunelu" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:183 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:370 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:190 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:384 msgid "Show all current peer connections" msgstr "Pokaż wszystkie aktualne połączenia z uczestnikami" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:189 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:196 msgid "Show recent peer performance profiles" msgstr "Pokaż ostatnie profile wydajnoÅ›ci uczestników" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:191 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:198 msgid "Profiles" msgstr "Profile" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:195 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:202 msgid "Show list of all known I2P routers" msgstr "Pokaż listÄ™ wszystkich znanych wÄ™złów I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:197 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:204 msgid "NetDB" msgstr "NetDB" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:201 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:208 msgid "Health Report" msgstr "Raport zdrowotny" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:203 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:210 msgid "Logs" msgstr "Logi" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:214 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 msgid "Graph router performance" msgstr "Wykres wydajnoÅ›ci wÄ™zÅ‚a" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:216 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 msgid "Graphs" msgstr "Wykresy" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:228 msgid "Textual router performance statistics" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:233 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:240 #: ../java/src/net/i2p/router/web/SummaryHelper.java:438 msgid "Local Tunnels" msgstr "Lokalne tunele" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:235 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:242 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:164 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:337 msgid "Hidden Services Manager" msgstr "ZarzÄ…dzaj ukrytymi usÅ‚ugami" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:253 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:260 msgid "General" msgstr "Ogólne" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 msgid "" "Your Local Identity is your unique I2P router identity, similar to an ip " "address but tailored to I2P. " msgstr "Twoja Lokalna Tożsamość jest unikalnÄ… tożsamoÅ›ciÄ… wÄ™zÅ‚a I2P podobnÄ… do adresu IP, lecz zgodnÄ… z I2P." -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:259 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:266 msgid "Never disclose this to anyone, as it can reveal your real world ip." msgstr "Nigdy jej nikomu nie ujawniaj, gdyż może ona doprowadzić do odkrycia Twojego rzeczywistego ip." -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:261 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:268 msgid "Local Identity" msgstr "Lokalna Tożsamość" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:272 msgid "Your unique I2P router identity is" msgstr "Twoja unikatowa tożsamość wÄ™złą I2P to" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:269 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:276 msgid "never reveal it to anyone" msgstr "nigdy nie pokazuj nikomu" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:271 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 msgid "show" msgstr "pokaż" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:275 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:301 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:282 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:308 msgid "The version of the I2P software we are running" msgstr "Wersja używanego softwaru I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:292 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:318 msgid "How long we've been running for this session" msgstr "Jak dÅ‚ugo trwa aktualna sesja" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:326 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:333 msgid "" "Help with configuring your firewall and router for optimal I2P performance" msgstr "Pomóż nam optymalizować wydajność I2P konfigurujÄ…c zaporÄ™ i wÄ™zeÅ‚" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:337 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:344 msgid "See more information on the wiki" msgstr "WiÄ™cej informacji zobacz na wiki" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:339 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:346 msgid "Warning: ECDSA is not available. Update your Java or OS" msgstr "Uwaga: ECDSA niedostÄ™pne. Zaktualizuj JavÄ™ lub system operacyjny." #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:351 +#, java-format +msgid "Warning: Java version {0} is no longer supported by I2P." +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#, java-format +msgid "Update Java to version {0} or higher to receive I2P updates." +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:365 msgid "Configure I2P Updates" msgstr "Konfiguracja aktualizacji I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:367 msgid "I2P Update" msgstr "Aktualizacja I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:378 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:392 msgid "Peers we've been talking to in the last few minutes/last hour" msgstr "Uczestnicy, z którymi komunikowaliÅ›my siÄ™ przez ostatnie parÄ™ minut/ostatniÄ… godzinÄ™" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:381 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:395 msgid "Active" msgstr "Aktywni" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:390 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:404 msgid "The number of peers available for building client tunnels" msgstr "Liczba uczestników dostÄ™pnych do budowania tuneli klienta" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:393 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:407 msgid "Fast" msgstr "Szybcy" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:399 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:413 msgid "The number of peers available for building exploratory tunnels" msgstr "Liczba uczestników dostÄ™pna do budowania tuneli rozpoznawczych" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:402 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:416 msgid "High capacity" msgstr "Wysokiej przepustowoÅ›ci" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:408 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:422 msgid "The number of peers available for network database inquiries" msgstr "Ilość uczestników dostÄ™pnych do zapytaÅ„ bazy danych sieci" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:417 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:431 msgid "The total number of peers in our network database" msgstr "CaÅ‚kowita liczba uczestników w naszej sieciowej bazie danych" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:420 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:434 msgid "Known" msgstr "Znani" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:440 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:454 msgid "Configure router bandwidth allocation" msgstr "Ustaw przydzielanie przepustowoÅ›ci" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:442 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:456 msgid "Bandwidth in/out" msgstr "Przepustowość przychodzÄ…ca / wychodzÄ…ca" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:462 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:476 msgid "Total" msgstr "Razem" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:469 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:483 msgid "Used" msgstr "Użyte" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:491 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:505 msgid "" "Used for building and testing tunnels, and communicating with floodfill " "peers" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:494 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:508 msgid "Exploratory" msgstr "Rozpoznawcze" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:514 msgid "Tunnels we are using to provide or access services on the network" msgstr "Używamy tuneli dla zabezpieczenia lub uzyskania dostÄ™pu do usÅ‚ug w sieci" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:509 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:523 msgid "" "Tunnels we are participating in, directly contributing bandwidth to the " "network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:512 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:526 msgid "Participating" msgstr "Uczestnictwo" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:518 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:532 msgid "" "The ratio of tunnel hops we provide to tunnel hops we use - a value greater " "than 1.00 indicates a positive contribution to the network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:521 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:535 msgid "Share ratio" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:534 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:548 msgid "What's in the router's job queue?" msgstr "Co znajduje siÄ™ w kolejce zadaÅ„ wÄ™zÅ‚a?" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:536 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 msgid "Congestion" msgstr "ZatÅ‚oczenie" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:541 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:555 msgid "Indicates router performance" msgstr "Pokazuje wydajność wÄ™zÅ‚a" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:544 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:558 msgid "Job lag" msgstr "Opóźnienie zadaÅ„" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:564 msgid "Indicates how quickly outbound messages to other I2P routers are sent" msgstr "Wskazuje, z jakÄ… prÄ™dkoÅ›ciÄ… wysyÅ‚ane sÄ… wiadomoÅ›ci do innych wÄ™złów I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:553 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:567 msgid "Message delay" msgstr "Opóźnienie wiadomoÅ›ci" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:560 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:574 msgid "Round trip time for a tunnel test" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:563 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:577 msgid "Tunnel lag" msgstr "Opóźnienie tunelu" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:570 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:584 msgid "Queued requests from other routers to participate in tunnels" msgstr "Zakolejkowane zapytania z innych wÄ™złów dot. uczestnictwa w tunelach" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:573 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:587 msgid "Backlog" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:608 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:623 msgid "News & Updates" msgstr "WiadomoÅ›ci i aktualizacje" @@ -4312,17 +4383,21 @@ msgid "Click Shutdown and restart to install" msgstr "Kliknij ZamkniÄ™cie i zrestartuj, by zainstalować" #: ../java/src/net/i2p/router/web/SummaryHelper.java:720 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:735 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:737 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:749 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:761 #, java-format msgid "Version {0}" msgstr "Wersja {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:734 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:736 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:748 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:760 msgid "Update available" msgstr "Aktualizacja jest dostÄ™pna" #. Note to translators: parameter is a version, e.g. "0.8.4" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:758 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:784 #, java-format msgid "Download {0} Update" msgstr "Pobierz {0} UaktualnieÅ„" @@ -4331,7 +4406,7 @@ msgstr "Pobierz {0} UaktualnieÅ„" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:766 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:792 #, java-format msgid "Download Signed<br>Development Update<br>{0}" msgstr "" @@ -4340,56 +4415,56 @@ msgstr "" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:774 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 #, java-format msgid "Download Unsigned<br>Update {0}" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:798 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:824 msgid "Help with firewall configuration" msgstr "Pomoc w konfiguracji zapory" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:826 msgid "Check network connection and NAT/firewall" msgstr "Sprawdź połączenie sieciowe oraz NAT/zaporÄ™" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:819 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:845 msgid "Reseed" msgstr "Ponownie seeduj" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:908 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:934 msgid "Order" msgstr "Kolejność" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:925 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:951 msgid "Top" msgstr "Góra" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:956 msgid "Move to top" msgstr "PrzenieÅ› na górÄ™" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:940 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:966 msgid "Move up" msgstr "PrzenieÅ› w górÄ™" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:948 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:974 msgid "Down" msgstr "W dół" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:953 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:979 msgid "Move down" msgstr "PrzenieÅ› w dół" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:958 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:984 msgid "Bottom" msgstr "Dół" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:963 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 msgid "Move to bottom" msgstr "PrzenieÅ› na dół" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:975 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1001 msgid "Select a section to add" msgstr "Wybierz sekcjÄ™, którÄ… chcesz dodać" @@ -4436,100 +4511,100 @@ msgstr "Tunele klienta dla" msgid "dead" msgstr "martwy" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:70 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:69 msgid "Participating tunnels" msgstr "UczestniczÄ…ce tunele" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "Receive on" msgstr "Otrzymuj na" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Expiration" msgstr "Przedawnienie" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Send on" msgstr "WysyÅ‚aj na" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Rate" msgstr "Wskaźnik" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Role" msgstr "Rola" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Usage" msgstr "Zużycie" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:111 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:113 msgid "grace period" msgstr "okres karencji" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:121 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 msgid "Outbound Endpoint" msgstr "WyjÅ›ciowy punkt koÅ„cowy" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 msgid "Inbound Gateway" msgstr "Brama wejÅ›ciowa" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:127 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:174 msgid "Participant" msgstr "Uczestnik" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:130 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:133 #, java-format msgid "Limited display to the {0} tunnels with the highest usage" msgstr "Ograniczenie wyÅ›wietlania do {0} tuneli o najwyższym wskaźniku użycia" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:131 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:135 msgid "Inactive participating tunnels" msgstr "Nieaktywne uczestniczÄ…ce tunele" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:132 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:224 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:138 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:232 msgid "Lifetime bandwidth usage" msgstr "Zużycie pasma" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Expiry" msgstr "Wygasa" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:165 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 msgid "Participants" msgstr "Uczestnicy" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:177 msgid "Endpoint" msgstr "Punkt koÅ„cowy" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 #: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "Build in progress" msgstr "Tworzenie" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 msgid "inbound" msgstr "przychodzÄ…ce" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "outbound" msgstr "wychodzÄ…ce" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:223 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:231 msgid "No tunnels; waiting for the grace period to end." msgstr "Brak tuneli; oczekiwanie na zakoÅ„czenie okresu karencji." -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:225 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:233 msgid "in" msgstr "do" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:234 msgid "out" msgstr "z" @@ -4666,10 +4741,6 @@ msgstr "Szyfrowanie" msgid "i2cp" msgstr "i2cp" -#: ../java/strings/Strings.java:63 -msgid "I2PTunnel" -msgstr "Tunel I2P" - #: ../java/strings/Strings.java:64 msgid "InNetPool" msgstr "" @@ -4716,10 +4787,12 @@ msgstr "klucz" msgid "port" msgstr "port" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 -msgid "configure bandwidth" -msgstr "konfiguruj przepustowość" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:146 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:318 +msgid "Certificates" +msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:153 @@ -4753,6 +4826,7 @@ msgstr "konfiguruj przepustowość" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:149 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:155 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:154 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:149 @@ -4768,6 +4842,7 @@ msgstr "WÄ™zeÅ‚ nie dziaÅ‚a" #. We have intl defined when this is included, but not when compiled #. standalone. +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:333 @@ -4800,6 +4875,7 @@ msgstr "WÄ™zeÅ‚ nie dziaÅ‚a" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:305 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:310 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:305 @@ -4815,6 +4891,7 @@ msgid "Refresh (s)" msgstr "OdÅ›wież (s)" #. ditto +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:337 @@ -4847,6 +4924,7 @@ msgstr "OdÅ›wież (s)" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:309 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:339 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:314 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:309 @@ -4861,6 +4939,10 @@ msgstr "OdÅ›wież (s)" msgid "Enable" msgstr "Włącz" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 +msgid "configure bandwidth" +msgstr "konfiguruj przepustowość" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:437 msgid "Bandwidth limiter" msgstr "Ogranicznik przepustowoÅ›ci" @@ -4937,7 +5019,7 @@ msgstr "Strona zaawansowanych ustawieÅ„ sieciowych" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:501 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:477 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:639 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:587 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:558 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:509 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:461 @@ -5970,51 +6052,51 @@ msgstr "Używaj tylko nie-SSL" msgid "Reseed URLs" msgstr "Reseed URLs" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:541 msgid "Enable HTTP Proxy?" msgstr "Włączyć HTTP Proxy?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:543 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:545 msgid "HTTP Proxy Host" msgstr "HTTP Proxy Host" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:547 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:549 msgid "HTTP Proxy Port" msgstr "HTTP Proxy Port" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:551 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:553 msgid "Use HTTP Proxy Authorization?" msgstr "Użyć autoryzacji HTTP Proxy?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:555 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:557 msgid "HTTP Proxy Username" msgstr "HTTP Proxy Użytkownik" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:559 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:561 msgid "HTTP Proxy Password" msgstr "HTTP Proxy HasÅ‚o" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:563 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:565 msgid "Enable HTTPS Proxy?" msgstr "Włączyć HTTPS Proxy?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:567 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:569 msgid "HTTPS Proxy Host" msgstr "Host Proxy HTTPS" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:571 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:573 msgid "HTTPS Proxy Port" msgstr "Port Proxy HTTPS" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:575 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:577 msgid "Use HTTPS Proxy Authorization?" msgstr "Użyć autoryzacji HTTPS Proxy?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:579 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:581 msgid "HTTPS Proxy Username" msgstr "HTTPS Proxy Użytkownik" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:583 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:585 msgid "HTTPS Proxy Password" msgstr "HTTPS Proxy HasÅ‚o" @@ -6573,6 +6655,14 @@ msgstr "sieciowa baza danych" msgid "I2P Network Database" msgstr "Baza Danych Sieci I2P" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:148 +msgid "News" +msgstr "" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:344 +msgid "Latest News" +msgstr "" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:152 msgid "WebApp Not Found" msgstr "Nie Znaleziono Aplikacji Internetowej" diff --git a/apps/routerconsole/locale/messages_pt.po b/apps/routerconsole/locale/messages_pt.po index 4348fff98bcd33d76ecb41acd516193840301b3d..bf382e6fdbfd737c2dd899433676e0bd15141a42 100644 --- a/apps/routerconsole/locale/messages_pt.po +++ b/apps/routerconsole/locale/messages_pt.po @@ -7,7 +7,7 @@ # alfalb.as, 2015 # alfalb.as, 2015 # Danton Medrado, 2013 -# Danton Medrado, 2013 +# Danton Medrado, 2013,2015 # kgtm <fabio.h.f.antunes@gmail.com>, 2014 # hxdcmls, 2013 # hxdcmls, 2013 @@ -33,10 +33,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:05+0000\n" -"PO-Revision-Date: 2015-07-17 01:31+0000\n" -"Last-Translator: kytv <killyourtv@i2pmail.org>\n" -"Language-Team: Portuguese (http://www.transifex.com/projects/p/I2P/language/pt/)\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-09 03:40+0000\n" +"Last-Translator: Danton Medrado\n" +"Language-Team: Portuguese (http://www.transifex.com/otf/I2P/language/pt/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -107,8 +107,8 @@ msgstr[1] "{0} dias" #, java-format msgid "1 year" msgid_plural "{0} years" -msgstr[0] "" -msgstr[1] "" +msgstr[0] "{0} anos" +msgstr[1] "{0} anos" #: ../../../core/java/src/net/i2p/data/DataHelper.java:1549 #: ../../../core/java/src/net/i2p/data/DataHelper.java:1596 @@ -155,19 +155,22 @@ msgid "IPs Permanently Banned" msgstr "IPs banidos permanentemente" #: ../../../router/java/src/net/i2p/router/Blocklist.java:959 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "From" msgstr "De" #: ../../../router/java/src/net/i2p/router/Blocklist.java:961 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "To" msgstr "Para" #: ../../../router/java/src/net/i2p/router/Blocklist.java:997 #: ../java/src/net/i2p/router/web/BanlistRenderer.java:48 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:652 +#: ../java/src/net/i2p/router/web/CertHelper.java:77 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:147 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:662 #: ../java/src/net/i2p/router/web/SummaryHelper.java:478 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:137 msgid "none" msgstr "nenhum" @@ -179,7 +182,7 @@ msgstr "OK" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:312 msgid "IPv4: OK; IPv6: Testing" -msgstr "" +msgstr "IPv4: OK; IPv6: Testando" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:313 msgid "IPv4: OK; IPv6: Firewalled" @@ -187,7 +190,7 @@ msgstr "" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:314 msgid "IPv4: Testing; IPv6: OK" -msgstr "" +msgstr "IPv4: Testando; IPv6: OK" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:315 msgid "IPv4: Firewalled; IPv6: OK" @@ -195,7 +198,7 @@ msgstr "" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:316 msgid "IPv4: Disabled; IPv6: OK" -msgstr "" +msgstr "IPv4: Desativado; IPv6: OK" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:317 msgid "IPv4: Symmetric NAT; IPv6: OK" @@ -234,7 +237,7 @@ msgstr "" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:327 msgid "Disconnected" -msgstr "" +msgstr "Desconectado" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:328 msgid "Port Conflict" @@ -305,43 +308,43 @@ msgstr "A rejeitar túneis: A Desligar" msgid "Rejecting tunnels" msgstr "A rejeitar túneis" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:212 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:210 #, java-format msgid "Reseeding: got router info from file ({0} successful, {1} errors)." msgstr "Ressemeando: dados obtidos ({0} com sucesso, {1} erros)." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:284 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:282 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:28 msgid "Reseeding" msgstr "Ressemeando" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:307 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:305 #, java-format msgid "Reseed fetched only 1 router." msgid_plural "Reseed fetched only {0} routers." msgstr[0] "A propagação encontrou apenas 1 Roteador." msgstr[1] "A propagação encontrou {0} Roteadores." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:314 msgid "Reseed failed." msgstr "A propagação falhou." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:317 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:315 #, java-format msgid "See {0} for help." msgstr "Ver {0} para ajuda." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:318 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 msgid "reseed configuration page" msgstr "página de configuração de propagação" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:566 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:697 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:564 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:695 msgid "Reseeding: fetching seed URL." msgstr "Propagação: procurar semente de URL" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:623 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:733 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:621 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:731 #, java-format msgid "" "Reseeding: fetching router info from seed URL ({0} successful, {1} errors)." @@ -406,12 +409,12 @@ msgid "Unreachable on any transport" msgstr "Inalcançável em qualquer transporte" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:674 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:566 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:577 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:604 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:622 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1348 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2469 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2474 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:92 msgid "Status" msgstr "Estado" @@ -426,12 +429,12 @@ msgid "{0} is used for outbound connections only" msgstr "{0} é usado para conexões de saÃda apenas" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:711 -#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:283 +#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:295 msgid "UPnP is not enabled" msgstr "UPnP não está habilitado" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:720 -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:167 msgid "Help" msgstr "Ajuda" @@ -455,7 +458,7 @@ msgstr "Definições" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:726 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1352 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2473 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:24 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:33 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:35 @@ -470,7 +473,7 @@ msgstr "O Par/Vizinho remoto, identificado pelo hash de roteador" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:727 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1353 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Dir" msgstr "Dir" @@ -497,14 +500,14 @@ msgstr "Quanto tempo desde que o ultimo pacote foi recebido / enviado" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:735 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1355 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2479 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 msgid "Idle" msgstr "Inativo" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:736 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1356 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "In/Out" msgstr "Entrada/SaÃda" @@ -518,14 +521,14 @@ msgstr "A quanto tempo foi estabelecida esta conexão" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:737 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1357 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:935 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2494 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:961 msgid "Up" msgstr "Cima" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:738 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1358 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2491 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2496 msgid "Skew" msgstr "Skew" @@ -574,7 +577,7 @@ msgstr "Limite máximo actual de tamanho de pacotes / máximo estimado de tamanh #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:748 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1359 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2508 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 msgid "TX" msgstr "TX" @@ -584,7 +587,7 @@ msgstr "O numero total de pacotes enviados pelo par" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:749 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1360 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2510 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 msgid "RX" msgstr "RX" @@ -593,7 +596,7 @@ msgid "The total number of packets received from the peer" msgstr "O numero total de pacotes recebidos pelo par" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:750 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2518 msgid "Dup TX" msgstr "Dup TX" @@ -602,7 +605,7 @@ msgid "The total number of packets retransmitted to the peer" msgstr "O numero total de pacotes retransmitidos para o par" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:751 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2520 msgid "Dup RX" msgstr "Dup RX" @@ -610,104 +613,104 @@ msgstr "Dup RX" msgid "The total number of duplicate packets received from the peer" msgstr "O numero total de pacotes recebidos em duplicado pelo par" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:560 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:561 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 msgid "Service" msgstr "Service" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:564 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 msgid "WAN Common Interface Configuration" msgstr "Configuração comum da WAN" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:567 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:587 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:614 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:568 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:588 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:615 msgid "Type" msgstr "Tipo" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:569 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:589 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:570 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:590 msgid "Upstream" msgstr "Fluxo de subida" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:571 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:591 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:572 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:592 msgid "Downstream" msgstr "Fluxo de descida" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:575 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 msgid "WAN PPP Connection" msgstr "Conexão PPP na WAN" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:583 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:610 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:288 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:314 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:584 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:611 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:295 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:321 msgid "Uptime" msgstr "Tempo em funcionamento" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:593 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:616 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:594 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:617 msgid "External IP" msgstr "IP Externo" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:597 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 msgid "Layer 3 Forwarding" msgstr "Encaminhamento Layer 3" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:599 msgid "Default Connection Service" msgstr "Serviço de Conexão Padrão" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:602 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 msgid "WAN IP Connection" msgstr "Conexão IP WAN" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:620 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 msgid "WAN Ethernet Link Configuration" msgstr "Configuração link ethernet WAN" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:641 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:642 msgid "Found Device" msgstr "Dispositivo encontrado" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:643 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:644 msgid "Subdevice" msgstr "Sub dispositivo" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:664 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:665 msgid "UPnP Status" msgstr "Status UPnP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:668 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:669 msgid "Disabled UPnP Devices" msgstr "Dispositivos UPnP desactivados." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:682 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:683 msgid "" "UPnP has been disabled; Do you have more than one UPnP Internet Gateway " "Device on your LAN ?" msgstr "UPnP está desligado. Você por acaso tem mais que 1 roteador UPnP na sua LAN?" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:685 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:686 msgid "UPnP has not found any UPnP-aware, compatible device on your LAN." msgstr "UPnP não encontrou nenhum dispositivo compatÃvel na sua LAN." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:693 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:694 #, java-format msgid "The current external IP address reported by UPnP is {0}" msgstr "O endereço IP externo informado pelo UPnP é {0}" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:695 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:696 msgid "The current external IP address is not available." msgstr "O endereço IP externo atual não está disponÃvel" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:699 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:700 #, java-format msgid "UPnP reports the maximum downstream bit rate is {0}bits/sec" msgstr "UPnP informa que o fluxo de descida de dados no máximo é {0}bits/seg" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:701 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:702 #, java-format msgid "UPnP reports the maximum upstream bit rate is {0}bits/sec" msgstr "UPnP informa que o fluxo de subida de dados no máximo é {0}bits/seg" @@ -716,12 +719,12 @@ msgstr "UPnP informa que o fluxo de subida de dados no máximo é {0}bits/seg" #. {1,number,#####} prevents 12345 from being output as 12,345 in the English #. locale. #. If you want the digit separator in your locale, translate as {1}. -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:709 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:710 #, java-format msgid "{0} port {1,number,#####} was successfully forwarded by UPnP." msgstr "porta {0} {1,number,#####} foi redirecionada com sucesso pelo UPnP." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:711 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:712 #, java-format msgid "{0} port {1,number,#####} was not forwarded by UPnP." msgstr "Porta {0} {1,number,#####} NÃO foi redirecionada pelo UPnP." @@ -737,17 +740,17 @@ msgid "NTCP connections" msgstr "Conexões NTCP" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1345 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2466 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2471 msgid "Limit" msgstr "Limite" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1346 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2467 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2472 msgid "Timeout" msgstr "Tempo Limite" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1354 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2483 msgid "IPv6" msgstr "IPv6" @@ -760,126 +763,126 @@ msgid "Backlogged?" msgstr "Voltar Logado?" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1375 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2532 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2537 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Inbound" msgstr "Entrada" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1377 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2534 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2539 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Outbound" msgstr "SaÃda" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1432 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2699 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2704 #, java-format msgid "{0} peer" msgid_plural "{0} peers" msgstr[0] "{0} par" msgstr[1] "{0} pares" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2465 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2470 msgid "UDP connections" msgstr "Conexões UDP" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2475 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 msgid "Sort by peer hash" msgstr "Ordenar por tipos de Pares" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Direction/Introduction" msgstr "Direcção/Introdução" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 msgid "Sort by idle inbound" msgstr "Ordenar por entrada inactiva" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 msgid "Sort by idle outbound" msgstr "Ordenar por saÃda inactiva" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 msgid "Sort by inbound rate" msgstr "Ordenar por taxa de entrada" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 msgid "Sort by outbound rate" msgstr "Ordenar por taxa de saÃda" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 msgid "Sort by connection uptime" msgstr "Ordenar por tempo de conexão ligada" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 msgid "Sort by clock skew" msgstr "Ordenar por desajustamento do relógio" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 msgid "Sort by congestion window" msgstr "Ordenar por janela de congestionamento" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2502 msgid "Sort by slow start threshold" msgstr "Ordenar por limitador de inicio lento " -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2505 msgid "Sort by round trip time" msgstr "Ordenar por tempo de ida e volta" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2504 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 msgid "Sort by retransmission timeout" msgstr "Ordenar por tempo limite de retransmissão" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2507 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2512 msgid "Sort by outbound maximum transmit unit" msgstr "Ordenar por unidade de transmissão de saÃda máxima" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 msgid "Sort by packets sent" msgstr "Ordenar por envio de pacotes" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2511 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 msgid "Sort by packets received" msgstr "Ordenar por pacotes recebidos" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2519 msgid "Sort by packets retransmitted" msgstr "Ordenar por pacotes retransmitidos" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2521 msgid "Sort by packets received more than once" msgstr "Ordenar por pacotes recebidos mais que uma vez" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2536 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2541 msgid "We offered to introduce them" msgstr "Oferecemos-nos para os apresentar" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2538 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2543 msgid "They offered to introduce us" msgstr "Eles oferecem-se para nos apresentar" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2542 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2547 msgid "Choked" msgstr "Sufocada" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2550 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2555 msgid "1 fail" msgstr "1 falha" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2552 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2557 #, java-format msgid "{0} fails" msgstr "{0} falhas" #. 1 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2558 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2563 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:166 #: ../java/src/net/i2p/router/web/ProfilesHelper.java:13 msgid "Banned" msgstr "Banido" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2617 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2622 msgid "backlogged" msgstr "backlogged" @@ -896,96 +899,96 @@ msgstr "A largar pedidos de tunel: Lag Elevado" msgid "Dropping tunnel requests: Overloaded" msgstr "A descartar pedidos de túnel: Sobrecarregado" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:693 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:695 msgid "Rejecting tunnels: Hidden mode" msgstr "A regeitar tuneis: Modo Escondido" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:721 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:723 msgid "Rejecting tunnels: Request overload" msgstr "A rejeitar túneis: Sobrecarga de pedidos" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:752 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:754 msgid "Rejecting tunnels: Connection limit" msgstr "A rejeitar túneis: Limite de conexão" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:964 -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:997 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:966 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:999 msgid "Dropping tunnel requests: High load" msgstr "A rejeitar pedidos de túneis: Carga elevada" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1076 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1078 msgid "Dropping tunnel requests: Queue time" msgstr "A descartar pedidos de túneis: Tempo de fila" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:884 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:895 #, java-format msgid "New plugin version {0} is available" msgstr "Nova versão para a extensão {0} está disponÃvel" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:964 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:975 #, java-format msgid "Update check failed for plugin {0}" msgstr "Não foi possÃvel verificar por atualizações {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:968 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:979 #, java-format msgid "No new version is available for plugin {0}" msgstr "Nenhuma versão nova disponÃvel para extrensão {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:992 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1003 #, java-format msgid "{0}B transferred" msgstr "{0} bytes transferidos" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1051 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1062 #, java-format msgid "Install failed from {0}" msgstr "Instalação falhada de {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1053 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1064 #: ../java/src/net/i2p/router/update/UpdateRunner.java:298 #, java-format msgid "Transfer failed from {0}" msgstr "Falha na transferência de {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1328 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1339 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1403 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 #: ../java/src/net/i2p/router/web/SummaryHelper.java:715 msgid "Update downloaded" msgstr "Atualização baixada" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 msgid "Restarting" msgstr "Reiniciando" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 msgid "Update verified" msgstr "Atualização verificada" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1381 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:189 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:306 #, java-format msgid "from {0}" msgstr "de {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1396 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1407 #, java-format msgid "Unsigned update file from {0} is corrupt" msgstr "Arquivo de atualização sem assinatura {0} está corrompido" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1425 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1436 #, java-format msgid "Failed copy to {0}" msgstr "Cópia para {0} falhou" -#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:47 +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:49 #: ../java/src/net/i2p/router/update/DevSU3UpdateRunner.java:40 #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:55 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:111 -#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:62 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:64 #: ../java/src/net/i2p/router/update/UnsignedUpdateRunner.java:41 #: ../java/src/net/i2p/router/update/UpdateRunner.java:155 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:573 @@ -994,6 +997,13 @@ msgstr "Cópia para {0} falhou" msgid "HTTP client proxy tunnel must be running" msgstr "" +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:83 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:242 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:88 +#, java-format +msgid "Requires Java version {0} but installed Java version is {1}" +msgstr "Java na versão {0} é requerido, no entanto a versão {1} é a actualmente instalada" + #. set status before thread to ensure UI feedback #: ../java/src/net/i2p/router/update/DevSU3UpdateHandler.java:91 #: ../java/src/net/i2p/router/update/PluginUpdateHandler.java:82 @@ -1003,24 +1013,19 @@ msgstr "" msgid "Updating" msgstr "Atualizando" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:209 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:218 msgid "In-network updates disabled. Check package manager." msgstr "Actualizações na rede desactivadas. Verifique o gestor de pacotes." -#: ../java/src/net/i2p/router/update/NewsFetcher.java:215 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:224 msgid "No write permission for I2P install directory." msgstr "Não possui permissões de escrita no directório de instalação do I2P." -#: ../java/src/net/i2p/router/update/NewsFetcher.java:223 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:232 #, java-format msgid "You must first update to version {0}" msgstr "Necessita primeiro de actualizar para a versão {0}" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:233 -#, java-format -msgid "Requires Java version {0} but installed Java version is {1}" -msgstr "Java na versão {0} é requerido, no entanto a versão {1} é a actualmente instalada" - #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:62 #, java-format msgid "Checking for update of plugin {0}" @@ -1207,7 +1212,7 @@ msgstr "Nenhuma versão nova encontrada em {0}" #: ../java/src/net/i2p/router/web/BanlistRenderer.java:65 msgid "Permanently banned" -msgstr "" +msgstr "Banido permanentemente" #: ../java/src/net/i2p/router/web/BanlistRenderer.java:67 #, java-format @@ -1224,8 +1229,10 @@ msgid "unban now" msgstr "desbanir agora" #: ../java/src/net/i2p/router/web/CSSHelper.java:149 -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../java/strings/Strings.java:29 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:217 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:221 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:219 @@ -1295,6 +1302,8 @@ msgstr "desbanir agora" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:217 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:219 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:224 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:228 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:230 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:222 @@ -1320,6 +1329,16 @@ msgstr "desbanir agora" msgid "I2P Router Console" msgstr "Painel do Roteador I2P" +#: ../java/src/net/i2p/router/web/CertHelper.java:25 +msgid "Local SSL Certificates" +msgstr "" + +#: ../java/src/net/i2p/router/web/CertHelper.java:46 +#: ../java/src/net/i2p/router/web/CertHelper.java:51 +#: ../java/strings/Strings.java:63 +msgid "I2PTunnel" +msgstr "Túnel I2P" + #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:62 msgid "Error updating the configuration - please see the error logs" msgstr "Erro ao atualizar a configuração - consulte os logs de erros" @@ -1334,7 +1353,8 @@ msgstr "Configuração salva com sucesso" #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:98 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:622 #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:391 -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:151 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:109 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:160 msgid "" "Error saving the configuration (applied but not saved) - please see the " "error logs" @@ -1539,7 +1559,7 @@ msgid "Add Client" msgstr "Adicionar cliente" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:116 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:503 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:517 #: ../java/src/net/i2p/router/web/SummaryHelper.java:452 msgid "Client" msgstr "Cliente" @@ -1571,9 +1591,9 @@ msgid "Plugin" msgstr "Plugin" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:248 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:304 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 msgid "Version" msgstr "Versão" @@ -1594,9 +1614,9 @@ msgid "License" msgstr "Licença" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:294 -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/HomeHelper.java:171 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:157 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/HomeHelper.java:178 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:164 msgid "Website" msgstr "Website" @@ -1631,7 +1651,7 @@ msgstr "Apagar" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:21 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigUIHandler.java:19 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:970 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:996 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:496 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:516 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:532 @@ -1641,7 +1661,7 @@ msgstr "Apagar selecionados" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:23 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1015 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:494 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:502 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:514 @@ -1737,11 +1757,11 @@ msgstr "Não encontrado no chaveiro" msgid "Invalid destination" msgstr "Destino invalido" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:82 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:84 msgid "Log overrides updated" msgstr "Substituições de registros atualizadas" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:163 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:165 msgid "Log configuration saved" msgstr "Log de configuração salva" @@ -1789,8 +1809,8 @@ msgstr "WARN" #: ../java/src/net/i2p/router/web/ConfigLoggingHelper.java:85 #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:170 -#: ../java/src/net/i2p/router/web/HomeHelper.java:208 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:904 +#: ../java/src/net/i2p/router/web/HomeHelper.java:215 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 msgid "Remove" msgstr "Remover" @@ -1809,11 +1829,12 @@ msgid "Home Page" msgstr "Página inicial" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:328 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:335 msgid "Network" msgstr "Network" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:320 @@ -1847,6 +1868,7 @@ msgstr "Network" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:292 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:322 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:297 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:292 @@ -1865,8 +1887,8 @@ msgid "UI" msgstr "UI" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:179 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:486 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:186 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 #: ../java/strings/Strings.java:73 msgid "Tunnels" msgstr "Tunnels" @@ -1885,15 +1907,15 @@ msgid "Logging" msgstr "Logging" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:185 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:372 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:192 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:386 #: ../java/strings/Strings.java:68 msgid "Peers" msgstr "Pares" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:497 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:230 msgid "Stats" msgstr "Stats" @@ -1909,7 +1931,7 @@ msgstr "Advanced " #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:491 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:479 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:641 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:593 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:560 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:511 msgid "Save changes" @@ -2090,7 +2112,7 @@ msgid "Unsupported" msgstr "não suportado" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:24 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 msgid "Save changes and reseed now" msgstr "Salvar mudanças e ressemear agora" @@ -2138,7 +2160,16 @@ msgid_plural "Reseed successful, loaded {0} router infos from file" msgstr[0] "Reenvio bem sucedido, recebida {0} informação de roteamento do ficheiro" msgstr[1] "Reenvio bem sucedido, recebidas {0} informações de roteamento do ficheiro" -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:149 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:99 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +msgid "Reset URL list" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:107 +msgid "URL list reset successfully" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:158 msgid "Configuration saved successfully." msgstr "Configuração salva com sucesso" @@ -2638,8 +2669,8 @@ msgid "User Name" msgstr "Nome de usuário" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:183 -#: ../java/src/net/i2p/router/web/HomeHelper.java:235 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:972 +#: ../java/src/net/i2p/router/web/HomeHelper.java:242 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:998 msgid "Add" msgstr "Adicionar" @@ -2803,15 +2834,15 @@ msgstr "" #: ../java/src/net/i2p/router/web/EventLogHelper.java:51 msgid "Started router" -msgstr "" +msgstr "Roteador iniciado" #: ../java/src/net/i2p/router/web/EventLogHelper.java:52 msgid "Stopped router" -msgstr "" +msgstr "Roteador parado" #: ../java/src/net/i2p/router/web/EventLogHelper.java:53 msgid "Updated router" -msgstr "" +msgstr "Roteador atualizado" #: ../java/src/net/i2p/router/web/EventLogHelper.java:54 msgid "Watchdog warning" @@ -2819,7 +2850,7 @@ msgstr "" #: ../java/src/net/i2p/router/web/EventLogHelper.java:102 msgid "Display Events" -msgstr "" +msgstr "Exibir eventos" #: ../java/src/net/i2p/router/web/EventLogHelper.java:106 msgid "Events since" @@ -2827,16 +2858,16 @@ msgstr "" #: ../java/src/net/i2p/router/web/EventLogHelper.java:111 msgid "Event type" -msgstr "" +msgstr "Tipo de evento" #: ../java/src/net/i2p/router/web/EventLogHelper.java:117 #: ../java/src/net/i2p/router/web/EventLogHelper.java:148 msgid "All events" -msgstr "" +msgstr "Todos os eventos" #: ../java/src/net/i2p/router/web/EventLogHelper.java:122 msgid "Filter events" -msgstr "" +msgstr "Filtrar eventos" #: ../java/src/net/i2p/router/web/EventLogHelper.java:170 msgid "No events found" @@ -2864,19 +2895,19 @@ msgstr "Tempo" #: ../java/src/net/i2p/router/web/EventLogHelper.java:182 msgid "Event" -msgstr "" +msgstr "Evento" #: ../java/src/net/i2p/router/web/EventLogHelper.java:184 msgid "Details" -msgstr "" +msgstr "Detalhes" -#: ../java/src/net/i2p/router/web/FormHandler.java:251 +#: ../java/src/net/i2p/router/web/FormHandler.java:253 msgid "" "Invalid form submission, probably because you used the 'back' or 'reload' " "button on your browser. Please resubmit." msgstr "Formulário inválido preenchido, provavelmente porque o botão \"voltar\" ou \"recarregar\" do navegador foi pressionado. Por favor, reenvie o formulário." -#: ../java/src/net/i2p/router/web/FormHandler.java:253 +#: ../java/src/net/i2p/router/web/FormHandler.java:255 msgid "" "If the problem persists, verify that you have cookies enabled in your " "browser." @@ -3007,156 +3038,169 @@ msgstr "Salvar configurações e redesenhar gráficos" msgid "Graph settings saved" msgstr "Configurações de gráfico salvas" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:229 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:236 msgid "Addressbook" msgstr "Livro de endereços" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:227 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:234 msgid "Manage your I2P hosts file here (I2P domain name resolution)" msgstr "Gerenciar o seu arquivo de hosts I2P aqui (resolução de nomes de domÃnio I2P)" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 msgid "Configure Bandwidth" msgstr "Configurar transmissão de dados" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:330 msgid "I2P Bandwidth Configuration" msgstr "Configuração de velocidade da internet banda larga" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Configure Language" msgstr "Configurar idioma" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Console Language Selection" msgstr "Seleção de Linguagem" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 msgid "Customize Home Page" msgstr "Personalizar página inicial" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:346 msgid "I2P Home Page Configuration" msgstr "Configuração da página inicial do I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:139 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:146 msgid "Anonymous webmail client" msgstr "Cliente do webmail anônimo" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:141 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:148 msgid "Email" msgstr "Email" -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:251 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 msgid "I2P Router Help" msgstr "Ajuda do Roteador I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:161 msgid "Router Console" msgstr "Painel do Roteador" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:145 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:152 msgid "Built-in anonymous BitTorrent Client" msgstr "Cliente BitTorrent anônimo embutido" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:147 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:154 msgid "Torrents" msgstr "Torrentes" -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:155 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:162 msgid "Local web server" msgstr "Servidor web local" -#: ../java/src/net/i2p/router/web/HomeHelper.java:41 +#: ../java/src/net/i2p/router/web/HomeHelper.java:43 msgid "The Anoncoin project" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug Reports" msgstr "Relatório de Bugs" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug tracker" msgstr "Bug tracker" #. "colombo-bt.i2p" + S + _x("The Italian Bittorrent Resource") + S + "http #. ://colombo-bt.i2p/" + S + I + "colomboicon.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Dev Forum" msgstr "Fórum DEV" -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Development forum" msgstr "Fórum de desenvolvimento" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Bittorrent tracker" msgstr "Rastreador BitTorrent" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 msgid "diftracker" msgstr "diftracker" -#: ../java/src/net/i2p/router/web/HomeHelper.java:46 +#: ../java/src/net/i2p/router/web/HomeHelper.java:48 msgid "I2P Applications" msgstr "Aplicativos I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +msgid "Anonymous cryptocurrency exchange" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "FAQ" msgstr "FAQ" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "Frequently Asked Questions" msgstr "Frequently Asked Questions" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Community forum" msgstr "Fórum da comunidade" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Forum" msgstr "Fórum" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "" "A public anonymous Git hosting site - supports pulling via Git and HTTP and " "pushing via SSH" msgstr "Um site anônimo de repositórios Git - suporta obter via Git e HTTP, e enviar por SSH" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "Anonymous Git Hosting" msgstr "Repositório Git anônimo" -#: ../java/src/net/i2p/router/web/HomeHelper.java:50 +#: ../java/src/net/i2p/router/web/HomeHelper.java:53 msgid "HiddenGate" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "Anonymous wiki - share the knowledge" +msgstr "" + +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "I2P Wiki" +msgstr "Wiki I2P" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Microblog" msgstr "Microblog" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Your premier microblogging service on I2P" msgstr "O seu serviço premier de microblogging no I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 msgid "Javadocs" msgstr "Javadocs" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical documentation" msgstr "Documentos técnicos" @@ -3164,91 +3208,98 @@ msgstr "Documentos técnicos" #. "http://jisko.i2p/" + S + I + "jisko_console_icon.png" + S + #. _x("Key Server") + S + _x("OpenPGP Keyserver") + S + "http://keys.i2p/" + S #. + I + "education.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +#: ../java/src/net/i2p/router/web/HomeHelper.java:60 msgid "Debian and Tahoe-LAFS repositories" msgstr "Repositórios Debian e Tahoe-LAFS" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free Web Hosting" msgstr "Alojamento Web Grátis" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free eepsite hosting with PHP and MySQL" msgstr "Alojamento grátis de eepsite com PHP e MySQL" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "I2P Pastebin" msgstr "Pastebin I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "Pastebin" msgstr "Pastebin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:58 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 msgid "I2P News" msgstr "NotÃcias I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +msgid "Planet I2P" +msgstr "Planeta I2P" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Add-on directory" msgstr "Diretório de complementos" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Plugins" msgstr "Extensões" -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Postman's Tracker" msgstr "Postman's Tracker" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "I2P home page" msgstr "página inicial I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "Project Website" msgstr "Site do Projeto" +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:68 +msgid "Russian News Feed" +msgstr "" + #. "Salt" + S + "salt.i2p" + S + "http://salt.i2p/" + S + I + #. "salt_console.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +#: ../java/src/net/i2p/router/web/HomeHelper.java:70 msgid "I2P Network Statistics" msgstr "EstatÃsticas da rede I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical Docs" msgstr "Documentação técnica" -#: ../java/src/net/i2p/router/web/HomeHelper.java:65 +#: ../java/src/net/i2p/router/web/HomeHelper.java:72 msgid "Trac Wiki" msgstr "Trac Wiki" -#: ../java/src/net/i2p/router/web/HomeHelper.java:66 -msgid "Ugha's Wiki" -msgstr "Ugha's Wiki" - -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Seedless and the Robert BitTorrent applications" msgstr "Aplicativos Seedless e Robert BitTorrent" -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#. _x("Ugha's Wiki") + S + S + "http://ugha.i2p/" + S + I + +#. "billiard_marker.png" + S + +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Sponge's main site" msgstr "Site do Sponge" -#: ../java/src/net/i2p/router/web/HomeHelper.java:108 +#: ../java/src/net/i2p/router/web/HomeHelper.java:115 msgid "The HTTP proxy is not up" msgstr "O proxy HTTP não está alcançável" -#: ../java/src/net/i2p/router/web/HomeHelper.java:110 +#: ../java/src/net/i2p/router/web/HomeHelper.java:117 #, java-format msgid "Your browser is not properly configured to use the HTTP proxy at {0}" msgstr "O navegador não está configurado adequadamente para usar o proxy HTTP em {0}" -#: ../java/src/net/i2p/router/web/HomeHelper.java:210 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:906 +#: ../java/src/net/i2p/router/web/HomeHelper.java:217 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:932 msgid "Name" msgstr "Nome" -#: ../java/src/net/i2p/router/web/HomeHelper.java:212 +#: ../java/src/net/i2p/router/web/HomeHelper.java:219 msgid "URL" msgstr "URL" @@ -3376,217 +3427,226 @@ msgstr "Todos os roteadores com status completo" msgid "LeaseSets" msgstr "LeaseSets" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:105 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:106 #: ../java/strings/Strings.java:69 msgid "Router" msgstr "Roteador" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:112 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:113 msgid "not found in network database" msgstr "não encontrado no banco de dados da rede" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:156 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 msgid "LeaseSet" msgstr "LeaseSet" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:158 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:163 msgid "Local" msgstr "Local" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:160 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:165 msgid "Unpublished" msgstr "Não publicado" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:176 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:166 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:181 msgid "Destination" msgstr "Destino" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:173 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:185 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:178 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 msgid "Add to local addressbook" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:217 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:195 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:222 #, java-format msgid "Expires in {0}" msgstr "Expira em {0}" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:192 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:219 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:197 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:224 #, java-format msgid "Expired {0} ago" msgstr "Expirado {0} atrás" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Gateway" msgstr "Gateway" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 msgid "Lease" msgstr "Concessão" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:213 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:218 msgid "Tunnel" msgstr "Túnel" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:280 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:286 msgid "Not initialized" msgstr "Não iniciado" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:330 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:342 msgid "Network Database Router Statistics" msgstr "EstatÃsticas do roteador I2P" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Count" msgstr "Contagem" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 msgid "Transports" msgstr "Transportes" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Country" msgstr "PaÃs" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:429 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:453 msgid "Our info" msgstr "Nossas informações" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:431 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:455 msgid "Peer info for" msgstr "Informações do Par para" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:433 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:457 msgid "Full entry" msgstr "Informação completa" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 #: ../java/src/net/i2p/router/web/SummaryHelper.java:152 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:726 msgid "Hidden" msgstr "Escondido" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 msgid "Updated" msgstr "Atualizado" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:441 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:444 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:465 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:468 #, java-format msgid "{0} ago" msgstr "{0} atrás" #. shouldnt happen -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:443 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:447 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:467 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:471 msgid "Published" msgstr "Publicado" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:449 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 msgid "Signing Key" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:451 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:475 msgid "Address(es)" msgstr "Endereço(s)" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:463 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:487 msgid "cost" msgstr "custo" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "Hidden or starting up" msgstr "InvisÃvel ou iniciando" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU" msgstr "SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU with introducers" msgstr "SSU com intermediadores" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP" msgstr "NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU" msgstr "NTCP e SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU with introducers" msgstr "NTCP e SSU com intermediadores" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 Only SSU, introducers" msgstr "Apenas IPv6 com introdutores SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU" msgstr "SSU IPv6" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU, introducers" msgstr "SSU introdutores com IPv6" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP" msgstr "NTCP IPv6" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU" msgstr "NTCP e SSU com IPv6" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU, introducers" msgstr "NTCP e SSU introdutores com IPv6" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 Only NTCP, SSU, introducers" msgstr "Apenas NTCP e SSU introdutores com IPv6" -#: ../java/src/net/i2p/router/web/NewsHelper.java:295 +#: ../java/src/net/i2p/router/web/NewsFeedHelper.java:80 +#, java-format +msgid "by {0}" +msgstr "" + +#: ../java/src/net/i2p/router/web/NewsHelper.java:292 #, java-format msgid "News last updated {0} ago." msgstr "NotÃcias atualizadas {0} atrás." -#: ../java/src/net/i2p/router/web/NewsHelper.java:301 +#: ../java/src/net/i2p/router/web/NewsHelper.java:298 #, java-format msgid "News last checked {0} ago." msgstr "NotÃcias verificadas {0} atrás." -#: ../java/src/net/i2p/router/web/NewsHelper.java:310 +#: ../java/src/net/i2p/router/web/NewsHelper.java:307 msgid "Hide news" msgstr "Esconder notÃcias" -#: ../java/src/net/i2p/router/web/NewsHelper.java:313 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:647 +#: ../java/src/net/i2p/router/web/NewsHelper.java:310 msgid "Show news" msgstr "Mostrar notÃcias" +#: ../java/src/net/i2p/router/web/NewsHelper.java:314 +msgid "Show all news" +msgstr "Mostrar todas as notÃcias" + #: ../java/src/net/i2p/router/web/PluginStarter.java:140 msgid "Checking for plugin updates" msgstr "Verificar por atualização para extensões" #: ../java/src/net/i2p/router/web/PluginStarter.java:155 +#: ../java/src/net/i2p/router/web/PluginStarter.java:161 msgid "Plugin update check failed" msgstr "" -#: ../java/src/net/i2p/router/web/PluginStarter.java:193 +#: ../java/src/net/i2p/router/web/PluginStarter.java:199 #, java-format msgid "1 plugin updated" msgid_plural "{0} plugins updated" msgstr[0] "1 extensão atualizada" msgstr[1] "{0} extensões atualizadas" -#: ../java/src/net/i2p/router/web/PluginStarter.java:195 +#: ../java/src/net/i2p/router/web/PluginStarter.java:201 msgid "Plugin update check complete" msgstr "Verificação de atualização para extensões completada" @@ -3652,7 +3712,7 @@ msgid "Failing" msgstr "Falhando" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:135 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:411 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:425 msgid "Integrated" msgstr "Integrado" @@ -3921,277 +3981,287 @@ msgstr "Contador de Eventos do Gráfico" msgid "Lifetime average value" msgstr "Valor médio total" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:121 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:128 msgid "I2P Router Help & FAQ" msgstr "Ajuda do Roteador I2P & Perguntas Frequentes" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:123 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:130 msgid "Help & FAQ" msgstr "Ajuda & Perguntas Freqüentes" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:131 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:138 msgid "" "Configure startup of clients and webapps (services); manually start dormant " "services" msgstr "Configurar o inicio de clientes e webapps (serviços); iniciar manualmente os serviços parados" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:133 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:140 msgid "I2P Services" msgstr "Serviços I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:169 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:176 msgid "Configure I2P Router" msgstr "Configurar Roteador I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:171 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:178 msgid "I2P Internals" msgstr "Detalhes I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:177 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:484 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:184 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:498 msgid "View existing tunnels and tunnel build status" msgstr "Ver túneis estabelecidos e estado da construção de túneis" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:183 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:370 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:190 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:384 msgid "Show all current peer connections" msgstr "Mostrar todas conexões atuais com os pares" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:189 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:196 msgid "Show recent peer performance profiles" msgstr "Mostrar perfis de performance recentes dos pares" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:191 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:198 msgid "Profiles" msgstr "Perfis" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:195 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:202 msgid "Show list of all known I2P routers" msgstr "Mostrar lista de todos os roteadores I2P conhecidos" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:197 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:204 msgid "NetDB" msgstr "Banco de dados da rede" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:201 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:208 msgid "Health Report" msgstr "Relatório de Saúde" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:203 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:210 msgid "Logs" msgstr "Registros" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:214 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 msgid "Graph router performance" msgstr "Gráfico de performance do roteador" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:216 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 msgid "Graphs" msgstr "Gráficos" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:228 msgid "Textual router performance statistics" msgstr "EstatÃsticas textuais de performance do roteador" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:233 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:240 #: ../java/src/net/i2p/router/web/SummaryHelper.java:438 msgid "Local Tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:235 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:242 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:164 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:337 msgid "Hidden Services Manager" -msgstr "" +msgstr "Gerenciador de Serviços Ocultos" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:253 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:260 msgid "General" msgstr "Geral" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 msgid "" "Your Local Identity is your unique I2P router identity, similar to an ip " "address but tailored to I2P. " msgstr "Tua identidade local é a identificação do roteador I2P, parecido com um endereço IP mas para a rede I2P." -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:259 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:266 msgid "Never disclose this to anyone, as it can reveal your real world ip." msgstr "Não reveles isso a ninguém, pois isso pode revelar teu endereço IP externo." -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:261 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:268 msgid "Local Identity" msgstr "Identidade local" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:272 msgid "Your unique I2P router identity is" msgstr "Seu identificador I2P único é" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:269 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:276 msgid "never reveal it to anyone" msgstr "nunca mostre-o para alguém" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:271 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 msgid "show" msgstr "mostrar" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:275 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:301 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:282 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:308 msgid "The version of the I2P software we are running" msgstr "Versão do I2P sendo usada agora" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:292 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:318 msgid "How long we've been running for this session" msgstr "Tempo de duração desta sessão" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:326 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:333 msgid "" "Help with configuring your firewall and router for optimal I2P performance" msgstr "Ajuda na configuração do seu firewall e roteador para o melhor desempenho I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:337 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:344 msgid "See more information on the wiki" -msgstr "" +msgstr "Veja mais informações na wiki" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:339 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:346 msgid "Warning: ECDSA is not available. Update your Java or OS" msgstr "" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:351 +#, java-format +msgid "Warning: Java version {0} is no longer supported by I2P." +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#, java-format +msgid "Update Java to version {0} or higher to receive I2P updates." +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:365 msgid "Configure I2P Updates" msgstr "Configurar atualizações I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:367 msgid "I2P Update" msgstr "Atualizações do I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:378 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:392 msgid "Peers we've been talking to in the last few minutes/last hour" msgstr "Pares que estivemos conversando nos últimos minutos ou na última hora" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:381 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:395 msgid "Active" msgstr "Ativos" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:390 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:404 msgid "The number of peers available for building client tunnels" msgstr "Número de pares disponÃveis para construir túneis cliente" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:393 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:407 msgid "Fast" msgstr "Rápidos" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:399 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:413 msgid "The number of peers available for building exploratory tunnels" msgstr "Número de pares disponÃveis para construir túneis exploradores" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:402 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:416 msgid "High capacity" msgstr "Alta capacidade" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:408 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:422 msgid "The number of peers available for network database inquiries" msgstr "O número de pares disponÃveis para as consultas ao banco de dados da rede" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:417 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:431 msgid "The total number of peers in our network database" msgstr "Número total de pares em nosso banco de dados da rede" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:420 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:434 msgid "Known" msgstr "Conhecidos" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:440 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:454 msgid "Configure router bandwidth allocation" msgstr "Configurar limites de velocidade" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:442 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:456 msgid "Bandwidth in/out" msgstr "Velocidade entr/sai" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:462 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:476 msgid "Total" msgstr "Total" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:469 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:483 msgid "Used" msgstr "Usados" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:491 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:505 msgid "" "Used for building and testing tunnels, and communicating with floodfill " "peers" msgstr "Usado para criar e testar túneis, e comunicar com pares de floodfill" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:494 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:508 msgid "Exploratory" msgstr "Exploradores" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:514 msgid "Tunnels we are using to provide or access services on the network" msgstr "Túneis usados para prover ou acessar serviços na rede" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:509 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:523 msgid "" "Tunnels we are participating in, directly contributing bandwidth to the " "network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:512 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:526 msgid "Participating" msgstr "Participantes" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:518 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:532 msgid "" "The ratio of tunnel hops we provide to tunnel hops we use - a value greater " "than 1.00 indicates a positive contribution to the network" msgstr "A proporção de Saltos de Túnel que oferecemos para Saltos de Túnel que usamos - um valor acima de 1.00 indica uma contribuição positiva para a rede" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:521 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:535 msgid "Share ratio" msgstr "Razão de compartilhamento" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:534 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:548 msgid "What's in the router's job queue?" msgstr "O quê está na fila de tarefas do roteador?" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:536 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 msgid "Congestion" msgstr "Congestionamento" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:541 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:555 msgid "Indicates router performance" msgstr "Indica o desempenho do roteador" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:544 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:558 msgid "Job lag" msgstr "Atraso tarefa" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:564 msgid "Indicates how quickly outbound messages to other I2P routers are sent" msgstr "Indica quão rapidamente mensagens saindo para outros roteadores I2P são enviadas" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:553 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:567 msgid "Message delay" msgstr "Atraso de mensagem" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:560 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:574 msgid "Round trip time for a tunnel test" msgstr "Tempo de retorno da mensagem para um teste de túnel" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:563 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:577 msgid "Tunnel lag" msgstr "Atraso túnel" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:570 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:584 msgid "Queued requests from other routers to participate in tunnels" msgstr "Pedidos enfileirados vindos de outros roteadores para participar em túneis" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:573 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:587 msgid "Backlog" msgstr "Backlog" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:608 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:623 msgid "News & Updates" msgstr "NotÃcias & Atualizações" @@ -4252,7 +4322,7 @@ msgstr "Adic./remover/editar & controlar seus tuneis de cliente e servidor" #: ../java/src/net/i2p/router/web/SummaryHelper.java:450 msgid "Hidden Service" -msgstr "" +msgstr "Serviço Oculto" #: ../java/src/net/i2p/router/web/SummaryHelper.java:454 msgid "Show tunnels" @@ -4304,17 +4374,21 @@ msgid "Click Shutdown and restart to install" msgstr "Clique Desligar e reiniciar para instalar" #: ../java/src/net/i2p/router/web/SummaryHelper.java:720 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:735 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:737 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:749 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:761 #, java-format msgid "Version {0}" msgstr "Versão {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:734 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:736 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:748 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:760 msgid "Update available" msgstr "Actualização disponÃvel." #. Note to translators: parameter is a version, e.g. "0.8.4" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:758 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:784 #, java-format msgid "Download {0} Update" msgstr "Download {0} Atualização" @@ -4323,7 +4397,7 @@ msgstr "Download {0} Atualização" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:766 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:792 #, java-format msgid "Download Signed<br>Development Update<br>{0}" msgstr "" @@ -4332,56 +4406,56 @@ msgstr "" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:774 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 #, java-format msgid "Download Unsigned<br>Update {0}" msgstr "Download Atualização<br>Não assinada {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:798 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:824 msgid "Help with firewall configuration" msgstr "Ajuda com a configuração do firewall" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:826 msgid "Check network connection and NAT/firewall" msgstr "Verificar as conexões de rede e o firewall" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:819 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:845 msgid "Reseed" msgstr "Ressemear" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:908 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:934 msgid "Order" msgstr "Ordem" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:925 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:951 msgid "Top" msgstr "Topo" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:956 msgid "Move to top" -msgstr "" +msgstr "Mover para o topo" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:940 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:966 msgid "Move up" -msgstr "" +msgstr "Mover para cima" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:948 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:974 msgid "Down" msgstr "Baixo" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:953 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:979 msgid "Move down" -msgstr "" +msgstr "Mover para baixo" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:958 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:984 msgid "Bottom" msgstr "Baixo" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:963 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 msgid "Move to bottom" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:975 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1001 msgid "Select a section to add" msgstr "Selecione uma seção a ser adicionada" @@ -4428,100 +4502,100 @@ msgstr "túneis para Cliente " msgid "dead" msgstr "zumbi" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:70 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:69 msgid "Participating tunnels" msgstr "Túneis participantes" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "Receive on" msgstr "Recebe em" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Expiration" msgstr "Vencimento" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Send on" msgstr "Enviado em" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Rate" msgstr "Taxa" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Role" msgstr "Regra" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Usage" msgstr "Uso" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:111 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:113 msgid "grace period" msgstr "perÃodo de espera" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:121 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 msgid "Outbound Endpoint" msgstr "Ponto de saÃda" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 msgid "Inbound Gateway" msgstr "Ponto de entrada" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:127 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:174 msgid "Participant" msgstr "Participante" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:130 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:133 #, java-format msgid "Limited display to the {0} tunnels with the highest usage" msgstr "Visualização parcial dos {0} túneis com alta utilização" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:131 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:135 msgid "Inactive participating tunnels" msgstr "Túneis participantes inativos" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:132 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:224 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:138 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:232 msgid "Lifetime bandwidth usage" msgstr "Uso total da internet" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Expiry" msgstr "Vencimento" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:165 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 msgid "Participants" msgstr "Participantes" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:177 msgid "Endpoint" msgstr "Ponto" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 #: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "Build in progress" msgstr "Compilação em andamento" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 msgid "inbound" msgstr "entrada" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "outbound" msgstr "saÃda" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:223 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:231 msgid "No tunnels; waiting for the grace period to end." msgstr "Sem tunel; esperando tempo de desconexão." -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:225 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:233 msgid "in" msgstr "entra" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:234 msgid "out" msgstr "sai" @@ -4658,10 +4732,6 @@ msgstr "Criptografia" msgid "i2cp" msgstr "i2cp" -#: ../java/strings/Strings.java:63 -msgid "I2PTunnel" -msgstr "Túnel I2P" - #: ../java/strings/Strings.java:64 msgid "InNetPool" msgstr "InNetPool" @@ -4708,10 +4778,12 @@ msgstr "chave" msgid "port" msgstr "porta" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 -msgid "configure bandwidth" -msgstr "configurar banda larga" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:146 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:318 +msgid "Certificates" +msgstr "Certificados" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:153 @@ -4745,6 +4817,7 @@ msgstr "configurar banda larga" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:149 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:155 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:154 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:149 @@ -4760,6 +4833,7 @@ msgstr "Roteador não está funcionando" #. We have intl defined when this is included, but not when compiled #. standalone. +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:333 @@ -4792,6 +4866,7 @@ msgstr "Roteador não está funcionando" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:305 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:310 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:305 @@ -4807,6 +4882,7 @@ msgid "Refresh (s)" msgstr "Atualizar (s)" #. ditto +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:337 @@ -4839,6 +4915,7 @@ msgstr "Atualizar (s)" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:309 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:339 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:314 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:309 @@ -4853,6 +4930,10 @@ msgstr "Atualizar (s)" msgid "Enable" msgstr "Habilitar" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 +msgid "configure bandwidth" +msgstr "configurar banda larga" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:437 msgid "Bandwidth limiter" msgstr "Limitador de velocidade" @@ -4929,7 +5010,7 @@ msgstr "Configuração avançada de rede" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:501 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:477 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:639 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:587 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:558 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:509 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:461 @@ -4966,7 +5047,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:457 msgid "Automatic" -msgstr "" +msgstr "Automático" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:463 msgid "Force On" @@ -4974,7 +5055,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:469 msgid "Disable" -msgstr "" +msgstr "Desativar" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:473 msgid "Advanced I2P Configuration" @@ -4987,7 +5068,7 @@ msgstr "Algumas alterações podem precisar de um reinÃcio para fazerem efeito. #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:498 #, java-format msgid "To make changes, edit the file {0}." -msgstr "" +msgstr "Fazer mudanças, editar o arquivo {0}." #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:150 msgid "config clients" @@ -5127,7 +5208,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:635 msgid "Install plugin from file." -msgstr "" +msgstr "Instalar plugin de arquivo." #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:637 msgid "Select xpi2p or su3 file" @@ -5135,7 +5216,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:646 msgid "Update All Plugins" -msgstr "" +msgstr "Atualizar Todos os Plugins" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:150 msgid "config home" @@ -5161,7 +5242,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:524 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/home_jsp.java:416 msgid "Applications and Configuration" -msgstr "" +msgstr "Aplicações e Configuração" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:150 msgid "config keyring" @@ -5353,7 +5434,7 @@ msgstr "Experimental" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:532 msgid "IPv4 Configuration" -msgstr "" +msgstr "Configuração de IPV4" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:536 msgid "Disable inbound (Firewalled by Carrier-grade NAT or DS-Lite)" @@ -5962,51 +6043,51 @@ msgstr "Usar apenas não-SSL" msgid "Reseed URLs" msgstr "Reseed URLs" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:541 msgid "Enable HTTP Proxy?" msgstr "Habilitar Proxy HTTP?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:543 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:545 msgid "HTTP Proxy Host" msgstr "Host Proxy HTTP" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:547 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:549 msgid "HTTP Proxy Port" msgstr "Porta Proxy HTTP" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:551 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:553 msgid "Use HTTP Proxy Authorization?" msgstr "Pedir autenticação no HTTP Proxy?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:555 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:557 msgid "HTTP Proxy Username" msgstr "Usuário do Proxy HTTP" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:559 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:561 msgid "HTTP Proxy Password" msgstr "Senha do Proxy HTTP" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:563 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:565 msgid "Enable HTTPS Proxy?" msgstr "Habilitar Proxy HTTP?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:567 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:569 msgid "HTTPS Proxy Host" msgstr "Servidor do Proxy HTTPS" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:571 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:573 msgid "HTTPS Proxy Port" msgstr "Porta do Proxy HTTPS" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:575 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:577 msgid "Use HTTPS Proxy Authorization?" msgstr "Pedir autenticação no Proxy HTTPS?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:579 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:581 msgid "HTTPS Proxy Username" msgstr "Usuário do Proxy HTTPS" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:583 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:585 msgid "HTTPS Proxy Password" msgstr "Senha do Proxy HTTPS" @@ -6565,6 +6646,14 @@ msgstr "banco de dados da rede" msgid "I2P Network Database" msgstr "Banco de dados da rede I2P" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:148 +msgid "News" +msgstr "NotÃcias" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:344 +msgid "Latest News" +msgstr "Últimas NotÃcias" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:152 msgid "WebApp Not Found" msgstr "WebApp não encontrado" diff --git a/apps/routerconsole/locale/messages_pt_BR.po b/apps/routerconsole/locale/messages_pt_BR.po index cc050e7c30064a57190daf748629300982b4913d..5e754c98400559eef1796e3f887566a6e2593a22 100644 --- a/apps/routerconsole/locale/messages_pt_BR.po +++ b/apps/routerconsole/locale/messages_pt_BR.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:05+0000\n" -"PO-Revision-Date: 2015-07-17 01:31+0000\n" -"Last-Translator: kytv <killyourtv@i2pmail.org>\n" -"Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/I2P/language/pt_BR/)\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-05 23:19+0000\n" +"Last-Translator: blueboy\n" +"Language-Team: Portuguese (Brazil) (http://www.transifex.com/otf/I2P/language/pt_BR/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -135,19 +135,22 @@ msgid "IPs Permanently Banned" msgstr "IPs banidos permanentemente" #: ../../../router/java/src/net/i2p/router/Blocklist.java:959 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "From" msgstr "De" #: ../../../router/java/src/net/i2p/router/Blocklist.java:961 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "To" msgstr "Para" #: ../../../router/java/src/net/i2p/router/Blocklist.java:997 #: ../java/src/net/i2p/router/web/BanlistRenderer.java:48 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:652 +#: ../java/src/net/i2p/router/web/CertHelper.java:77 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:147 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:662 #: ../java/src/net/i2p/router/web/SummaryHelper.java:478 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:137 msgid "none" msgstr "nenhum" @@ -159,19 +162,19 @@ msgstr "OK" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:312 msgid "IPv4: OK; IPv6: Testing" -msgstr "IPv4: OK; IPv6: Testando" +msgstr "IPv4: OK; IPv6: Em testes" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:313 msgid "IPv4: OK; IPv6: Firewalled" -msgstr "" +msgstr "IPv4: OK; IPv6: Sob firewall" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:314 msgid "IPv4: Testing; IPv6: OK" -msgstr "IPv4: Testando; IPv6: OK" +msgstr "IPv4: Em testes; IPv6: OK" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:315 msgid "IPv4: Firewalled; IPv6: OK" -msgstr "" +msgstr "IPv4: Sob firewall; IPv6: OK" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:316 msgid "IPv4: Disabled; IPv6: OK" @@ -179,20 +182,20 @@ msgstr "IPv4: Desativado; IPv6: OK" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:317 msgid "IPv4: Symmetric NAT; IPv6: OK" -msgstr "" +msgstr "IPv4: Atrás de um NAT simétrico; IPv6: OK" #. * IPv4 symmetric NAT, IPv6 firewalled or disabled or no address #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:319 msgid "Symmetric NAT" -msgstr "" +msgstr "Atrás de um NAT simétrico" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:320 msgid "IPv4: Symmetric NAT; IPv6: Testing" -msgstr "" +msgstr "IPv4: Atrás de um NAT simétrico; IPv6: Em testes" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:321 msgid "IPv4: Firewalled; IPv6: Testing" -msgstr "" +msgstr "IPv4: Sob firewall; IPv6: Em testes" #. * IPv4 firewalled, IPv6 firewalled or disabled or no address #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:323 @@ -202,7 +205,7 @@ msgstr "Sob Firewall" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:324 msgid "IPv4: Testing; IPv6: Firewalled" -msgstr "" +msgstr "IPv4: Em testes; IPv6: Sob firewall" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:325 msgid "IPv4: Disabled; IPv6: Testing" @@ -210,7 +213,7 @@ msgstr "IPv4: Desativado; IPv6: Testando" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:326 msgid "IPv4: Disabled; IPv6: Firewalled" -msgstr "" +msgstr "IPv4: Desativado; IPv6: Sob firewall" #: ../../../router/java/src/net/i2p/router/CommSystemFacade.java:327 msgid "Disconnected" @@ -285,43 +288,43 @@ msgstr "Rejeitando túneis: desligando" msgid "Rejecting tunnels" msgstr "Rejeitando túneis" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:212 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:210 #, java-format msgid "Reseeding: got router info from file ({0} successful, {1} errors)." msgstr "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:284 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:282 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:28 msgid "Reseeding" msgstr "Reenviando" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:307 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:305 #, java-format msgid "Reseed fetched only 1 router." msgid_plural "Reseed fetched only {0} routers." msgstr[0] "" msgstr[1] "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:314 msgid "Reseed failed." msgstr "Reenvio falhou." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:317 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:315 #, java-format msgid "See {0} for help." msgstr "Ver {0} para obter ajuda." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:318 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 msgid "reseed configuration page" msgstr "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:566 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:697 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:564 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:695 msgid "Reseeding: fetching seed URL." msgstr "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:623 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:733 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:621 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:731 #, java-format msgid "" "Reseeding: fetching router info from seed URL ({0} successful, {1} errors)." @@ -386,12 +389,12 @@ msgid "Unreachable on any transport" msgstr "" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:674 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:566 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:577 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:604 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:622 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1348 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2469 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2474 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:92 msgid "Status" msgstr "" @@ -406,12 +409,12 @@ msgid "{0} is used for outbound connections only" msgstr "{0} é usado somente por conexões de saÃda" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:711 -#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:283 +#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:295 msgid "UPnP is not enabled" -msgstr "" +msgstr "UPnP desativado" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:720 -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:167 msgid "Help" msgstr "Ajuda" @@ -435,7 +438,7 @@ msgstr "Definições" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:726 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1352 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2473 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:24 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:33 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:35 @@ -450,7 +453,7 @@ msgstr "Par remoto, identificado pela hash do roteador" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:727 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1353 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Dir" msgstr "Dir" @@ -477,14 +480,14 @@ msgstr "" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:735 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1355 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2479 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 msgid "Idle" msgstr "Ocioso" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:736 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1356 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "In/Out" msgstr "Entrada/SaÃda" @@ -494,18 +497,18 @@ msgstr "" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:737 msgid "How long ago this connection was established" -msgstr "" +msgstr "Há quanto tempo esta conexão foi estabelecida" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:737 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1357 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:935 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2494 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:961 msgid "Up" msgstr "Acima" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:738 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1358 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2491 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2496 msgid "Skew" msgstr "Defasagem" @@ -554,7 +557,7 @@ msgstr "" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:748 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1359 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2508 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 msgid "TX" msgstr "TX" @@ -564,7 +567,7 @@ msgstr "Número total de pacotes enviados ao par" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:749 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1360 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2510 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 msgid "RX" msgstr "RX" @@ -573,7 +576,7 @@ msgid "The total number of packets received from the peer" msgstr "O número total de pacotes recebidos do par" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:750 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2518 msgid "Dup TX" msgstr "Dup TX" @@ -582,7 +585,7 @@ msgid "The total number of packets retransmitted to the peer" msgstr "O número total de pacotes retransmitidos ao par" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:751 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2520 msgid "Dup RX" msgstr "Dup RX" @@ -590,104 +593,104 @@ msgstr "Dup RX" msgid "The total number of duplicate packets received from the peer" msgstr "O número total de pacotes duplicados recebidos do par" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:560 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:561 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 msgid "Service" msgstr "Serviço" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:564 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 msgid "WAN Common Interface Configuration" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:567 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:587 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:614 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:568 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:588 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:615 msgid "Type" msgstr "Tipo" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:569 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:589 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:570 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:590 msgid "Upstream" msgstr "Fluxo de envio" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:571 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:591 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:572 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:592 msgid "Downstream" msgstr "Fluxo de recebimento" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:575 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 msgid "WAN PPP Connection" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:583 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:610 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:288 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:314 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:584 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:611 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:295 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:321 msgid "Uptime" msgstr "Ligado a" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:593 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:616 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:594 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:617 msgid "External IP" msgstr "IP externo" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:597 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 msgid "Layer 3 Forwarding" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:599 msgid "Default Connection Service" msgstr "Serviço de conexão pré-definido" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:602 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 msgid "WAN IP Connection" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:620 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 msgid "WAN Ethernet Link Configuration" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:641 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:642 msgid "Found Device" msgstr "Dispositivo encontrado" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:643 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:644 msgid "Subdevice" msgstr "Subdispositivo" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:664 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:665 msgid "UPnP Status" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:668 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:669 msgid "Disabled UPnP Devices" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:682 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:683 msgid "" "UPnP has been disabled; Do you have more than one UPnP Internet Gateway " "Device on your LAN ?" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:685 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:686 msgid "UPnP has not found any UPnP-aware, compatible device on your LAN." msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:693 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:694 #, java-format msgid "The current external IP address reported by UPnP is {0}" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:695 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:696 msgid "The current external IP address is not available." msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:699 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:700 #, java-format msgid "UPnP reports the maximum downstream bit rate is {0}bits/sec" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:701 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:702 #, java-format msgid "UPnP reports the maximum upstream bit rate is {0}bits/sec" msgstr "" @@ -696,12 +699,12 @@ msgstr "" #. {1,number,#####} prevents 12345 from being output as 12,345 in the English #. locale. #. If you want the digit separator in your locale, translate as {1}. -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:709 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:710 #, java-format msgid "{0} port {1,number,#####} was successfully forwarded by UPnP." msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:711 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:712 #, java-format msgid "{0} port {1,number,#####} was not forwarded by UPnP." msgstr "" @@ -717,17 +720,17 @@ msgid "NTCP connections" msgstr "" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1345 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2466 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2471 msgid "Limit" msgstr "Limite" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1346 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2467 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2472 msgid "Timeout" msgstr "Tempo limite" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1354 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2483 msgid "IPv6" msgstr "IPv6" @@ -740,126 +743,126 @@ msgid "Backlogged?" msgstr "" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1375 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2532 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2537 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Inbound" msgstr "Entrante" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1377 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2534 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2539 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Outbound" msgstr "SaÃda" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1432 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2699 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2704 #, java-format msgid "{0} peer" msgid_plural "{0} peers" msgstr[0] "{0} nó" msgstr[1] "{0} pares" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2465 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2470 msgid "UDP connections" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2475 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 msgid "Sort by peer hash" msgstr "Ordenar pela hash do par" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Direction/Introduction" msgstr "Direção/Introdução" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 msgid "Sort by idle inbound" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 msgid "Sort by idle outbound" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 msgid "Sort by inbound rate" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 msgid "Sort by outbound rate" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 msgid "Sort by connection uptime" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 msgid "Sort by clock skew" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 msgid "Sort by congestion window" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2502 msgid "Sort by slow start threshold" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2505 msgid "Sort by round trip time" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2504 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 msgid "Sort by retransmission timeout" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2507 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2512 msgid "Sort by outbound maximum transmit unit" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 msgid "Sort by packets sent" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2511 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 msgid "Sort by packets received" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2519 msgid "Sort by packets retransmitted" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2521 msgid "Sort by packets received more than once" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2536 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2541 msgid "We offered to introduce them" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2538 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2543 msgid "They offered to introduce us" msgstr "Ofereceram-se para nos introduzir" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2542 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2547 msgid "Choked" msgstr "ObstruÃdo" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2550 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2555 msgid "1 fail" msgstr "1 falha" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2552 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2557 #, java-format msgid "{0} fails" msgstr "{0} falhas" #. 1 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2558 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2563 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:166 #: ../java/src/net/i2p/router/web/ProfilesHelper.java:13 msgid "Banned" msgstr "Banido" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2617 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2622 msgid "backlogged" msgstr "" @@ -876,96 +879,96 @@ msgstr "" msgid "Dropping tunnel requests: Overloaded" msgstr "" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:693 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:695 msgid "Rejecting tunnels: Hidden mode" msgstr "" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:721 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:723 msgid "Rejecting tunnels: Request overload" msgstr "" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:752 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:754 msgid "Rejecting tunnels: Connection limit" msgstr "Rejeitando túneis: limitado pela conexão" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:964 -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:997 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:966 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:999 msgid "Dropping tunnel requests: High load" msgstr "" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1076 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1078 msgid "Dropping tunnel requests: Queue time" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:884 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:895 #, java-format msgid "New plugin version {0} is available" msgstr "Um nova versão da extensão {0} está disponÃvel" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:964 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:975 #, java-format msgid "Update check failed for plugin {0}" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:968 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:979 #, java-format msgid "No new version is available for plugin {0}" msgstr "Não há nenhuma nova versão da extensão {0} disponÃvel" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:992 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1003 #, java-format msgid "{0}B transferred" msgstr "{0}B transferidos" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1051 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1062 #, java-format msgid "Install failed from {0}" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1053 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1064 #: ../java/src/net/i2p/router/update/UpdateRunner.java:298 #, java-format msgid "Transfer failed from {0}" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1328 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1339 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1403 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 #: ../java/src/net/i2p/router/web/SummaryHelper.java:715 msgid "Update downloaded" msgstr "Atualização baixada" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 msgid "Restarting" msgstr "Reinicializando" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 msgid "Update verified" msgstr "Atualização verificada" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1381 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:189 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:306 #, java-format msgid "from {0}" msgstr "de {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1396 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1407 #, java-format msgid "Unsigned update file from {0} is corrupt" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1425 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1436 #, java-format msgid "Failed copy to {0}" msgstr "A cópia para {0} falhou" -#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:47 +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:49 #: ../java/src/net/i2p/router/update/DevSU3UpdateRunner.java:40 #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:55 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:111 -#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:62 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:64 #: ../java/src/net/i2p/router/update/UnsignedUpdateRunner.java:41 #: ../java/src/net/i2p/router/update/UpdateRunner.java:155 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:573 @@ -974,6 +977,13 @@ msgstr "A cópia para {0} falhou" msgid "HTTP client proxy tunnel must be running" msgstr "" +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:83 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:242 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:88 +#, java-format +msgid "Requires Java version {0} but installed Java version is {1}" +msgstr "" + #. set status before thread to ensure UI feedback #: ../java/src/net/i2p/router/update/DevSU3UpdateHandler.java:91 #: ../java/src/net/i2p/router/update/PluginUpdateHandler.java:82 @@ -983,24 +993,19 @@ msgstr "" msgid "Updating" msgstr "Atualizando" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:209 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:218 msgid "In-network updates disabled. Check package manager." msgstr "" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:215 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:224 msgid "No write permission for I2P install directory." msgstr "" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:223 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:232 #, java-format msgid "You must first update to version {0}" msgstr "" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:233 -#, java-format -msgid "Requires Java version {0} but installed Java version is {1}" -msgstr "" - #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:62 #, java-format msgid "Checking for update of plugin {0}" @@ -1204,8 +1209,10 @@ msgid "unban now" msgstr "" #: ../java/src/net/i2p/router/web/CSSHelper.java:149 -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../java/strings/Strings.java:29 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:217 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:221 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:219 @@ -1275,6 +1282,8 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:217 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:219 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:224 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:228 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:230 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:222 @@ -1300,6 +1309,16 @@ msgstr "" msgid "I2P Router Console" msgstr "Painel do roteador I2P" +#: ../java/src/net/i2p/router/web/CertHelper.java:25 +msgid "Local SSL Certificates" +msgstr "" + +#: ../java/src/net/i2p/router/web/CertHelper.java:46 +#: ../java/src/net/i2p/router/web/CertHelper.java:51 +#: ../java/strings/Strings.java:63 +msgid "I2PTunnel" +msgstr "Túnel I2P" + #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:62 msgid "Error updating the configuration - please see the error logs" msgstr "" @@ -1314,7 +1333,8 @@ msgstr "Configuração salva com sucesso" #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:98 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:622 #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:391 -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:151 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:109 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:160 msgid "" "Error saving the configuration (applied but not saved) - please see the " "error logs" @@ -1519,7 +1539,7 @@ msgid "Add Client" msgstr "Adicionar cliente" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:116 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:503 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:517 #: ../java/src/net/i2p/router/web/SummaryHelper.java:452 msgid "Client" msgstr "Cliente" @@ -1551,9 +1571,9 @@ msgid "Plugin" msgstr "Extensão" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:248 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:304 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 msgid "Version" msgstr "Versão" @@ -1574,9 +1594,9 @@ msgid "License" msgstr "Licença" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:294 -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/HomeHelper.java:171 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:157 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/HomeHelper.java:178 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:164 msgid "Website" msgstr "Website" @@ -1611,7 +1631,7 @@ msgstr "Deletar" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:21 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigUIHandler.java:19 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:970 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:996 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:496 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:516 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:532 @@ -1621,7 +1641,7 @@ msgstr "" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:23 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1015 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:494 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:502 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:514 @@ -1717,11 +1737,11 @@ msgstr "não encontrado no chaveiro" msgid "Invalid destination" msgstr "Destino inválido" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:82 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:84 msgid "Log overrides updated" msgstr "" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:163 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:165 msgid "Log configuration saved" msgstr "" @@ -1769,8 +1789,8 @@ msgstr "AVISO" #: ../java/src/net/i2p/router/web/ConfigLoggingHelper.java:85 #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:170 -#: ../java/src/net/i2p/router/web/HomeHelper.java:208 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:904 +#: ../java/src/net/i2p/router/web/HomeHelper.java:215 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 msgid "Remove" msgstr "Remover" @@ -1789,11 +1809,12 @@ msgid "Home Page" msgstr "Página Inicial" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:328 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:335 msgid "Network" msgstr "Rede" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:320 @@ -1827,6 +1848,7 @@ msgstr "Rede" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:292 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:322 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:297 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:292 @@ -1845,8 +1867,8 @@ msgid "UI" msgstr "" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:179 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:486 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:186 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 #: ../java/strings/Strings.java:73 msgid "Tunnels" msgstr "Túneis" @@ -1865,15 +1887,15 @@ msgid "Logging" msgstr "" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:185 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:372 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:192 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:386 #: ../java/strings/Strings.java:68 msgid "Peers" msgstr "Pares" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:497 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:230 msgid "Stats" msgstr "EstatÃsticas" @@ -1889,7 +1911,7 @@ msgstr "Avançado" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:491 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:479 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:641 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:593 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:560 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:511 msgid "Save changes" @@ -2070,7 +2092,7 @@ msgid "Unsupported" msgstr "Sem suporte" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:24 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 msgid "Save changes and reseed now" msgstr "Salvar mudanças e reenvie agora" @@ -2118,7 +2140,16 @@ msgid_plural "Reseed successful, loaded {0} router infos from file" msgstr[0] "" msgstr[1] "" -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:149 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:99 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +msgid "Reset URL list" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:107 +msgid "URL list reset successfully" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:158 msgid "Configuration saved successfully." msgstr "Configuração salva com sucesso." @@ -2618,8 +2649,8 @@ msgid "User Name" msgstr "Nome de Usuário" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:183 -#: ../java/src/net/i2p/router/web/HomeHelper.java:235 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:972 +#: ../java/src/net/i2p/router/web/HomeHelper.java:242 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:998 msgid "Add" msgstr "Adicionar" @@ -2850,13 +2881,13 @@ msgstr "Evento" msgid "Details" msgstr "Detalhes" -#: ../java/src/net/i2p/router/web/FormHandler.java:251 +#: ../java/src/net/i2p/router/web/FormHandler.java:253 msgid "" "Invalid form submission, probably because you used the 'back' or 'reload' " "button on your browser. Please resubmit." msgstr "" -#: ../java/src/net/i2p/router/web/FormHandler.java:253 +#: ../java/src/net/i2p/router/web/FormHandler.java:255 msgid "" "If the problem persists, verify that you have cookies enabled in your " "browser." @@ -2987,156 +3018,169 @@ msgstr "" msgid "Graph settings saved" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:229 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:236 msgid "Addressbook" msgstr "Livro de endereços" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:227 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:234 msgid "Manage your I2P hosts file here (I2P domain name resolution)" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 msgid "Configure Bandwidth" msgstr "Configurar Banda" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:330 msgid "I2P Bandwidth Configuration" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Configure Language" msgstr "Configurar Idioma" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Console Language Selection" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 msgid "Customize Home Page" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:346 msgid "I2P Home Page Configuration" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:139 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:146 msgid "Anonymous webmail client" msgstr "Cliente de webmail anônimo" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:141 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:148 msgid "Email" msgstr "Email" -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:251 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 msgid "I2P Router Help" msgstr "Ajuda do roteador I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:161 msgid "Router Console" msgstr "Painel do roteador" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:145 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:152 msgid "Built-in anonymous BitTorrent Client" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:147 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:154 msgid "Torrents" msgstr "Torrentes" -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:155 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:162 msgid "Local web server" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:41 +#: ../java/src/net/i2p/router/web/HomeHelper.java:43 msgid "The Anoncoin project" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug Reports" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug tracker" msgstr "" #. "colombo-bt.i2p" + S + _x("The Italian Bittorrent Resource") + S + "http #. ://colombo-bt.i2p/" + S + I + "colomboicon.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Dev Forum" msgstr "Fórum dos Desenvolvedores" -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Development forum" msgstr "Fórum dos Desenvolvedores" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Bittorrent tracker" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 msgid "diftracker" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:46 +#: ../java/src/net/i2p/router/web/HomeHelper.java:48 msgid "I2P Applications" msgstr "Aplicações I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +msgid "Anonymous cryptocurrency exchange" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "FAQ" msgstr "FAQ" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "Frequently Asked Questions" msgstr "Perguntas Feitas Fequentemente" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Community forum" msgstr "Fórum da Comunidade" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Forum" msgstr "Fórum" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "" "A public anonymous Git hosting site - supports pulling via Git and HTTP and " "pushing via SSH" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "Anonymous Git Hosting" msgstr "Hospedagem Git Anônima" -#: ../java/src/net/i2p/router/web/HomeHelper.java:50 +#: ../java/src/net/i2p/router/web/HomeHelper.java:53 msgid "HiddenGate" msgstr "HiddenGate" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "Anonymous wiki - share the knowledge" +msgstr "" + +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "I2P Wiki" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Microblog" msgstr "Microblog" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Your premier microblogging service on I2P" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 msgid "Javadocs" msgstr "Javadocs" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical documentation" msgstr "Documentação técnica" @@ -3144,91 +3188,98 @@ msgstr "Documentação técnica" #. "http://jisko.i2p/" + S + I + "jisko_console_icon.png" + S + #. _x("Key Server") + S + _x("OpenPGP Keyserver") + S + "http://keys.i2p/" + S #. + I + "education.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +#: ../java/src/net/i2p/router/web/HomeHelper.java:60 msgid "Debian and Tahoe-LAFS repositories" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free Web Hosting" msgstr "Hospedagem Web Gratuita" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free eepsite hosting with PHP and MySQL" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "I2P Pastebin" msgstr "I2P Pastebin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "Pastebin" msgstr "Pastebin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:58 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 msgid "I2P News" msgstr "I2P News" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +msgid "Planet I2P" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Add-on directory" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Plugins" msgstr "Complementos" -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Postman's Tracker" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "I2P home page" msgstr "Página inicial I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "Project Website" msgstr "" +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:68 +msgid "Russian News Feed" +msgstr "" + #. "Salt" + S + "salt.i2p" + S + "http://salt.i2p/" + S + I + #. "salt_console.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +#: ../java/src/net/i2p/router/web/HomeHelper.java:70 msgid "I2P Network Statistics" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical Docs" msgstr "Documentação Técnica" -#: ../java/src/net/i2p/router/web/HomeHelper.java:65 +#: ../java/src/net/i2p/router/web/HomeHelper.java:72 msgid "Trac Wiki" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:66 -msgid "Ugha's Wiki" -msgstr "" - -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Seedless and the Robert BitTorrent applications" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#. _x("Ugha's Wiki") + S + S + "http://ugha.i2p/" + S + I + +#. "billiard_marker.png" + S + +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Sponge's main site" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:108 +#: ../java/src/net/i2p/router/web/HomeHelper.java:115 msgid "The HTTP proxy is not up" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:110 +#: ../java/src/net/i2p/router/web/HomeHelper.java:117 #, java-format msgid "Your browser is not properly configured to use the HTTP proxy at {0}" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:210 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:906 +#: ../java/src/net/i2p/router/web/HomeHelper.java:217 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:932 msgid "Name" msgstr "Nome" -#: ../java/src/net/i2p/router/web/HomeHelper.java:212 +#: ../java/src/net/i2p/router/web/HomeHelper.java:219 msgid "URL" msgstr "URL" @@ -3356,217 +3407,226 @@ msgstr "" msgid "LeaseSets" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:105 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:106 #: ../java/strings/Strings.java:69 msgid "Router" msgstr "Roteador" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:112 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:113 msgid "not found in network database" msgstr "não encontrado no banco de dados da rede" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:156 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 msgid "LeaseSet" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:158 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:163 msgid "Local" msgstr "Local" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:160 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:165 msgid "Unpublished" msgstr "Não publicado" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:176 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:166 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:181 msgid "Destination" msgstr "Destino" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:173 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:185 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:178 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 msgid "Add to local addressbook" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:217 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:195 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:222 #, java-format msgid "Expires in {0}" msgstr "Expira em {0}" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:192 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:219 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:197 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:224 #, java-format msgid "Expired {0} ago" msgstr "Expirou a {0} atrás" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Gateway" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 msgid "Lease" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:213 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:218 msgid "Tunnel" msgstr "Túnel" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:280 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:286 msgid "Not initialized" msgstr "Não inicializado" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:330 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:342 msgid "Network Database Router Statistics" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Count" msgstr "Contagem" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 msgid "Transports" msgstr "Trasportes" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Country" msgstr "PaÃs" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:429 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:453 msgid "Our info" msgstr "Informação nossa" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:431 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:455 msgid "Peer info for" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:433 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:457 msgid "Full entry" msgstr "Entrada completa" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 #: ../java/src/net/i2p/router/web/SummaryHelper.java:152 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:726 msgid "Hidden" msgstr "Oculto" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 msgid "Updated" msgstr "Atualizado" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:441 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:444 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:465 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:468 #, java-format msgid "{0} ago" msgstr "{0} atrás" #. shouldnt happen -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:443 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:447 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:467 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:471 msgid "Published" msgstr "Publicado" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:449 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 msgid "Signing Key" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:451 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:475 msgid "Address(es)" msgstr "Endereço(s)" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:463 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:487 msgid "cost" msgstr "custo" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "Hidden or starting up" msgstr "Oculto ou inicializando" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU" msgstr "SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU with introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP" msgstr "NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU" msgstr "NTCP e SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU with introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 Only SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU" msgstr "IPv6 SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP" msgstr "IPv6 NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU" msgstr "IPv6 NTCP, SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 Only NTCP, SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NewsHelper.java:295 +#: ../java/src/net/i2p/router/web/NewsFeedHelper.java:80 +#, java-format +msgid "by {0}" +msgstr "" + +#: ../java/src/net/i2p/router/web/NewsHelper.java:292 #, java-format msgid "News last updated {0} ago." msgstr "" -#: ../java/src/net/i2p/router/web/NewsHelper.java:301 +#: ../java/src/net/i2p/router/web/NewsHelper.java:298 #, java-format msgid "News last checked {0} ago." msgstr "" -#: ../java/src/net/i2p/router/web/NewsHelper.java:310 +#: ../java/src/net/i2p/router/web/NewsHelper.java:307 msgid "Hide news" msgstr "Ocultar notÃcias" -#: ../java/src/net/i2p/router/web/NewsHelper.java:313 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:647 +#: ../java/src/net/i2p/router/web/NewsHelper.java:310 msgid "Show news" msgstr "Mostrar notÃcias" +#: ../java/src/net/i2p/router/web/NewsHelper.java:314 +msgid "Show all news" +msgstr "" + #: ../java/src/net/i2p/router/web/PluginStarter.java:140 msgid "Checking for plugin updates" msgstr "" #: ../java/src/net/i2p/router/web/PluginStarter.java:155 +#: ../java/src/net/i2p/router/web/PluginStarter.java:161 msgid "Plugin update check failed" msgstr "" -#: ../java/src/net/i2p/router/web/PluginStarter.java:193 +#: ../java/src/net/i2p/router/web/PluginStarter.java:199 #, java-format msgid "1 plugin updated" msgid_plural "{0} plugins updated" msgstr[0] "" msgstr[1] "" -#: ../java/src/net/i2p/router/web/PluginStarter.java:195 +#: ../java/src/net/i2p/router/web/PluginStarter.java:201 msgid "Plugin update check complete" msgstr "" @@ -3632,7 +3692,7 @@ msgid "Failing" msgstr "Falhando" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:135 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:411 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:425 msgid "Integrated" msgstr "Integrado" @@ -3901,277 +3961,287 @@ msgstr "" msgid "Lifetime average value" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:121 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:128 msgid "I2P Router Help & FAQ" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:123 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:130 msgid "Help & FAQ" msgstr "Ajuda & Perguntas Frequentes" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:131 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:138 msgid "" "Configure startup of clients and webapps (services); manually start dormant " "services" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:133 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:140 msgid "I2P Services" msgstr "Serviços I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:169 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:176 msgid "Configure I2P Router" msgstr "Configurar o roteador I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:171 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:178 msgid "I2P Internals" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:177 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:484 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:184 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:498 msgid "View existing tunnels and tunnel build status" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:183 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:370 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:190 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:384 msgid "Show all current peer connections" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:189 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:196 msgid "Show recent peer performance profiles" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:191 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:198 msgid "Profiles" msgstr "Perfis" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:195 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:202 msgid "Show list of all known I2P routers" msgstr "Mostrar uma lista com todos os roteadores I2P conhecidos" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:197 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:204 msgid "NetDB" msgstr "NetDB" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:201 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:208 msgid "Health Report" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:203 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:210 msgid "Logs" msgstr "Registros" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:214 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 msgid "Graph router performance" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:216 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 msgid "Graphs" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:228 msgid "Textual router performance statistics" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:233 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:240 #: ../java/src/net/i2p/router/web/SummaryHelper.java:438 msgid "Local Tunnels" msgstr "Túneis Locais" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:235 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:242 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:164 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:337 msgid "Hidden Services Manager" -msgstr "" +msgstr "Gerenciador de Serviços Ocultos" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:253 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:260 msgid "General" msgstr "Informações gerais" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 msgid "" "Your Local Identity is your unique I2P router identity, similar to an ip " "address but tailored to I2P. " msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:259 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:266 msgid "Never disclose this to anyone, as it can reveal your real world ip." msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:261 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:268 msgid "Local Identity" msgstr "Identidade local" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:272 msgid "Your unique I2P router identity is" msgstr "O identificador, único, do seu roteador I2P é" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:269 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:276 msgid "never reveal it to anyone" msgstr "nunca revele-o para alguém" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:271 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 msgid "show" msgstr "mostrar" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:275 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:301 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:282 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:308 msgid "The version of the I2P software we are running" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:292 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:318 msgid "How long we've been running for this session" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:326 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:333 msgid "" "Help with configuring your firewall and router for optimal I2P performance" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:337 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:344 msgid "See more information on the wiki" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:339 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:346 msgid "Warning: ECDSA is not available. Update your Java or OS" msgstr "Aviso: ECDSA não disponÃvel. Atualize seu Java ou SO" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:351 -msgid "Configure I2P Updates" +#, java-format +msgid "Warning: Java version {0} is no longer supported by I2P." msgstr "" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#, java-format +msgid "Update Java to version {0} or higher to receive I2P updates." +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:365 +msgid "Configure I2P Updates" +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:367 msgid "I2P Update" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:378 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:392 msgid "Peers we've been talking to in the last few minutes/last hour" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:381 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:395 msgid "Active" msgstr "Ativos" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:390 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:404 msgid "The number of peers available for building client tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:393 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:407 msgid "Fast" msgstr "Rápidos" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:399 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:413 msgid "The number of peers available for building exploratory tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:402 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:416 msgid "High capacity" msgstr "Com alta capacidade" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:408 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:422 msgid "The number of peers available for network database inquiries" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:417 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:431 msgid "The total number of peers in our network database" msgstr "O número total de pares em nosso banco de dados da rede" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:420 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:434 msgid "Known" msgstr "Conhecidos" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:440 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:454 msgid "Configure router bandwidth allocation" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:442 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:456 msgid "Bandwidth in/out" msgstr "Largura de banda: Entrada/SaÃda" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:462 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:476 msgid "Total" msgstr "Total" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:469 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:483 msgid "Used" msgstr "Usados" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:491 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:505 msgid "" "Used for building and testing tunnels, and communicating with floodfill " "peers" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:494 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:508 msgid "Exploratory" msgstr "Exploratórios" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:514 msgid "Tunnels we are using to provide or access services on the network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:509 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:523 msgid "" "Tunnels we are participating in, directly contributing bandwidth to the " "network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:512 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:526 msgid "Participating" msgstr "Participantes" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:518 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:532 msgid "" "The ratio of tunnel hops we provide to tunnel hops we use - a value greater " "than 1.00 indicates a positive contribution to the network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:521 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:535 msgid "Share ratio" msgstr "Taxa de compartilhamento" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:534 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:548 msgid "What's in the router's job queue?" msgstr "O que está na fila de tarefas do roteador?" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:536 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 msgid "Congestion" msgstr "Congestionamento" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:541 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:555 msgid "Indicates router performance" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:544 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:558 msgid "Job lag" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:564 msgid "Indicates how quickly outbound messages to other I2P routers are sent" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:553 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:567 msgid "Message delay" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:560 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:574 msgid "Round trip time for a tunnel test" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:563 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:577 msgid "Tunnel lag" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:570 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:584 msgid "Queued requests from other routers to participate in tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:573 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:587 msgid "Backlog" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:608 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:623 msgid "News & Updates" msgstr "NotÃcias & Atualizações" @@ -4284,17 +4354,21 @@ msgid "Click Shutdown and restart to install" msgstr "" #: ../java/src/net/i2p/router/web/SummaryHelper.java:720 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:735 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:737 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:749 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:761 #, java-format msgid "Version {0}" msgstr "Versão {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:734 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:736 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:748 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:760 msgid "Update available" msgstr "Atualização disponÃvel" #. Note to translators: parameter is a version, e.g. "0.8.4" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:758 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:784 #, java-format msgid "Download {0} Update" msgstr "" @@ -4303,7 +4377,7 @@ msgstr "" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:766 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:792 #, java-format msgid "Download Signed<br>Development Update<br>{0}" msgstr "" @@ -4312,56 +4386,56 @@ msgstr "" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:774 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 #, java-format msgid "Download Unsigned<br>Update {0}" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:798 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:824 msgid "Help with firewall configuration" msgstr "Ajuda com a configuração do Firewall" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:826 msgid "Check network connection and NAT/firewall" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:819 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:845 msgid "Reseed" msgstr "Reenvio" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:908 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:934 msgid "Order" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:925 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:951 msgid "Top" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:956 msgid "Move to top" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:940 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:966 msgid "Move up" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:948 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:974 msgid "Down" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:953 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:979 msgid "Move down" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:958 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:984 msgid "Bottom" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:963 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 msgid "Move to bottom" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:975 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1001 msgid "Select a section to add" msgstr "" @@ -4408,100 +4482,100 @@ msgstr "Túneis de cliente para" msgid "dead" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:70 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:69 msgid "Participating tunnels" msgstr "Túneis participantes" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "Receive on" msgstr "Recebido em" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Expiration" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Send on" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Rate" msgstr "Taxa" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Role" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Usage" msgstr "Uso" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:111 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:113 msgid "grace period" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:121 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 msgid "Outbound Endpoint" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 msgid "Inbound Gateway" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:127 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:174 msgid "Participant" msgstr "Participante" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:130 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:133 #, java-format msgid "Limited display to the {0} tunnels with the highest usage" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:131 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:135 msgid "Inactive participating tunnels" msgstr "Túneis participantes inativos" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:132 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:224 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:138 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:232 msgid "Lifetime bandwidth usage" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Expiry" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:165 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 msgid "Participants" msgstr "Participantes" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:177 msgid "Endpoint" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 #: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "Build in progress" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 msgid "inbound" msgstr "entrada" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "outbound" msgstr "saÃda" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:223 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:231 msgid "No tunnels; waiting for the grace period to end." msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:225 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:233 msgid "in" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:234 msgid "out" msgstr "" @@ -4638,10 +4712,6 @@ msgstr "Criptografia" msgid "i2cp" msgstr "i2cp" -#: ../java/strings/Strings.java:63 -msgid "I2PTunnel" -msgstr "Túnel I2P" - #: ../java/strings/Strings.java:64 msgid "InNetPool" msgstr "" @@ -4688,10 +4758,12 @@ msgstr "chave" msgid "port" msgstr "porta" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 -msgid "configure bandwidth" -msgstr "configuração de banda" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:146 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:318 +msgid "Certificates" +msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:153 @@ -4725,6 +4797,7 @@ msgstr "configuração de banda" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:149 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:155 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:154 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:149 @@ -4740,6 +4813,7 @@ msgstr "" #. We have intl defined when this is included, but not when compiled #. standalone. +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:333 @@ -4772,6 +4846,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:305 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:310 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:305 @@ -4787,6 +4862,7 @@ msgid "Refresh (s)" msgstr "" #. ditto +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:337 @@ -4819,6 +4895,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:309 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:339 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:314 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:309 @@ -4833,6 +4910,10 @@ msgstr "" msgid "Enable" msgstr "Habilitar" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 +msgid "configure bandwidth" +msgstr "configuração de banda" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:437 msgid "Bandwidth limiter" msgstr "" @@ -4909,7 +4990,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:501 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:477 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:639 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:587 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:558 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:509 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:461 @@ -5942,51 +6023,51 @@ msgstr "" msgid "Reseed URLs" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:541 msgid "Enable HTTP Proxy?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:543 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:545 msgid "HTTP Proxy Host" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:547 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:549 msgid "HTTP Proxy Port" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:551 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:553 msgid "Use HTTP Proxy Authorization?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:555 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:557 msgid "HTTP Proxy Username" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:559 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:561 msgid "HTTP Proxy Password" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:563 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:565 msgid "Enable HTTPS Proxy?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:567 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:569 msgid "HTTPS Proxy Host" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:571 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:573 msgid "HTTPS Proxy Port" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:575 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:577 msgid "Use HTTPS Proxy Authorization?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:579 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:581 msgid "HTTPS Proxy Username" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:583 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:585 msgid "HTTPS Proxy Password" msgstr "" @@ -6545,6 +6626,14 @@ msgstr "" msgid "I2P Network Database" msgstr "Banco de Dados da Rede I2P" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:148 +msgid "News" +msgstr "" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:344 +msgid "Latest News" +msgstr "" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:152 msgid "WebApp Not Found" msgstr "WebApp Não Encontrado" diff --git a/apps/routerconsole/locale/messages_ro.po b/apps/routerconsole/locale/messages_ro.po index 37f8dae46300982ff832bddf345c3ef002bc25d3..87e94802d7983a91e9b6990f97bc39acb7bb4300 100644 --- a/apps/routerconsole/locale/messages_ro.po +++ b/apps/routerconsole/locale/messages_ro.po @@ -15,10 +15,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:05+0000\n" -"PO-Revision-Date: 2015-07-19 20:06+0000\n" -"Last-Translator: titus <titus0818@gmail.com>\n" -"Language-Team: Romanian (http://www.transifex.com/projects/p/I2P/language/ro/)\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-05 17:17+0000\n" +"Last-Translator: kytv <killyourtv@i2pmail.org>\n" +"Language-Team: Romanian (http://www.transifex.com/otf/I2P/language/ro/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -94,9 +94,9 @@ msgstr[2] "{0} zile" #, java-format msgid "1 year" msgid_plural "{0} years" -msgstr[0] "" -msgstr[1] "" -msgstr[2] "" +msgstr[0] "1 an" +msgstr[1] "{0} ani" +msgstr[2] "{0} de ani" #: ../../../core/java/src/net/i2p/data/DataHelper.java:1549 #: ../../../core/java/src/net/i2p/data/DataHelper.java:1596 @@ -145,19 +145,22 @@ msgid "IPs Permanently Banned" msgstr "IP-uri Permanent banate" #: ../../../router/java/src/net/i2p/router/Blocklist.java:959 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "From" msgstr "De la " #: ../../../router/java/src/net/i2p/router/Blocklist.java:961 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "To" msgstr "Pentru" #: ../../../router/java/src/net/i2p/router/Blocklist.java:997 #: ../java/src/net/i2p/router/web/BanlistRenderer.java:48 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:652 +#: ../java/src/net/i2p/router/web/CertHelper.java:77 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:147 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:662 #: ../java/src/net/i2p/router/web/SummaryHelper.java:478 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:137 msgid "none" msgstr "nici unul" @@ -295,17 +298,17 @@ msgstr "Respingere tuneluri: Oprire" msgid "Rejecting tunnels" msgstr "Refuza tuneluri" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:212 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:210 #, java-format msgid "Reseeding: got router info from file ({0} successful, {1} errors)." msgstr "Reseeding: preluare informaÈ›ii din router de la fiÈ™ierul ({0} reuÅŸit, {1} erori)." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:284 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:282 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:28 msgid "Reseeding" msgstr "Reseeding" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:307 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:305 #, java-format msgid "Reseed fetched only 1 router." msgid_plural "Reseed fetched only {0} routers." @@ -313,26 +316,26 @@ msgstr[0] "ÃŽnsământarea a adus doar 1 router." msgstr[1] "ÃŽnsământarea a preluat doar {0} routere." msgstr[2] "Reseed a preluat doar {0} routere." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:314 msgid "Reseed failed." msgstr "Reseed a eÈ™uat." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:317 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:315 #, java-format msgid "See {0} for help." msgstr "Vezi {0} pentru ajutor." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:318 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 msgid "reseed configuration page" msgstr "Pagina de configurare pentru reseed" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:566 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:697 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:564 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:695 msgid "Reseeding: fetching seed URL." msgstr "Reseeding: preluare a URL-ului de seed." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:623 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:733 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:621 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:731 #, java-format msgid "" "Reseeding: fetching router info from seed URL ({0} successful, {1} errors)." @@ -397,12 +400,12 @@ msgid "Unreachable on any transport" msgstr "Inaccesibil pe orice transport" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:674 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:566 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:577 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:604 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:622 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1348 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2469 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2474 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:92 msgid "Status" msgstr "Stare" @@ -417,12 +420,12 @@ msgid "{0} is used for outbound connections only" msgstr "{0} conexiuni de ieÈ™ire sunt folosite" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:711 -#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:283 +#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:295 msgid "UPnP is not enabled" msgstr "UPnP nu este activat" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:720 -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:167 msgid "Help" msgstr "Ajutor" @@ -446,7 +449,7 @@ msgstr "DefiniÈ›ii" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:726 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1352 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2473 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:24 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:33 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:35 @@ -461,7 +464,7 @@ msgstr "Peer de la distanÈ›a, identificat de hash router" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:727 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1353 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Dir" msgstr "Dir" @@ -488,14 +491,14 @@ msgstr "Cât de mult timp a trecut de când un pachet a fost primit / trimis" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:735 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1355 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2479 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 msgid "Idle" msgstr "Inactiv" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:736 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1356 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "In/Out" msgstr "In/Out" @@ -509,14 +512,14 @@ msgstr "Acum cât de mult timp în urmă a fost stabilită acestă conexiune" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:737 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1357 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:935 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2494 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:961 msgid "Up" msgstr "ÃŽn sus" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:738 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1358 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2491 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2496 msgid "Skew" msgstr "Oblic" @@ -565,7 +568,7 @@ msgstr "Curent maxim trimite dimensiunea pachetului / maxima estimată pentru pr #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:748 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1359 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2508 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 msgid "TX" msgstr "TX" @@ -575,7 +578,7 @@ msgstr "Numărul total de pachete trimise la peer" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:749 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1360 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2510 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 msgid "RX" msgstr "RX" @@ -584,7 +587,7 @@ msgid "The total number of packets received from the peer" msgstr "Numărul total de pachete primite de la peer" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:750 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2518 msgid "Dup TX" msgstr "Dup TX" @@ -593,7 +596,7 @@ msgid "The total number of packets retransmitted to the peer" msgstr "Numărul total de pachete retransmise la peer" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:751 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2520 msgid "Dup RX" msgstr "Dup RX" @@ -601,104 +604,104 @@ msgstr "Dup RX" msgid "The total number of duplicate packets received from the peer" msgstr "Numărul total de pachete duplicat primite de la peer" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:560 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:561 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 msgid "Service" msgstr "Serviciu" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:564 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 msgid "WAN Common Interface Configuration" msgstr "Interfață comuna de configurare WAN" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:567 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:587 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:614 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:568 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:588 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:615 msgid "Type" msgstr "Tip" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:569 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:589 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:570 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:590 msgid "Upstream" msgstr "în amonte" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:571 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:591 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:572 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:592 msgid "Downstream" msgstr "în aval" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:575 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 msgid "WAN PPP Connection" msgstr "Conexiune WAN PPP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:583 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:610 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:288 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:314 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:584 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:611 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:295 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:321 msgid "Uptime" msgstr "Disponibilitate" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:593 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:616 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:594 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:617 msgid "External IP" msgstr "IP extern" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:597 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 msgid "Layer 3 Forwarding" msgstr "Stratul 3 Transmiterea" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:599 msgid "Default Connection Service" msgstr "Serviciul de conexiune implicit" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:602 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 msgid "WAN IP Connection" msgstr "Conexiune WAN IP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:620 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 msgid "WAN Ethernet Link Configuration" msgstr "WAN Ethernet Link configurare" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:641 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:642 msgid "Found Device" msgstr "Dispozitiv găsit" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:643 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:644 msgid "Subdevice" msgstr "Subdispozitiv" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:664 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:665 msgid "UPnP Status" msgstr "Stare UPnP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:668 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:669 msgid "Disabled UPnP Devices" msgstr "Dispozitive UPnP dezactivate" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:682 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:683 msgid "" "UPnP has been disabled; Do you have more than one UPnP Internet Gateway " "Device on your LAN ?" msgstr "UPnP a fost dezactivat, Ai mai mult de un dispozitiv UPnP Internet Gateway pe LAN?" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:685 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:686 msgid "UPnP has not found any UPnP-aware, compatible device on your LAN." msgstr "UPnP nu a găsit nici un dispozitiv UPnP-conÈ™tient, compatibil pe LAN." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:693 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:694 #, java-format msgid "The current external IP address reported by UPnP is {0}" msgstr "IP-ul curent extern raportat de UPnP este {0}" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:695 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:696 msgid "The current external IP address is not available." msgstr "IP-ul curent extern nu este disponibil." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:699 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:700 #, java-format msgid "UPnP reports the maximum downstream bit rate is {0}bits/sec" msgstr "UPnP raportează rata de biÈ›i maximă în aval este {0} biti / sec" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:701 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:702 #, java-format msgid "UPnP reports the maximum upstream bit rate is {0}bits/sec" msgstr "UPnP raportează rata de biÈ›i maximă în amonte este {0} biti / sec" @@ -707,12 +710,12 @@ msgstr "UPnP raportează rata de biÈ›i maximă în amonte este {0} biti / sec" #. {1,number,#####} prevents 12345 from being output as 12,345 in the English #. locale. #. If you want the digit separator in your locale, translate as {1}. -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:709 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:710 #, java-format msgid "{0} port {1,number,#####} was successfully forwarded by UPnP." msgstr "{0}port {1,number,#####} a fost înaintat cu succes prin UPnP." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:711 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:712 #, java-format msgid "{0} port {1,number,#####} was not forwarded by UPnP." msgstr "{0}port {1,number,#####} n-a fost înaintat cu succes prin UPnP." @@ -728,17 +731,17 @@ msgid "NTCP connections" msgstr "Conexiune NTCP" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1345 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2466 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2471 msgid "Limit" msgstr "Limită" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1346 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2467 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2472 msgid "Timeout" msgstr "Timeout" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1354 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2483 msgid "IPv6" msgstr "IPv6" @@ -751,19 +754,19 @@ msgid "Backlogged?" msgstr "Conectat înapoi?" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1375 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2532 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2537 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Inbound" msgstr "De intrare" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1377 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2534 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2539 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Outbound" msgstr "De ieÈ™ire" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1432 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2699 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2704 #, java-format msgid "{0} peer" msgid_plural "{0} peers" @@ -771,107 +774,107 @@ msgstr[0] "{0} utilizator" msgstr[1] "{0} utilizatori" msgstr[2] "{0} utilizatori" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2465 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2470 msgid "UDP connections" msgstr "Conexiuni UDP" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2475 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 msgid "Sort by peer hash" msgstr "Sortat după hash-ul peer-ului" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Direction/Introduction" msgstr "DirecÈ›ie / Introducere" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 msgid "Sort by idle inbound" msgstr "Sortează după intrare inactivă" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 msgid "Sort by idle outbound" msgstr "Sortează după ieÈ™ire inactivă" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 msgid "Sort by inbound rate" msgstr "Sortează după rata de intrare" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 msgid "Sort by outbound rate" msgstr "Sortează după rata de de ieÈ™ire" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 msgid "Sort by connection uptime" msgstr "Sortează după timpul de conectare" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 msgid "Sort by clock skew" msgstr "Sortează după fus orar" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 msgid "Sort by congestion window" msgstr "Sorteaza dupa fereastra de congestie" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2502 msgid "Sort by slow start threshold" msgstr "Sortează dupa pragul de start lent" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2505 msgid "Sort by round trip time" msgstr "Sortează după timpul dus-intors" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2504 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 msgid "Sort by retransmission timeout" msgstr "Sortează după timpul de retransmisie" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2507 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2512 msgid "Sort by outbound maximum transmit unit" msgstr "Sortează după unitățiile maxime de ieÈ™ire transmise" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 msgid "Sort by packets sent" msgstr "Sortează după pachetele trimise" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2511 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 msgid "Sort by packets received" msgstr "Sortează după pachetele primite" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2519 msgid "Sort by packets retransmitted" msgstr "Sortează după pachetele retransmise" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2521 msgid "Sort by packets received more than once" msgstr "Sortează după pachetele primite mai mult decât o dată" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2536 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2541 msgid "We offered to introduce them" msgstr "Ne oferim să îi introducem" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2538 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2543 msgid "They offered to introduce us" msgstr "Ei sau oferit să ne introducă" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2542 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2547 msgid "Choked" msgstr "Asfixiat" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2550 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2555 msgid "1 fail" msgstr "1 eÈ™uare" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2552 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2557 #, java-format msgid "{0} fails" msgstr "{0} eÈ™uări" #. 1 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2558 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2563 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:166 #: ../java/src/net/i2p/router/web/ProfilesHelper.java:13 msgid "Banned" msgstr "Banat" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2617 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2622 msgid "backlogged" msgstr "restante" @@ -888,96 +891,96 @@ msgstr "Arunc cererile de tunel: Decalaj job-uri ridicat" msgid "Dropping tunnel requests: Overloaded" msgstr "Arunc cererile tunelului: Supraîncărcat" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:693 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:695 msgid "Rejecting tunnels: Hidden mode" msgstr "Respingere tuneluri: Mod ascuns" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:721 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:723 msgid "Rejecting tunnels: Request overload" msgstr "Resping Tuneluri: Cerere supraîncărcată" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:752 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:754 msgid "Rejecting tunnels: Connection limit" msgstr "Respinge Tuneluri: Limită de conexiune" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:964 -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:997 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:966 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:999 msgid "Dropping tunnel requests: High load" msgstr "Arunc cererile de tunel: ÃŽncărcătura mare" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1076 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1078 msgid "Dropping tunnel requests: Queue time" msgstr "Arunc cererile de tunel: Timp aÈ™teptare" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:884 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:895 #, java-format msgid "New plugin version {0} is available" msgstr "Noua versiune plug-in {0} este disponibil" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:964 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:975 #, java-format msgid "Update check failed for plugin {0}" msgstr "Verificarea actualizarii a eÈ™uat pentru plug-inul {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:968 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:979 #, java-format msgid "No new version is available for plugin {0}" msgstr "Nici un versiune nouă este disponibilă pentru plugin-ul {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:992 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1003 #, java-format msgid "{0}B transferred" msgstr "{0} B transferat" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1051 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1062 #, java-format msgid "Install failed from {0}" msgstr "Instalare eÈ™uată din {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1053 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1064 #: ../java/src/net/i2p/router/update/UpdateRunner.java:298 #, java-format msgid "Transfer failed from {0}" msgstr "Transferul nu a reuÈ™it din {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1328 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1339 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1403 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 #: ../java/src/net/i2p/router/web/SummaryHelper.java:715 msgid "Update downloaded" msgstr "Actualizare descarcata" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 msgid "Restarting" msgstr "restartare" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 msgid "Update verified" msgstr "Actualizari verificate" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1381 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:189 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:306 #, java-format msgid "from {0}" msgstr "din {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1396 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1407 #, java-format msgid "Unsigned update file from {0} is corrupt" msgstr "FiÈ™ierul de actualizare nesemnat din {0} este corupt" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1425 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1436 #, java-format msgid "Failed copy to {0}" msgstr "Copierea a eÈ™uat {0}" -#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:47 +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:49 #: ../java/src/net/i2p/router/update/DevSU3UpdateRunner.java:40 #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:55 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:111 -#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:62 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:64 #: ../java/src/net/i2p/router/update/UnsignedUpdateRunner.java:41 #: ../java/src/net/i2p/router/update/UpdateRunner.java:155 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:573 @@ -986,6 +989,13 @@ msgstr "Copierea a eÈ™uat {0}" msgid "HTTP client proxy tunnel must be running" msgstr "Tunelul proxy client HTTP trebuie să ruleze" +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:83 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:242 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:88 +#, java-format +msgid "Requires Java version {0} but installed Java version is {1}" +msgstr "Necesita versiunea Java {0} dar vrersiunea Java instalata este {1}" + #. set status before thread to ensure UI feedback #: ../java/src/net/i2p/router/update/DevSU3UpdateHandler.java:91 #: ../java/src/net/i2p/router/update/PluginUpdateHandler.java:82 @@ -995,24 +1005,19 @@ msgstr "Tunelul proxy client HTTP trebuie să ruleze" msgid "Updating" msgstr "Actualizare" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:209 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:218 msgid "In-network updates disabled. Check package manager." msgstr "Actualizările din reÈ›ea sunt dezactivate. Verifică managerul de pachete." -#: ../java/src/net/i2p/router/update/NewsFetcher.java:215 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:224 msgid "No write permission for I2P install directory." msgstr "Nu există permisiune de scriere pentru directorul de instalare I2P." -#: ../java/src/net/i2p/router/update/NewsFetcher.java:223 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:232 #, java-format msgid "You must first update to version {0}" msgstr "Trebuie intai sa actualizati la versiunea {0}" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:233 -#, java-format -msgid "Requires Java version {0} but installed Java version is {1}" -msgstr "Necesita versiunea Java {0} dar vrersiunea Java instalata este {1}" - #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:62 #, java-format msgid "Checking for update of plugin {0}" @@ -1216,8 +1221,10 @@ msgid "unban now" msgstr "unban acum" #: ../java/src/net/i2p/router/web/CSSHelper.java:149 -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../java/strings/Strings.java:29 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:217 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:221 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:219 @@ -1287,6 +1294,8 @@ msgstr "unban acum" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:217 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:219 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:224 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:228 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:230 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:222 @@ -1312,6 +1321,16 @@ msgstr "unban acum" msgid "I2P Router Console" msgstr "Consola de Router I2P" +#: ../java/src/net/i2p/router/web/CertHelper.java:25 +msgid "Local SSL Certificates" +msgstr "" + +#: ../java/src/net/i2p/router/web/CertHelper.java:46 +#: ../java/src/net/i2p/router/web/CertHelper.java:51 +#: ../java/strings/Strings.java:63 +msgid "I2PTunnel" +msgstr "Tunelul I2P" + #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:62 msgid "Error updating the configuration - please see the error logs" msgstr "Eroare la actualizarea de configurare - vă rugăm să consultaÈ›i jurnalele de eroare" @@ -1326,7 +1345,8 @@ msgstr "ConfiguraÈ›ie salvată cu succes" #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:98 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:622 #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:391 -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:151 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:109 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:160 msgid "" "Error saving the configuration (applied but not saved) - please see the " "error logs" @@ -1531,7 +1551,7 @@ msgid "Add Client" msgstr "Adaugă client" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:116 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:503 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:517 #: ../java/src/net/i2p/router/web/SummaryHelper.java:452 msgid "Client" msgstr "Client" @@ -1563,9 +1583,9 @@ msgid "Plugin" msgstr "Plugin" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:248 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:304 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 msgid "Version" msgstr "Versiune" @@ -1586,9 +1606,9 @@ msgid "License" msgstr "Licență" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:294 -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/HomeHelper.java:171 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:157 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/HomeHelper.java:178 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:164 msgid "Website" msgstr "Website" @@ -1623,7 +1643,7 @@ msgstr "Șterge" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:21 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigUIHandler.java:19 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:970 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:996 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:496 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:516 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:532 @@ -1633,7 +1653,7 @@ msgstr "Șterge pe cel ales" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:23 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1015 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:494 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:502 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:514 @@ -1729,11 +1749,11 @@ msgstr "nu a fost găsit în inelul de chei" msgid "Invalid destination" msgstr "destinaÈ›ie nevalidă" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:82 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:84 msgid "Log overrides updated" msgstr "Suprascrie jurnal actualizat" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:163 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:165 msgid "Log configuration saved" msgstr "Jurnalul de configurare salvat" @@ -1781,8 +1801,8 @@ msgstr "WARN" #: ../java/src/net/i2p/router/web/ConfigLoggingHelper.java:85 #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:170 -#: ../java/src/net/i2p/router/web/HomeHelper.java:208 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:904 +#: ../java/src/net/i2p/router/web/HomeHelper.java:215 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 msgid "Remove" msgstr "Elimina" @@ -1801,11 +1821,12 @@ msgid "Home Page" msgstr "Pagina de pornire" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:328 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:335 msgid "Network" msgstr "ReÈ›eaua" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:320 @@ -1839,6 +1860,7 @@ msgstr "ReÈ›eaua" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:292 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:322 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:297 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:292 @@ -1857,8 +1879,8 @@ msgid "UI" msgstr "UI" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:179 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:486 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:186 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 #: ../java/strings/Strings.java:73 msgid "Tunnels" msgstr "Tuneluri" @@ -1877,15 +1899,15 @@ msgid "Logging" msgstr "Logare" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:185 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:372 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:192 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:386 #: ../java/strings/Strings.java:68 msgid "Peers" msgstr "Peers" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:497 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:230 msgid "Stats" msgstr "Statistici" @@ -1901,7 +1923,7 @@ msgstr "Avansat" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:491 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:479 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:641 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:593 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:560 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:511 msgid "Save changes" @@ -2082,7 +2104,7 @@ msgid "Unsupported" msgstr "Nesuportat" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:24 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 msgid "Save changes and reseed now" msgstr "Salvează schimbările si reseed iarăși" @@ -2131,7 +2153,16 @@ msgstr[0] "Reseed încheiat cu succes, s-a încărcat {0} informaÈ›ie router din msgstr[1] "Reseed încheiat cu succes, s-au încărcat {0} informaÈ›ii router din fiÈ™ier " msgstr[2] "Reseed încheiat cu succes, s-au încărcat {0} informaÈ›ii router din fiÈ™ier " -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:149 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:99 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +msgid "Reset URL list" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:107 +msgid "URL list reset successfully" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:158 msgid "Configuration saved successfully." msgstr "ConfiguraÈ›ie salvată cu succes." @@ -2634,8 +2665,8 @@ msgid "User Name" msgstr "Nume utilizator" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:183 -#: ../java/src/net/i2p/router/web/HomeHelper.java:235 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:972 +#: ../java/src/net/i2p/router/web/HomeHelper.java:242 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:998 msgid "Add" msgstr "Adaugă" @@ -2866,13 +2897,13 @@ msgstr "Eveniment" msgid "Details" msgstr "Detalii" -#: ../java/src/net/i2p/router/web/FormHandler.java:251 +#: ../java/src/net/i2p/router/web/FormHandler.java:253 msgid "" "Invalid form submission, probably because you used the 'back' or 'reload' " "button on your browser. Please resubmit." msgstr "Transmitere formular invalid, probabil pentru că aÈ›i folosit butonul \"reload\" sau \"back\" de pe browser-ul dumneavoastră. Vă rugăm retrimiteÈ›i." -#: ../java/src/net/i2p/router/web/FormHandler.java:253 +#: ../java/src/net/i2p/router/web/FormHandler.java:255 msgid "" "If the problem persists, verify that you have cookies enabled in your " "browser." @@ -3003,156 +3034,169 @@ msgstr "SalvaÈ›i setările È™i redesenati grafice" msgid "Graph settings saved" msgstr "Setări grafice salvate" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:229 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:236 msgid "Addressbook" msgstr "Agendă" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:227 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:234 msgid "Manage your I2P hosts file here (I2P domain name resolution)" msgstr "GestionaÈ›i fisierul I2P hosts aici (I2P DNS) " -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 msgid "Configure Bandwidth" msgstr "configurarea traficului" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:330 msgid "I2P Bandwidth Configuration" msgstr "Configurarea I2P trafic" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Configure Language" msgstr "Configurare limbii" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Console Language Selection" msgstr "Consola Limbii de selecÈ›ie" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 msgid "Customize Home Page" msgstr "Personalizarea paginei de pornire" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:346 msgid "I2P Home Page Configuration" msgstr "Configurarea paginii de pornire I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:139 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:146 msgid "Anonymous webmail client" msgstr "Client webmail anonim" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:141 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:148 msgid "Email" msgstr "Email" -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:251 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 msgid "I2P Router Help" msgstr "I2P router ajutor " -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:161 msgid "Router Console" msgstr "consola router" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:145 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:152 msgid "Built-in anonymous BitTorrent Client" msgstr "Construiti clientul BitTorrent" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:147 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:154 msgid "Torrents" msgstr "Torente" -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:155 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:162 msgid "Local web server" msgstr "Server web local" -#: ../java/src/net/i2p/router/web/HomeHelper.java:41 +#: ../java/src/net/i2p/router/web/HomeHelper.java:43 msgid "The Anoncoin project" msgstr "Proiectul Anoncoin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug Reports" msgstr "bug-uri" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug tracker" msgstr "Bug tracker" #. "colombo-bt.i2p" + S + _x("The Italian Bittorrent Resource") + S + "http #. ://colombo-bt.i2p/" + S + I + "colomboicon.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Dev Forum" msgstr "Forumul dezvoltatorilor" -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Development forum" msgstr "Forumul dezvoltatorilor" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Bittorrent tracker" msgstr "Bittorrent tracker" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 msgid "diftracker" msgstr "diftracker" -#: ../java/src/net/i2p/router/web/HomeHelper.java:46 +#: ../java/src/net/i2p/router/web/HomeHelper.java:48 msgid "I2P Applications" msgstr "AplicaÈ›ii I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +msgid "Anonymous cryptocurrency exchange" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "FAQ" msgstr "FAQ" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "Frequently Asked Questions" msgstr "ÃŽntrebări frecvente" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Community forum" msgstr "Forumul comunitatii" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Forum" msgstr "Forum" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "" "A public anonymous Git hosting site - supports pulling via Git and HTTP and " "pushing via SSH" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "Anonymous Git Hosting" msgstr "Git hosting anonim " -#: ../java/src/net/i2p/router/web/HomeHelper.java:50 +#: ../java/src/net/i2p/router/web/HomeHelper.java:53 msgid "HiddenGate" msgstr "HiddenGate" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "Anonymous wiki - share the knowledge" +msgstr "" + +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "I2P Wiki" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Microblog" msgstr "Microblog" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Your premier microblogging service on I2P" msgstr "primul serviciul al vostru de microblogging la I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 msgid "Javadocs" msgstr "Javadoc" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical documentation" msgstr "DocumentaÈ›ie tehnică" @@ -3160,97 +3204,104 @@ msgstr "DocumentaÈ›ie tehnică" #. "http://jisko.i2p/" + S + I + "jisko_console_icon.png" + S + #. _x("Key Server") + S + _x("OpenPGP Keyserver") + S + "http://keys.i2p/" + S #. + I + "education.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +#: ../java/src/net/i2p/router/web/HomeHelper.java:60 msgid "Debian and Tahoe-LAFS repositories" msgstr "Debian È™i depozite Tahoe-LAFS" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free Web Hosting" msgstr "Hostare Web gratuita." -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free eepsite hosting with PHP and MySQL" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "I2P Pastebin" msgstr "I2P Pastebin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "Pastebin" msgstr "Pastebin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:58 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 msgid "I2P News" msgstr "Noutati I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +msgid "Planet I2P" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Add-on directory" msgstr "Adaugă director" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Plugins" msgstr "Module" -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Postman's Tracker" msgstr "Postman's Tracker" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "I2P home page" msgstr "pagina de pornire I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "Project Website" msgstr "Site-ul proiectului" +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:68 +msgid "Russian News Feed" +msgstr "" + #. "Salt" + S + "salt.i2p" + S + "http://salt.i2p/" + S + I + #. "salt_console.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +#: ../java/src/net/i2p/router/web/HomeHelper.java:70 msgid "I2P Network Statistics" msgstr "Statistica reÈ›elei I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical Docs" msgstr "DocumentaÈ›ie tehnica" -#: ../java/src/net/i2p/router/web/HomeHelper.java:65 +#: ../java/src/net/i2p/router/web/HomeHelper.java:72 msgid "Trac Wiki" msgstr "Trac Wiki" -#: ../java/src/net/i2p/router/web/HomeHelper.java:66 -msgid "Ugha's Wiki" -msgstr "Ugha's Wiki" - -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Seedless and the Robert BitTorrent applications" msgstr "Seedless si aplicatii bitTorent Robert" -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#. _x("Ugha's Wiki") + S + S + "http://ugha.i2p/" + S + I + +#. "billiard_marker.png" + S + +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Sponge's main site" msgstr "Site-ul principal Sponge" -#: ../java/src/net/i2p/router/web/HomeHelper.java:108 +#: ../java/src/net/i2p/router/web/HomeHelper.java:115 msgid "The HTTP proxy is not up" msgstr "Proxy HTTP nu este pornit" -#: ../java/src/net/i2p/router/web/HomeHelper.java:110 +#: ../java/src/net/i2p/router/web/HomeHelper.java:117 #, java-format msgid "Your browser is not properly configured to use the HTTP proxy at {0}" msgstr "Browser-ul dvs. nu este corect configurat să utilizeze proxy HTTP la {0}" -#: ../java/src/net/i2p/router/web/HomeHelper.java:210 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:906 +#: ../java/src/net/i2p/router/web/HomeHelper.java:217 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:932 msgid "Name" msgstr "Nume" -#: ../java/src/net/i2p/router/web/HomeHelper.java:212 +#: ../java/src/net/i2p/router/web/HomeHelper.java:219 msgid "URL" msgstr "URL" #: ../java/src/net/i2p/router/web/JobQueueHelper.java:50 msgid "I2P Job Queue" -msgstr "" +msgstr "Sarcină I2P în coadă" #: ../java/src/net/i2p/router/web/JobQueueHelper.java:51 msgid "Job runners" @@ -3303,7 +3354,7 @@ msgstr "ÃŽn coadă" #: ../java/src/net/i2p/router/web/JobQueueHelper.java:141 msgid "Runs" -msgstr "" +msgstr "Rulează" #: ../java/src/net/i2p/router/web/JobQueueHelper.java:142 msgid "Dropped" @@ -3372,210 +3423,219 @@ msgstr "Toate routerele cu statisticile complete" msgid "LeaseSets" msgstr "LeaseSets" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:105 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:106 #: ../java/strings/Strings.java:69 msgid "Router" msgstr "Router" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:112 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:113 msgid "not found in network database" msgstr "nu a fost găsit în reÈ›eaua bazei de date" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:156 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 msgid "LeaseSet" msgstr "LeaseSet" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:158 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:163 msgid "Local" msgstr "Local" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:160 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:165 msgid "Unpublished" msgstr "Nepublicat" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:176 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:166 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:181 msgid "Destination" msgstr "DestinaÈ›ie" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:173 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:185 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:178 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 msgid "Add to local addressbook" -msgstr "" +msgstr "Adaugă la agenda locală" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:217 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:195 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:222 #, java-format msgid "Expires in {0}" msgstr "Expiră in {0}" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:192 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:219 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:197 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:224 #, java-format msgid "Expired {0} ago" msgstr "Expirat în urmă cu {0}" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Gateway" msgstr "Gateway" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 msgid "Lease" msgstr "Lease" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:213 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:218 msgid "Tunnel" msgstr "Tunel" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:280 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:286 msgid "Not initialized" msgstr "Nu este iniÈ›ializat" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:330 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:342 msgid "Network Database Router Statistics" msgstr "Statisticile Router-ului in reÈ›eaua bazei de date" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Count" msgstr "Număra" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 msgid "Transports" msgstr "Transporturi" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Country" msgstr "Regiune" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:429 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:453 msgid "Our info" msgstr "InformaÈ›iile noastre" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:431 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:455 msgid "Peer info for" msgstr "InformaÈ›ile despre peer" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:433 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:457 msgid "Full entry" msgstr "Intrare completă" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 #: ../java/src/net/i2p/router/web/SummaryHelper.java:152 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:726 msgid "Hidden" msgstr "Ascuns" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 msgid "Updated" msgstr "Actualizat" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:441 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:444 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:465 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:468 #, java-format msgid "{0} ago" msgstr "{0} în urmă" #. shouldnt happen -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:443 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:447 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:467 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:471 msgid "Published" msgstr "Publicat" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:449 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 msgid "Signing Key" msgstr "Cheie de semnare " -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:451 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:475 msgid "Address(es)" msgstr "Adresă(se)" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:463 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:487 msgid "cost" msgstr "cost" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "Hidden or starting up" msgstr "Ascuns sau pentru pornire" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU" msgstr "SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU with introducers" msgstr "SSU cu introducere" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP" msgstr "NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU" msgstr "NTCP si SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU with introducers" -msgstr "" +msgstr "NTCP È™i SSU cu introduceri" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 Only SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU" msgstr "IPv6 SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP" msgstr "IPv6 NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU" msgstr "IPv6 NTCP, SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 Only NTCP, SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NewsHelper.java:295 +#: ../java/src/net/i2p/router/web/NewsFeedHelper.java:80 +#, java-format +msgid "by {0}" +msgstr "" + +#: ../java/src/net/i2p/router/web/NewsHelper.java:292 #, java-format msgid "News last updated {0} ago." msgstr "Ultima actualizarea noutății a fost {0} în urmă." -#: ../java/src/net/i2p/router/web/NewsHelper.java:301 +#: ../java/src/net/i2p/router/web/NewsHelper.java:298 #, java-format msgid "News last checked {0} ago." msgstr "Ultima verificarea noutății a fost {0} în urmă." -#: ../java/src/net/i2p/router/web/NewsHelper.java:310 +#: ../java/src/net/i2p/router/web/NewsHelper.java:307 msgid "Hide news" msgstr "Ascunde noutati" -#: ../java/src/net/i2p/router/web/NewsHelper.java:313 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:647 +#: ../java/src/net/i2p/router/web/NewsHelper.java:310 msgid "Show news" msgstr "AfiÈ™ează noutati" +#: ../java/src/net/i2p/router/web/NewsHelper.java:314 +msgid "Show all news" +msgstr "" + #: ../java/src/net/i2p/router/web/PluginStarter.java:140 msgid "Checking for plugin updates" msgstr "Verificarea actualizării plugin-urilor" #: ../java/src/net/i2p/router/web/PluginStarter.java:155 +#: ../java/src/net/i2p/router/web/PluginStarter.java:161 msgid "Plugin update check failed" -msgstr "" +msgstr "A eÈ™uat verificarea extensiei" -#: ../java/src/net/i2p/router/web/PluginStarter.java:193 +#: ../java/src/net/i2p/router/web/PluginStarter.java:199 #, java-format msgid "1 plugin updated" msgid_plural "{0} plugins updated" @@ -3583,7 +3643,7 @@ msgstr[0] "1 plug-in actualizat" msgstr[1] "{0} plug-inuri actualizate" msgstr[2] "{0} plug-inuri actualizate" -#: ../java/src/net/i2p/router/web/PluginStarter.java:195 +#: ../java/src/net/i2p/router/web/PluginStarter.java:201 msgid "Plugin update check complete" msgstr "Verificarea actualizarii plugin-urilor s-a terminat" @@ -3652,7 +3712,7 @@ msgid "Failing" msgstr "EÈ™uat" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:135 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:411 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:425 msgid "Integrated" msgstr "Integrat" @@ -3923,277 +3983,287 @@ msgstr "Numar de evenimente grafic" msgid "Lifetime average value" msgstr "Valoarea medie pe durata de pornire" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:121 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:128 msgid "I2P Router Help & FAQ" msgstr "I2P router-ajutor &FAQ " -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:123 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:130 msgid "Help & FAQ" msgstr "Ajutor & FAQ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:131 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:138 msgid "" "Configure startup of clients and webapps (services); manually start dormant " "services" msgstr "Configurarea pornirii clienÈ›ilor È™i aplicaÈ›iilor web (servicii); porniti manual servicii latente" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:133 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:140 msgid "I2P Services" msgstr "Servicii I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:169 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:176 msgid "Configure I2P Router" msgstr "Configurarea I2P Router" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:171 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:178 msgid "I2P Internals" msgstr "I2P Internals" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:177 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:484 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:184 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:498 msgid "View existing tunnels and tunnel build status" msgstr "Vezi tuneluri existente È™i statutul construirii tunelului " -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:183 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:370 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:190 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:384 msgid "Show all current peer connections" msgstr "Arată toate conexiunile actuale ale utilizatorilor " -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:189 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:196 msgid "Show recent peer performance profiles" msgstr "AfiÈ™are profilului de performanță recent" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:191 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:198 msgid "Profiles" msgstr "Profiluri" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:195 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:202 msgid "Show list of all known I2P routers" msgstr "AfiÈ™ează lista tuturor router-urilor I2P cunoscute" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:197 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:204 msgid "NetDB" msgstr "NetDB" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:201 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:208 msgid "Health Report" msgstr "Health Raport" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:203 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:210 msgid "Logs" msgstr "ÃŽnregistrări" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:214 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 msgid "Graph router performance" msgstr "Grafic performantei router-ului " -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:216 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 msgid "Graphs" msgstr "Grafice" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:228 msgid "Textual router performance statistics" msgstr "Statisticile textuale de performanță router-ului" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:233 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:240 #: ../java/src/net/i2p/router/web/SummaryHelper.java:438 msgid "Local Tunnels" -msgstr "" +msgstr "Tuneluri locale" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:235 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:242 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:164 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:337 msgid "Hidden Services Manager" msgstr "Administrator servicii ascunse" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:253 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:260 msgid "General" msgstr "General" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 msgid "" "Your Local Identity is your unique I2P router identity, similar to an ip " "address but tailored to I2P. " msgstr "Identitatea locală este identitatea dvs. unica router I2P, similar cu o adresă IP, dar adaptate la I2P." -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:259 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:266 msgid "Never disclose this to anyone, as it can reveal your real world ip." msgstr "Nu dezvălui acest lucru pentru oricine, aÈ™a cum se poate descoperi IP real." -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:261 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:268 msgid "Local Identity" msgstr "identitatea locală" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:272 msgid "Your unique I2P router identity is" msgstr "Identitatea unică a router-ului I2P este" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:269 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:276 msgid "never reveal it to anyone" msgstr "nu-l descoperi nimănui" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:271 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 msgid "show" msgstr "AfiÈ™ează" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:275 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:301 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:282 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:308 msgid "The version of the I2P software we are running" msgstr "Versiunea programului I2p pe care o rulam" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:292 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:318 msgid "How long we've been running for this session" msgstr "Cât timp am fost porniÈ›i pentru această sesiune" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:326 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:333 msgid "" "Help with configuring your firewall and router for optimal I2P performance" msgstr "Ajutor cu configurarea firewall-ul È™i router-ul pentru performanÈ›e optime I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:337 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:344 msgid "See more information on the wiki" msgstr "VedeÈ›i mai multe informaÈ›ii pe wiki" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:339 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:346 msgid "Warning: ECDSA is not available. Update your Java or OS" msgstr "" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:351 +#, java-format +msgid "Warning: Java version {0} is no longer supported by I2P." +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#, java-format +msgid "Update Java to version {0} or higher to receive I2P updates." +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:365 msgid "Configure I2P Updates" msgstr "Configurarea Actualizări I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:367 msgid "I2P Update" msgstr "Actualizare I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:378 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:392 msgid "Peers we've been talking to in the last few minutes/last hour" msgstr "Utilizatorii ce au convorbit în ultimele câteva minute / ultima ora" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:381 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:395 msgid "Active" msgstr "Activ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:390 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:404 msgid "The number of peers available for building client tunnels" msgstr "Numărul de colegii disponibile pentru construirea de tuneluri client" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:393 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:407 msgid "Fast" msgstr "Rapid" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:399 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:413 msgid "The number of peers available for building exploratory tunnels" msgstr "Numărul de colegii disponibile pentru construirea de tuneluri de explorare" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:402 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:416 msgid "High capacity" msgstr "De mare capacitate" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:408 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:422 msgid "The number of peers available for network database inquiries" msgstr "Numărul de utilizatori disponibili pentru anchete de baze de date din reÈ›ea" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:417 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:431 msgid "The total number of peers in our network database" msgstr "Numărul total de utilizatori în baza de date reÈ›ea" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:420 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:434 msgid "Known" msgstr "Cunoscute" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:440 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:454 msgid "Configure router bandwidth allocation" msgstr "Configurarea alocării benzii de router" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:442 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:456 msgid "Bandwidth in/out" msgstr "Lățime de bandă în / out" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:462 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:476 msgid "Total" msgstr "Total" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:469 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:483 msgid "Used" msgstr "Utilizat" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:491 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:505 msgid "" "Used for building and testing tunnels, and communicating with floodfill " "peers" msgstr "Utilizate pentru construirea È™i testarea tuneluri, È™i de a comunica cu colegii floodfill" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:494 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:508 msgid "Exploratory" msgstr "Explorare" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:514 msgid "Tunnels we are using to provide or access services on the network" msgstr "Tuneluri pe care le folosim pentru a furniza sau accesa la serviciile din reÈ›ea" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:509 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:523 msgid "" "Tunnels we are participating in, directly contributing bandwidth to the " "network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:512 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:526 msgid "Participating" msgstr "Participare" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:518 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:532 msgid "" "The ratio of tunnel hops we provide to tunnel hops we use - a value greater " "than 1.00 indicates a positive contribution to the network" msgstr "Raportul tunelului hamei oferite la tunele hamei folosite - o valoare mai mare de 1.00 indică o contribuÈ›ie pozitivă la reÈ›ea" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:521 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:535 msgid "Share ratio" msgstr "Rată partajare:" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:534 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:548 msgid "What's in the router's job queue?" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:536 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 msgid "Congestion" msgstr "congestie" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:541 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:555 msgid "Indicates router performance" msgstr "Indicare performantei router-ului" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:544 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:558 msgid "Job lag" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:564 msgid "Indicates how quickly outbound messages to other I2P routers are sent" msgstr "Indică cât de repede se trimit mesaje de ieÈ™ire la alte routere I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:553 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:567 msgid "Message delay" msgstr "întârziere mesajului" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:560 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:574 msgid "Round trip time for a tunnel test" msgstr "Timpul dus-intors pentru un test de tunel" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:563 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:577 msgid "Tunnel lag" msgstr "Intirziere tunelului" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:570 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:584 msgid "Queued requests from other routers to participate in tunnels" msgstr "Cereri din coada de aÈ™teptare din alte routere pentru a participa în tuneluri" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:573 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:587 msgid "Backlog" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:608 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:623 msgid "News & Updates" msgstr "Noutati & Actualizari " @@ -4306,17 +4376,21 @@ msgid "Click Shutdown and restart to install" msgstr "FaceÈ›i clic pe Oprire È™i reporniÈ›i pentru a instala" #: ../java/src/net/i2p/router/web/SummaryHelper.java:720 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:735 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:737 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:749 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:761 #, java-format msgid "Version {0}" msgstr "Versiune {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:734 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:736 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:748 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:760 msgid "Update available" msgstr "actualizare disponibila" #. Note to translators: parameter is a version, e.g. "0.8.4" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:758 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:784 #, java-format msgid "Download {0} Update" msgstr "Descarcă {0} actualizari" @@ -4325,7 +4399,7 @@ msgstr "Descarcă {0} actualizari" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:766 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:792 #, java-format msgid "Download Signed<br>Development Update<br>{0}" msgstr "" @@ -4334,56 +4408,56 @@ msgstr "" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:774 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 #, java-format msgid "Download Unsigned<br>Update {0}" msgstr "Descarca actualizare <br> nesemnata{0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:798 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:824 msgid "Help with firewall configuration" msgstr "Ajutor cu configurarea firewall" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:826 msgid "Check network connection and NAT/firewall" msgstr "VerificaÈ›i conexiunea la reÈ›ea È™i NAT / firewall" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:819 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:845 msgid "Reseed" msgstr "reseed" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:908 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:934 msgid "Order" msgstr "Comandă" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:925 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:951 msgid "Top" msgstr "Sus" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:956 msgid "Move to top" msgstr "Mută în vârf" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:940 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:966 msgid "Move up" msgstr "Mută în sus" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:948 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:974 msgid "Down" msgstr "Jos" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:953 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:979 msgid "Move down" -msgstr "" +msgstr "Mutare în jos" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:958 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:984 msgid "Bottom" msgstr "Jos" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:963 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 msgid "Move to bottom" -msgstr "" +msgstr "Mută dedesubt" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:975 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1001 msgid "Select a section to add" msgstr "SelectaÈ›i o secÈ›iune pentru adăugare" @@ -4430,100 +4504,100 @@ msgstr "Tuneluri client pentru" msgid "dead" msgstr "inactiv" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:70 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:69 msgid "Participating tunnels" msgstr "tunele participate" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "Receive on" msgstr "Primite în " -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Expiration" msgstr "Expirare" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Send on" msgstr "Trimite pe" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Rate" msgstr "Rată" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Role" msgstr "Rol" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Usage" msgstr "Utilizare" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:111 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:113 msgid "grace period" msgstr "perioada de graÈ›ie" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:121 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 msgid "Outbound Endpoint" msgstr "Endpoint de ieÈ™ire" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 msgid "Inbound Gateway" msgstr "Gateway intrare" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:127 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:174 msgid "Participant" msgstr "Participant" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:130 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:133 #, java-format msgid "Limited display to the {0} tunnels with the highest usage" msgstr "AfiÈ™ajul limitat la {0} tuneluri cu cea mai mare utilizare" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:131 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:135 msgid "Inactive participating tunnels" msgstr "Tuneluri participante inactive" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:132 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:224 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:138 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:232 msgid "Lifetime bandwidth usage" msgstr "Utilizarea lățimii de bandă" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Expiry" msgstr "Expirare" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:165 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 msgid "Participants" msgstr "ParticipanÈ›i" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:177 msgid "Endpoint" msgstr "punct final" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 #: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "Build in progress" msgstr "ConstruiÈ›i este în curs" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 msgid "inbound" msgstr "Intrare" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "outbound" msgstr "IeÈ™ire" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:223 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:231 msgid "No tunnels; waiting for the grace period to end." msgstr "Nici un tunel, în aÈ™teptare pentru perioada de graÈ›ie până la sfârÈ™it." -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:225 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:233 msgid "in" msgstr "în" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:234 msgid "out" msgstr "ieÈ™ire" @@ -4590,7 +4664,7 @@ msgstr "DeschideÈ›i consola router în browser-ul web in timpul pornirii" #: ../java/strings/Strings.java:37 msgid "shared clients (DSA)" -msgstr "" +msgstr "ClienÈ›i partajaÈ›i (DSA)" #: ../java/strings/Strings.java:38 msgid "IRC proxy" @@ -4660,10 +4734,6 @@ msgstr "Criptare" msgid "i2cp" msgstr "i2cp" -#: ../java/strings/Strings.java:63 -msgid "I2PTunnel" -msgstr "Tunelul I2P" - #: ../java/strings/Strings.java:64 msgid "InNetPool" msgstr "InNetPool" @@ -4710,10 +4780,12 @@ msgstr "Cheie" msgid "port" msgstr "port" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 -msgid "configure bandwidth" -msgstr "configurarea traficului" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:146 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:318 +msgid "Certificates" +msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:153 @@ -4747,6 +4819,7 @@ msgstr "configurarea traficului" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:149 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:155 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:154 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:149 @@ -4762,6 +4835,7 @@ msgstr "Router-ul este deactivat" #. We have intl defined when this is included, but not when compiled #. standalone. +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:333 @@ -4794,6 +4868,7 @@ msgstr "Router-ul este deactivat" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:305 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:310 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:305 @@ -4809,6 +4884,7 @@ msgid "Refresh (s)" msgstr "Actualizează" #. ditto +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:337 @@ -4841,6 +4917,7 @@ msgstr "Actualizează" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:309 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:339 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:314 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:309 @@ -4855,6 +4932,10 @@ msgstr "Actualizează" msgid "Enable" msgstr "Activează" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 +msgid "configure bandwidth" +msgstr "configurarea traficului" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:437 msgid "Bandwidth limiter" msgstr "Limitare benzii de retea" @@ -4931,7 +5012,7 @@ msgstr "Pagina de configurare avansată a reÈ›elei" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:501 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:477 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:639 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:587 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:558 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:509 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:461 @@ -4968,15 +5049,15 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:457 msgid "Automatic" -msgstr "" +msgstr "Automat" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:463 msgid "Force On" -msgstr "" +msgstr "ForÈ›ează pornirea" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:469 msgid "Disable" -msgstr "" +msgstr "Dezactivat" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:473 msgid "Advanced I2P Configuration" @@ -4989,7 +5070,7 @@ msgstr "Unele modificări pot necesita o repornire pentru a avea efect" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:498 #, java-format msgid "To make changes, edit the file {0}." -msgstr "" +msgstr "Pentru a face modificări, editaÈ›i fiÈ™ierul {0}." #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:150 msgid "config clients" @@ -5112,7 +5193,7 @@ msgstr "Plugin-urile enumerate mai jos sunt pornite de către client webConsole. #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:616 msgid "Plugin Installation from URL" -msgstr "" +msgstr "Instalare extensie din URL" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:618 #, java-format @@ -5125,19 +5206,19 @@ msgstr "Pentru a instala un plugin, introduceÈ›i URL-ul descărcare:" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:631 msgid "Plugin Installation from File" -msgstr "" +msgstr "Instalare extensie din fiÈ™ier" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:635 msgid "Install plugin from file." -msgstr "" +msgstr "Instalare extensie din fiÈ™ier." #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:637 msgid "Select xpi2p or su3 file" -msgstr "" +msgstr "SelectaÈ›i fiÈ™ier xpi2p sau su3" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:646 msgid "Update All Plugins" -msgstr "" +msgstr "Actualizează toate extensiile" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:150 msgid "config home" @@ -5163,7 +5244,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:524 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/home_jsp.java:416 msgid "Applications and Configuration" -msgstr "" +msgstr "AplicaÈ›ii È™i configurare" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:150 msgid "config keyring" @@ -5225,7 +5306,7 @@ msgstr "FiÈ™ier jurnal" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:441 #, java-format msgid "Edit {0} to change" -msgstr "" +msgstr "EditaÈ›i {0} pentru modificări" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:445 msgid "(the symbol '@' will be replaced during log rotation)" @@ -5355,7 +5436,7 @@ msgstr "Experimental" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:532 msgid "IPv4 Configuration" -msgstr "" +msgstr "ConfiguraÈ›ie IPv4" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:536 msgid "Disable inbound (Firewalled by Carrier-grade NAT or DS-Lite)" @@ -5893,7 +5974,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:485 msgid "Enter zip or su3 URL" -msgstr "" +msgstr "IntroduceÈ›i zip sau URL su3" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:487 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:499 @@ -5915,7 +5996,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:497 msgid "Select zip or su3 file" -msgstr "" +msgstr "SelectaÈ›i fiÈ™ier zip sau su3" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:505 msgid "Create Reseed File" @@ -5928,7 +6009,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:509 msgid "This file will never contain your own router's identity or IP." -msgstr "" +msgstr "Acest fiÈ™ier nu va conÈ›ine niciodată IP-ul sau identitatea ruterului dumneavoastră." #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:511 msgid "Create reseed file" @@ -5964,51 +6045,51 @@ msgstr "FoloseÈ™te doar fără SSL" msgid "Reseed URLs" msgstr "Reseed URLs" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:541 msgid "Enable HTTP Proxy?" msgstr "Activează proxy-ul HTTP?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:543 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:545 msgid "HTTP Proxy Host" msgstr "Proxy HTTPS host" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:547 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:549 msgid "HTTP Proxy Port" msgstr "Port proxy HTTP" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:551 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:553 msgid "Use HTTP Proxy Authorization?" msgstr "Utilizează HTTP-proxy autorizare ?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:555 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:557 msgid "HTTP Proxy Username" msgstr "Nume utilizator proxy HTTP" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:559 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:561 msgid "HTTP Proxy Password" msgstr "Parola proxy HTTP" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:563 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:565 msgid "Enable HTTPS Proxy?" msgstr "Activează proxy-ul HTTPS?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:567 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:569 msgid "HTTPS Proxy Host" msgstr "Proxy HTTPS host" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:571 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:573 msgid "HTTPS Proxy Port" msgstr "Port proxy HTTPS" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:575 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:577 msgid "Use HTTPS Proxy Authorization?" msgstr "Utilizează HTTPS-proxy autorizare ?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:579 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:581 msgid "HTTPS Proxy Username" msgstr "Nume utilizator proxy HTTPS" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:583 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:585 msgid "HTTPS Proxy Password" msgstr "Parola proxy HTTPS" @@ -6127,7 +6208,7 @@ msgstr "Depanare" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:533 msgid "View the job queue" -msgstr "" +msgstr "Vizualizare sarcină în coadă" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:537 msgid "" @@ -6493,11 +6574,11 @@ msgstr "Nu s-a găsit" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/events_jsp.java:146 msgid "events" -msgstr "" +msgstr "evenimente" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/events_jsp.java:334 msgid "I2P Event Log" -msgstr "" +msgstr "Jurnal eveniment I2P" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/graph_jsp.java:148 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/graphs_jsp.java:146 @@ -6525,7 +6606,7 @@ msgstr "Jar Fisier Dump" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:146 msgid "job queue" -msgstr "" +msgstr "sarcină în coadă" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:318 msgid "I2P Router Job Queue" @@ -6549,11 +6630,11 @@ msgstr "router jurnal" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:419 msgid "Event Logs" -msgstr "" +msgstr "Jurnal eveniment" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:421 msgid "View event logs" -msgstr "" +msgstr "Vizualizare jurnale evenimente" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:423 msgid "Service (Wrapper) Logs" @@ -6567,6 +6648,14 @@ msgstr "baza de date reÈ›elei" msgid "I2P Network Database" msgstr "Baza de date reÈ›elei I2P" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:148 +msgid "News" +msgstr "" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:344 +msgid "Latest News" +msgstr "" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:152 msgid "WebApp Not Found" msgstr "WebApp nu s-a gasit" diff --git a/apps/routerconsole/locale/messages_ru.po b/apps/routerconsole/locale/messages_ru.po index dd6f3a303b25f8186a51da76664db9d784b3d033..40e90cc48998c1110edf4fafe0b819ccd5d8a7cb 100644 --- a/apps/routerconsole/locale/messages_ru.po +++ b/apps/routerconsole/locale/messages_ru.po @@ -13,6 +13,7 @@ # Eugene, 2013 # Eugene, 2013 # foo <foo@bar>, 2009 +# Foster Snowhill, 2013,2015 # Foster Snowhill, 2015 # gmind, 2012-2013 # gmind, 2013 @@ -28,6 +29,7 @@ # Foster Snowhill, 2013 # Foster Snowhill, 2013 # varnav, 2013 +# vertnis <vertnis@i2pmail.org>, 2015 # brianhopes <voganc-12@live.ru>, 2015 # Foster Snowhill, 2013 # yume, 2014-2015 @@ -37,9 +39,9 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:05+0000\n" -"PO-Revision-Date: 2015-07-22 18:26+0000\n" -"Last-Translator: Foster Snowhill\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-15 12:23+0000\n" +"Last-Translator: vertnis <vertnis@i2pmail.org>\n" "Language-Team: Russian (Russia) (http://www.transifex.com/otf/I2P/language/ru_RU/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -175,19 +177,22 @@ msgid "IPs Permanently Banned" msgstr "IP-адреÑа, заблокированные навÑегда" #: ../../../router/java/src/net/i2p/router/Blocklist.java:959 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "From" msgstr "От кого" #: ../../../router/java/src/net/i2p/router/Blocklist.java:961 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "To" msgstr "Кому" #: ../../../router/java/src/net/i2p/router/Blocklist.java:997 #: ../java/src/net/i2p/router/web/BanlistRenderer.java:48 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:652 +#: ../java/src/net/i2p/router/web/CertHelper.java:77 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:147 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:662 #: ../java/src/net/i2p/router/web/SummaryHelper.java:478 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:137 msgid "none" msgstr "нет" @@ -325,17 +330,17 @@ msgstr "Ðе принимаем туннели: маршрутизатор в п msgid "Rejecting tunnels" msgstr "Ðе принимаем туннели" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:212 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:210 #, java-format msgid "Reseeding: got router info from file ({0} successful, {1} errors)." msgstr "ÐÐ°Ñ‡Ð°Ð»ÑŒÐ½Ð°Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ°: получены данные маршрутизатора из файла ({0} уÑпешно, {1} Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ¾Ð¹)." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:284 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:282 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:28 msgid "Reseeding" msgstr "ÐÐ°Ñ‡Ð°Ð»ÑŒÐ½Ð°Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ°" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:307 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:305 #, java-format msgid "Reseed fetched only 1 router." msgid_plural "Reseed fetched only {0} routers." @@ -344,26 +349,26 @@ msgstr[1] "При начальной загрузке получены данн msgstr[2] "При начальной загрузке получены данные только о {0} маршрутизаторах." msgstr[3] "При начальной загрузке получены данные только о {0} маршрутизаторах." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:314 msgid "Reseed failed." msgstr "ÐÐ°Ñ‡Ð°Ð»ÑŒÐ½Ð°Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ° не удалаÑÑŒ." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:317 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:315 #, java-format msgid "See {0} for help." msgstr "Смотрите {0} Ð´Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰Ð¸." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:318 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 msgid "reseed configuration page" msgstr "Ñтраница наÑтройки начальной загрузки" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:566 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:697 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:564 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:695 msgid "Reseeding: fetching seed URL." msgstr "ПроизводитÑÑ Ð½Ð°Ñ‡Ð°Ð»ÑŒÐ½Ð°Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ°: загружаетÑÑ URL каталога маршрутизаторов." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:623 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:733 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:621 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:731 #, java-format msgid "" "Reseeding: fetching router info from seed URL ({0} successful, {1} errors)." @@ -428,12 +433,12 @@ msgid "Unreachable on any transport" msgstr "ÐедоÑтупен по вÑем транÑпортным протоколам" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:674 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:566 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:577 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:604 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:622 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1348 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2469 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2474 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:92 msgid "Status" msgstr "СоÑтоÑние" @@ -448,12 +453,12 @@ msgid "{0} is used for outbound connections only" msgstr "{0} иÑпользуетÑÑ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ Ð´Ð»Ñ Ð¸ÑходÑщих Ñоединений" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:711 -#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:283 +#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:295 msgid "UPnP is not enabled" msgstr "UPnP не включен" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:720 -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:167 msgid "Help" msgstr "Справка" @@ -477,7 +482,7 @@ msgstr "ОбозначениÑ" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:726 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1352 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2473 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:24 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:33 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:35 @@ -492,7 +497,7 @@ msgstr "Удаленный узел, идентифицируемый хешем #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:727 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1353 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Dir" msgstr "Ðаправление" @@ -519,14 +524,14 @@ msgstr "Сколько прошло времени поÑле приема/пе #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:735 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1355 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2479 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 msgid "Idle" msgstr "Ðеактивен" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:736 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1356 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "In/Out" msgstr "Прием/передача" @@ -540,14 +545,14 @@ msgstr "Ð’Ñ€ÐµÐ¼Ñ Ð¶Ð¸Ð·Ð½Ð¸ ÑоединениÑ" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:737 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1357 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:935 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2494 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:961 msgid "Up" msgstr "Подключен" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:738 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1358 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2491 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2496 msgid "Skew" msgstr "Сдвиг" @@ -596,7 +601,7 @@ msgstr "<i>Maximum Transfer Unit</i>. Текущий макÑимальный Ñ€ #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:748 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1359 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2508 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 msgid "TX" msgstr "Передано" @@ -606,7 +611,7 @@ msgstr "Общее количеÑтво отправленных узлу пак #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:749 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1360 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2510 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 msgid "RX" msgstr "ПринÑто" @@ -615,7 +620,7 @@ msgid "The total number of packets received from the peer" msgstr "Общее количеÑтво принÑтых от узла пакетов" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:750 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2518 msgid "Dup TX" msgstr "Повт. отправлено" @@ -624,7 +629,7 @@ msgid "The total number of packets retransmitted to the peer" msgstr "Общее количеÑтво повторно отправленных узлу пакетов" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:751 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2520 msgid "Dup RX" msgstr "Повт. принÑто" @@ -632,104 +637,104 @@ msgstr "Повт. принÑто" msgid "The total number of duplicate packets received from the peer" msgstr "Общее количеÑтво повторно принÑтых от узла пакетов" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:560 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:561 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 msgid "Service" msgstr "Служба" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:564 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 msgid "WAN Common Interface Configuration" msgstr "ÐžÐ±Ñ‰Ð°Ñ ÐºÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ñ WAN-интерфейÑов" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:567 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:587 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:614 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:568 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:588 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:615 msgid "Type" msgstr "Тип" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:569 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:589 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:570 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:590 msgid "Upstream" msgstr "ВоÑходÑщий канал" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:571 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:591 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:572 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:592 msgid "Downstream" msgstr "ÐиÑходÑщий канал" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:575 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 msgid "WAN PPP Connection" msgstr "PPP WAN-Ñоединение" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:583 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:610 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:288 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:314 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:584 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:611 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:295 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:321 msgid "Uptime" msgstr "Ð’Ñ€ÐµÐ¼Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ñ‹" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:593 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:616 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:594 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:617 msgid "External IP" msgstr "Внешний IP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:597 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 msgid "Layer 3 Forwarding" msgstr "L3-переÑылка" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:599 msgid "Default Connection Service" msgstr "Служба ÑÐ¾ÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ Ð¿Ð¾ умолчанию" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:602 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 msgid "WAN IP Connection" msgstr "IP WAN-Ñоединение" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:620 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 msgid "WAN Ethernet Link Configuration" msgstr "ÐаÑтройки ÑÐ¾ÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ WAN Ethernet" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:641 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:642 msgid "Found Device" msgstr "Ðайдено уÑтройÑтво" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:643 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:644 msgid "Subdevice" msgstr "ПодуÑтройÑтво" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:664 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:665 msgid "UPnP Status" msgstr "СоÑтоÑние UPnP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:668 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:669 msgid "Disabled UPnP Devices" msgstr "Отключить UPnP УÑтройÑтва" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:682 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:683 msgid "" "UPnP has been disabled; Do you have more than one UPnP Internet Gateway " "Device on your LAN ?" msgstr "UPnP был отключен; еÑть ли у Ð²Ð°Ñ Ð±Ð¾Ð»ÐµÐµ одного шлюза Ñ Ð¿Ð¾Ð´Ð´ÐµÑ€Ð¶ÐºÐ¾Ð¹ UPnP в локальной Ñети?" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:685 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:686 msgid "UPnP has not found any UPnP-aware, compatible device on your LAN." msgstr "Ð’ локальной Ñети не найдено ни одного поддерживающего UPnP уÑтройÑтва." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:693 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:694 #, java-format msgid "The current external IP address reported by UPnP is {0}" msgstr "Текущий внешний IP-адреÑ, полученный через UPnP: {0}" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:695 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:696 msgid "The current external IP address is not available." msgstr "Текущий внешний IP-Ð°Ð´Ñ€ÐµÑ Ð½Ðµ доÑтупен." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:699 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:700 #, java-format msgid "UPnP reports the maximum downstream bit rate is {0}bits/sec" msgstr "UPnP Ñообщает макÑимальную ÑкороÑть ниÑходÑщего потока {0}бит/Ñекунду" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:701 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:702 #, java-format msgid "UPnP reports the maximum upstream bit rate is {0}bits/sec" msgstr "UPnP Ñообщает макÑимальную ÑкороÑть воÑходÑщего потока {0}бит/Ñекунду" @@ -738,12 +743,12 @@ msgstr "UPnP Ñообщает макÑимальную ÑкороÑть воÑÑ… #. {1,number,#####} prevents 12345 from being output as 12,345 in the English #. locale. #. If you want the digit separator in your locale, translate as {1}. -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:709 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:710 #, java-format msgid "{0} port {1,number,#####} was successfully forwarded by UPnP." msgstr "{0} порт {1,number,#####} был уÑпешно проброшен Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ UPnP." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:711 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:712 #, java-format msgid "{0} port {1,number,#####} was not forwarded by UPnP." msgstr "{0} порт {1,number,#####} не был проброшен Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ UPnP." @@ -759,17 +764,17 @@ msgid "NTCP connections" msgstr "NTCP-ÑоединениÑ" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1345 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2466 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2471 msgid "Limit" msgstr "Предел" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1346 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2467 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2472 msgid "Timeout" msgstr "Тайм-аут" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1354 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2483 msgid "IPv6" msgstr "IPv6" @@ -782,19 +787,19 @@ msgid "Backlogged?" msgstr "Ð’ очереди?" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1375 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2532 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2537 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Inbound" msgstr "ВходÑщие" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1377 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2534 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2539 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Outbound" msgstr "ИÑходÑщие" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1432 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2699 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2704 #, java-format msgid "{0} peer" msgid_plural "{0} peers" @@ -803,107 +808,107 @@ msgstr[1] "{0} пира" msgstr[2] "{0} пиров" msgstr[3] "{0} пиров" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2465 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2470 msgid "UDP connections" msgstr "UDP-ÑоединениÑ" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2475 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 msgid "Sort by peer hash" msgstr "Сортировать по хешу узла" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Direction/Introduction" msgstr "Ðаправление/поÑредничеÑтво" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 msgid "Sort by idle inbound" msgstr "Сортировать по неактивноÑти приема" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 msgid "Sort by idle outbound" msgstr "Сортировать по неактивноÑти передачи" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 msgid "Sort by inbound rate" msgstr "Сортировать по ÑкороÑти приема" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 msgid "Sort by outbound rate" msgstr "Сортировать по ÑкороÑти передачи" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 msgid "Sort by connection uptime" msgstr "Сортировать по времени жизни ÑоединениÑ" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 msgid "Sort by clock skew" msgstr "Сортировать по Ñдвигу чаÑов" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 msgid "Sort by congestion window" msgstr "Сортировать по размеру окна перегрузки" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2502 msgid "Sort by slow start threshold" msgstr "Сортировать по порогу медленного Ñтарта" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2505 msgid "Sort by round trip time" msgstr "Сортировать по времени Ð¿Ñ€Ð¾Ñ…Ð¾Ð¶Ð´ÐµÐ½Ð¸Ñ Ñигнала" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2504 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 msgid "Sort by retransmission timeout" msgstr "Сортировать по тайм-ауту повторной передачи" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2507 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2512 msgid "Sort by outbound maximum transmit unit" msgstr "Сортировать по размеру иÑходÑщего MTU" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 msgid "Sort by packets sent" msgstr "Сортировать по количеÑтву отправленных пакетов" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2511 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 msgid "Sort by packets received" msgstr "Сортировать по количеÑтву принÑтых пакетов" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2519 msgid "Sort by packets retransmitted" msgstr "Сортировать по количеÑтву повторно отправленных пакетов" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2521 msgid "Sort by packets received more than once" msgstr "Сортировать по количеÑтву повторно принÑтых пакетов" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2536 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2541 msgid "We offered to introduce them" msgstr "Мы предлагаем ÑÐµÐ±Ñ Ð² качеÑтве поÑредника Ð´Ð»Ñ Ñтого узла" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2538 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2543 msgid "They offered to introduce us" msgstr "Ðтот узел предлагает ÑÐµÐ±Ñ Ð² качеÑтве нашего поÑредника" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2542 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2547 msgid "Choked" msgstr "ДроÑÑелирован" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2550 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2555 msgid "1 fail" msgstr "1 Ñбой" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2552 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2557 #, java-format msgid "{0} fails" msgstr "{0} ÑбоÑ(-ев)" #. 1 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2558 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2563 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:166 #: ../java/src/net/i2p/router/web/ProfilesHelper.java:13 msgid "Banned" msgstr "Заблокирован" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2617 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2622 msgid "backlogged" msgstr "перегружен" @@ -920,96 +925,96 @@ msgstr "Игнорируем запроÑÑ‹ туннелей: Ð±Ð¾Ð»ÑŒÑˆÐ°Ñ Ð· msgid "Dropping tunnel requests: Overloaded" msgstr "Игнорируем запроÑÑ‹ туннелей: Ñлишком выÑÐ¾ÐºÐ°Ñ Ð½Ð°Ð³Ñ€ÑƒÐ·ÐºÐ°" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:693 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:695 msgid "Rejecting tunnels: Hidden mode" msgstr "ОтклонÑем туннели: Ñкрытый режим" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:721 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:723 msgid "Rejecting tunnels: Request overload" msgstr "Ðе принимаем туннели: Ñлишком много запроÑов" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:752 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:754 msgid "Rejecting tunnels: Connection limit" msgstr "Ðе принимаем туннели: доÑтигнут предел чиÑла Ñоединений" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:964 -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:997 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:966 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:999 msgid "Dropping tunnel requests: High load" msgstr "Игнорируем запроÑÑ‹ туннелей: выÑÐ¾ÐºÐ°Ñ Ð½Ð°Ð³Ñ€ÑƒÐ·ÐºÐ°" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1076 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1078 msgid "Dropping tunnel requests: Queue time" msgstr "Игнорируем запроÑÑ‹ туннелей: Ñлишком большое Ð²Ñ€ÐµÐ¼Ñ Ð¿Ñ€ÐµÐ±Ñ‹Ð²Ð°Ð½Ð¸Ñ Ð² очереди" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:884 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:895 #, java-format msgid "New plugin version {0} is available" msgstr "ДоÑтупна Ð½Ð¾Ð²Ð°Ñ Ð²ÐµÑ€ÑÐ¸Ñ {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:964 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:975 #, java-format msgid "Update check failed for plugin {0}" msgstr "Ошибка при проверке Ð½Ð°Ð»Ð¸Ñ‡Ð¸Ñ Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ð¹ Ð´Ð»Ñ Ð¼Ð¾Ð´ÑƒÐ»Ñ {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:968 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:979 #, java-format msgid "No new version is available for plugin {0}" msgstr "Ð”Ð»Ñ Ð¼Ð¾Ð´ÑƒÐ»Ñ {0} нет обновлений" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:992 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1003 #, java-format msgid "{0}B transferred" msgstr "{0} байт загружено" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1051 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1062 #, java-format msgid "Install failed from {0}" msgstr "Ðе удалоÑÑŒ уÑтановить из {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1053 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1064 #: ../java/src/net/i2p/router/update/UpdateRunner.java:298 #, java-format msgid "Transfer failed from {0}" msgstr "Ðе удалоÑÑŒ произвеÑти передачу файлов из {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1328 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1339 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1403 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 #: ../java/src/net/i2p/router/web/SummaryHelper.java:715 msgid "Update downloaded" msgstr "Обновление загружено" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 msgid "Restarting" msgstr "ПроизводитÑÑ Ð¿ÐµÑ€ÐµÐ·Ð°Ð¿ÑƒÑк" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 msgid "Update verified" msgstr "ПодлинноÑть Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿Ñ€Ð¾Ð²ÐµÑ€ÐµÐ½Ð°" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1381 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:189 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:306 #, java-format msgid "from {0}" msgstr "из {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1396 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1407 #, java-format msgid "Unsigned update file from {0} is corrupt" msgstr "Обнаружено повреждение в неподпиÑанном обновлении, загруженном из {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1425 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1436 #, java-format msgid "Failed copy to {0}" msgstr "Ðе удалоÑÑŒ Ñкопировать в {0}" -#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:47 +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:49 #: ../java/src/net/i2p/router/update/DevSU3UpdateRunner.java:40 #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:55 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:111 -#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:62 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:64 #: ../java/src/net/i2p/router/update/UnsignedUpdateRunner.java:41 #: ../java/src/net/i2p/router/update/UpdateRunner.java:155 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:573 @@ -1018,6 +1023,13 @@ msgstr "Ðе удалоÑÑŒ Ñкопировать в {0}" msgid "HTTP client proxy tunnel must be running" msgstr "КлиентÑкий прокÑи туннель должен быть запущен" +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:83 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:242 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:88 +#, java-format +msgid "Requires Java version {0} but installed Java version is {1}" +msgstr "ТребуетÑÑ Java верÑии {0} но уÑтановлена Java верÑии {1}" + #. set status before thread to ensure UI feedback #: ../java/src/net/i2p/router/update/DevSU3UpdateHandler.java:91 #: ../java/src/net/i2p/router/update/PluginUpdateHandler.java:82 @@ -1027,24 +1039,19 @@ msgstr "КлиентÑкий прокÑи туннель должен быть msgid "Updating" msgstr "ЗагружаетÑÑ Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ðµ" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:209 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:218 msgid "In-network updates disabled. Check package manager." msgstr "ВнутриÑетевые Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ð¾Ñ‚ÐºÐ»ÑŽÑ‡ÐµÐ½Ñ‹. Проверьте менеджер пакетов." -#: ../java/src/net/i2p/router/update/NewsFetcher.java:215 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:224 msgid "No write permission for I2P install directory." msgstr "ОтÑутÑтвует разрешение на запиÑÑŒ в директорию уÑтановки I2P." -#: ../java/src/net/i2p/router/update/NewsFetcher.java:223 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:232 #, java-format msgid "You must first update to version {0}" msgstr "Сначала вы должны обновить до верÑии {0}" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:233 -#, java-format -msgid "Requires Java version {0} but installed Java version is {1}" -msgstr "ТребуетÑÑ Java верÑии {0} но уÑтановлена Java верÑии {1}" - #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:62 #, java-format msgid "Checking for update of plugin {0}" @@ -1248,8 +1255,10 @@ msgid "unban now" msgstr "разблокировать ÑейчаÑ" #: ../java/src/net/i2p/router/web/CSSHelper.java:149 -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../java/strings/Strings.java:29 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:217 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:221 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:219 @@ -1319,6 +1328,8 @@ msgstr "разблокировать ÑейчаÑ" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:217 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:219 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:224 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:228 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:230 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:222 @@ -1344,6 +1355,16 @@ msgstr "разблокировать ÑейчаÑ" msgid "I2P Router Console" msgstr "КонÑоль маршрутизатора I2P" +#: ../java/src/net/i2p/router/web/CertHelper.java:25 +msgid "Local SSL Certificates" +msgstr "Локальные SSL Ñертификаты" + +#: ../java/src/net/i2p/router/web/CertHelper.java:46 +#: ../java/src/net/i2p/router/web/CertHelper.java:51 +#: ../java/strings/Strings.java:63 +msgid "I2PTunnel" +msgstr "Менеджер туннелей" + #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:62 msgid "Error updating the configuration - please see the error logs" msgstr "Ошибка Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ ÐºÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ð¸ — Ñмотрите журналы ошибок" @@ -1358,7 +1379,8 @@ msgstr "ÐšÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ñ ÑƒÑпешно Ñохранена" #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:98 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:622 #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:391 -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:151 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:109 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:160 msgid "" "Error saving the configuration (applied but not saved) - please see the " "error logs" @@ -1563,7 +1585,7 @@ msgid "Add Client" msgstr "Добавить клиент" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:116 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:503 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:517 #: ../java/src/net/i2p/router/web/SummaryHelper.java:452 msgid "Client" msgstr "КлиентÑкие" @@ -1595,9 +1617,9 @@ msgid "Plugin" msgstr "Модуль" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:248 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:304 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 msgid "Version" msgstr "ВерÑиÑ" @@ -1618,9 +1640,9 @@ msgid "License" msgstr "ЛицензиÑ" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:294 -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/HomeHelper.java:171 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:157 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/HomeHelper.java:178 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:164 msgid "Website" msgstr "Веб-Ñайт" @@ -1655,7 +1677,7 @@ msgstr "Удалить" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:21 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigUIHandler.java:19 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:970 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:996 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:496 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:516 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:532 @@ -1665,7 +1687,7 @@ msgstr "Удалить выбранные" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:23 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1015 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:494 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:502 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:514 @@ -1761,11 +1783,11 @@ msgstr "не найден в ÑвÑзке ключей" msgid "Invalid destination" msgstr "Ðеверный Ð°Ð´Ñ€ÐµÑ Ð½Ð°Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:82 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:84 msgid "Log overrides updated" msgstr "ÐŸÐµÑ€ÐµÐ¾Ð¿Ñ€ÐµÐ´ÐµÐ»ÐµÐ½Ð¸Ñ Ð¶ÑƒÑ€Ð½Ð°Ð»Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ñ‹" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:163 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:165 msgid "Log configuration saved" msgstr "ÐšÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ñ Ð¶ÑƒÑ€Ð½Ð°Ð»Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ñохранена" @@ -1813,8 +1835,8 @@ msgstr "WARN" #: ../java/src/net/i2p/router/web/ConfigLoggingHelper.java:85 #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:170 -#: ../java/src/net/i2p/router/web/HomeHelper.java:208 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:904 +#: ../java/src/net/i2p/router/web/HomeHelper.java:215 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 msgid "Remove" msgstr "Удалить" @@ -1833,11 +1855,12 @@ msgid "Home Page" msgstr "ДомашнÑÑ Ñтраница" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:328 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:335 msgid "Network" msgstr "Сеть" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:320 @@ -1871,6 +1894,7 @@ msgstr "Сеть" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:292 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:322 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:297 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:292 @@ -1889,8 +1913,8 @@ msgid "UI" msgstr "ИнтерфейÑ" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:179 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:486 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:186 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 #: ../java/strings/Strings.java:73 msgid "Tunnels" msgstr "Туннели" @@ -1909,15 +1933,15 @@ msgid "Logging" msgstr "Журналирование" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:185 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:372 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:192 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:386 #: ../java/strings/Strings.java:68 msgid "Peers" msgstr "Узлы" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:497 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:230 msgid "Stats" msgstr "СтатиÑтика" @@ -1933,7 +1957,7 @@ msgstr "РаÑширенные" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:491 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:479 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:641 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:593 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:560 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:511 msgid "Save changes" @@ -2114,7 +2138,7 @@ msgid "Unsupported" msgstr "Ðе поддерживаетÑÑ" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:24 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 msgid "Save changes and reseed now" msgstr "Сохранить Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¸ произвеÑти начальную загрузку" @@ -2164,7 +2188,16 @@ msgstr[1] "ÐÐ°Ñ‡Ð°Ð»ÑŒÐ½Ð°Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ° уÑпешно выполнена msgstr[2] "ÐÐ°Ñ‡Ð°Ð»ÑŒÐ½Ð°Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ° уÑпешно выполнена, загружены {0} маршрутизаторов из файла" msgstr[3] "ÐÐ°Ñ‡Ð°Ð»ÑŒÐ½Ð°Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ° уÑпешно выполнена, загружены {0} маршрутизаторов из файла" -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:149 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:99 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +msgid "Reset URL list" +msgstr "ОчиÑтить ÑпиÑок URL" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:107 +msgid "URL list reset successfully" +msgstr "СпиÑок URL очищен уÑпешно" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:158 msgid "Configuration saved successfully." msgstr "ÐšÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ñ ÑƒÑпешно Ñохранена." @@ -2670,8 +2703,8 @@ msgid "User Name" msgstr "Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:183 -#: ../java/src/net/i2p/router/web/HomeHelper.java:235 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:972 +#: ../java/src/net/i2p/router/web/HomeHelper.java:242 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:998 msgid "Add" msgstr "Добавить" @@ -2902,13 +2935,13 @@ msgstr "Событие" msgid "Details" msgstr "Детали" -#: ../java/src/net/i2p/router/web/FormHandler.java:251 +#: ../java/src/net/i2p/router/web/FormHandler.java:253 msgid "" "Invalid form submission, probably because you used the 'back' or 'reload' " "button on your browser. Please resubmit." msgstr "Ðеверные данные формы, Ñкорее вÑего Ñто произошло из-за того, что Ð’Ñ‹ нажимали кнопку \"Ðазад\" или \"Обновить\" в браузере. ПожалуйÑта, заполните форму заново." -#: ../java/src/net/i2p/router/web/FormHandler.java:253 +#: ../java/src/net/i2p/router/web/FormHandler.java:255 msgid "" "If the problem persists, verify that you have cookies enabled in your " "browser." @@ -3039,156 +3072,169 @@ msgstr "Сохранить наÑтройки и перериÑовать гра msgid "Graph settings saved" msgstr "ÐаÑтройки графиков Ñохранены" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:229 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:236 msgid "Addressbook" msgstr "ÐдреÑÐ½Ð°Ñ ÐºÐ½Ð¸Ð³Ð°" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:227 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:234 msgid "Manage your I2P hosts file here (I2P domain name resolution)" msgstr "Управление файлами hosts (единÑтвенный механизм, иÑпользуемый I2P Ð´Ð»Ñ Ñ€Ð°Ð·Ñ€ÐµÑˆÐµÐ½Ð¸Ñ Ð´Ð¾Ð¼ÐµÐ½Ð½Ñ‹Ñ… имен)" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 msgid "Configure Bandwidth" msgstr "ÐаÑтроить Ð¾Ð³Ñ€Ð°Ð½Ð¸Ñ‡ÐµÐ½Ð¸Ñ ÑкороÑти" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:330 msgid "I2P Bandwidth Configuration" msgstr "ÐаÑтройка полоÑÑ‹ пропуÑÐºÐ°Ð½Ð¸Ñ Ð´Ð»Ñ I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Configure Language" msgstr "ÐаÑтройка Ñзыка" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Console Language Selection" msgstr "Выбор Ñзыка конÑоли маршрутизатора" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 msgid "Customize Home Page" msgstr "ÐаÑтроить домашнюю Ñтраницу" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:346 msgid "I2P Home Page Configuration" msgstr "ÐšÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ñ Ð´Ð¾Ð¼Ð°ÑˆÐ½ÐµÐ¹ Ñтраницы маршрутизатора I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:139 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:146 msgid "Anonymous webmail client" msgstr "Ðнонимный почтовый клиент Ñ Ð²ÐµÐ±-интерфейÑом" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:141 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:148 msgid "Email" msgstr "Ðл. почта" -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:251 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 msgid "I2P Router Help" msgstr "Справка маршрутизатора I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:161 msgid "Router Console" msgstr "КонÑоль маршрутизатора I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:145 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:152 msgid "Built-in anonymous BitTorrent Client" msgstr "Ð’Ñтроенный анонимный BitTorrent-клиент" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:147 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:154 msgid "Torrents" msgstr "Торренты" -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:155 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:162 msgid "Local web server" msgstr "Локальный веб-Ñервер" -#: ../java/src/net/i2p/router/web/HomeHelper.java:41 +#: ../java/src/net/i2p/router/web/HomeHelper.java:43 msgid "The Anoncoin project" msgstr "Проект Anoncoin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug Reports" msgstr "Ð¡Ð¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¾Ð± ошибках" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug tracker" msgstr "Багтрекер" #. "colombo-bt.i2p" + S + _x("The Italian Bittorrent Resource") + S + "http #. ://colombo-bt.i2p/" + S + I + "colomboicon.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Dev Forum" msgstr "Форум разработчиков" -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Development forum" msgstr "Форум разработки" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Bittorrent tracker" msgstr "Торрент-трекер" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 msgid "diftracker" msgstr "diftracker" -#: ../java/src/net/i2p/router/web/HomeHelper.java:46 +#: ../java/src/net/i2p/router/web/HomeHelper.java:48 msgid "I2P Applications" msgstr "ÐŸÑ€Ð¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð´Ð»Ñ I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +msgid "Anonymous cryptocurrency exchange" +msgstr "ÐÐ½Ð¾Ð½Ð¸Ð¼Ð½Ð°Ñ Ð±Ð¸Ñ€Ð¶Ð° обмена криптовалют" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "FAQ" msgstr "FAQ" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "Frequently Asked Questions" msgstr "ЧаÑто задаваемые вопроÑÑ‹" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Community forum" msgstr "Форум ÑообщеÑтва" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Forum" msgstr "Форум" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "" "A public anonymous Git hosting site - supports pulling via Git and HTTP and " "pushing via SSH" msgstr "Публичный анонимный Git-хоÑтинг — поддерживает получение через Git и HTTP и публикацию через SSH" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "Anonymous Git Hosting" msgstr "Ðнонимный Git-хоÑтинг" -#: ../java/src/net/i2p/router/web/HomeHelper.java:50 +#: ../java/src/net/i2p/router/web/HomeHelper.java:53 msgid "HiddenGate" msgstr "HiddenGate" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "Anonymous wiki - share the knowledge" +msgstr "ÐÐ½Ð¾Ð½Ð¸Ð¼Ð½Ð°Ñ Wiki - делитеÑÑŒ знаниÑми" + +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "I2P Wiki" +msgstr "I2P Вики" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Microblog" msgstr "Микроблог" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Your premier microblogging service on I2P" msgstr "Ваша Ð¿ÐµÑ€Ð²Ð°Ñ Ñлужба микроблогов в I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 msgid "Javadocs" msgstr "Ð”Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ñ Java" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical documentation" msgstr "ТехничеÑÐºÐ°Ñ Ð´Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ñ" @@ -3196,91 +3242,98 @@ msgstr "ТехничеÑÐºÐ°Ñ Ð´Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ñ" #. "http://jisko.i2p/" + S + I + "jisko_console_icon.png" + S + #. _x("Key Server") + S + _x("OpenPGP Keyserver") + S + "http://keys.i2p/" + S #. + I + "education.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +#: ../java/src/net/i2p/router/web/HomeHelper.java:60 msgid "Debian and Tahoe-LAFS repositories" msgstr "Репозитории Debian и Tahoe-LAFS" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free Web Hosting" msgstr "БеÑплатный WEB хоÑтинг " -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free eepsite hosting with PHP and MySQL" msgstr "БеÑплатный eep-Ñайт хоÑтинг Ñ PHP и MySQL" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "I2P Pastebin" msgstr "I2P Pastebin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "Pastebin" msgstr "Pastebin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:58 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 msgid "I2P News" msgstr "ÐовоÑти I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +msgid "Planet I2P" +msgstr "Планета I2P" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Add-on directory" msgstr "Каталог модулей" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Plugins" msgstr "Модули" -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Postman's Tracker" msgstr "Торрент-трекер Postman'а" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "I2P home page" msgstr "ДомашнÑÑ Ñтраница I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "Project Website" msgstr "Веб-Ñайт проекта" +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:68 +msgid "Russian News Feed" +msgstr "РуÑÑÐºÐ°Ñ Ñлужба раÑÑылки новоÑтей" + #. "Salt" + S + "salt.i2p" + S + "http://salt.i2p/" + S + I + #. "salt_console.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +#: ../java/src/net/i2p/router/web/HomeHelper.java:70 msgid "I2P Network Statistics" msgstr "Ð¡ÐµÑ‚ÐµÐ²Ð°Ñ ÑтатиÑтика I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical Docs" msgstr "ТехничеÑÐºÐ°Ñ Ð´Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ñ" -#: ../java/src/net/i2p/router/web/HomeHelper.java:65 +#: ../java/src/net/i2p/router/web/HomeHelper.java:72 msgid "Trac Wiki" msgstr "Trac Wiki" -#: ../java/src/net/i2p/router/web/HomeHelper.java:66 -msgid "Ugha's Wiki" -msgstr "Ugha's Wiki" - -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Seedless and the Robert BitTorrent applications" msgstr "BitTorrent-Ð¿Ñ€Ð¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Seedless и Robert" -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#. _x("Ugha's Wiki") + S + S + "http://ugha.i2p/" + S + I + +#. "billiard_marker.png" + S + +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Sponge's main site" msgstr "ОÑновной Ñайт sponge'а" -#: ../java/src/net/i2p/router/web/HomeHelper.java:108 +#: ../java/src/net/i2p/router/web/HomeHelper.java:115 msgid "The HTTP proxy is not up" msgstr "HTTP-прокÑи не запущен" -#: ../java/src/net/i2p/router/web/HomeHelper.java:110 +#: ../java/src/net/i2p/router/web/HomeHelper.java:117 #, java-format msgid "Your browser is not properly configured to use the HTTP proxy at {0}" msgstr "Ваш браузер не наÑтроен должным образом Ð´Ð»Ñ Ð¸ÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ HTTP-прокÑи {0}" -#: ../java/src/net/i2p/router/web/HomeHelper.java:210 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:906 +#: ../java/src/net/i2p/router/web/HomeHelper.java:217 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:932 msgid "Name" msgstr "Ðазвание" -#: ../java/src/net/i2p/router/web/HomeHelper.java:212 +#: ../java/src/net/i2p/router/web/HomeHelper.java:219 msgid "URL" msgstr "URL" @@ -3408,210 +3461,219 @@ msgstr "Ð’Ñе маршрутизаторы Ñ Ð¿Ð¾Ð»Ð½Ð¾Ð¹ ÑтатиÑтико msgid "LeaseSets" msgstr "СпиÑок LeaseSet" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:105 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:106 #: ../java/strings/Strings.java:69 msgid "Router" msgstr "Маршрутизатор" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:112 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:113 msgid "not found in network database" msgstr "не найден в Ñетевой базе данных" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:156 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 msgid "LeaseSet" msgstr "LeaseSet" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:158 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:163 msgid "Local" msgstr "локальный" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:160 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:165 msgid "Unpublished" msgstr "неопубликованный" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:176 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:166 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:181 msgid "Destination" msgstr "Ð°Ð´Ñ€ÐµÑ Ð½Ð°Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:173 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:185 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:178 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 msgid "Add to local addressbook" msgstr "Добавить в локальную адреÑную книгу" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:217 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:195 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:222 #, java-format msgid "Expires in {0}" msgstr "ИÑтекает через {0}" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:192 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:219 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:197 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:224 #, java-format msgid "Expired {0} ago" msgstr "ИÑтек {0} назад" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Gateway" msgstr "Шлюз" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 msgid "Lease" msgstr "Lease" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:213 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:218 msgid "Tunnel" msgstr "Туннель" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:280 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:286 msgid "Not initialized" msgstr "База не инициализирована" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:330 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:342 msgid "Network Database Router Statistics" msgstr "СтатиÑтика маршрутизаторов" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Count" msgstr "КоличеÑтво" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 msgid "Transports" msgstr "ТранÑпортный протокол" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Country" msgstr "Страна" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:429 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:453 msgid "Our info" msgstr "Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾ наÑ" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:431 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:455 msgid "Peer info for" msgstr "Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾Ð± узле" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:433 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:457 msgid "Full entry" msgstr "ÐŸÐ¾Ð»Ð½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 #: ../java/src/net/i2p/router/web/SummaryHelper.java:152 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:726 msgid "Hidden" msgstr "Скрытый" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 msgid "Updated" msgstr "Обновленный" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:441 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:444 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:465 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:468 #, java-format msgid "{0} ago" msgstr "{0} назад" #. shouldnt happen -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:443 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:447 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:467 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:471 msgid "Published" msgstr "Опубликовано" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:449 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 msgid "Signing Key" msgstr "ПодпиÑывающий ключ" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:451 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:475 msgid "Address(es)" msgstr "ÐдреÑ(а)" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:463 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:487 msgid "cost" msgstr "cost" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "Hidden or starting up" msgstr "Ð’ Ñкрытом режиме или недавно запущен" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU" msgstr "SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU with introducers" msgstr "SSU через поÑредников" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP" msgstr "NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU" msgstr "NTCP и SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU with introducers" msgstr "NTCP и SSU через поÑредников" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 Only SSU, introducers" msgstr "Только IPv6 SSU, предÑтавители" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU" msgstr "IPv6 SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU, introducers" msgstr "IPv6 SSU, предÑтавители" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP" msgstr "IPv6 NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU" msgstr "IPv6 NTCP, SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU, introducers" msgstr "IPv6 NTCP, SSU, предÑтавители" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 Only NTCP, SSU, introducers" msgstr "Только IPv6 NTCP, SSU, предÑтавители" -#: ../java/src/net/i2p/router/web/NewsHelper.java:295 +#: ../java/src/net/i2p/router/web/NewsFeedHelper.java:80 +#, java-format +msgid "by {0}" +msgstr "к {0}" + +#: ../java/src/net/i2p/router/web/NewsHelper.java:292 #, java-format msgid "News last updated {0} ago." msgstr "ÐовоÑти поÑледний раз обновлÑлиÑÑŒ {0} назад." -#: ../java/src/net/i2p/router/web/NewsHelper.java:301 +#: ../java/src/net/i2p/router/web/NewsHelper.java:298 #, java-format msgid "News last checked {0} ago." msgstr "ÐовоÑти поÑледний раз проверÑлиÑÑŒ {0} назад." -#: ../java/src/net/i2p/router/web/NewsHelper.java:310 +#: ../java/src/net/i2p/router/web/NewsHelper.java:307 msgid "Hide news" msgstr "Скрыть новоÑти" -#: ../java/src/net/i2p/router/web/NewsHelper.java:313 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:647 +#: ../java/src/net/i2p/router/web/NewsHelper.java:310 msgid "Show news" msgstr "Показать новоÑти" +#: ../java/src/net/i2p/router/web/NewsHelper.java:314 +msgid "Show all news" +msgstr "Показать вÑе новоÑти" + #: ../java/src/net/i2p/router/web/PluginStarter.java:140 msgid "Checking for plugin updates" msgstr "ПроверÑетÑÑ Ð½Ð°Ð»Ð¸Ñ‡Ð¸Ðµ Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ð¼Ð¾Ð´ÑƒÐ»Ñ" #: ../java/src/net/i2p/router/web/PluginStarter.java:155 +#: ../java/src/net/i2p/router/web/PluginStarter.java:161 msgid "Plugin update check failed" msgstr "Ðе удалоÑÑŒ проверить наличие обновлений модулÑ" -#: ../java/src/net/i2p/router/web/PluginStarter.java:193 +#: ../java/src/net/i2p/router/web/PluginStarter.java:199 #, java-format msgid "1 plugin updated" msgid_plural "{0} plugins updated" @@ -3620,7 +3682,7 @@ msgstr[1] "{0} Ð¼Ð¾Ð´ÑƒÐ»Ñ Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¾" msgstr[2] "{0} модулей обновлено" msgstr[3] "{0} модулей обновлено" -#: ../java/src/net/i2p/router/web/PluginStarter.java:195 +#: ../java/src/net/i2p/router/web/PluginStarter.java:201 msgid "Plugin update check complete" msgstr "Проверка Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ð¼Ð¾Ð´ÑƒÐ»Ñ Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð°" @@ -3692,7 +3754,7 @@ msgid "Failing" msgstr "СбоÑщие" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:135 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:411 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:425 msgid "Integrated" msgstr "интегрированные" @@ -3965,277 +4027,287 @@ msgstr "График количеÑтва Ñобытий" msgid "Lifetime average value" msgstr "Среднее значение за Ð²Ñ€ÐµÐ¼Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ñ‹" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:121 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:128 msgid "I2P Router Help & FAQ" msgstr "Справка и FAQ маршрутизатора I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:123 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:130 msgid "Help & FAQ" msgstr "Справка и FAQ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:131 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:138 msgid "" "Configure startup of clients and webapps (services); manually start dormant " "services" msgstr "ÐаÑтройка автозапуÑка клиентов и веб-приложений (Ñлужб), ручной запуÑк неактивных приложений" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:133 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:140 msgid "I2P Services" msgstr "Службы I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:169 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:176 msgid "Configure I2P Router" msgstr "ÐаÑтройка маршрутизатора I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:171 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:178 msgid "I2P Internals" msgstr "ÐаÑтройки I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:177 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:484 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:184 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:498 msgid "View existing tunnels and tunnel build status" msgstr "Отобразить ÑущеÑтвующие туннели и ÑоÑтоÑние ÑтроÑщихÑÑ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:183 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:370 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:190 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:384 msgid "Show all current peer connections" msgstr "ПроÑмотр ÑпиÑка текущих Ñоединений Ñ ÑƒÐ·Ð»Ð°Ð¼Ð¸" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:189 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:196 msgid "Show recent peer performance profiles" msgstr "ПроÑмотр недавних профилей производительноÑти узлов" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:191 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:198 msgid "Profiles" msgstr "Профили" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:195 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:202 msgid "Show list of all known I2P routers" msgstr "Показать ÑпиÑок вÑех извеÑтных I2P-маршрутизаторов" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:197 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:204 msgid "NetDB" msgstr "Ð¡ÐµÑ‚ÐµÐ²Ð°Ñ Ð‘Ð”" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:201 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:208 msgid "Health Report" msgstr "Отчет о ÑоÑтоÑнии маршрутизатора" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:203 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:210 msgid "Logs" msgstr "Журналы" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:214 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 msgid "Graph router performance" msgstr "График производительноÑти маршрутизатора" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:216 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 msgid "Graphs" msgstr "Графики" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:228 msgid "Textual router performance statistics" msgstr "СтатиÑтика производительноÑти маршрутизатора в текÑтовом виде" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:233 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:240 #: ../java/src/net/i2p/router/web/SummaryHelper.java:438 msgid "Local Tunnels" msgstr "Локальные туннели" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:235 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:242 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:164 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:337 msgid "Hidden Services Manager" msgstr "Управление Ñкрытыми ÑервиÑами" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:253 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:260 msgid "General" msgstr "ÐžÐ±Ñ‰Ð°Ñ Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 msgid "" "Your Local Identity is your unique I2P router identity, similar to an ip " "address but tailored to I2P. " msgstr "Ваш локальный идентификатор — Ñто уникальный идентификатор Вашего I2P-маршрутизатора, как IP-адреÑ, но применительно к I2P." -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:259 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:266 msgid "Never disclose this to anyone, as it can reveal your real world ip." msgstr "Ðикогда не Ñообщайте его кому-либо, Ñто может раÑкрыть Ваш IP-адреÑ." -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:261 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:268 msgid "Local Identity" msgstr "Локальный идентификатор" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:272 msgid "Your unique I2P router identity is" msgstr "Уникальный идентификатор Вашего I2P-маршрутизатора:" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:269 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:276 msgid "never reveal it to anyone" msgstr "никому его не показывайте" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:271 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 msgid "show" msgstr "показать" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:275 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:301 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:282 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:308 msgid "The version of the I2P software we are running" msgstr "ВерÑÐ¸Ñ Ð·Ð°Ð¿ÑƒÑ‰ÐµÐ½Ð½Ð¾Ð³Ð¾ ПО I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:292 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:318 msgid "How long we've been running for this session" msgstr "Ð’Ñ€ÐµÐ¼Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ñ‹ маршрутизатора Ñ Ð¿Ð¾Ñледнего запуÑка" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:326 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:333 msgid "" "Help with configuring your firewall and router for optimal I2P performance" msgstr "Помощь в наÑтройке брандмауÑра и маршрутизатора Ð´Ð»Ñ Ð¾Ð±ÐµÑÐ¿ÐµÑ‡ÐµÐ½Ð¸Ñ Ð¾Ð¿Ñ‚Ð¸Ð¼Ð°Ð»ÑŒÐ½Ð¾Ð¹ производительноÑти I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:337 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:344 msgid "See more information on the wiki" msgstr "Подробнее в wiki" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:339 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:346 msgid "Warning: ECDSA is not available. Update your Java or OS" msgstr "Внимание: ECDSA недоÑтупно. Обновите Java или ОС." #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:351 +#, java-format +msgid "Warning: Java version {0} is no longer supported by I2P." +msgstr "Предупреждение: Java верÑÐ¸Ñ {0} больше не поддерживаетÑÑ I2P." + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#, java-format +msgid "Update Java to version {0} or higher to receive I2P updates." +msgstr "Обновите Java до верÑии {0} или выше, чтобы получить Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ I2P." + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:365 msgid "Configure I2P Updates" msgstr "ÐаÑтройка Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:367 msgid "I2P Update" msgstr "Обновление I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:378 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:392 msgid "Peers we've been talking to in the last few minutes/last hour" msgstr "Узлы, Ñ ÐºÐ¾Ñ‚Ð¾Ñ€Ñ‹Ð¼Ð¸ была ÑвÑзь за поÑледние минуты/чаÑÑ‹" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:381 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:395 msgid "Active" msgstr "Ðктивные" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:390 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:404 msgid "The number of peers available for building client tunnels" msgstr "ЧиÑло узлов, доÑтупных Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ ÐºÐ»Ð¸ÐµÐ½Ñ‚Ñких туннелей" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:393 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:407 msgid "Fast" msgstr "БыÑтрые" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:399 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:413 msgid "The number of peers available for building exploratory tunnels" msgstr "ЧиÑло узлов, доÑтупных Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð·Ð¾Ð½Ð´Ð¸Ñ€ÑƒÑŽÑ‰Ð¸Ñ… туннелей" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:402 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:416 msgid "High capacity" msgstr "Ð’Ñ‹Ñокоемкие" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:408 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:422 msgid "The number of peers available for network database inquiries" msgstr "ЧиÑло узлов, доÑтупных Ð´Ð»Ñ Ð·Ð°Ð¿Ñ€Ð¾Ñов к Ñетевой БД" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:417 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:431 msgid "The total number of peers in our network database" msgstr "Общее чиÑло узлов в нашей Ñетевой БД" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:420 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:434 msgid "Known" msgstr "ИзвеÑтные" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:440 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:454 msgid "Configure router bandwidth allocation" msgstr "ÐаÑтройка ограничений ÑкороÑти" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:442 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:456 msgid "Bandwidth in/out" msgstr "Трафик (вх./иÑÑ….)" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:462 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:476 msgid "Total" msgstr "Ð’Ñего" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:469 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:483 msgid "Used" msgstr "Объем" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:491 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:505 msgid "" "Used for building and testing tunnels, and communicating with floodfill " "peers" msgstr "ИÑпользуютÑÑ Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¸ теÑÑ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ñ‚ÑƒÐ½Ð½ÐµÐ»ÐµÐ¹ и ÑÐ¾ÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ Ñ floodfill-узлами" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:494 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:508 msgid "Exploratory" msgstr "Зондирующие" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:514 msgid "Tunnels we are using to provide or access services on the network" msgstr "Туннели, иÑпользуемые Ð´Ð»Ñ Ð´Ð¾Ñтупа к Ñлужбам Ñети или их публикации" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:509 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:523 msgid "" "Tunnels we are participating in, directly contributing bandwidth to the " "network" -msgstr "" +msgstr "Туннели, в которых мы задейÑтвованы, напрÑмую вноÑÑÑ‚ вклад в пропуÑкную ÑпоÑобнÑть Ñети" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:512 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:526 msgid "Participating" msgstr "Транзитные" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:518 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:532 msgid "" "The ratio of tunnel hops we provide to tunnel hops we use - a value greater " "than 1.00 indicates a positive contribution to the network" msgstr "Ð”Ð¾Ð»Ñ Ñ‚Ñ€Ð°Ð½Ð·Ð¸Ñ‚Ð° отображает Ñоотношение предоÑтавлÑемой нами пропуÑкной ÑпоÑобноÑти Ð´Ð»Ñ Ñ‚Ñ€Ð°Ð½Ð·Ð¸Ñ‚Ð½Ñ‹Ñ… туннелей по отношению к потреблÑемой нами ÑкороÑти. Соотношение 1.00 означает положительный вклад в Ñеть" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:521 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:535 msgid "Share ratio" msgstr "Ð”Ð¾Ð»Ñ Ñ‚Ñ€Ð°Ð½Ð·Ð¸Ñ‚Ð°" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:534 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:548 msgid "What's in the router's job queue?" msgstr "ПроÑмотр очереди заданий маршрутизатора" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:536 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 msgid "Congestion" msgstr "ЗанÑтоÑть" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:541 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:555 msgid "Indicates router performance" msgstr "Отражает производительноÑть маршрутизатора" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:544 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:558 msgid "Job lag" msgstr "Задержка задач" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:564 msgid "Indicates how quickly outbound messages to other I2P routers are sent" msgstr "Показывает, как быÑтро иÑходÑщие ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¾Ñ‚Ð¿Ñ€Ð°Ð²Ð»ÑÑŽÑ‚ÑÑ Ð´Ñ€ÑƒÐ³Ð¸Ð¼ I2P-маршрутизаторам" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:553 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:567 msgid "Message delay" msgstr "Задежка Ñообщений" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:560 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:574 msgid "Round trip time for a tunnel test" msgstr "ТеÑÑ‚ времени Ð¿Ñ€Ð¾Ñ…Ð¾Ð¶Ð´ÐµÐ½Ð¸Ñ Ñ‚ÑƒÐ½Ð½ÐµÐ»Ñ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:563 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:577 msgid "Tunnel lag" msgstr "Задержка туннелей" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:570 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:584 msgid "Queued requests from other routers to participate in tunnels" msgstr "Очередь запроÑов от других маршрутизаторов, принимающих учаÑтие в туннелÑÑ…" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:573 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:587 msgid "Backlog" msgstr "Очередь" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:608 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:623 msgid "News & Updates" msgstr "ÐовоÑти и обновлениÑ" @@ -4348,17 +4420,21 @@ msgid "Click Shutdown and restart to install" msgstr "ОÑтановите и Ñнова запуÑтите I2P-маршрутизатор Ð´Ð»Ñ ÑƒÑтановки" #: ../java/src/net/i2p/router/web/SummaryHelper.java:720 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:735 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:737 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:749 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:761 #, java-format msgid "Version {0}" msgstr "ВерÑÐ¸Ñ {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:734 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:736 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:748 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:760 msgid "Update available" msgstr "ДоÑтупно обновление" #. Note to translators: parameter is a version, e.g. "0.8.4" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:758 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:784 #, java-format msgid "Download {0} Update" msgstr "Скачать обновление {0}" @@ -4367,7 +4443,7 @@ msgstr "Скачать обновление {0}" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:766 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:792 #, java-format msgid "Download Signed<br>Development Update<br>{0}" msgstr "Загрузка подпиÑанного<br>теÑтового обновлениÑ<br>{0}" @@ -4376,56 +4452,56 @@ msgstr "Загрузка подпиÑанного<br>теÑтового обно #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:774 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 #, java-format msgid "Download Unsigned<br>Update {0}" msgstr "Скачать неподпиÑанное<br>обновление {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:798 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:824 msgid "Help with firewall configuration" msgstr "Помощь в наÑтройке брандмауÑра" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:826 msgid "Check network connection and NAT/firewall" msgstr "Проверьте Ñетевое Ñоединение и наÑтройки NAT/брандмауÑра" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:819 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:845 msgid "Reseed" msgstr "Повторить начальную загрузку" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:908 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:934 msgid "Order" msgstr "ПорÑдок" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:925 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:951 msgid "Top" msgstr "Верх" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:956 msgid "Move to top" msgstr "ПеремеÑтить в начало" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:940 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:966 msgid "Move up" msgstr "ПеремеÑтить вверх" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:948 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:974 msgid "Down" msgstr "Вниз" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:953 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:979 msgid "Move down" msgstr "ПеремеÑтить вниз" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:958 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:984 msgid "Bottom" msgstr "Ðиз" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:963 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 msgid "Move to bottom" msgstr "ПеремеÑтить в конец" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:975 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1001 msgid "Select a section to add" msgstr "Выберите Ñекцию Ð´Ð»Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ" @@ -4472,100 +4548,100 @@ msgstr "КлиентÑкие туннели длÑ" msgid "dead" msgstr "мертв" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:70 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:69 msgid "Participating tunnels" msgstr "Транзитные туннели" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "Receive on" msgstr "ID принимающего туннелÑ" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Expiration" msgstr "ИÑтечение Ñрока работы" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Send on" msgstr "ID передающего туннелÑ" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Rate" msgstr "СкороÑть" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Role" msgstr "Роль" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Usage" msgstr "Трафик" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:111 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:113 msgid "grace period" msgstr "резервный период" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:121 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 msgid "Outbound Endpoint" msgstr "Ð’Ñ‹Ñ…Ð¾Ð´Ð½Ð°Ñ ÐºÐ¾Ð½ÐµÑ‡Ð½Ð°Ñ Ñ‚Ð¾Ñ‡ÐºÐ°" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 msgid "Inbound Gateway" msgstr "Входной шлюз" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:127 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:174 msgid "Participant" msgstr "УчаÑтник" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:130 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:133 #, java-format msgid "Limited display to the {0} tunnels with the highest usage" msgstr "Отображение ограничено до {0} туннелей Ñ Ð½Ð°Ð¸Ð±Ð¾Ð»ÑŒÑˆÐ¸Ð¼ иÑпользованием" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:131 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:135 msgid "Inactive participating tunnels" msgstr "Ðеактивных транзитных туннелей" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:132 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:224 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:138 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:232 msgid "Lifetime bandwidth usage" msgstr "Трафик за Ð²Ñ€ÐµÐ¼Ñ ÑущеÑтвованиÑ" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Expiry" msgstr "ИÑтечение Ñрока работы" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:165 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 msgid "Participants" msgstr "УчаÑтники" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:177 msgid "Endpoint" msgstr "ÐšÐ¾Ð½ÐµÑ‡Ð½Ð°Ñ Ñ‚Ð¾Ñ‡ÐºÐ°" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 #: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "Build in progress" msgstr "Ð’ процеÑÑе поÑтроениÑ" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 msgid "inbound" msgstr "входÑщий" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "outbound" msgstr "иÑходÑщий" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:223 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:231 msgid "No tunnels; waiting for the grace period to end." msgstr "Ðет туннелей. Ожидаем Ð¾ÐºÐ¾Ð½Ñ‡Ð°Ð½Ð¸Ñ Ñ€ÐµÐ·ÐµÑ€Ð²Ð½Ð¾Ð³Ð¾ периода." -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:225 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:233 msgid "in" msgstr "(входÑщий)" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:234 msgid "out" msgstr "(иÑходÑщий)" @@ -4632,7 +4708,7 @@ msgstr "Открывать конÑоль маршрутизатора в веб #: ../java/strings/Strings.java:37 msgid "shared clients (DSA)" -msgstr "" +msgstr "общие клиенты (DSA)" #: ../java/strings/Strings.java:38 msgid "IRC proxy" @@ -4702,10 +4778,6 @@ msgstr "Шифрование" msgid "i2cp" msgstr "I2CP" -#: ../java/strings/Strings.java:63 -msgid "I2PTunnel" -msgstr "Менеджер туннелей" - #: ../java/strings/Strings.java:64 msgid "InNetPool" msgstr "Сетевой пул" @@ -4752,10 +4824,12 @@ msgstr "key" msgid "port" msgstr "port" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 -msgid "configure bandwidth" -msgstr "наÑтройка полоÑÑ‹ пропуÑканиÑ" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:146 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:318 +msgid "Certificates" +msgstr "Сертификаты" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:153 @@ -4789,6 +4863,7 @@ msgstr "наÑтройка полоÑÑ‹ пропуÑканиÑ" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:149 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:155 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:154 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:149 @@ -4804,6 +4879,7 @@ msgstr "Маршрутизатор выключен" #. We have intl defined when this is included, but not when compiled #. standalone. +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:333 @@ -4836,6 +4912,7 @@ msgstr "Маршрутизатор выключен" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:305 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:310 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:305 @@ -4851,6 +4928,7 @@ msgid "Refresh (s)" msgstr "Ðвтообновление (Ñ)" #. ditto +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:337 @@ -4883,6 +4961,7 @@ msgstr "Ðвтообновление (Ñ)" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:309 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:339 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:314 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:309 @@ -4897,6 +4976,10 @@ msgstr "Ðвтообновление (Ñ)" msgid "Enable" msgstr "Включить" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 +msgid "configure bandwidth" +msgstr "наÑтройка полоÑÑ‹ пропуÑканиÑ" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:437 msgid "Bandwidth limiter" msgstr "Ограничение ÑкороÑти" @@ -4973,7 +5056,7 @@ msgstr "РаÑширенные Ñетевые наÑтройки" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:501 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:477 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:639 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:587 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:558 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:509 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:461 @@ -5002,11 +5085,11 @@ msgstr "УчаÑтие в качеÑтве Floodill-узла помогает Ñ #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:442 msgid "This router is currently a floodfill participant." -msgstr "" +msgstr "Ðтот маршрутизатор ÑÐµÐ¹Ñ‡Ð°Ñ ÑƒÑ‡Ð°Ñтвует в floodfill" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:446 msgid "This router is not currently a floodfill participant." -msgstr "" +msgstr "Ðтот маршрутизатор ÑÐµÐ¹Ñ‡Ð°Ñ Ð½Ðµ учаÑтвует в floodfill" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:457 msgid "Automatic" @@ -6006,51 +6089,51 @@ msgstr "ИÑпользовать только не-SSL" msgid "Reseed URLs" msgstr "URL начальной загрузки" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:541 msgid "Enable HTTP Proxy?" msgstr "Включить HTTP-прокÑи?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:543 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:545 msgid "HTTP Proxy Host" msgstr "Узел HTTP-прокÑи" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:547 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:549 msgid "HTTP Proxy Port" msgstr "Порт HTTP-прокÑи" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:551 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:553 msgid "Use HTTP Proxy Authorization?" msgstr "ИÑпользовать авторизацию на HTTP-прокÑи?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:555 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:557 msgid "HTTP Proxy Username" msgstr "Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ HTTP-прокÑи" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:559 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:561 msgid "HTTP Proxy Password" msgstr "Пароль HTTP-прокÑи" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:563 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:565 msgid "Enable HTTPS Proxy?" msgstr "Включить HTTPS-прокÑи?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:567 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:569 msgid "HTTPS Proxy Host" msgstr "Узел HTTPS-прокÑи" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:571 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:573 msgid "HTTPS Proxy Port" msgstr "Порт HTTPS-прокÑи" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:575 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:577 msgid "Use HTTPS Proxy Authorization?" msgstr "ИÑпользовать авторизацию на HTTPS-прокÑи?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:579 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:581 msgid "HTTPS Proxy Username" msgstr "Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ HTTPS-прокÑи" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:583 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:585 msgid "HTTPS Proxy Password" msgstr "Пароль HTTPS-прокÑи" @@ -6609,6 +6692,14 @@ msgstr "ÑÐµÑ‚ÐµÐ²Ð°Ñ Ð‘Ð”" msgid "I2P Network Database" msgstr "Ð¡ÐµÑ‚ÐµÐ²Ð°Ñ Ð‘Ð” I2P" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:148 +msgid "News" +msgstr "ÐовоÑти" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:344 +msgid "Latest News" +msgstr " ПоÑледние новоÑти" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:152 msgid "WebApp Not Found" msgstr "Веб-приложение не найдено" diff --git a/apps/routerconsole/locale/messages_sv.po b/apps/routerconsole/locale/messages_sv.po index e8bdf6f49a4f79c5c0a150ce88bb44954882688a..a965c364d3a669423f1c388e159602e912a499af 100644 --- a/apps/routerconsole/locale/messages_sv.po +++ b/apps/routerconsole/locale/messages_sv.po @@ -5,6 +5,7 @@ # # Translators: # 123hund123 <M8R-ra4r1r@mailinator.com>, 2011 +# Anders Nilsson <locally@devode.se>, 2015 # cacapo <handelsehorisont@gmail.com>, 2015 # Calle Rundgren <samaire@samaire.net>, 2013 # cacapo <handelsehorisont@gmail.com>, 2015 @@ -20,10 +21,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:05+0000\n" -"PO-Revision-Date: 2015-07-19 09:57+0000\n" -"Last-Translator: cacapo <handelsehorisont@gmail.com>\n" -"Language-Team: Swedish (Sweden) (http://www.transifex.com/projects/p/I2P/language/sv_SE/)\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-08 22:06+0000\n" +"Last-Translator: Anders Nilsson <locally@devode.se>\n" +"Language-Team: Swedish (Sweden) (http://www.transifex.com/otf/I2P/language/sv_SE/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -142,19 +143,22 @@ msgid "IPs Permanently Banned" msgstr "IP permanent blockerat" #: ../../../router/java/src/net/i2p/router/Blocklist.java:959 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "From" msgstr "FrÃ¥n" #: ../../../router/java/src/net/i2p/router/Blocklist.java:961 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "To" msgstr "Till" #: ../../../router/java/src/net/i2p/router/Blocklist.java:997 #: ../java/src/net/i2p/router/web/BanlistRenderer.java:48 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:652 +#: ../java/src/net/i2p/router/web/CertHelper.java:77 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:147 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:662 #: ../java/src/net/i2p/router/web/SummaryHelper.java:478 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:137 msgid "none" msgstr "ingen" @@ -292,47 +296,47 @@ msgstr "Avvisar tunnlar: Stänger ner" msgid "Rejecting tunnels" msgstr "Avvisar tunnlar" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:212 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:210 #, java-format msgid "Reseeding: got router info from file ({0} successful, {1} errors)." msgstr "Reseedar: fick info frÃ¥n fil({0} lyckades, {1} fel)." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:284 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:282 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:28 msgid "Reseeding" msgstr "Reseedar" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:307 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:305 #, java-format msgid "Reseed fetched only 1 router." msgid_plural "Reseed fetched only {0} routers." msgstr[0] "Reseed hämtad endast en router." msgstr[1] "Reseed hämtad endast {0} routrar." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:314 msgid "Reseed failed." msgstr "Reseed misslyckades." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:317 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:315 #, java-format msgid "See {0} for help." msgstr "Se {0} för hjälp" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:318 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 msgid "reseed configuration page" msgstr "sida för konfiguration av omseedning" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:566 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:697 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:564 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:695 msgid "Reseeding: fetching seed URL." -msgstr "Reseed: hämtar seed URL." +msgstr "Reseed: hämtar seed-URL." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:623 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:733 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:621 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:731 #, java-format msgid "" "Reseeding: fetching router info from seed URL ({0} successful, {1} errors)." -msgstr "Reseed: hämtar router info frÃ¥n seed URL ({0} lyckade, {1} fel)" +msgstr "Reseed: hämtar router-info frÃ¥n seed-URL ({0} lyckade, {1} fel)" #. NOTE TO TRANSLATORS - each of these phrases is a description for a #. statistic @@ -356,15 +360,15 @@ msgstr "LÃ¥gnivÃ¥ mottagningshastighet (byte/sek) " #: ../../../router/java/src/net/i2p/router/tasks/CoalesceStatsEvent.java:37 msgid "How many peers we are actively talking with" -msgstr "Hur mÃ¥nga peers vi aktivt talar med" +msgstr "Hur mÃ¥nga noder vi aktivt talar med" #: ../../../router/java/src/net/i2p/router/tasks/CoalesceStatsEvent.java:40 msgid "Known fast peers" -msgstr "Snabba kända peerer" +msgstr "Snabba kända noder" #: ../../../router/java/src/net/i2p/router/tasks/CoalesceStatsEvent.java:41 msgid "Known integrated (floodfill) peers" -msgstr "Kända integrerade (floodfill) peers" +msgstr "Kända integrerade (floodfill) noder" #: ../../../router/java/src/net/i2p/router/tasks/CoalesceStatsEvent.java:42 msgid "Size of tunnel acceptor backlog" @@ -393,12 +397,12 @@ msgid "Unreachable on any transport" msgstr "OnÃ¥bar pÃ¥ varje transport" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:674 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:566 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:577 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:604 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:622 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1348 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2469 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2474 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:92 msgid "Status" msgstr "Status" @@ -413,12 +417,12 @@ msgid "{0} is used for outbound connections only" msgstr "{0} används för utgÃ¥ende anslutningar enbart" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:711 -#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:283 +#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:295 msgid "UPnP is not enabled" msgstr "UPnP är inte aktiverat" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:720 -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:167 msgid "Help" msgstr "Hjälp" @@ -442,22 +446,22 @@ msgstr "Definitioner" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:726 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1352 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2473 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:24 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:33 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:35 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:87 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:200 msgid "Peer" -msgstr "Peer" +msgstr "Nod" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:726 msgid "The remote peer, identified by router hash" -msgstr "Fjärr peeren, identifierad med routerhash" +msgstr "Fjärrnoden, identifierad med routerhash" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:727 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1353 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Dir" msgstr "Mapp" @@ -484,14 +488,14 @@ msgstr "Tiden sedan ett paket har mottagits / sänts" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:735 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1355 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2479 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 msgid "Idle" msgstr "StillastÃ¥ende" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:736 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1356 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "In/Out" msgstr "In/Ut" @@ -505,20 +509,20 @@ msgstr "Tiden sedan denna anslutning etablerades" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:737 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1357 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:935 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2494 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:961 msgid "Up" msgstr "Uppe" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:738 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1358 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2491 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2496 msgid "Skew" msgstr "Tidsförvridning" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:738 msgid "The difference between the peer's clock and your own" -msgstr "Skillnaden mellan peerens klocka och din" +msgstr "Skillnaden mellan nodens klocka och din" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:739 msgid "" @@ -561,140 +565,140 @@ msgstr "Nuvarande maximala försändningsstorlek för paket / uppskattad maximal #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:748 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1359 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2508 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 msgid "TX" msgstr "TX" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:748 msgid "The total number of packets sent to the peer" -msgstr "Det totala antalet paket som skickats till denna peer" +msgstr "Det totala antalet paket som skickats till denna nod" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:749 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1360 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2510 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 msgid "RX" msgstr "RX" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:749 msgid "The total number of packets received from the peer" -msgstr "Det totala antalet paket som har mottagits frÃ¥n denna peer" +msgstr "Det totala antalet paket som har mottagits frÃ¥n denna nod" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:750 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2518 msgid "Dup TX" msgstr "DUP TX" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:750 msgid "The total number of packets retransmitted to the peer" -msgstr "Det totala antalet paket som Ã¥terutsänds till peer" +msgstr "Det totala antalet paket som Ã¥tersänts till noden" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:751 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2520 msgid "Dup RX" msgstr "DUP RX" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:751 msgid "The total number of duplicate packets received from the peer" -msgstr "Totalt antal dupplicerade paket mottagna frÃ¥n peeren" +msgstr "Totalt antal dublett-paket mottagna frÃ¥n noden" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:560 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:561 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 msgid "Service" msgstr "Service" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:564 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 msgid "WAN Common Interface Configuration" msgstr "Grundinställningar WAN inställningar" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:567 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:587 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:614 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:568 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:588 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:615 msgid "Type" msgstr "Typ" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:569 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:589 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:570 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:590 msgid "Upstream" msgstr "Uppström" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:571 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:591 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:572 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:592 msgid "Downstream" msgstr "Nerström" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:575 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 msgid "WAN PPP Connection" msgstr "WAN PPP anslutning" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:583 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:610 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:288 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:314 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:584 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:611 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:295 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:321 msgid "Uptime" msgstr "Upptid" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:593 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:616 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:594 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:617 msgid "External IP" msgstr "Extern IP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:597 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 msgid "Layer 3 Forwarding" msgstr "Lager 3 vidarebefordring" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:599 msgid "Default Connection Service" msgstr "Standard anslutningstjänst" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:602 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 msgid "WAN IP Connection" msgstr "WAN IP Anslutning" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:620 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 msgid "WAN Ethernet Link Configuration" msgstr "WAN Ethernet Link-konfiguration" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:641 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:642 msgid "Found Device" msgstr "Hittade enhet" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:643 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:644 msgid "Subdevice" msgstr "Subenhet " -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:664 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:665 msgid "UPnP Status" msgstr "UPnP Status" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:668 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:669 msgid "Disabled UPnP Devices" msgstr "Inaktiverade UPnP Enheter" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:682 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:683 msgid "" "UPnP has been disabled; Do you have more than one UPnP Internet Gateway " "Device on your LAN ?" msgstr "UPnP har deaktiverats. Har du mer än en UPnP Internet Gateway enhet i ditt LAN?" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:685 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:686 msgid "UPnP has not found any UPnP-aware, compatible device on your LAN." msgstr "UPnP har inte hittat nÃ¥gon UPnP-aware kompatibel enhet pÃ¥ ditt LAN." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:693 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:694 #, java-format msgid "The current external IP address reported by UPnP is {0}" msgstr "Den nuvarande externa IP-adress som rapporterats av UPnP är {0}" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:695 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:696 msgid "The current external IP address is not available." msgstr "Den aktuella externa IP-adress är inte tillgänglig." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:699 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:700 #, java-format msgid "UPnP reports the maximum downstream bit rate is {0}bits/sec" msgstr "UPnP rapporterar att den högsta nedströms hastigheten är {0} bits / sekund" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:701 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:702 #, java-format msgid "UPnP reports the maximum upstream bit rate is {0}bits/sec" msgstr "UPnP rapporterar att den högsta uppströms hastigheten är {0} bits / sekund" @@ -703,12 +707,12 @@ msgstr "UPnP rapporterar att den högsta uppströms hastigheten är {0} bits / s #. {1,number,#####} prevents 12345 from being output as 12,345 in the English #. locale. #. If you want the digit separator in your locale, translate as {1}. -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:709 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:710 #, java-format msgid "{0} port {1,number,#####} was successfully forwarded by UPnP." msgstr "{0} port {1,number,#####} var framgÃ¥ngsrikt vidarebefordrad av UPnP." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:711 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:712 #, java-format msgid "{0} port {1,number,#####} was not forwarded by UPnP." msgstr "{0} port {1,number,#####} blev inte vidarebefordrad av UPnP." @@ -724,17 +728,17 @@ msgid "NTCP connections" msgstr "NTCPanslutningar" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1345 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2466 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2471 msgid "Limit" msgstr "Gräns" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1346 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2467 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2472 msgid "Timeout" msgstr "Timeout" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1354 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2483 msgid "IPv6" msgstr "IPv6" @@ -747,126 +751,126 @@ msgid "Backlogged?" msgstr "Släpar efter?" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1375 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2532 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2537 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Inbound" msgstr "Inkommande" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1377 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2534 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2539 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Outbound" msgstr "UtgÃ¥ende" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1432 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2699 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2704 #, java-format msgid "{0} peer" msgid_plural "{0} peers" msgstr[0] "{0} peer" -msgstr[1] "{0} peers" +msgstr[1] "{0} noder" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2465 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2470 msgid "UDP connections" msgstr "UDP-anslutningar" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2475 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 msgid "Sort by peer hash" -msgstr "Sortera efter peer hash" +msgstr "Sortera efter nod-hash" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Direction/Introduction" msgstr "Riktning/Inledning" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 msgid "Sort by idle inbound" msgstr "Sortera efter stillastÃ¥ende inkommande" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 msgid "Sort by idle outbound" msgstr "Sortera efter utgÃ¥ende utgÃ¥ende" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 msgid "Sort by inbound rate" msgstr "Sortera efter inkommande hastighet" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 msgid "Sort by outbound rate" msgstr "Sortera efter utgÃ¥ende hastighet" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 msgid "Sort by connection uptime" msgstr "Sortera efter anslutningsupptid" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 msgid "Sort by clock skew" msgstr "Sortera efter klockanvridning" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 msgid "Sort by congestion window" msgstr "Sortera efter överbelastningfönster" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2502 msgid "Sort by slow start threshold" msgstr "Sortera efter lÃ¥ngsam starttröskel" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2505 msgid "Sort by round trip time" msgstr "Sortera efter tur och returtid" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2504 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 msgid "Sort by retransmission timeout" msgstr "Sortera efter omsändningstimeout" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2507 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2512 msgid "Sort by outbound maximum transmit unit" msgstr "Sortera efter utgÃ¥ende maximal överföringsenhet" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 msgid "Sort by packets sent" msgstr "Sortera efter paket som skickats" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2511 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 msgid "Sort by packets received" msgstr "Sortera efter paket som mottagits" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2519 msgid "Sort by packets retransmitted" msgstr "Sortera efter paket som Ã¥terutsänds" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2521 msgid "Sort by packets received more than once" msgstr "Sortera efter paket som mottagits fler än en gÃ¥ng" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2536 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2541 msgid "We offered to introduce them" msgstr "Vi erbjöd oss att introducera dem" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2538 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2543 msgid "They offered to introduce us" msgstr "De erbjöd sig att introducera oss" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2542 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2547 msgid "Choked" msgstr "Strypt" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2550 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2555 msgid "1 fail" msgstr "1 misslyckande" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2552 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2557 #, java-format msgid "{0} fails" msgstr "{0} misslyckande" #. 1 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2558 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2563 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:166 #: ../java/src/net/i2p/router/web/ProfilesHelper.java:13 msgid "Banned" msgstr "Förbjudna" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2617 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2622 msgid "backlogged" msgstr "backlogged" @@ -883,96 +887,96 @@ msgstr "Släpper tunnelförfrÃ¥gningar: Hög jobbeftersläpning" msgid "Dropping tunnel requests: Overloaded" msgstr "Släpper tunnelförfrÃ¥gningar: Överlastad" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:693 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:695 msgid "Rejecting tunnels: Hidden mode" msgstr "Avvisar tunnlar: Dolt läge" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:721 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:723 msgid "Rejecting tunnels: Request overload" msgstr "Avvisar tunnlar: Begäran överlastad" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:752 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:754 msgid "Rejecting tunnels: Connection limit" msgstr "Avvisar tunnlar: Anslutningsgräns" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:964 -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:997 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:966 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:999 msgid "Dropping tunnel requests: High load" msgstr "Släpper tunnelförfrÃ¥gningar: Hög belastning" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1076 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1078 msgid "Dropping tunnel requests: Queue time" msgstr "Släpper tunnelförfrÃ¥gningar: Kötid" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:884 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:895 #, java-format msgid "New plugin version {0} is available" msgstr "Ny version för plugin {0} finns tillgänglig" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:964 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:975 #, java-format msgid "Update check failed for plugin {0}" msgstr "Uppdateringskontroll misslyckades för plugin {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:968 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:979 #, java-format msgid "No new version is available for plugin {0}" msgstr "Ingen ny version tillgänglig för plugin {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:992 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1003 #, java-format msgid "{0}B transferred" msgstr "{0}B överfört" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1051 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1062 #, java-format msgid "Install failed from {0}" msgstr "Installation misslyckades frÃ¥n {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1053 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1064 #: ../java/src/net/i2p/router/update/UpdateRunner.java:298 #, java-format msgid "Transfer failed from {0}" msgstr "Överföring misslyckades frÃ¥n {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1328 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1339 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1403 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 #: ../java/src/net/i2p/router/web/SummaryHelper.java:715 msgid "Update downloaded" msgstr "Uppdatering hämtad" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 msgid "Restarting" msgstr "Startar om" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 msgid "Update verified" msgstr "Update verifierad" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1381 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:189 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:306 #, java-format msgid "from {0}" msgstr "frÃ¥n {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1396 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1407 #, java-format msgid "Unsigned update file from {0} is corrupt" msgstr "Osignerad uppdateringsfil frÃ¥n {0} är korrumperad" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1425 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1436 #, java-format msgid "Failed copy to {0}" msgstr "Misslyckades med att kopiera till {0}" -#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:47 +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:49 #: ../java/src/net/i2p/router/update/DevSU3UpdateRunner.java:40 #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:55 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:111 -#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:62 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:64 #: ../java/src/net/i2p/router/update/UnsignedUpdateRunner.java:41 #: ../java/src/net/i2p/router/update/UpdateRunner.java:155 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:573 @@ -981,6 +985,13 @@ msgstr "Misslyckades med att kopiera till {0}" msgid "HTTP client proxy tunnel must be running" msgstr "HTTP klientproxytunnel mÃ¥ste köra" +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:83 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:242 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:88 +#, java-format +msgid "Requires Java version {0} but installed Java version is {1}" +msgstr "Kräver Java version {0} installerad Java version är {1}" + #. set status before thread to ensure UI feedback #: ../java/src/net/i2p/router/update/DevSU3UpdateHandler.java:91 #: ../java/src/net/i2p/router/update/PluginUpdateHandler.java:82 @@ -990,24 +1001,19 @@ msgstr "HTTP klientproxytunnel mÃ¥ste köra" msgid "Updating" msgstr "Uppdaterar" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:209 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:218 msgid "In-network updates disabled. Check package manager." msgstr "Nätverks-uppdateringar inaktiverade. Kontrollera pakethanteraren." -#: ../java/src/net/i2p/router/update/NewsFetcher.java:215 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:224 msgid "No write permission for I2P install directory." msgstr "Inga skrivrättigheter för I2P installations-katalogen." -#: ../java/src/net/i2p/router/update/NewsFetcher.java:223 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:232 #, java-format msgid "You must first update to version {0}" msgstr "Uppdatera först till version {0}" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:233 -#, java-format -msgid "Requires Java version {0} but installed Java version is {1}" -msgstr "Kräver Java version {0} installerad Java version är {1}" - #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:62 #, java-format msgid "Checking for update of plugin {0}" @@ -1211,8 +1217,10 @@ msgid "unban now" msgstr "unban nu" #: ../java/src/net/i2p/router/web/CSSHelper.java:149 -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../java/strings/Strings.java:29 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:217 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:221 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:219 @@ -1282,6 +1290,8 @@ msgstr "unban nu" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:217 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:219 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:224 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:228 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:230 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:222 @@ -1307,6 +1317,16 @@ msgstr "unban nu" msgid "I2P Router Console" msgstr "I2P Routerkonsol" +#: ../java/src/net/i2p/router/web/CertHelper.java:25 +msgid "Local SSL Certificates" +msgstr "Lokala SSL-certifikat" + +#: ../java/src/net/i2p/router/web/CertHelper.java:46 +#: ../java/src/net/i2p/router/web/CertHelper.java:51 +#: ../java/strings/Strings.java:63 +msgid "I2PTunnel" +msgstr "I2PTunnel" + #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:62 msgid "Error updating the configuration - please see the error logs" msgstr "Fel vid uppdatering av konfiguration - se felloggar" @@ -1321,7 +1341,8 @@ msgstr "Konfigurationen sparades utan problem" #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:98 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:622 #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:391 -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:151 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:109 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:160 msgid "" "Error saving the configuration (applied but not saved) - please see the " "error logs" @@ -1452,7 +1473,7 @@ msgstr "Det gick inte att hitta servern." #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:400 msgid "No plugin URL specified." -msgstr "Ingen plugin URL angiven." +msgstr "Ingen plugin-URL angiven." #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:421 #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:79 @@ -1526,7 +1547,7 @@ msgid "Add Client" msgstr "Lägg till Klient" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:116 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:503 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:517 #: ../java/src/net/i2p/router/web/SummaryHelper.java:452 msgid "Client" msgstr "Klient" @@ -1558,9 +1579,9 @@ msgid "Plugin" msgstr "Plugin" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:248 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:304 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 msgid "Version" msgstr "Version" @@ -1581,9 +1602,9 @@ msgid "License" msgstr "Licens" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:294 -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/HomeHelper.java:171 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:157 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/HomeHelper.java:178 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:164 msgid "Website" msgstr "Webbplats" @@ -1599,7 +1620,7 @@ msgstr "Stoppa" #: ../java/src/net/i2p/router/web/ConfigUpdateHandler.java:160 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:463 msgid "Check for updates" -msgstr "Kontrollera efter uppdateringar" +msgstr "Sök efter uppdateringar" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:364 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 @@ -1618,7 +1639,7 @@ msgstr "Ta bort" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:21 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigUIHandler.java:19 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:970 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:996 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:496 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:516 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:532 @@ -1628,7 +1649,7 @@ msgstr "Ta bort valda" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:23 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1015 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:494 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:502 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:514 @@ -1724,11 +1745,11 @@ msgstr "hittades inte i nyckelringen" msgid "Invalid destination" msgstr "Ogiltig destination" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:82 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:84 msgid "Log overrides updated" msgstr "Loggöverskridningar uppdaterad" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:163 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:165 msgid "Log configuration saved" msgstr "Loggkonfiguration sparades" @@ -1776,8 +1797,8 @@ msgstr "WARN" #: ../java/src/net/i2p/router/web/ConfigLoggingHelper.java:85 #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:170 -#: ../java/src/net/i2p/router/web/HomeHelper.java:208 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:904 +#: ../java/src/net/i2p/router/web/HomeHelper.java:215 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 msgid "Remove" msgstr "Ta bort" @@ -1796,11 +1817,12 @@ msgid "Home Page" msgstr "Startsida " #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:328 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:335 msgid "Network" msgstr "Nätverk" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:320 @@ -1834,6 +1856,7 @@ msgstr "Nätverk" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:292 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:322 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:297 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:292 @@ -1852,8 +1875,8 @@ msgid "UI" msgstr "Användargränssnitt" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:179 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:486 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:186 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 #: ../java/strings/Strings.java:73 msgid "Tunnels" msgstr "Tunnlar" @@ -1872,15 +1895,15 @@ msgid "Logging" msgstr "Logging" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:185 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:372 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:192 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:386 #: ../java/strings/Strings.java:68 msgid "Peers" -msgstr "Peers" +msgstr "Noder" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:497 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:230 msgid "Stats" msgstr "Statistik" @@ -1896,7 +1919,7 @@ msgstr "Avancerad" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:491 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:479 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:641 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:593 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:560 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:511 msgid "Save changes" @@ -2029,7 +2052,7 @@ msgstr "eller högst {0} byte per mÃ¥nad" #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:20 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:496 msgid "Ban peer until restart" -msgstr "Förbjud peer till omstart" +msgstr "Banna nod tills omstart" #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:23 #, java-format @@ -2044,12 +2067,12 @@ msgstr "förbjuden till omstart" #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:38 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:59 msgid "Invalid peer" -msgstr "Ogiltig peer" +msgstr "Ogiltig nod" #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:28 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:498 msgid "Unban peer" -msgstr "Oförbjud peer" +msgstr "Avbanna nod" #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:33 msgid "unbanned" @@ -2062,7 +2085,7 @@ msgstr "är för närvarande inte förbjuden" #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:39 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:524 msgid "Adjust peer bonuses" -msgstr "Justera peer bonusar" +msgstr "Justera nod-bonusar" #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:47 msgid "Bad speed value" @@ -2077,7 +2100,7 @@ msgid "Unsupported" msgstr "Stöds inte" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:24 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 msgid "Save changes and reseed now" msgstr "Spara ändringar och reseeda nu" @@ -2125,7 +2148,16 @@ msgid_plural "Reseed successful, loaded {0} router infos from file" msgstr[0] "Reseed lyckades, laddade {0} router infos frÃ¥n fil " msgstr[1] "Reseed lyckades, laddade {0} router infos frÃ¥n fil " -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:149 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:99 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +msgid "Reset URL list" +msgstr "Ã…terställ URL-lista" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:107 +msgid "URL list reset successfully" +msgstr "URL-lista Ã¥terställd" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:158 msgid "Configuration saved successfully." msgstr "Konfiguration sparad utan fel." @@ -2625,8 +2657,8 @@ msgid "User Name" msgstr "Användarnamn" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:183 -#: ../java/src/net/i2p/router/web/HomeHelper.java:235 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:972 +#: ../java/src/net/i2p/router/web/HomeHelper.java:242 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:998 msgid "Add" msgstr "Lägg till " @@ -2654,7 +2686,7 @@ msgstr "Ingen uppdatering tillgänglig" #: ../java/src/net/i2p/router/web/ConfigUpdateHandler.java:216 #, java-format msgid "Updating news URL to {0}" -msgstr "Uppdaterar nyhets URLer till {0}" +msgstr "Uppdaterar nyhets-URL:er till {0}" #: ../java/src/net/i2p/router/web/ConfigUpdateHandler.java:223 #: ../java/src/net/i2p/router/web/ConfigUpdateHandler.java:231 @@ -2691,7 +2723,7 @@ msgstr "Uppdaterar uppdaterings policy till {0}" #: ../java/src/net/i2p/router/web/ConfigUpdateHandler.java:268 msgid "Updating update URLs." -msgstr "Uppdaterar uppdaterings URL:er." +msgstr "Uppdaterar uppdaterings-URL:er." #: ../java/src/net/i2p/router/web/ConfigUpdateHandler.java:280 msgid "Updating trusted keys." @@ -2700,12 +2732,12 @@ msgstr "Uppdaterar nycklar med tillit till." #: ../java/src/net/i2p/router/web/ConfigUpdateHandler.java:292 #, java-format msgid "Updating unsigned update URL to {0}" -msgstr "Uppdaterar osignerad uppdaterings URL till {0}" +msgstr "Uppdaterar osignerad uppdaterings-URL till {0}" #: ../java/src/net/i2p/router/web/ConfigUpdateHandler.java:304 #, java-format msgid "Updating signed development build URL to {0}" -msgstr "Uppdaterar signerad utvecklingsbuild URL till {0}" +msgstr "Uppdaterar signerad utvecklingsbuild-URL till {0}" #: ../java/src/net/i2p/router/web/ConfigUpdateHelper.java:132 msgid "Every" @@ -2857,13 +2889,13 @@ msgstr "Händelse" msgid "Details" msgstr "Detaljer" -#: ../java/src/net/i2p/router/web/FormHandler.java:251 +#: ../java/src/net/i2p/router/web/FormHandler.java:253 msgid "" "Invalid form submission, probably because you used the 'back' or 'reload' " "button on your browser. Please resubmit." msgstr "Ogiltigt formulärdata, förmodligen för att du använde \"back\" eller \"reload\" knappen i din webbläsare. Vänligen skicka om." -#: ../java/src/net/i2p/router/web/FormHandler.java:253 +#: ../java/src/net/i2p/router/web/FormHandler.java:255 msgid "" "If the problem persists, verify that you have cookies enabled in your " "browser." @@ -2994,156 +3026,169 @@ msgstr "Spara inställningar och rita om grafer" msgid "Graph settings saved" msgstr "Grafinställningar sparade" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:229 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:236 msgid "Addressbook" msgstr "Adressbok" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:227 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:234 msgid "Manage your I2P hosts file here (I2P domain name resolution)" msgstr "Hantera din I2P host-fil här (I2P domännamns uppslag)" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 msgid "Configure Bandwidth" msgstr "Konfigurera bandbredd" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:330 msgid "I2P Bandwidth Configuration" msgstr "I2P bandbreddsinställningar " -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Configure Language" msgstr "SprÃ¥k inställningar " -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Console Language Selection" msgstr "KonsolsprÃ¥k val" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 msgid "Customize Home Page" msgstr "Anpassa startsidan" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:346 msgid "I2P Home Page Configuration" msgstr "Konfiguration av I2P startsida" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:139 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:146 msgid "Anonymous webmail client" msgstr "Anonym webbmailklient" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:141 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:148 msgid "Email" msgstr "E-post" -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:251 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 msgid "I2P Router Help" msgstr "I2P Router Hjälp" -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:161 msgid "Router Console" msgstr "Router Konsol" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:145 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:152 msgid "Built-in anonymous BitTorrent Client" msgstr "Inbyggd anonym Bittorrentklient" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:147 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:154 msgid "Torrents" msgstr "Torrents" -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:155 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:162 msgid "Local web server" msgstr "Lokal webserver" -#: ../java/src/net/i2p/router/web/HomeHelper.java:41 +#: ../java/src/net/i2p/router/web/HomeHelper.java:43 msgid "The Anoncoin project" msgstr "Anoncoinprojektet" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug Reports" msgstr "Bugg rapporter" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug tracker" msgstr "Bugg tracker" #. "colombo-bt.i2p" + S + _x("The Italian Bittorrent Resource") + S + "http #. ://colombo-bt.i2p/" + S + I + "colomboicon.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Dev Forum" msgstr "Utv Forum" -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Development forum" msgstr "Utvecklingsforumet" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Bittorrent tracker" msgstr "Bittorrent tracker" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 msgid "diftracker" msgstr "diftracker" -#: ../java/src/net/i2p/router/web/HomeHelper.java:46 +#: ../java/src/net/i2p/router/web/HomeHelper.java:48 msgid "I2P Applications" msgstr "I2P applikationer" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +msgid "Anonymous cryptocurrency exchange" +msgstr "Anonym börs för kryptovaluta" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "FAQ" msgstr "FAQ" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "Frequently Asked Questions" msgstr "Vanliga frÃ¥gor" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Community forum" msgstr "Community forum" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Forum" msgstr "Forum" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "" "A public anonymous Git hosting site - supports pulling via Git and HTTP and " "pushing via SSH" msgstr "En publik anonym Git hostnings site - stödje pulling via Git och HTTP och pushing vis SSH" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "Anonymous Git Hosting" msgstr "Anonym Git Hosting" -#: ../java/src/net/i2p/router/web/HomeHelper.java:50 +#: ../java/src/net/i2p/router/web/HomeHelper.java:53 msgid "HiddenGate" msgstr "HiddenGate" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "Anonymous wiki - share the knowledge" +msgstr "Anonym wiki - dela kunskapen" + +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "I2P Wiki" +msgstr "I2P-wiki" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Microblog" -msgstr "Microblog" +msgstr "Mikroblogg" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Your premier microblogging service on I2P" -msgstr "Din microblognings tjänst pÃ¥ I2P" +msgstr "Din mikrobloggnings-tjänst pÃ¥ I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 msgid "Javadocs" msgstr "Javadocs" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical documentation" msgstr "Teknisk dokumentation" @@ -3151,91 +3196,98 @@ msgstr "Teknisk dokumentation" #. "http://jisko.i2p/" + S + I + "jisko_console_icon.png" + S + #. _x("Key Server") + S + _x("OpenPGP Keyserver") + S + "http://keys.i2p/" + S #. + I + "education.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +#: ../java/src/net/i2p/router/web/HomeHelper.java:60 msgid "Debian and Tahoe-LAFS repositories" msgstr "Debian och Tahoe-LAFS programarkiv" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free Web Hosting" msgstr "Gratis webbhotell" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free eepsite hosting with PHP and MySQL" msgstr "Gratis eepsite hosting med PHP och MySQL" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "I2P Pastebin" msgstr "I2P Pastebin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "Pastebin" msgstr "Pastebin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:58 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 msgid "I2P News" msgstr "I2P Nyheter" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +msgid "Planet I2P" +msgstr "Planet I2P" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Add-on directory" msgstr "katalogen för insticksprogram" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Plugins" msgstr "insticksprogram" -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Postman's Tracker" msgstr "Postman's Tracker" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "I2P home page" msgstr "I2P startsida" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "Project Website" -msgstr "Project Website" +msgstr "Projektets webbsida" + +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:68 +msgid "Russian News Feed" +msgstr "Rysk nyhetslista" #. "Salt" + S + "salt.i2p" + S + "http://salt.i2p/" + S + I + #. "salt_console.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +#: ../java/src/net/i2p/router/web/HomeHelper.java:70 msgid "I2P Network Statistics" msgstr "I2P Nätverksstatistik" -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical Docs" msgstr "Tekniska Docs" -#: ../java/src/net/i2p/router/web/HomeHelper.java:65 +#: ../java/src/net/i2p/router/web/HomeHelper.java:72 msgid "Trac Wiki" msgstr "Trac Wiki" -#: ../java/src/net/i2p/router/web/HomeHelper.java:66 -msgid "Ugha's Wiki" -msgstr "Ugha's Wiki" - -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Seedless and the Robert BitTorrent applications" msgstr "Seedless och Robert BitTorrent applikationer" -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#. _x("Ugha's Wiki") + S + S + "http://ugha.i2p/" + S + I + +#. "billiard_marker.png" + S + +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Sponge's main site" msgstr "Sponge's huvudsida" -#: ../java/src/net/i2p/router/web/HomeHelper.java:108 +#: ../java/src/net/i2p/router/web/HomeHelper.java:115 msgid "The HTTP proxy is not up" msgstr "HTTP proxyn är inte uppe" -#: ../java/src/net/i2p/router/web/HomeHelper.java:110 +#: ../java/src/net/i2p/router/web/HomeHelper.java:117 #, java-format msgid "Your browser is not properly configured to use the HTTP proxy at {0}" msgstr "Din webbläsare är inte korrekt konfigurerad för att använda HTTP-proxy pÃ¥ {0}" -#: ../java/src/net/i2p/router/web/HomeHelper.java:210 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:906 +#: ../java/src/net/i2p/router/web/HomeHelper.java:217 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:932 msgid "Name" msgstr "Namn" -#: ../java/src/net/i2p/router/web/HomeHelper.java:212 +#: ../java/src/net/i2p/router/web/HomeHelper.java:219 msgid "URL" msgstr "URL" @@ -3363,217 +3415,226 @@ msgstr "'Alla routers med fulla stats" msgid "LeaseSets" msgstr "LeaseSet" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:105 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:106 #: ../java/strings/Strings.java:69 msgid "Router" msgstr "Router" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:112 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:113 msgid "not found in network database" msgstr "hittades inte i nätverksdatabasen" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:156 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 msgid "LeaseSet" msgstr "LeaseSet" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:158 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:163 msgid "Local" msgstr "Lokal" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:160 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:165 msgid "Unpublished" msgstr "Opubliserad" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:176 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:166 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:181 msgid "Destination" msgstr "Destination" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:173 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:185 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:178 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 msgid "Add to local addressbook" msgstr "Lägg till lokal adressbok" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:217 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:195 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:222 #, java-format msgid "Expires in {0}" msgstr "GÃ¥r ut om {0}" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:192 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:219 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:197 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:224 #, java-format msgid "Expired {0} ago" msgstr "Gick ut {0} sedan" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Gateway" msgstr "Gateway" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 msgid "Lease" msgstr "Lease" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:213 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:218 msgid "Tunnel" msgstr "Tunnel" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:280 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:286 msgid "Not initialized" msgstr "Inte intierad" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:330 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:342 msgid "Network Database Router Statistics" msgstr "Nätverksdatabas Routerstatistik" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Count" msgstr "Antal" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 msgid "Transports" msgstr "Transporter" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Country" msgstr "Land" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:429 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:453 msgid "Our info" msgstr "VÃ¥r information" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:431 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:455 msgid "Peer info for" -msgstr "Peer information för" +msgstr "Nod-information för" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:433 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:457 msgid "Full entry" msgstr "Full post" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 #: ../java/src/net/i2p/router/web/SummaryHelper.java:152 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:726 msgid "Hidden" msgstr "Dold" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 msgid "Updated" msgstr "Uppdaterad" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:441 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:444 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:465 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:468 #, java-format msgid "{0} ago" msgstr "{0} sedan" #. shouldnt happen -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:443 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:447 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:467 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:471 msgid "Published" msgstr "Publicerad" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:449 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 msgid "Signing Key" msgstr "Signeringsnyckel" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:451 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:475 msgid "Address(es)" msgstr "Adress(er)" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:463 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:487 msgid "cost" msgstr "kostnad" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "Hidden or starting up" msgstr "Dold eller startande" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU" msgstr "SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU with introducers" msgstr "SSU med introducerare" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP" msgstr "NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU" msgstr "NTCP och SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU with introducers" msgstr "NTCP och SSU med introducerare" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 Only SSU, introducers" msgstr "Endast IPv6 SSU, introducerade" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU" msgstr "IPv6 SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU, introducers" msgstr "IPv6 SSU, introducerade" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP" msgstr "IPv6 NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU" msgstr "IPv6 NTCP, SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU, introducers" msgstr "IPv6 NTCP, SSU, introducerade" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 Only NTCP, SSU, introducers" msgstr "Endast IPv6 NTCP, SSU, introducerade" -#: ../java/src/net/i2p/router/web/NewsHelper.java:295 +#: ../java/src/net/i2p/router/web/NewsFeedHelper.java:80 +#, java-format +msgid "by {0}" +msgstr "av {0}" + +#: ../java/src/net/i2p/router/web/NewsHelper.java:292 #, java-format msgid "News last updated {0} ago." msgstr "Nyheter senast uppdaterade för {0} sedan." -#: ../java/src/net/i2p/router/web/NewsHelper.java:301 +#: ../java/src/net/i2p/router/web/NewsHelper.java:298 #, java-format msgid "News last checked {0} ago." msgstr "Nyheter senast kontrollerade för {0} sedan." -#: ../java/src/net/i2p/router/web/NewsHelper.java:310 +#: ../java/src/net/i2p/router/web/NewsHelper.java:307 msgid "Hide news" msgstr "Dölj nyheter" -#: ../java/src/net/i2p/router/web/NewsHelper.java:313 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:647 +#: ../java/src/net/i2p/router/web/NewsHelper.java:310 msgid "Show news" msgstr "Visa nyheter" +#: ../java/src/net/i2p/router/web/NewsHelper.java:314 +msgid "Show all news" +msgstr "Visa alla nyheter" + #: ../java/src/net/i2p/router/web/PluginStarter.java:140 msgid "Checking for plugin updates" msgstr "Sök efter uppdateringar för insticksprogram " #: ../java/src/net/i2p/router/web/PluginStarter.java:155 +#: ../java/src/net/i2p/router/web/PluginStarter.java:161 msgid "Plugin update check failed" msgstr "Test av pluginuppdatering misslyckades" -#: ../java/src/net/i2p/router/web/PluginStarter.java:193 +#: ../java/src/net/i2p/router/web/PluginStarter.java:199 #, java-format msgid "1 plugin updated" msgid_plural "{0} plugins updated" msgstr[0] "1 insticksprogram uppdaterat" msgstr[1] "{0} insticksprogram uppdaterade" -#: ../java/src/net/i2p/router/web/PluginStarter.java:195 +#: ../java/src/net/i2p/router/web/PluginStarter.java:201 msgid "Plugin update check complete" msgstr "Sökning efter uppdateringar för insticksprogram slutförd" @@ -3639,7 +3700,7 @@ msgid "Failing" msgstr "Misslyckas" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:135 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:411 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:425 msgid "Integrated" msgstr "Integrerad" @@ -3722,15 +3783,15 @@ msgstr "Trösklar" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:261 msgid "fast peers" -msgstr "snabba peers" +msgstr "snabba noder" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:263 msgid "high capacity peers" -msgstr "högkapacitets peers" +msgstr "högkapacitets-noder" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:265 msgid " well integrated peers" -msgstr "väintegrerade peers" +msgstr "väintegrerade noder" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:267 msgid "as determined by the profile organizer" @@ -3770,7 +3831,7 @@ msgstr "hur mÃ¥nga tunnlar kan vi be dem att gÃ¥ med i pÃ¥ en timme?" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:271 msgid "how many new peers have they told us about lately?" -msgstr "hur mÃ¥nga nya peers har de berättat för oss om nyligen?" +msgstr "hur mÃ¥nga nya noder har de berättat för oss om nyligen?" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:271 msgid "integration" @@ -3778,7 +3839,7 @@ msgstr "integration" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:272 msgid "is the peer banned, or unreachable, or failing tunnel tests?" -msgstr "är peeren bannad, eller inte kan nÃ¥s, eller en misslyckas tunnel test?" +msgstr "är noden bannad, eller inte kan nÃ¥s, eller misslyckas tunneltest?" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:272 msgid "status" @@ -3908,279 +3969,289 @@ msgstr "Diagram över antal händelser" msgid "Lifetime average value" msgstr "Livstids medelvärde" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:121 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:128 msgid "I2P Router Help & FAQ" msgstr "I2P Router Hjälp & FAQ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:123 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:130 msgid "Help & FAQ" msgstr "Hjälp & FAQ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:131 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:138 msgid "" "Configure startup of clients and webapps (services); manually start dormant " "services" msgstr "Konfigurera start av klienter och webbappar (tjänster), starta vilande tjänster manuellt" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:133 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:140 msgid "I2P Services" msgstr "I2P tjänster" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:169 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:176 msgid "Configure I2P Router" msgstr "Konfigurera I2P Router" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:171 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:178 msgid "I2P Internals" msgstr "I2P internt" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:177 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:484 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:184 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:498 msgid "View existing tunnels and tunnel build status" msgstr "Visa existerande tunnlar och status för tunnlar som byggs" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:183 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:370 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:190 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:384 msgid "Show all current peer connections" -msgstr "Visa alla aktuella peeranslutningar" +msgstr "Visa alla aktuella nodanslutningar" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:189 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:196 msgid "Show recent peer performance profiles" -msgstr "Visa de senaste peer prestanda profiler" +msgstr "Visa senaste nod-prestandaprofiler" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:191 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:198 msgid "Profiles" msgstr "Profiler" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:195 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:202 msgid "Show list of all known I2P routers" msgstr "Visa lista över alla kända I2P routrar" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:197 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:204 msgid "NetDB" msgstr "NetDB" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:201 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:208 msgid "Health Report" msgstr "Hälsorapport" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:203 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:210 msgid "Logs" msgstr "Loggar" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:214 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 msgid "Graph router performance" msgstr "Diagram över router prestanda" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:216 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 msgid "Graphs" msgstr "Grafer" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:228 msgid "Textual router performance statistics" msgstr "resultatstatistik för router i textform" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:233 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:240 #: ../java/src/net/i2p/router/web/SummaryHelper.java:438 msgid "Local Tunnels" msgstr "Lokala Tunnlar" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:235 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:242 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:164 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:337 msgid "Hidden Services Manager" msgstr "Hanterare för dolda tjänster" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:253 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:260 msgid "General" msgstr "Allmänt" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 msgid "" "Your Local Identity is your unique I2P router identity, similar to an ip " "address but tailored to I2P. " msgstr "Din lokala identitet är din unika I2P routers identitet, liknande en ip-adress men anpassad för I2P." -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:259 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:266 msgid "Never disclose this to anyone, as it can reveal your real world ip." msgstr "avslöja aldrig den för nÃ¥gon eftersom det kan avslöja din ip-adress " -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:261 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:268 msgid "Local Identity" msgstr "Lokal identitet" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:272 msgid "Your unique I2P router identity is" msgstr "Din unika I2P router identitet är" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:269 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:276 msgid "never reveal it to anyone" msgstr "avslöja det aldrig till nÃ¥gon" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:271 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 msgid "show" msgstr "visa" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:275 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:301 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:282 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:308 msgid "The version of the I2P software we are running" msgstr "Den version av I2P vi kör " -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:292 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:318 msgid "How long we've been running for this session" msgstr "Hur länge vi har kört för denna session" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:326 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:333 msgid "" "Help with configuring your firewall and router for optimal I2P performance" msgstr "Hjälp med att konfigurera din brandvägg och router för optimal prestanda för I2P" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:337 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:344 msgid "See more information on the wiki" msgstr "Se mer information pÃ¥ wikin" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:339 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:346 msgid "Warning: ECDSA is not available. Update your Java or OS" msgstr "Varning: ECDSA inte tillgänglig. Uppdatera Java eller OS" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:351 +#, java-format +msgid "Warning: Java version {0} is no longer supported by I2P." +msgstr "Varning: Java versilon {0} stöds inte längre av I2P" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#, java-format +msgid "Update Java to version {0} or higher to receive I2P updates." +msgstr "Uppdatera Java till version {0} eller högre för att fÃ¥ I2P-uppdateringar" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:365 msgid "Configure I2P Updates" msgstr "Konfigurera I2P uppdateringar " -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:367 msgid "I2P Update" msgstr "I2P uppdatering" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:378 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:392 msgid "Peers we've been talking to in the last few minutes/last hour" -msgstr "Peers vi har pratat med de senaste minuterna/timmarna" +msgstr "Noder vi har pratat med de senaste minuterna/timmen" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:381 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:395 msgid "Active" msgstr "Aktiv" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:390 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:404 msgid "The number of peers available for building client tunnels" -msgstr "Antal peers tillgängliga för att bygga klient tunnlar " +msgstr "Antal noder tillgängliga för att bygga klienttunnlar " -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:393 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:407 msgid "Fast" msgstr "Snabb" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:399 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:413 msgid "The number of peers available for building exploratory tunnels" -msgstr "Antal peers tillgängliga för att bygga undersökande tunnlar" +msgstr "Antal noder tillgängliga för att bygga undersökande tunnlar" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:402 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:416 msgid "High capacity" msgstr "Hög kapacitet" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:408 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:422 msgid "The number of peers available for network database inquiries" msgstr "Anta tillgängliga för nätverksdatabasförfrÃ¥gningar" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:417 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:431 msgid "The total number of peers in our network database" -msgstr "Totala antalet peers i vÃ¥r nätverksdatabas" +msgstr "Totala antalet noder i vÃ¥r nätverksdatabas" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:420 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:434 msgid "Known" msgstr "Kända" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:440 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:454 msgid "Configure router bandwidth allocation" msgstr "Ställ in routerns bandbreddsallokering" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:442 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:456 msgid "Bandwidth in/out" msgstr "Bandbredd in/ut" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:462 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:476 msgid "Total" msgstr "Totalt" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:469 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:483 msgid "Used" msgstr "Använda" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:491 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:505 msgid "" "Used for building and testing tunnels, and communicating with floodfill " "peers" -msgstr "Används för att bygga och testa tunnlar och kommunicera med floodfill peers" +msgstr "Används för att bygga och testa tunnlar och kommunicera med floodfill-noder" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:494 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:508 msgid "Exploratory" msgstr "Utforskande" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:514 msgid "Tunnels we are using to provide or access services on the network" msgstr "Tunnlar vi använder för att tillhandahÃ¥lla eller fÃ¥ tillgÃ¥ng till tjänster i nätverket" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:509 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:523 msgid "" "Tunnels we are participating in, directly contributing bandwidth to the " "network" msgstr "Tunnlar vi deltar i och direkt bidrar med bandbredd till nätverket" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:512 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:526 msgid "Participating" msgstr "Deltagande" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:518 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:532 msgid "" "The ratio of tunnel hops we provide to tunnel hops we use - a value greater " "than 1.00 indicates a positive contribution to the network" msgstr "FörhÃ¥llandet mellan tunneln hopp ger vi tillhandahÃ¥ller och använder - ett värde större än 1,00 indikerar ett positivt bidrag till nätverket" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:521 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:535 msgid "Share ratio" msgstr "Delningsratio" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:534 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:548 msgid "What's in the router's job queue?" msgstr "Vad är i routerns arbeteskö" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:536 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 msgid "Congestion" msgstr "Trängsel" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:541 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:555 msgid "Indicates router performance" msgstr "Indikerar routern prestanda" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:544 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:558 msgid "Job lag" msgstr "Arbetsfördröjning" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:564 msgid "Indicates how quickly outbound messages to other I2P routers are sent" msgstr "Indikerar hur snabbt utÃ¥tgÃ¥endemeddelanden till andra I2P routers sänds " -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:553 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:567 msgid "Message delay" msgstr "Meddelandefördröjning" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:560 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:574 msgid "Round trip time for a tunnel test" msgstr "Tur och retur tid för ett tunnel test" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:563 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:577 msgid "Tunnel lag" msgstr "Tunnelfördröjning" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:570 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:584 msgid "Queued requests from other routers to participate in tunnels" msgstr "Köade förfrÃ¥gningar frÃ¥n andra routrar att delta i tunnlar" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:573 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:587 msgid "Backlog" msgstr "Eftersläpning" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:608 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:623 msgid "News & Updates" -msgstr "Nyheter & Uppdateringar " +msgstr "Nyheter & uppdateringar " #: ../java/src/net/i2p/router/web/SummaryHelper.java:143 msgid "ERR-Client Manager I2CP Error - check logs" @@ -4223,7 +4294,7 @@ msgstr "ERR-UDP port används redan - Sätt i2np.udp.internalPort=xxxx i advance #: ../java/src/net/i2p/router/web/SummaryHelper.java:206 msgid "ERR-No Active Peers, Check Network Connection and Firewall" -msgstr "ERR-Inga aktiva peers, kontrollera nätverkanslutning och brandvägg" +msgstr "ERR-Inga aktiva noder, kontrollera nätverkanslutning och brandvägg" #: ../java/src/net/i2p/router/web/SummaryHelper.java:209 msgid "ERR-UDP Disabled and Inbound TCP host/port not set" @@ -4291,17 +4362,21 @@ msgid "Click Shutdown and restart to install" msgstr "Klicka Stäng av och starta om för att installera" #: ../java/src/net/i2p/router/web/SummaryHelper.java:720 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:735 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:737 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:749 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:761 #, java-format msgid "Version {0}" msgstr "Version {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:734 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:736 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:748 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:760 msgid "Update available" msgstr "Uppdateringar tillgängliga" #. Note to translators: parameter is a version, e.g. "0.8.4" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:758 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:784 #, java-format msgid "Download {0} Update" msgstr "Hämtat {0} uppdateringar" @@ -4310,7 +4385,7 @@ msgstr "Hämtat {0} uppdateringar" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:766 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:792 #, java-format msgid "Download Signed<br>Development Update<br>{0}" msgstr "Ladda ner signerad <br>Utvecklingsuppdatering</br>{0}" @@ -4319,56 +4394,56 @@ msgstr "Ladda ner signerad <br>Utvecklingsuppdatering</br>{0}" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:774 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 #, java-format msgid "Download Unsigned<br>Update {0}" msgstr "Hämta osignerade <br> uppdateringar {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:798 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:824 msgid "Help with firewall configuration" msgstr "Hjälp med brandväggskonfigurationen" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:826 msgid "Check network connection and NAT/firewall" msgstr "Kontrollera nätverksanslutningen och NAT/brandvägg " -#: ../java/src/net/i2p/router/web/SummaryHelper.java:819 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:845 msgid "Reseed" msgstr "Reseed" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:908 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:934 msgid "Order" msgstr "Ordning" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:925 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:951 msgid "Top" msgstr "Top" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:956 msgid "Move to top" msgstr "Flytta längst upp" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:940 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:966 msgid "Move up" msgstr "Flytta upp" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:948 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:974 msgid "Down" msgstr "Ner" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:953 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:979 msgid "Move down" msgstr "Flytta ner" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:958 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:984 msgid "Bottom" msgstr "Botten" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:963 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 msgid "Move to bottom" msgstr "Flytta längst ner" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:975 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1001 msgid "Select a section to add" msgstr "Välj ett avsnitt för att lägga till det" @@ -4415,100 +4490,100 @@ msgstr "Klienttunnlar för" msgid "dead" msgstr "död" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:70 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:69 msgid "Participating tunnels" msgstr "Deltagande tunnlar" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "Receive on" msgstr "Ta emot pÃ¥" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Expiration" msgstr "UtgÃ¥ng" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Send on" msgstr "Skicka pÃ¥" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Rate" msgstr "Hastighet" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Role" msgstr "Roll" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Usage" msgstr "Användning" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:111 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:113 msgid "grace period" msgstr "uppskovsperiod" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:121 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 msgid "Outbound Endpoint" msgstr "UtÃ¥tgÃ¥ende ändpunkt" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 msgid "Inbound Gateway" msgstr "InÃ¥tgÃ¥ende gateway" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:127 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:174 msgid "Participant" msgstr "Deltagare" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:130 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:133 #, java-format msgid "Limited display to the {0} tunnels with the highest usage" msgstr "Begränsad tillgÃ¥ng till {0} tunnlar med högsta belastning" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:131 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:135 msgid "Inactive participating tunnels" msgstr "Oaktiva deltagande tunnlar" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:132 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:224 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:138 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:232 msgid "Lifetime bandwidth usage" msgstr "Livstids bandbreddsanvändning" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Expiry" msgstr "UtgÃ¥ng" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:165 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 msgid "Participants" msgstr "Deltagare" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:177 msgid "Endpoint" msgstr "Slutpunkt" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 #: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "Build in progress" msgstr "Inbyggd process" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 msgid "inbound" msgstr "inkommande" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "outbound" msgstr "utgÃ¥ende" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:223 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:231 msgid "No tunnels; waiting for the grace period to end." msgstr "Inga tunnlar; väntar pÃ¥ att uppskovsperioden ska ta slut." -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:225 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:233 msgid "in" msgstr "in" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:234 msgid "out" msgstr "ut" @@ -4645,10 +4720,6 @@ msgstr "Kryptering" msgid "i2cp" msgstr "i2cp" -#: ../java/strings/Strings.java:63 -msgid "I2PTunnel" -msgstr "I2PTunnel" - #: ../java/strings/Strings.java:64 msgid "InNetPool" msgstr "InNetPool" @@ -4695,10 +4766,12 @@ msgstr "nyckel" msgid "port" msgstr "port" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 -msgid "configure bandwidth" -msgstr "konfigurera bandbredd " +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:146 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:318 +msgid "Certificates" +msgstr "Certifikat" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:153 @@ -4732,6 +4805,7 @@ msgstr "konfigurera bandbredd " #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:149 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:155 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:154 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:149 @@ -4747,6 +4821,7 @@ msgstr "Routern är nere" #. We have intl defined when this is included, but not when compiled #. standalone. +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:333 @@ -4779,6 +4854,7 @@ msgstr "Routern är nere" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:305 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:310 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:305 @@ -4794,6 +4870,7 @@ msgid "Refresh (s)" msgstr "Uppdatera (s)" #. ditto +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:337 @@ -4826,6 +4903,7 @@ msgstr "Uppdatera (s)" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:309 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:339 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:314 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:309 @@ -4840,6 +4918,10 @@ msgstr "Uppdatera (s)" msgid "Enable" msgstr "Aktivera" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 +msgid "configure bandwidth" +msgstr "konfigurera bandbredd " + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:437 msgid "Bandwidth limiter" msgstr "Bandbreddsbegränsare" @@ -4916,7 +4998,7 @@ msgstr "Sida för avancerade nätverksinställningar " #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:501 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:477 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:639 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:587 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:558 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:509 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:461 @@ -5106,7 +5188,7 @@ msgstr "Sök efter tillgängliga plugins pÃ¥ {0}." #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:621 msgid "To install a plugin, enter the download URL:" -msgstr "För att installera en plugin anger du hämta URL:" +msgstr "För att installera en plugin anger du URL att hämta frÃ¥n:" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:631 msgid "Plugin Installation from File" @@ -5796,15 +5878,15 @@ msgstr "Har du en annan instans av I2P som körs? Stoppa det kolliderande progra #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:150 msgid "config peers" -msgstr "konfigurera peers" +msgstr "konfigurera noder" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:346 msgid "I2P Peer Configuration" -msgstr "I2P peer konfiguration" +msgstr "I2P nod-konfiguration" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:486 msgid "Manual Peer Controls" -msgstr "Manuell peer kontroll" +msgstr "Manuell nod-kontroll" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:488 msgid "Router Hash" @@ -5812,12 +5894,12 @@ msgstr "Router Hash" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:492 msgid "Manually Ban / Unban a Peer" -msgstr "Manuellt banna/ avbanna en peer" +msgstr "Manuellt banna / avbanna en nod" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:494 msgid "" "Banning will prevent the participation of this peer in tunnels you create." -msgstr "Banning kommer att hindra peeren att delta i tunnlar du skapar." +msgstr "Banning kommer hindra noden frÃ¥n att delta i tunnlar du skapar." #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:504 msgid "Adjust Profile Bonuses" @@ -5829,7 +5911,7 @@ msgid "" " 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 "Bonusar kan vara positiv eller negativ, och pÃ¥verkar peer inräknande i snabbt och högkapacitets nivÃ¥er. Snabba peers används för klient tunnlar, och hög kapacitet peers används för vissa sonderande tunnlar. Aktuell bonus visas pÃ¥" +msgstr "Bonusar kan vara positiva eller negativa, och pÃ¥verkar om noden inräknas i nivÃ¥erna snabb och högkapacitet. Snabba noder används för klienttunnlar, och högkapacitets-noder används för vissa utforskande tunnlar. Aktuell bonus visas pÃ¥" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:508 msgid "profiles page" @@ -5837,7 +5919,7 @@ msgstr "profilsida" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:526 msgid "Banned Peers" -msgstr "Förbjudna Peers" +msgstr "Bannade noder" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configpeer_jsp.java:547 msgid "Banned IPs" @@ -5878,7 +5960,7 @@ msgstr "Manuell reseed frÃ¥n URL" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:485 msgid "Enter zip or su3 URL" -msgstr "Ange en zip eller su3 URL" +msgstr "Ange en URL för zip eller su3" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:487 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:499 @@ -5931,7 +6013,7 @@ msgstr "Ändra dess endast om HTTPS är blockerad av en restriktiv brandvägg oc #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:521 msgid "Reseed URL Selection" -msgstr "Reseed URL urvalet" +msgstr "Reseed URL-urvalet" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:525 msgid "Try SSL first then non-SSL" @@ -5947,53 +6029,53 @@ msgstr "Använd enbart icke-SSL " #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:535 msgid "Reseed URLs" -msgstr "Reseed URLer" +msgstr "Reseed-URL:er" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:541 msgid "Enable HTTP Proxy?" msgstr "Aktivera HTTP proxy?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:543 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:545 msgid "HTTP Proxy Host" msgstr "HTTP Proxy Värd" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:547 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:549 msgid "HTTP Proxy Port" msgstr "HTTP Proxy Port" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:551 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:553 msgid "Use HTTP Proxy Authorization?" msgstr "Använd HTTP proxy auktorisering?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:555 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:557 msgid "HTTP Proxy Username" msgstr "HTTP proxy användarnamn " -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:559 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:561 msgid "HTTP Proxy Password" msgstr "HTTP proxy lösenord" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:563 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:565 msgid "Enable HTTPS Proxy?" msgstr "Aktivera HTTP proxy" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:567 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:569 msgid "HTTPS Proxy Host" msgstr " HTTP proxy värd" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:571 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:573 msgid "HTTPS Proxy Port" msgstr "HTTP proxy port" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:575 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:577 msgid "Use HTTPS Proxy Authorization?" msgstr "Använd HTTPS proxy auktorisering?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:579 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:581 msgid "HTTPS Proxy Username" msgstr "HTTPS proxy användarnamn " -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:583 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:585 msgid "HTTPS Proxy Password" msgstr "HTTPS proxy lösenord" @@ -6300,7 +6382,7 @@ msgstr "Kontrollera I2P- och nyhetsuppdateringar" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:445 msgid "News & I2P Updates" -msgstr "Nyheter och I2P uppdateringar" +msgstr "Nyheter och I2P-uppdateringar" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:449 msgid "Check for news updates" @@ -6316,7 +6398,7 @@ msgstr "Uppdatering PÃ¥gÃ¥r" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:467 msgid "News URL" -msgstr "Nyhets URL" +msgstr "Nyhets-URL" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:475 msgid "Refresh frequency" @@ -6344,7 +6426,7 @@ msgstr "eepProxy port" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:509 msgid "Update URLs" -msgstr "Uppdatera URLer" +msgstr "Uppdatera URL:er" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:513 msgid "Trusted keys" @@ -6356,7 +6438,7 @@ msgstr "Uppdatera med signerad utvecklingsbuilds?" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:521 msgid "Signed Build URL" -msgstr "Signerad Build URL" +msgstr "URL för signerat bygge" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:525 msgid "Update with unsigned development builds?" @@ -6364,7 +6446,7 @@ msgstr "Uppdatera med osignerade utvecklingsbuilds?" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:529 msgid "Unsigned Build URL" -msgstr "Osignerad bygg URL" +msgstr "URL för osignerat bygge" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:536 msgid "Updates will be dispatched via your package manager." @@ -6552,6 +6634,14 @@ msgstr "nätverksdatabasen" msgid "I2P Network Database" msgstr "I2Ps nätverksdatabas" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:148 +msgid "News" +msgstr "Nyheter" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:344 +msgid "Latest News" +msgstr "Senaste nyheter" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:152 msgid "WebApp Not Found" msgstr "WebApp hittades inte" @@ -6571,19 +6661,19 @@ msgstr "GÃ¥ till {0}klientkonfiguration{1} för att starta den." #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:146 msgid "peer connections" -msgstr "peer-anslutningar" +msgstr "nod-anslutningar" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:318 msgid "I2P Network Peers" -msgstr "I2P Nätverk Peers" +msgstr "I2P-nätverksnoder" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/profiles_jsp.java:146 msgid "peer profiles" -msgstr "peer profiler" +msgstr "nodprofiler" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/profiles_jsp.java:318 msgid "I2P Network Peer Profiles" -msgstr "I2P Nätverks Peer Profiler" +msgstr "I2P-nätverkets nodprofiler" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/proof_jsp.java:148 msgid "Proof" @@ -6621,12 +6711,12 @@ msgstr "I2P Tunnel Summering" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/viewprofile_jsp.java:146 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/viewprofile_jsp.java:318 msgid "Peer Profile" -msgstr "Peer profil" +msgstr "Nodprofil" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/viewprofile_jsp.java:342 #, java-format msgid "Profile for peer {0}" -msgstr "Profil för peer {0}" +msgstr "Profil för nod {0}" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/webmail_jsp.java:164 msgid "webmail" diff --git a/apps/routerconsole/locale/messages_tr.po b/apps/routerconsole/locale/messages_tr.po index 0c8ab171d714481db82ca1e2c7b2c71251ef4104..852cce82c50766aff66f6837c1233887515a3ed4 100644 --- a/apps/routerconsole/locale/messages_tr.po +++ b/apps/routerconsole/locale/messages_tr.po @@ -15,9 +15,9 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:05+0000\n" -"PO-Revision-Date: 2015-08-08 07:10+0000\n" -"Last-Translator: Kaya Zeren <kayazeren@gmail.com>\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-05 17:17+0000\n" +"Last-Translator: kytv <killyourtv@i2pmail.org>\n" "Language-Team: Turkish (Turkey) (http://www.transifex.com/otf/I2P/language/tr_TR/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -129,19 +129,22 @@ msgid "IPs Permanently Banned" msgstr "Kalıcı Olarak Yasaklanmış IP Adresleri" #: ../../../router/java/src/net/i2p/router/Blocklist.java:959 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "From" msgstr "Kimden" #: ../../../router/java/src/net/i2p/router/Blocklist.java:961 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "To" msgstr "Kime" #: ../../../router/java/src/net/i2p/router/Blocklist.java:997 #: ../java/src/net/i2p/router/web/BanlistRenderer.java:48 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:652 +#: ../java/src/net/i2p/router/web/CertHelper.java:77 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:147 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:662 #: ../java/src/net/i2p/router/web/SummaryHelper.java:478 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:137 msgid "none" msgstr "yok" @@ -279,42 +282,42 @@ msgstr "Tünelleme red ediliyor: Kapatılıyor" msgid "Rejecting tunnels" msgstr "Tünelleme red ediliyor" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:212 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:210 #, java-format msgid "Reseeding: got router info from file ({0} successful, {1} errors)." msgstr "Yeniden tohumlanıyor: dosyadan yöneltici bilgileri alındı ({0} baÅŸarılı, {1} hata)." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:284 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:282 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:28 msgid "Reseeding" msgstr "Yeniden tohumlanıyor" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:307 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:305 #, java-format msgid "Reseed fetched only 1 router." msgid_plural "Reseed fetched only {0} routers." msgstr[0] "Yeniden tohumlama yalnız {0} yöneltici aldı." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:314 msgid "Reseed failed." msgstr "Yeniden tohumlama yapılamadı." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:317 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:315 #, java-format msgid "See {0} for help." msgstr "Yardım için {0} bölümüne bakın." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:318 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 msgid "reseed configuration page" msgstr "yeniden tohumlama ayarları sayfası" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:566 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:697 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:564 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:695 msgid "Reseeding: fetching seed URL." msgstr "Yeniden tohumlanıyor: tohum İnternet adresi alınıyor." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:623 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:733 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:621 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:731 #, java-format msgid "" "Reseeding: fetching router info from seed URL ({0} successful, {1} errors)." @@ -379,12 +382,12 @@ msgid "Unreachable on any transport" msgstr "Hiçbir aktarım için eriÅŸilebilir deÄŸil" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:674 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:566 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:577 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:604 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:622 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1348 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2469 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2474 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:92 msgid "Status" msgstr "Durum" @@ -399,12 +402,12 @@ msgid "{0} is used for outbound connections only" msgstr "{0} yalnız giden baÄŸlantılar için kullanılır" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:711 -#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:283 +#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:295 msgid "UPnP is not enabled" msgstr "UPnP etkin deÄŸil" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:720 -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:167 msgid "Help" msgstr "Yardım" @@ -428,7 +431,7 @@ msgstr "Tanımlar" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:726 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1352 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2473 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:24 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:33 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:35 @@ -439,11 +442,11 @@ msgstr "EÅŸ" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:726 msgid "The remote peer, identified by router hash" -msgstr "Uzak eÅŸ, yönlendirici hash'i tarafından tespit edilmiÅŸ" +msgstr "Uzak eÅŸ, yöneltici karması tarafından belirlenmiÅŸ" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:727 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1353 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Dir" msgstr "Klasör" @@ -470,14 +473,14 @@ msgstr "Bir paketin alınması / gönderilmesi üzerinden geçen zaman" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:735 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1355 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2479 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 msgid "Idle" msgstr "BoÅŸta" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:736 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1356 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "In/Out" msgstr "GiriÅŸ/Çıkış" @@ -491,20 +494,20 @@ msgstr "Bu baÄŸlantının ne kadar zaman önce kurulduÄŸu" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:737 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1357 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:935 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2494 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:961 msgid "Up" msgstr "Yukarı" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:738 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1358 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2491 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2496 msgid "Skew" msgstr "Sapma" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:738 msgid "The difference between the peer's clock and your own" -msgstr "EÅŸin ve sizin saatleriniz arasındaki ayrım" +msgstr "Uzak eÅŸ ile sizin aranızdaki saat farkı" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:739 msgid "" @@ -547,7 +550,7 @@ msgstr "Geçerli en büyük gönderilen paket boyutu / öngörülen en büyük a #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:748 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1359 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2508 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 msgid "TX" msgstr "TX" @@ -557,7 +560,7 @@ msgstr "EÅŸe gönderilen toplam paket sayısı" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:749 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1360 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2510 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 msgid "RX" msgstr "RX" @@ -566,7 +569,7 @@ msgid "The total number of packets received from the peer" msgstr "EÅŸten alınan toplam paket sayısı" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:750 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2518 msgid "Dup TX" msgstr "Dup TX" @@ -575,7 +578,7 @@ msgid "The total number of packets retransmitted to the peer" msgstr "EÅŸe yeniden aktarılan toplam paket sayısı" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:751 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2520 msgid "Dup RX" msgstr "Dup RX" @@ -583,104 +586,104 @@ msgstr "Dup RX" msgid "The total number of duplicate packets received from the peer" msgstr "EÅŸten alınan toplam çift paket sayısı" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:560 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:561 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 msgid "Service" msgstr "Hizmet" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:564 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 msgid "WAN Common Interface Configuration" msgstr "Ortak WAN Arabirimi Ayarları" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:567 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:587 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:614 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:568 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:588 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:615 msgid "Type" msgstr "Tip" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:569 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:589 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:570 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:590 msgid "Upstream" msgstr "Yükleme" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:571 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:591 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:572 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:592 msgid "Downstream" msgstr "İndirme" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:575 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 msgid "WAN PPP Connection" msgstr "WAN PPP BaÄŸlantısı" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:583 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:610 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:288 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:314 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:584 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:611 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:295 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:321 msgid "Uptime" msgstr "Çalışma süresi" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:593 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:616 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:594 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:617 msgid "External IP" msgstr "Dış IP Adresi" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:597 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 msgid "Layer 3 Forwarding" msgstr "Layer 3 İletme" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:599 msgid "Default Connection Service" msgstr "Varsayılan BaÄŸlantı Hizmeti" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:602 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 msgid "WAN IP Connection" msgstr "WAN IP BaÄŸlantısı" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:620 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 msgid "WAN Ethernet Link Configuration" msgstr "WAN Ethernet BaÄŸlantısı Ayarı" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:641 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:642 msgid "Found Device" msgstr "Aygıt Bulundu" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:643 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:644 msgid "Subdevice" msgstr "Alt aygıt" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:664 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:665 msgid "UPnP Status" msgstr "UPnP Durumu" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:668 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:669 msgid "Disabled UPnP Devices" msgstr "UPnP Aygıtlarını Devre Dışı Bırak" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:682 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:683 msgid "" "UPnP has been disabled; Do you have more than one UPnP Internet Gateway " "Device on your LAN ?" msgstr "UPnP devre dışı bırakıldı. yerel ağınızda birden fazla UPnP İnternet geçidi olabilir mi?" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:685 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:686 msgid "UPnP has not found any UPnP-aware, compatible device on your LAN." msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:693 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:694 #, java-format msgid "The current external IP address reported by UPnP is {0}" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:695 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:696 msgid "The current external IP address is not available." msgstr "Geçerli dış IP adresi kullanılamıyor." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:699 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:700 #, java-format msgid "UPnP reports the maximum downstream bit rate is {0}bits/sec" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:701 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:702 #, java-format msgid "UPnP reports the maximum upstream bit rate is {0}bits/sec" msgstr "" @@ -689,12 +692,12 @@ msgstr "" #. {1,number,#####} prevents 12345 from being output as 12,345 in the English #. locale. #. If you want the digit separator in your locale, translate as {1}. -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:709 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:710 #, java-format msgid "{0} port {1,number,#####} was successfully forwarded by UPnP." msgstr "{0} kapısı {1,number,#####} UPnP tarafından yönlendirildi." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:711 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:712 #, java-format msgid "{0} port {1,number,#####} was not forwarded by UPnP." msgstr "{0} kapısı {1,number,#####} UPnP tarafından yönlendirilmedi." @@ -710,17 +713,17 @@ msgid "NTCP connections" msgstr "NTCP baÄŸlantıları" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1345 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2466 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2471 msgid "Limit" msgstr "Sınır" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1346 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2467 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2472 msgid "Timeout" msgstr "Zaman aşımı" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1354 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2483 msgid "IPv6" msgstr "IPv6" @@ -733,125 +736,125 @@ msgid "Backlogged?" msgstr "Biriken?" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1375 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2532 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2537 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Inbound" msgstr "Gelen" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1377 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2534 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2539 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Outbound" msgstr "Giden" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1432 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2699 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2704 #, java-format msgid "{0} peer" msgid_plural "{0} peers" msgstr[0] "{0} eÅŸ" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2465 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2470 msgid "UDP connections" msgstr "UDP baÄŸlantılari" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2475 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 msgid "Sort by peer hash" msgstr "EÅŸ karmasına göre sırala" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Direction/Introduction" msgstr "Yönerge/GiriÅŸ" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 msgid "Sort by idle inbound" msgstr "GeliÅŸ boÅŸta beklemesine göre sırala" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 msgid "Sort by idle outbound" msgstr "GidiÅŸ boÅŸta beklemesine göre sırala" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 msgid "Sort by inbound rate" msgstr "GeliÅŸ hızına göre sırala" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 msgid "Sort by outbound rate" msgstr "GidiÅŸ hızına göre sırala" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 msgid "Sort by connection uptime" msgstr "BaÄŸlantı süresine göre sırala" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 msgid "Sort by clock skew" msgstr "Saat sapmasına göre sırala" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 msgid "Sort by congestion window" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2502 msgid "Sort by slow start threshold" msgstr "YavaÅŸ baÅŸlangıç eÅŸiÄŸine göre sırala" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2505 msgid "Sort by round trip time" msgstr "GidiÅŸ-dönüş süresine göre sırala" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2504 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 msgid "Sort by retransmission timeout" msgstr "Yeniden aktarım zaman aşımına göre sırala" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2507 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2512 msgid "Sort by outbound maximum transmit unit" msgstr "GidiÅŸ en fazla aktarım birimine göre sırala" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 msgid "Sort by packets sent" msgstr "Gönderilen paketlere göre sırala" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2511 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 msgid "Sort by packets received" msgstr "Alınan paketlere göre sırala" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2519 msgid "Sort by packets retransmitted" msgstr "Yeniden aktarılan paketlere göre sırala" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2521 msgid "Sort by packets received more than once" msgstr "Bir kereden çok alınan paketlere göre sırala" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2536 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2541 msgid "We offered to introduce them" msgstr "Onlara tanıştırma önerdik" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2538 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2543 msgid "They offered to introduce us" msgstr "Bize tanıştırma önerildi" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2542 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2547 msgid "Choked" msgstr "Tıkanmış" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2550 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2555 msgid "1 fail" msgstr "1 baÅŸarısızlık" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2552 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2557 #, java-format msgid "{0} fails" msgstr "{0} baÅŸarısızlık" #. 1 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2558 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2563 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:166 #: ../java/src/net/i2p/router/web/ProfilesHelper.java:13 msgid "Banned" msgstr "Yasaklanmış" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2617 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2622 msgid "backlogged" msgstr "" @@ -868,96 +871,96 @@ msgstr "Tünel istekleri atılıyor: Yüksek görev gecikmesi" msgid "Dropping tunnel requests: Overloaded" msgstr "Tünel istekleri atılıyor: Aşırı yüklenme" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:693 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:695 msgid "Rejecting tunnels: Hidden mode" msgstr "Tüneller red ediliyor: Gizli kip" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:721 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:723 msgid "Rejecting tunnels: Request overload" msgstr "Tüneller reddediliyor: İstek aşırı yüklenmiÅŸ" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:752 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:754 msgid "Rejecting tunnels: Connection limit" msgstr "Tüneller reddediliyor: BaÄŸlantı sınırı" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:964 -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:997 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:966 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:999 msgid "Dropping tunnel requests: High load" msgstr "Tünel istekleri atılıyor: Yüksek yüklenme" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1076 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1078 msgid "Dropping tunnel requests: Queue time" msgstr "Tünel istekleri atılıyor: Kuyruk süresi" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:884 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:895 #, java-format msgid "New plugin version {0} is available" msgstr "Yeni uygulama eki {0} sürümü yayınlanmış" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:964 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:975 #, java-format msgid "Update check failed for plugin {0}" msgstr "{0} uygulama eki güncellemesi denetlenemedi" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:968 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:979 #, java-format msgid "No new version is available for plugin {0}" msgstr "{0} uygulama eki için yeni bir sürüm yayınlanmamış" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:992 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1003 #, java-format msgid "{0}B transferred" msgstr "{0}B aktarıldı" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1051 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1062 #, java-format msgid "Install failed from {0}" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1053 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1064 #: ../java/src/net/i2p/router/update/UpdateRunner.java:298 #, java-format msgid "Transfer failed from {0}" msgstr "{0} üzerinden aktarılamadı" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1328 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1339 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1403 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 #: ../java/src/net/i2p/router/web/SummaryHelper.java:715 msgid "Update downloaded" msgstr "Güncelleme indirildi" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 msgid "Restarting" msgstr "Yeniden baÅŸlatılıyor" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 msgid "Update verified" msgstr "Güncelleme doÄŸrulandı" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1381 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:189 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:306 #, java-format msgid "from {0}" msgstr "{0}'dan" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1396 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1407 #, java-format msgid "Unsigned update file from {0} is corrupt" msgstr "{0} üzerinden alınan imzasız dosya bozuk" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1425 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1436 #, java-format msgid "Failed copy to {0}" msgstr "{0} üzerine kopyalanamadı" -#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:47 +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:49 #: ../java/src/net/i2p/router/update/DevSU3UpdateRunner.java:40 #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:55 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:111 -#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:62 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:64 #: ../java/src/net/i2p/router/update/UnsignedUpdateRunner.java:41 #: ../java/src/net/i2p/router/update/UpdateRunner.java:155 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:573 @@ -966,6 +969,13 @@ msgstr "{0} üzerine kopyalanamadı" msgid "HTTP client proxy tunnel must be running" msgstr "HTTP istemci vekil sunucu tüneli çalışıyor olmalıdır" +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:83 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:242 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:88 +#, java-format +msgid "Requires Java version {0} but installed Java version is {1}" +msgstr "Java {0} sürümü gerekli ancak yüklü Java sürümü {1}" + #. set status before thread to ensure UI feedback #: ../java/src/net/i2p/router/update/DevSU3UpdateHandler.java:91 #: ../java/src/net/i2p/router/update/PluginUpdateHandler.java:82 @@ -975,24 +985,19 @@ msgstr "HTTP istemci vekil sunucu tüneli çalışıyor olmalıdır" msgid "Updating" msgstr "Güncelleniyor" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:209 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:218 msgid "In-network updates disabled. Check package manager." msgstr "AÄŸ içi güncellemeler devre dışı. Paket yöneticisini denetleyin." -#: ../java/src/net/i2p/router/update/NewsFetcher.java:215 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:224 msgid "No write permission for I2P install directory." msgstr "I2P kurulum klasörüne yazma izni yok." -#: ../java/src/net/i2p/router/update/NewsFetcher.java:223 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:232 #, java-format msgid "You must first update to version {0}" msgstr "Önce {0} sürümüne güncellemelisiniz" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:233 -#, java-format -msgid "Requires Java version {0} but installed Java version is {1}" -msgstr "Java {0} sürümü gerekli ancak yüklü Java sürümü {1}" - #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:62 #, java-format msgid "Checking for update of plugin {0}" @@ -1196,8 +1201,10 @@ msgid "unban now" msgstr "yasağı kaldırın" #: ../java/src/net/i2p/router/web/CSSHelper.java:149 -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../java/strings/Strings.java:29 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:217 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:221 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:219 @@ -1267,6 +1274,8 @@ msgstr "yasağı kaldırın" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:217 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:219 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:224 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:228 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:230 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:222 @@ -1292,6 +1301,16 @@ msgstr "yasağı kaldırın" msgid "I2P Router Console" msgstr "I2P Yöneltici Konsolu" +#: ../java/src/net/i2p/router/web/CertHelper.java:25 +msgid "Local SSL Certificates" +msgstr "" + +#: ../java/src/net/i2p/router/web/CertHelper.java:46 +#: ../java/src/net/i2p/router/web/CertHelper.java:51 +#: ../java/strings/Strings.java:63 +msgid "I2PTunnel" +msgstr "I2PTüneli" + #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:62 msgid "Error updating the configuration - please see the error logs" msgstr "Ayarlar güncellenirken bir sorun çıktı - lütfen hata günlüklerine bakın" @@ -1306,7 +1325,8 @@ msgstr "Ayarlar kaydedildi" #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:98 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:622 #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:391 -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:151 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:109 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:160 msgid "" "Error saving the configuration (applied but not saved) - please see the " "error logs" @@ -1511,7 +1531,7 @@ msgid "Add Client" msgstr "İstemci Ekle" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:116 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:503 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:517 #: ../java/src/net/i2p/router/web/SummaryHelper.java:452 msgid "Client" msgstr "İstemci" @@ -1543,9 +1563,9 @@ msgid "Plugin" msgstr "Uygulama Eki" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:248 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:304 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 msgid "Version" msgstr "Sürüm" @@ -1566,9 +1586,9 @@ msgid "License" msgstr "Lisans" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:294 -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/HomeHelper.java:171 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:157 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/HomeHelper.java:178 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:164 msgid "Website" msgstr "Web sitesi" @@ -1603,7 +1623,7 @@ msgstr "Sil" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:21 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigUIHandler.java:19 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:970 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:996 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:496 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:516 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:532 @@ -1613,7 +1633,7 @@ msgstr "SeçilmiÅŸleri silin" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:23 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1015 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:494 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:502 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:514 @@ -1709,11 +1729,11 @@ msgstr "anahtarlıkta bulunamadı" msgid "Invalid destination" msgstr "Hedef geçersiz" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:82 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:84 msgid "Log overrides updated" msgstr "Günlük deÄŸiÅŸiklikleri güncellendi" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:163 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:165 msgid "Log configuration saved" msgstr "Günlük ayarları kaydedildi" @@ -1761,8 +1781,8 @@ msgstr "UYAR" #: ../java/src/net/i2p/router/web/ConfigLoggingHelper.java:85 #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:170 -#: ../java/src/net/i2p/router/web/HomeHelper.java:208 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:904 +#: ../java/src/net/i2p/router/web/HomeHelper.java:215 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 msgid "Remove" msgstr "Sil" @@ -1781,11 +1801,12 @@ msgid "Home Page" msgstr "Ana Sayfa" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:328 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:335 msgid "Network" msgstr "AÄŸ" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:320 @@ -1819,6 +1840,7 @@ msgstr "AÄŸ" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:292 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:322 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:297 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:292 @@ -1837,8 +1859,8 @@ msgid "UI" msgstr "Arayüz" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:179 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:486 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:186 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 #: ../java/strings/Strings.java:73 msgid "Tunnels" msgstr "Tüneller" @@ -1857,15 +1879,15 @@ msgid "Logging" msgstr "Günlükleme" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:185 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:372 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:192 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:386 #: ../java/strings/Strings.java:68 msgid "Peers" msgstr "EÅŸler" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:497 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:230 msgid "Stats" msgstr "İstatistikler" @@ -1881,7 +1903,7 @@ msgstr "GeliÅŸmiÅŸ" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:491 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:479 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:641 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:593 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:560 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:511 msgid "Save changes" @@ -1938,11 +1960,11 @@ msgstr "UDP kapısı {0} olarak güncelleniyor" #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:328 msgid "Gracefully restarting into Hidden Router Mode" -msgstr "İncelikle Gızli Yönlendirici Kipi'yle yeniden baÅŸlatılıyor" +msgstr "Gızli Yöneltici Kipi ile yeniden baÅŸlatılıyor" #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:330 msgid "Gracefully restarting to exit Hidden Router Mode" -msgstr "Gizli Yönlendirici Kipi'nden çıkmak için incelikle yeniden baÅŸlatılıyor" +msgstr "Gizli Yöneltici Kipi'nden çıkılarak yeniden baÅŸlatılıyor" #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:339 msgid "Enabling UPnP" @@ -2062,7 +2084,7 @@ msgid "Unsupported" msgstr "Desteklenmiyor" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:24 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 msgid "Save changes and reseed now" msgstr "DeÄŸiÅŸiklikleri kaydet ve yeniden tohumla" @@ -2109,7 +2131,16 @@ msgid "Reseed successful, loaded {0} router info from file" msgid_plural "Reseed successful, loaded {0} router infos from file" msgstr[0] "Yeniden tohumlandı, dosyadan {0} yöneltici bilgisi yüklendi" -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:149 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:99 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +msgid "Reset URL list" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:107 +msgid "URL list reset successfully" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:158 msgid "Configuration saved successfully." msgstr "Ayarlar kaydedildi." @@ -2174,29 +2205,29 @@ msgstr "{0} içinde yeniden baÅŸlatılıyor" #: ../java/src/net/i2p/router/web/ConfigServiceHandler.java:199 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:471 msgid "Shutdown gracefully" -msgstr "İncelikle kapat" +msgstr "Uygun ÅŸekilde kapat" #: ../java/src/net/i2p/router/web/ConfigServiceHandler.java:203 msgid "Graceful shutdown initiated" -msgstr "İnce kapanma baÅŸlatıldı" +msgstr "Uygun ÅŸekilde kapatılıyor" #: ../java/src/net/i2p/router/web/ConfigServiceHandler.java:209 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:477 msgid "Cancel graceful shutdown" -msgstr "İnce kapanmayı iptal et" +msgstr "Uygun ÅŸekilde kapatmayı iptal et" #: ../java/src/net/i2p/router/web/ConfigServiceHandler.java:211 msgid "Graceful shutdown cancelled" -msgstr "İnce kapanma iptal edildi" +msgstr "Uygun ÅŸekilde kapatma iptal edildi" #: ../java/src/net/i2p/router/web/ConfigServiceHandler.java:212 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:491 msgid "Graceful restart" -msgstr "İncelikle yeniden baÅŸlat" +msgstr "Uygun ÅŸekilde yeniden baÅŸlat" #: ../java/src/net/i2p/router/web/ConfigServiceHandler.java:217 msgid "Graceful restart requested" -msgstr "İnce yeniden baÅŸlama istendi" +msgstr "Uygun ÅŸekilde yeniden baÅŸlatma istendi" #: ../java/src/net/i2p/router/web/ConfigServiceHandler.java:218 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:493 @@ -2442,7 +2473,7 @@ msgstr "Nicelik" #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:157 msgid "Backup quantity" -msgstr "Yedekleme sayısı" +msgstr "Yedek sayısı" #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:179 msgid "Inbound options" @@ -2606,8 +2637,8 @@ msgid "User Name" msgstr "Kullanıcı Adı" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:183 -#: ../java/src/net/i2p/router/web/HomeHelper.java:235 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:972 +#: ../java/src/net/i2p/router/web/HomeHelper.java:242 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:998 msgid "Add" msgstr "Ekle" @@ -2838,13 +2869,13 @@ msgstr "Etkinlik" msgid "Details" msgstr "Ayrıntılar" -#: ../java/src/net/i2p/router/web/FormHandler.java:251 +#: ../java/src/net/i2p/router/web/FormHandler.java:253 msgid "" "Invalid form submission, probably because you used the 'back' or 'reload' " "button on your browser. Please resubmit." msgstr "Geçersiz form gönderisi, olasılıkla tarayıcınızın \"geri\" veya \"yenile\" düğmelerini kullandığınız için. Lütfen yeniden gönderin." -#: ../java/src/net/i2p/router/web/FormHandler.java:253 +#: ../java/src/net/i2p/router/web/FormHandler.java:255 msgid "" "If the problem persists, verify that you have cookies enabled in your " "browser." @@ -2975,254 +3006,274 @@ msgstr "Ayarlar kaydedilip çizelgeleri yeniden oluÅŸturulsun" msgid "Graph settings saved" msgstr "Çizelge ayarları kaydedildi" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:229 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:236 msgid "Addressbook" msgstr "Adres defteri" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:227 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:234 msgid "Manage your I2P hosts file here (I2P domain name resolution)" msgstr "I2P hosts dosyasını buradan yönetin (I2P etki alanı çözümlemesi)" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 msgid "Configure Bandwidth" msgstr "Bant GeniÅŸliÄŸi Ayarları" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:330 msgid "I2P Bandwidth Configuration" msgstr "I2P Bant GeniÅŸliÄŸi Ayarları" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Configure Language" msgstr "Dil Ayarları" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Console Language Selection" msgstr "Konsol Dili Seçimi" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 msgid "Customize Home Page" msgstr "Ana Sayfayı ÖzelleÅŸtirin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:346 msgid "I2P Home Page Configuration" msgstr "I2P Ana Sayfa Ayarları" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:139 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:146 msgid "Anonymous webmail client" msgstr "Anonim web posta istemcisi" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:141 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:148 msgid "Email" msgstr "E-posta" -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:251 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 msgid "I2P Router Help" msgstr "I2P Yöneltici Yardımı" -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:161 msgid "Router Console" msgstr "Yöneltici Konsolu" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:145 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:152 msgid "Built-in anonymous BitTorrent Client" msgstr "İçsel Anonim BitTorrent İstemcisi" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:147 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:154 msgid "Torrents" msgstr "Torrentler" -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:155 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:162 msgid "Local web server" msgstr "Yerel web sunucusu" -#: ../java/src/net/i2p/router/web/HomeHelper.java:41 +#: ../java/src/net/i2p/router/web/HomeHelper.java:43 msgid "The Anoncoin project" -msgstr "" +msgstr "Anoncoin projesi" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug Reports" msgstr "Hata Bildirimleri" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug tracker" msgstr "Hata izleyici" #. "colombo-bt.i2p" + S + _x("The Italian Bittorrent Resource") + S + "http #. ://colombo-bt.i2p/" + S + I + "colomboicon.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Dev Forum" msgstr "GeliÅŸtirici Forumu" -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Development forum" msgstr "GeliÅŸtirici Forumu" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Bittorrent tracker" msgstr "Bittorrent izleyici" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 msgid "diftracker" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:46 +#: ../java/src/net/i2p/router/web/HomeHelper.java:48 msgid "I2P Applications" msgstr "I2P Uygulamaları" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +msgid "Anonymous cryptocurrency exchange" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "FAQ" msgstr "SSS" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "Frequently Asked Questions" msgstr "Sık Sorulan Sorular" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Community forum" msgstr "Topluluk forumu" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Forum" msgstr "Forum" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "" "A public anonymous Git hosting site - supports pulling via Git and HTTP and " "pushing via SSH" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "Anonymous Git Hosting" -msgstr "" +msgstr "Anonim Git Barındırma" -#: ../java/src/net/i2p/router/web/HomeHelper.java:50 +#: ../java/src/net/i2p/router/web/HomeHelper.java:53 msgid "HiddenGate" +msgstr "GizliGeçit" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "Anonymous wiki - share the knowledge" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 -msgid "Microblog" +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "I2P Wiki" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +msgid "Microblog" +msgstr "Mikroblog" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Your premier microblogging service on I2P" -msgstr "" +msgstr "I2P üzerindeki öncelikli mikroblog hizmetiniz" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 msgid "Javadocs" -msgstr "" +msgstr "JavaBelgeleri" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical documentation" -msgstr "" +msgstr "Teknik belgeler" #. "jisko.i2p" + S + _x("Simple and fast microblogging website") + S + #. "http://jisko.i2p/" + S + I + "jisko_console_icon.png" + S + #. _x("Key Server") + S + _x("OpenPGP Keyserver") + S + "http://keys.i2p/" + S #. + I + "education.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +#: ../java/src/net/i2p/router/web/HomeHelper.java:60 msgid "Debian and Tahoe-LAFS repositories" -msgstr "" +msgstr "Debian ve Tahoe-LAFS depoları" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free Web Hosting" -msgstr "" +msgstr "Ücretsiz Web Barındırma" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free eepsite hosting with PHP and MySQL" -msgstr "" +msgstr "PHP ve MySQL destekli ücretsiz eepsite barındırma" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "I2P Pastebin" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "Pastebin" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:58 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 msgid "I2P News" +msgstr "I2P Haberleri" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +msgid "Planet I2P" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Add-on directory" -msgstr "" +msgstr "Eklenti dizini" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Plugins" -msgstr "" +msgstr "Uygulama ekleri" -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Postman's Tracker" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "I2P home page" msgstr "I2P ana sayfası" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "Project Website" msgstr "Proje Web Sitesi" +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:68 +msgid "Russian News Feed" +msgstr "" + #. "Salt" + S + "salt.i2p" + S + "http://salt.i2p/" + S + I + #. "salt_console.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +#: ../java/src/net/i2p/router/web/HomeHelper.java:70 msgid "I2P Network Statistics" msgstr "I2P AÄŸ İstatistikleri" -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical Docs" msgstr "Teknik Belgeler" -#: ../java/src/net/i2p/router/web/HomeHelper.java:65 +#: ../java/src/net/i2p/router/web/HomeHelper.java:72 msgid "Trac Wiki" msgstr "Trac Wiki" -#: ../java/src/net/i2p/router/web/HomeHelper.java:66 -msgid "Ugha's Wiki" -msgstr "Ugha's Wiki" - -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Seedless and the Robert BitTorrent applications" msgstr "Seedless ve Robert BitTorrent uygulamaları" -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#. _x("Ugha's Wiki") + S + S + "http://ugha.i2p/" + S + I + +#. "billiard_marker.png" + S + +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Sponge's main site" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:108 +#: ../java/src/net/i2p/router/web/HomeHelper.java:115 msgid "The HTTP proxy is not up" msgstr "HTTP vekil sunucusu çalışmıyor" -#: ../java/src/net/i2p/router/web/HomeHelper.java:110 +#: ../java/src/net/i2p/router/web/HomeHelper.java:117 #, java-format msgid "Your browser is not properly configured to use the HTTP proxy at {0}" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:210 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:906 +#: ../java/src/net/i2p/router/web/HomeHelper.java:217 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:932 msgid "Name" msgstr "Ad" -#: ../java/src/net/i2p/router/web/HomeHelper.java:212 +#: ../java/src/net/i2p/router/web/HomeHelper.java:219 msgid "URL" msgstr "İnternet Adresi" #: ../java/src/net/i2p/router/web/JobQueueHelper.java:50 msgid "I2P Job Queue" -msgstr "" +msgstr "I2P İş KuyruÄŸu" #: ../java/src/net/i2p/router/web/JobQueueHelper.java:51 msgid "Job runners" @@ -3344,216 +3395,225 @@ msgstr "Tam İstatistkler ile Tüm Yönelticiler" msgid "LeaseSets" msgstr "Kiralama Kümeleri" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:105 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:106 #: ../java/strings/Strings.java:69 msgid "Router" msgstr "Yöneltici" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:112 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:113 msgid "not found in network database" msgstr "aÄŸ veritabanında bulunamadı" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:156 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 msgid "LeaseSet" msgstr "Kiralama Kümesi" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:158 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:163 msgid "Local" msgstr "Yerel" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:160 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:165 msgid "Unpublished" msgstr "Yayınlanmamış" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:176 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:166 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:181 msgid "Destination" msgstr "Hedef" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:173 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:185 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:178 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 msgid "Add to local addressbook" msgstr "Yerel adres defterine ekleyin" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:217 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:195 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:222 #, java-format msgid "Expires in {0}" msgstr "{0} içinde bitecek" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:192 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:219 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:197 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:224 #, java-format msgid "Expired {0} ago" msgstr "{0} önce bitti" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Gateway" msgstr "Geçit" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 msgid "Lease" msgstr "Kiralama" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:213 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:218 msgid "Tunnel" msgstr "Tünel" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:280 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:286 msgid "Not initialized" msgstr "BaÅŸlatılmamış" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:330 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:342 msgid "Network Database Router Statistics" msgstr "AÄŸ Veritabanı Yöneltici İstatistikleri" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Count" msgstr "Sayı" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 msgid "Transports" msgstr "Aktarımlar" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Country" msgstr "Ülke" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:429 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:453 msgid "Our info" msgstr "Bilgilerimiz" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:431 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:455 msgid "Peer info for" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:433 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:457 msgid "Full entry" msgstr "Tam kayıt" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 #: ../java/src/net/i2p/router/web/SummaryHelper.java:152 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:726 msgid "Hidden" msgstr "Gizli" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 msgid "Updated" msgstr "Güncellenme" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:441 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:444 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:465 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:468 #, java-format msgid "{0} ago" msgstr "{0} önce" #. shouldnt happen -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:443 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:447 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:467 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:471 msgid "Published" msgstr "Yayınlanmış" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:449 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 msgid "Signing Key" msgstr "İmzalama Anahtarı" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:451 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:475 msgid "Address(es)" msgstr "Adres(ler)" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:463 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:487 msgid "cost" msgstr "maliyet" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "Hidden or starting up" msgstr "Gizli ya da baÅŸlatılıyor" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU" msgstr "SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU with introducers" msgstr "Tanıştırıcı destekli SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP" msgstr "NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU" msgstr "NTCP ve SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU with introducers" msgstr "Tanıştırıcı destekli NTCP ve SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 Only SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU" -msgstr "" +msgstr "IPv6 SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP" -msgstr "" +msgstr "IPv6 NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU" -msgstr "" +msgstr "IPv6 NTCP, SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 Only NTCP, SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NewsHelper.java:295 +#: ../java/src/net/i2p/router/web/NewsFeedHelper.java:80 +#, java-format +msgid "by {0}" +msgstr "" + +#: ../java/src/net/i2p/router/web/NewsHelper.java:292 #, java-format msgid "News last updated {0} ago." msgstr "Haberler en son {0} önce güncellendi." -#: ../java/src/net/i2p/router/web/NewsHelper.java:301 +#: ../java/src/net/i2p/router/web/NewsHelper.java:298 #, java-format msgid "News last checked {0} ago." msgstr "Haberler en son {0} önce denetlendi." -#: ../java/src/net/i2p/router/web/NewsHelper.java:310 +#: ../java/src/net/i2p/router/web/NewsHelper.java:307 msgid "Hide news" msgstr "Haberleri gizle" -#: ../java/src/net/i2p/router/web/NewsHelper.java:313 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:647 +#: ../java/src/net/i2p/router/web/NewsHelper.java:310 msgid "Show news" msgstr "Haberleri görüntüle" +#: ../java/src/net/i2p/router/web/NewsHelper.java:314 +msgid "Show all news" +msgstr "" + #: ../java/src/net/i2p/router/web/PluginStarter.java:140 msgid "Checking for plugin updates" msgstr "Uygulama ekleri için güncellemeler denetleniyor" #: ../java/src/net/i2p/router/web/PluginStarter.java:155 +#: ../java/src/net/i2p/router/web/PluginStarter.java:161 msgid "Plugin update check failed" msgstr "Uygulama eki güncellemeleri denetlenemedi" -#: ../java/src/net/i2p/router/web/PluginStarter.java:193 +#: ../java/src/net/i2p/router/web/PluginStarter.java:199 #, java-format msgid "1 plugin updated" msgid_plural "{0} plugins updated" msgstr[0] "{0} uygulama eki güncellendi" -#: ../java/src/net/i2p/router/web/PluginStarter.java:195 +#: ../java/src/net/i2p/router/web/PluginStarter.java:201 msgid "Plugin update check complete" msgstr "Uygulama eki güncelleme denetimi tamamlandı" @@ -3616,7 +3676,7 @@ msgid "Failing" msgstr "BaÅŸasırız" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:135 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:411 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:425 msgid "Integrated" msgstr "TümleÅŸtirilmiÅŸ" @@ -3883,277 +3943,287 @@ msgstr "Çizelgedeki Etkinlik Sayısı" msgid "Lifetime average value" msgstr "Ömür boyu ortalama deÄŸeri" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:121 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:128 msgid "I2P Router Help & FAQ" msgstr "I2P Yöneltici Yardımı ve SSS" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:123 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:130 msgid "Help & FAQ" msgstr "Yardım ve SSS" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:131 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:138 msgid "" "Configure startup of clients and webapps (services); manually start dormant " "services" msgstr "İstemcilerin ve webapp (hizmetlerin) baÅŸlatılmasını ayarlayın. Çalışmayan hizmetleri el ile baÅŸlatın" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:133 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:140 msgid "I2P Services" msgstr "I2P Hizmetleri" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:169 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:176 msgid "Configure I2P Router" msgstr "I2P Yöneltici Ayarları" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:171 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:178 msgid "I2P Internals" msgstr "I2P Bilgileri" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:177 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:484 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:184 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:498 msgid "View existing tunnels and tunnel build status" msgstr "Varolan tünel ve tünel yapım durumlarını görüntüle" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:183 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:370 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:190 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:384 msgid "Show all current peer connections" msgstr "Tüm geçerli eÅŸ baÄŸlantılarını görüntüle" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:189 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:196 msgid "Show recent peer performance profiles" msgstr "Yaınlardaki eÅŸ baÅŸarım profillerini görüntüle" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:191 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:198 msgid "Profiles" msgstr "Profiller" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:195 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:202 msgid "Show list of all known I2P routers" msgstr "Tüm bilinen I2P yönelticilerinin listesini görüntüle" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:197 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:204 msgid "NetDB" msgstr "NetDB" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:201 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:208 msgid "Health Report" msgstr "SaÄŸlık Durumu" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:203 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:210 msgid "Logs" msgstr "Günlükler" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:214 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 msgid "Graph router performance" msgstr "Yöneltici baÅŸarımı çizelgesi" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:216 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 msgid "Graphs" msgstr "Çizelgeler" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:228 msgid "Textual router performance statistics" msgstr "Metin bazlı yöneltici baÅŸarım istatistikleri" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:233 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:240 #: ../java/src/net/i2p/router/web/SummaryHelper.java:438 msgid "Local Tunnels" msgstr "Yerel Tüneller" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:235 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:242 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:164 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:337 msgid "Hidden Services Manager" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:253 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:260 msgid "General" msgstr "Genel" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 msgid "" "Your Local Identity is your unique I2P router identity, similar to an ip " "address but tailored to I2P. " msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:259 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:266 msgid "Never disclose this to anyone, as it can reveal your real world ip." msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:261 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:268 msgid "Local Identity" msgstr "Yerel Kimlik" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:272 msgid "Your unique I2P router identity is" msgstr "EÅŸsiz I2P yöneltici kimliÄŸiniz" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:269 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:276 msgid "never reveal it to anyone" msgstr "asla kimseye söylemeyin" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:271 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 msgid "show" msgstr "görüntüle" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:275 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:301 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:282 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:308 msgid "The version of the I2P software we are running" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:292 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:318 msgid "How long we've been running for this session" msgstr "Bu oturumun çalışma süresi" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:326 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:333 msgid "" "Help with configuring your firewall and router for optimal I2P performance" msgstr "En iyi I2P baÅŸarımı için güvenlik duvarı ve yönelticinizi nasıl ayarlayacağınız hakkında yardım" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:337 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:344 msgid "See more information on the wiki" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:339 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:346 msgid "Warning: ECDSA is not available. Update your Java or OS" msgstr "" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:351 -msgid "Configure I2P Updates" +#, java-format +msgid "Warning: Java version {0} is no longer supported by I2P." msgstr "" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#, java-format +msgid "Update Java to version {0} or higher to receive I2P updates." +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:365 +msgid "Configure I2P Updates" +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:367 msgid "I2P Update" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:378 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:392 msgid "Peers we've been talking to in the last few minutes/last hour" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:381 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:395 msgid "Active" msgstr "Etkin" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:390 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:404 msgid "The number of peers available for building client tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:393 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:407 msgid "Fast" msgstr "Hızlı" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:399 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:413 msgid "The number of peers available for building exploratory tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:402 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:416 msgid "High capacity" msgstr "Yüksek kapasiteli" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:408 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:422 msgid "The number of peers available for network database inquiries" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:417 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:431 msgid "The total number of peers in our network database" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:420 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:434 msgid "Known" msgstr "Bilinen" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:440 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:454 msgid "Configure router bandwidth allocation" msgstr "Yöneltici bant geniÅŸliÄŸi kullanımını ayarlayın" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:442 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:456 msgid "Bandwidth in/out" msgstr "Bant geniÅŸliÄŸi gelen/giden" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:462 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:476 msgid "Total" msgstr "Toplam" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:469 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:483 msgid "Used" msgstr "Kullanılan" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:491 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:505 msgid "" "Used for building and testing tunnels, and communicating with floodfill " "peers" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:494 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:508 msgid "Exploratory" msgstr "KeÅŸif" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:514 msgid "Tunnels we are using to provide or access services on the network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:509 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:523 msgid "" "Tunnels we are participating in, directly contributing bandwidth to the " "network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:512 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:526 msgid "Participating" msgstr "Katılınan" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:518 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:532 msgid "" "The ratio of tunnel hops we provide to tunnel hops we use - a value greater " "than 1.00 indicates a positive contribution to the network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:521 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:535 msgid "Share ratio" msgstr "Paylaşım oranı" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:534 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:548 msgid "What's in the router's job queue?" msgstr "Yönelticinin iÅŸ kuyruÄŸunda bulunanlar" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:536 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 msgid "Congestion" msgstr "Sıkışıklık" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:541 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:555 msgid "Indicates router performance" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:544 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:558 msgid "Job lag" msgstr "İş gecikmesi" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:564 msgid "Indicates how quickly outbound messages to other I2P routers are sent" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:553 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:567 msgid "Message delay" msgstr "İleti gecikmesi" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:560 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:574 msgid "Round trip time for a tunnel test" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:563 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:577 msgid "Tunnel lag" msgstr "Tünel gecikmesi" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:570 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:584 msgid "Queued requests from other routers to participate in tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:573 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:587 msgid "Backlog" msgstr "Arka günlük" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:608 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:623 msgid "News & Updates" msgstr "" @@ -4266,17 +4336,21 @@ msgid "Click Shutdown and restart to install" msgstr "Yüklemek için kapatıp yeniden baÅŸlatın" #: ../java/src/net/i2p/router/web/SummaryHelper.java:720 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:735 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:737 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:749 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:761 #, java-format msgid "Version {0}" msgstr "Sürüm {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:734 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:736 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:748 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:760 msgid "Update available" msgstr "" #. Note to translators: parameter is a version, e.g. "0.8.4" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:758 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:784 #, java-format msgid "Download {0} Update" msgstr "" @@ -4285,7 +4359,7 @@ msgstr "" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:766 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:792 #, java-format msgid "Download Signed<br>Development Update<br>{0}" msgstr "" @@ -4294,56 +4368,56 @@ msgstr "" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:774 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 #, java-format msgid "Download Unsigned<br>Update {0}" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:798 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:824 msgid "Help with firewall configuration" msgstr "Güvenlik duvarı ayarlama yardımı" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:826 msgid "Check network connection and NAT/firewall" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:819 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:845 msgid "Reseed" msgstr "Yeniden tohumlama" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:908 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:934 msgid "Order" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:925 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:951 msgid "Top" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:956 msgid "Move to top" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:940 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:966 msgid "Move up" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:948 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:974 msgid "Down" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:953 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:979 msgid "Move down" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:958 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:984 msgid "Bottom" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:963 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 msgid "Move to bottom" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:975 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1001 msgid "Select a section to add" msgstr "" @@ -4390,100 +4464,100 @@ msgstr "İstemci tünelleri" msgid "dead" msgstr "ölü" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:70 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:69 msgid "Participating tunnels" msgstr "Katılınan tüneller" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "Receive on" msgstr "Alınma zamanı" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Expiration" msgstr "Sona erme" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Send on" msgstr "Gönderilme zamanı" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Rate" msgstr "Hız" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Role" msgstr "Rol" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Usage" msgstr "Kullanım" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:111 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:113 msgid "grace period" msgstr "deneme süresi" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:121 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 msgid "Outbound Endpoint" msgstr "GidiÅŸ Noktası" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 msgid "Inbound Gateway" msgstr "GeliÅŸ Geçidi" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:127 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:174 msgid "Participant" msgstr "Katılımcı" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:130 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:133 #, java-format msgid "Limited display to the {0} tunnels with the highest usage" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:131 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:135 msgid "Inactive participating tunnels" msgstr "Katılınan etkin olmayan tüneller" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:132 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:224 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:138 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:232 msgid "Lifetime bandwidth usage" msgstr "Ömür boyu bant geniÅŸliÄŸi kullanımı" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Expiry" msgstr "Sona erme" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:165 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 msgid "Participants" msgstr "Katılımcılar" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:177 msgid "Endpoint" msgstr "Varış noktası" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 #: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "Build in progress" msgstr "Yapılıyor" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 msgid "inbound" msgstr "geliÅŸ" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "outbound" msgstr "gidiÅŸ" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:223 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:231 msgid "No tunnels; waiting for the grace period to end." msgstr "Tünel yok, çalışma süresinin bitmesi bekleniyor." -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:225 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:233 msgid "in" msgstr "gelen" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:234 msgid "out" msgstr "giden" @@ -4620,10 +4694,6 @@ msgstr "Åžifreleme" msgid "i2cp" msgstr "i2cp" -#: ../java/strings/Strings.java:63 -msgid "I2PTunnel" -msgstr "I2PTüneli" - #: ../java/strings/Strings.java:64 msgid "InNetPool" msgstr "InNet Havuzu" @@ -4670,10 +4740,12 @@ msgstr "anahtar" msgid "port" msgstr "kapı" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 -msgid "configure bandwidth" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:146 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:318 +msgid "Certificates" msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:153 @@ -4707,6 +4779,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:149 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:155 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:154 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:149 @@ -4722,6 +4795,7 @@ msgstr "" #. We have intl defined when this is included, but not when compiled #. standalone. +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:333 @@ -4754,6 +4828,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:305 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:310 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:305 @@ -4769,6 +4844,7 @@ msgid "Refresh (s)" msgstr "Yenileme (s)" #. ditto +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:337 @@ -4801,6 +4877,7 @@ msgstr "Yenileme (s)" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:309 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:339 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:314 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:309 @@ -4815,6 +4892,10 @@ msgstr "Yenileme (s)" msgid "Enable" msgstr "EtkinleÅŸtir" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 +msgid "configure bandwidth" +msgstr "" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:437 msgid "Bandwidth limiter" msgstr "Bant geniÅŸliÄŸi sınırlayıcı" @@ -4891,7 +4972,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:501 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:477 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:639 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:587 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:558 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:509 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:461 @@ -5924,51 +6005,51 @@ msgstr "" msgid "Reseed URLs" msgstr "Yeniden Tohumlama İnternet Adresleri" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:541 msgid "Enable HTTP Proxy?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:543 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:545 msgid "HTTP Proxy Host" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:547 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:549 msgid "HTTP Proxy Port" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:551 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:553 msgid "Use HTTP Proxy Authorization?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:555 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:557 msgid "HTTP Proxy Username" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:559 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:561 msgid "HTTP Proxy Password" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:563 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:565 msgid "Enable HTTPS Proxy?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:567 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:569 msgid "HTTPS Proxy Host" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:571 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:573 msgid "HTTPS Proxy Port" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:575 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:577 msgid "Use HTTPS Proxy Authorization?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:579 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:581 msgid "HTTPS Proxy Username" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:583 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:585 msgid "HTTPS Proxy Password" msgstr "" @@ -6527,6 +6608,14 @@ msgstr "" msgid "I2P Network Database" msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:148 +msgid "News" +msgstr "" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:344 +msgid "Latest News" +msgstr "" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:152 msgid "WebApp Not Found" msgstr "" diff --git a/apps/routerconsole/locale/messages_uk.po b/apps/routerconsole/locale/messages_uk.po index 6784e6bcfa3ae373c28f86f665ceeb23c023f2a0..596414f1855d82ea24a7c08400f87cf7295858da 100644 --- a/apps/routerconsole/locale/messages_uk.po +++ b/apps/routerconsole/locale/messages_uk.po @@ -8,6 +8,7 @@ # Anton Zub <azb.0x7dc@gmail.com>, 2014 # Denis Lysenko <gribua@gmail.com>, 2011,2015 # Denis Lysenko <gribua@gmail.com>, 2011 +# Denis Lysenko <gribua@gmail.com>, 2011,2015 # Denis Lysenko <gribua@gmail.com>, 2011 # jonny_nut, 2014 # jonny_nut, 2014 @@ -15,6 +16,8 @@ # LinuxChata, 2014 # madjong <madjong@i2pmail.org>, 2015 # madjong <madjong@i2pmail.org>, 2015 +# Maus <ru-ko@ukr.net>, 2015 +# Maxym Mykhalchuk, 2015 # Maxym Mykhalchuk, 2015 # naeto <a89393@rmqkr.net>, 2012 # puxud <puxud@alivance.com>, 2014 @@ -24,9 +27,9 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:05+0000\n" -"PO-Revision-Date: 2015-08-07 16:30+0000\n" -"Last-Translator: Denis Lysenko <gribua@gmail.com>\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-05 17:17+0000\n" +"Last-Translator: kytv <killyourtv@i2pmail.org>\n" "Language-Team: Ukrainian (Ukraine) (http://www.transifex.com/otf/I2P/language/uk_UA/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -154,19 +157,22 @@ msgid "IPs Permanently Banned" msgstr "Ðазавжди заблоковані IPs адреÑи" #: ../../../router/java/src/net/i2p/router/Blocklist.java:959 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "From" msgstr "Від" #: ../../../router/java/src/net/i2p/router/Blocklist.java:961 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "To" msgstr "Кому" #: ../../../router/java/src/net/i2p/router/Blocklist.java:997 #: ../java/src/net/i2p/router/web/BanlistRenderer.java:48 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:652 +#: ../java/src/net/i2p/router/web/CertHelper.java:77 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:147 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:662 #: ../java/src/net/i2p/router/web/SummaryHelper.java:478 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:137 msgid "none" msgstr "немає" @@ -304,17 +310,17 @@ msgstr "Ðе приймаємо тунелі: Маршрутизатор зав msgid "Rejecting tunnels" msgstr "Ðе приймаємо тунелі" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:212 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:210 #, java-format msgid "Reseeding: got router info from file ({0} successful, {1} errors)." msgstr "ПроводитьÑÑ Ð¿Ð¾Ñ‡Ð°Ñ‚ÐºÐ¾Ð²Ðµ завантаженнÑ: отримуємо ÑпиÑок маршрутизаторів з каталогів URL ({0} уÑпішно, {1} помилок)." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:284 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:282 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:28 msgid "Reseeding" msgstr "Початкове завантаженнÑ" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:307 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:305 #, java-format msgid "Reseed fetched only 1 router." msgid_plural "Reseed fetched only {0} routers." @@ -322,26 +328,26 @@ msgstr[0] "При початковому завантаженні отриман msgstr[1] "При початковому завантаженні отримано дані лише про {0} маршрутизатори." msgstr[2] "При початковому завантаженні отримано дані лише про {0} маршрутизаторів." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:314 msgid "Reseed failed." msgstr "Спроба початкового запуÑку провалилаÑÑŒ." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:317 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:315 #, java-format msgid "See {0} for help." msgstr "ДивітьÑÑ {0} Ð´Ð»Ñ Ð´Ð¾Ð¿Ð¾Ð¼Ð¾Ð³Ð¸." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:318 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 msgid "reseed configuration page" msgstr "Сторінка конфігурації початкового завантаженнÑ" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:566 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:697 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:564 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:695 msgid "Reseeding: fetching seed URL." msgstr "ПроводитьÑÑ Ð¿Ð¾Ñ‡Ð°Ñ‚ÐºÐ¾Ð²Ðµ завантаженнÑ: ЗавантажуютьÑÑ URL каталогів маршрутизаторів" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:623 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:733 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:621 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:731 #, java-format msgid "" "Reseeding: fetching router info from seed URL ({0} successful, {1} errors)." @@ -406,12 +412,12 @@ msgid "Unreachable on any transport" msgstr "ÐедоÑÑжний через жодний транÑпортний протокол" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:674 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:566 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:577 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:604 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:622 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1348 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2469 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2474 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:92 msgid "Status" msgstr "СтатуÑ" @@ -426,12 +432,12 @@ msgid "{0} is used for outbound connections only" msgstr "{0} викориÑтовуєтьÑÑ Ñ‚Ñ–Ð»ÑŒÐºÐ¸ Ð´Ð»Ñ Ð²Ð¸Ñ…Ñ–Ð´Ð½Ð¸Ñ… з'єднань" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:711 -#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:283 +#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:295 msgid "UPnP is not enabled" msgstr "UPnP не ввімкнено" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:720 -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:167 msgid "Help" msgstr "Допомога" @@ -455,7 +461,7 @@ msgstr "Умовні позначеннÑ" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:726 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1352 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2473 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:24 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:33 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:35 @@ -470,7 +476,7 @@ msgstr "Віддалений пір, ідентифікований хешем #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:727 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1353 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Dir" msgstr "ÐапрÑмок" @@ -497,14 +503,14 @@ msgstr "Ð§Ð°Ñ Ñкий пройшов піÑÐ»Ñ Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ / відп #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:735 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1355 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2479 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 msgid "Idle" msgstr "Ðеактивний" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:736 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1356 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "In/Out" msgstr "Прийом/Передача" @@ -518,14 +524,14 @@ msgstr "Ð§Ð°Ñ Ñкий пройшов піÑÐ»Ñ Ð²ÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð·'Ñ” #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:737 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1357 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:935 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2494 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:961 msgid "Up" msgstr "Підключений" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:738 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1358 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2491 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2496 msgid "Skew" msgstr "ВідхиленнÑ" @@ -574,7 +580,7 @@ msgstr "Поточний макÑимальний розмір відправл #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:748 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1359 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2508 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 msgid "TX" msgstr "Передано" @@ -584,7 +590,7 @@ msgstr "Загальна кількіÑть пакетів, відправлен #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:749 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1360 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2510 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 msgid "RX" msgstr "ПрийнÑто" @@ -593,7 +599,7 @@ msgid "The total number of packets received from the peer" msgstr "Загальна кількіÑть пакетів, отриманих від вузла" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:750 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2518 msgid "Dup TX" msgstr "Повт. передано" @@ -602,7 +608,7 @@ msgid "The total number of packets retransmitted to the peer" msgstr "Загальна кількіÑть пакетів, повторно відправлених до вузла" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:751 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2520 msgid "Dup RX" msgstr "Повт. прийнÑто" @@ -610,104 +616,104 @@ msgstr "Повт. прийнÑто" msgid "The total number of duplicate packets received from the peer" msgstr "Загальна кількіÑть пакетів, повторно отриманих від вузла" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:560 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:561 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 msgid "Service" msgstr "СервіÑ" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:564 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 msgid "WAN Common Interface Configuration" msgstr "Загальна ÐºÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ WAN-інтерфейÑів" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:567 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:587 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:614 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:568 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:588 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:615 msgid "Type" msgstr "Тип" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:569 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:589 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:570 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:590 msgid "Upstream" msgstr "ВиÑхідний канал" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:571 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:591 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:572 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:592 msgid "Downstream" msgstr "Ðизхідний канал" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:575 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 msgid "WAN PPP Connection" msgstr "WAN PPP-з'єднаннÑ" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:583 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:610 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:288 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:314 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:584 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:611 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:295 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:321 msgid "Uptime" msgstr "Ðптайм" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:593 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:616 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:594 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:617 msgid "External IP" msgstr "Зовнішній IP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:597 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 msgid "Layer 3 Forwarding" msgstr "Layer 3 переÑилка" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:599 msgid "Default Connection Service" msgstr "Служба з'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð·Ð° замовчуваннÑм" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:602 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 msgid "WAN IP Connection" msgstr "WAN IP з'єднаннÑ" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:620 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 msgid "WAN Ethernet Link Configuration" msgstr "ÐÐ°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð·'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ WAN Ethernet" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:641 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:642 msgid "Found Device" msgstr "Знайдено приÑтрій" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:643 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:644 msgid "Subdevice" msgstr "ПідприÑтрій" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:664 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:665 msgid "UPnP Status" msgstr "Стан UPnP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:668 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:669 msgid "Disabled UPnP Devices" msgstr "Вимкнені UPnP приÑтрої" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:682 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:683 msgid "" "UPnP has been disabled; Do you have more than one UPnP Internet Gateway " "Device on your LAN ?" msgstr "UPnP був відключений; Чи Ñ” у Ð²Ð°Ñ Ð±Ñ–Ð»ÑŒÑˆÐµ ніж один UPnP Інтернет- шлюз у вашій локальній мережі?" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:685 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:686 msgid "UPnP has not found any UPnP-aware, compatible device on your LAN." msgstr "Ð’ вашій локальній мережі не знайдено жодного приÑтрою ÑуміÑного з UPnP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:693 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:694 #, java-format msgid "The current external IP address reported by UPnP is {0}" msgstr "Ð¢ÐµÐ¿ÐµÑ€Ñ–ÑˆÐ½Ñ Ð·Ð¾Ð²Ð½Ñ–ÑˆÐ½Ñ IP-адреÑа, повідомлена UPnP: {0}" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:695 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:696 msgid "The current external IP address is not available." msgstr "Ð¢ÐµÐ¿ÐµÑ€Ñ–ÑˆÐ½Ñ Ð·Ð¾Ð²Ð½Ñ–ÑˆÐ½Ñ IP-адреÑа не доÑтупна." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:699 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:700 #, java-format msgid "UPnP reports the maximum downstream bit rate is {0}bits/sec" msgstr "UPnP повідомлÑÑ” макÑимальну вхідну швидкіÑть {0}біт/Ñ" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:701 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:702 #, java-format msgid "UPnP reports the maximum upstream bit rate is {0}bits/sec" msgstr "UPnP повідомлÑÑ” макÑимальну вихідну швидкіÑть {0}біт/Ñ" @@ -716,12 +722,12 @@ msgstr "UPnP повідомлÑÑ” макÑимальну вихідну швид #. {1,number,#####} prevents 12345 from being output as 12,345 in the English #. locale. #. If you want the digit separator in your locale, translate as {1}. -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:709 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:710 #, java-format msgid "{0} port {1,number,#####} was successfully forwarded by UPnP." msgstr "{0} порт {1,number,#####} уÑпішно пропущено через UPnP." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:711 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:712 #, java-format msgid "{0} port {1,number,#####} was not forwarded by UPnP." msgstr "{0} порт {1,number,#####} не пропущено через UPnP." @@ -737,17 +743,17 @@ msgid "NTCP connections" msgstr "NTCP підключеннÑ" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1345 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2466 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2471 msgid "Limit" msgstr "ОбмеженнÑ" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1346 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2467 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2472 msgid "Timeout" msgstr "Ð£Ð¿ÑƒÑ‰ÐµÐ½Ð½Ñ Ñ‡Ð°Ñу бездіÑльноÑти" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1354 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2483 msgid "IPv6" msgstr "IPv6" @@ -760,19 +766,19 @@ msgid "Backlogged?" msgstr "Перевантажено?" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1375 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2532 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2537 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Inbound" msgstr "вхідно" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1377 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2534 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2539 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Outbound" msgstr "вихідно" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1432 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2699 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2704 #, java-format msgid "{0} peer" msgid_plural "{0} peers" @@ -780,107 +786,107 @@ msgstr[0] "{0} пір" msgstr[1] "{0} пірів" msgstr[2] "{0} пірів" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2465 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2470 msgid "UDP connections" msgstr "зв'Ñзки UDP" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2475 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 msgid "Sort by peer hash" msgstr "Ð¡Ð¾Ñ€Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾ хешу вузла" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Direction/Introduction" msgstr "ÐапрÑмок/ВведеннÑ" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 msgid "Sort by idle inbound" msgstr "Сортувати за проÑтоєм на вході" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 msgid "Sort by idle outbound" msgstr "Сортувати за проÑтоєм на виході" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 msgid "Sort by inbound rate" msgstr "Сортувати за швидкіÑтю на вході" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 msgid "Sort by outbound rate" msgstr "Сортувати за швидкіÑтю на виході" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 msgid "Sort by connection uptime" msgstr "Сортувати за триваліÑтю роботи" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 msgid "Sort by clock skew" msgstr "Сортувати за відхиленнÑм годинника" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 msgid "Sort by congestion window" msgstr "Сортувати за вікном затору" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2502 msgid "Sort by slow start threshold" msgstr "Сортувати за порогом повільного Ñтарту" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2505 msgid "Sort by round trip time" msgstr "Сортувати за чаÑом Ð¿Ñ€Ð¾Ñ…Ð¾Ð´Ð¶ÐµÐ½Ð½Ñ Ñигналу туди Ñ– назад" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2504 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 msgid "Sort by retransmission timeout" msgstr "Сортувати за таймаутом ретранÑлÑції" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2507 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2512 msgid "Sort by outbound maximum transmit unit" msgstr "Сортувати за макÑимальною одиницею передачі на виході" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 msgid "Sort by packets sent" msgstr "Сортувати за кількіÑтю переданих пакетів" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2511 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 msgid "Sort by packets received" msgstr "Сортувати за кількіÑтю отриманих пакетів" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2519 msgid "Sort by packets retransmitted" msgstr "Сортувати за кількіÑтю ретранÑльованих пакетів" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2521 msgid "Sort by packets received more than once" msgstr "Сортувати за кількіÑтю отриманих пакетів отриманих декілька разів" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2536 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2541 msgid "We offered to introduce them" msgstr "Ми пропонуємо предÑтавити Ñ—Ñ…" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2538 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2543 msgid "They offered to introduce us" msgstr "Вони пропонують предÑтавити наÑ" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2542 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2547 msgid "Choked" msgstr "Давка" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2550 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2555 msgid "1 fail" msgstr "1 збій" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2552 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2557 #, java-format msgid "{0} fails" msgstr "{0} збоїв" #. 1 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2558 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2563 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:166 #: ../java/src/net/i2p/router/web/ProfilesHelper.java:13 msgid "Banned" msgstr "Забанений" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2617 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2622 msgid "backlogged" msgstr "перевантажений" @@ -897,96 +903,96 @@ msgstr "ВідхилÑÑŽ запити на тунелі: велике відÑÑ‚ msgid "Dropping tunnel requests: Overloaded" msgstr "ВідхилÑÑŽ запити на тунелі: перевантажено" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:693 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:695 msgid "Rejecting tunnels: Hidden mode" msgstr "Ðе приймаємо тунелі: прихований режим" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:721 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:723 msgid "Rejecting tunnels: Request overload" msgstr "Ðе приймаємо тунелі: забагато запитів" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:752 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:754 msgid "Rejecting tunnels: Connection limit" msgstr "Ðе приймаємо тунелі: доÑÑгнутий ліміт кількоÑті з'єднань" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:964 -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:997 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:966 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:999 msgid "Dropping tunnel requests: High load" msgstr "ВідхилÑÑŽ запити на тунелі: виÑоке навантаженнÑ" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1076 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1078 msgid "Dropping tunnel requests: Queue time" msgstr "ВідхилÑÑŽ запити на тунелі: завеликий Ñ‡Ð°Ñ Ñƒ черзі" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:884 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:895 #, java-format msgid "New plugin version {0} is available" msgstr "ДоÑтупна нова верÑÑ–Ñ Ð¿Ð»Ð°Ð³Ñ–Ð½Ð° {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:964 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:975 #, java-format msgid "Update check failed for plugin {0}" msgstr "Ðеможливо перевірити Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð´Ð»Ñ Ð¿Ð»Ð°Ð³Ñ–Ð½Ð° {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:968 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:979 #, java-format msgid "No new version is available for plugin {0}" msgstr "Ðемає нової верÑÑ–Ñ— плагіна {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:992 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1003 #, java-format msgid "{0}B transferred" msgstr "{0}B передано" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1051 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1062 #, java-format msgid "Install failed from {0}" msgstr "Ðеможливо вÑтановити з {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1053 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1064 #: ../java/src/net/i2p/router/update/UpdateRunner.java:298 #, java-format msgid "Transfer failed from {0}" msgstr "Ðевдала передача з {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1328 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1339 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1403 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 #: ../java/src/net/i2p/router/web/SummaryHelper.java:715 msgid "Update downloaded" msgstr "ÐžÐ½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð¾" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 msgid "Restarting" msgstr "ПерезапуÑк..." -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 msgid "Update verified" msgstr "ÐžÐ½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÐµÐ²Ñ–Ñ€ÐµÐ½Ð¾" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1381 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:189 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:306 #, java-format msgid "from {0}" msgstr "з {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1396 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1407 #, java-format msgid "Unsigned update file from {0} is corrupt" msgstr "ÐепідпиÑане Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð· {0} пошкоджено" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1425 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1436 #, java-format msgid "Failed copy to {0}" msgstr "Ðеможливо Ñкопіювати до {0}" -#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:47 +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:49 #: ../java/src/net/i2p/router/update/DevSU3UpdateRunner.java:40 #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:55 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:111 -#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:62 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:64 #: ../java/src/net/i2p/router/update/UnsignedUpdateRunner.java:41 #: ../java/src/net/i2p/router/update/UpdateRunner.java:155 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:573 @@ -995,6 +1001,13 @@ msgstr "Ðеможливо Ñкопіювати до {0}" msgid "HTTP client proxy tunnel must be running" msgstr "Тунель Ð´Ð»Ñ HTTP прокÑÑ– повинен працювати" +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:83 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:242 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:88 +#, java-format +msgid "Requires Java version {0} but installed Java version is {1}" +msgstr "Ðеобхідна Java верÑÑ–Ñ— {0} але вÑтановлено Java верÑÑ–Ñ— {1}" + #. set status before thread to ensure UI feedback #: ../java/src/net/i2p/router/update/DevSU3UpdateHandler.java:91 #: ../java/src/net/i2p/router/update/PluginUpdateHandler.java:82 @@ -1004,24 +1017,19 @@ msgstr "Тунель Ð´Ð»Ñ HTTP прокÑÑ– повинен працювати" msgid "Updating" msgstr "ОновленнÑ" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:209 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:218 msgid "In-network updates disabled. Check package manager." msgstr "Стандартні Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð²Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¾. Перевірте пакетний менеджер." -#: ../java/src/net/i2p/router/update/NewsFetcher.java:215 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:224 msgid "No write permission for I2P install directory." msgstr "Ðемає прав на Ð·Ð°Ð¿Ð¸Ñ Ð´Ð»Ñ Ð´Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ñ–Ñ—, де вÑтановлено I2P." -#: ../java/src/net/i2p/router/update/NewsFetcher.java:223 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:232 #, java-format msgid "You must first update to version {0}" msgstr "СпоÑатку потрібно оновити до верÑÑ–Ñ— {0}" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:233 -#, java-format -msgid "Requires Java version {0} but installed Java version is {1}" -msgstr "Ðеобхідна Java верÑÑ–Ñ— {0} але вÑтановлено Java верÑÑ–Ñ— {1}" - #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:62 #, java-format msgid "Checking for update of plugin {0}" @@ -1225,8 +1233,10 @@ msgid "unban now" msgstr "розбанити" #: ../java/src/net/i2p/router/web/CSSHelper.java:149 -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../java/strings/Strings.java:29 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:217 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:221 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:219 @@ -1296,6 +1306,8 @@ msgstr "розбанити" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:217 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:219 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:224 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:228 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:230 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:222 @@ -1321,6 +1333,16 @@ msgstr "розбанити" msgid "I2P Router Console" msgstr "КонÑоль роутера I2P" +#: ../java/src/net/i2p/router/web/CertHelper.java:25 +msgid "Local SSL Certificates" +msgstr "" + +#: ../java/src/net/i2p/router/web/CertHelper.java:46 +#: ../java/src/net/i2p/router/web/CertHelper.java:51 +#: ../java/strings/Strings.java:63 +msgid "I2PTunnel" +msgstr "" + #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:62 msgid "Error updating the configuration - please see the error logs" msgstr "Помилка при оновленні конфігурації. Будь лаÑка, подивітьÑÑ Ð¶ÑƒÑ€Ð½Ð°Ð»Ð¸ помилок." @@ -1335,7 +1357,8 @@ msgstr "ÐÐ°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð±ÐµÑ€ÐµÐ¶ÐµÐ½Ð¾ уÑпішно" #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:98 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:622 #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:391 -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:151 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:109 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:160 msgid "" "Error saving the configuration (applied but not saved) - please see the " "error logs" @@ -1540,7 +1563,7 @@ msgid "Add Client" msgstr "Додати клієнт" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:116 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:503 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:517 #: ../java/src/net/i2p/router/web/SummaryHelper.java:452 msgid "Client" msgstr "Клієнт" @@ -1572,9 +1595,9 @@ msgid "Plugin" msgstr "Модуль" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:248 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:304 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 msgid "Version" msgstr "ВерÑÑ–Ñ" @@ -1595,9 +1618,9 @@ msgid "License" msgstr "ЛіцензіÑ" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:294 -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/HomeHelper.java:171 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:157 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/HomeHelper.java:178 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:164 msgid "Website" msgstr "Веб-Ñайт" @@ -1632,7 +1655,7 @@ msgstr "Видалити" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:21 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigUIHandler.java:19 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:970 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:996 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:496 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:516 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:532 @@ -1642,7 +1665,7 @@ msgstr "Видалити обране" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:23 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1015 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:494 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:502 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:514 @@ -1738,11 +1761,11 @@ msgstr "не знайдено у зв’Ñзці" msgid "Invalid destination" msgstr "Ðеправильне призначеннÑ" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:82 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:84 msgid "Log overrides updated" msgstr "" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:163 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:165 msgid "Log configuration saved" msgstr "ÐÐ°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð»Ð¾Ð³Ñƒ збережено" @@ -1790,8 +1813,8 @@ msgstr "WARN" #: ../java/src/net/i2p/router/web/ConfigLoggingHelper.java:85 #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:170 -#: ../java/src/net/i2p/router/web/HomeHelper.java:208 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:904 +#: ../java/src/net/i2p/router/web/HomeHelper.java:215 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 msgid "Remove" msgstr "Видалити" @@ -1810,11 +1833,12 @@ msgid "Home Page" msgstr "Ð”Ð¾Ð¼Ð°ÑˆÐ½Ñ Ñторінка" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:328 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:335 msgid "Network" msgstr "Мережа" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:320 @@ -1848,6 +1872,7 @@ msgstr "Мережа" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:292 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:322 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:297 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:292 @@ -1866,8 +1891,8 @@ msgid "UI" msgstr "ІнтерфейÑ" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:179 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:486 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:186 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 #: ../java/strings/Strings.java:73 msgid "Tunnels" msgstr "Тунелі" @@ -1886,15 +1911,15 @@ msgid "Logging" msgstr "ЛогуваннÑ" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:185 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:372 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:192 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:386 #: ../java/strings/Strings.java:68 msgid "Peers" msgstr "Піри" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:497 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:230 msgid "Stats" msgstr "СтатиÑтика" @@ -1910,7 +1935,7 @@ msgstr "Розширені" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:491 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:479 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:641 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:593 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:560 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:511 msgid "Save changes" @@ -2091,7 +2116,7 @@ msgid "Unsupported" msgstr "Ðе підтримуєтьÑÑ" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:24 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 msgid "Save changes and reseed now" msgstr "" @@ -2140,7 +2165,16 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:149 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:99 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +msgid "Reset URL list" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:107 +msgid "URL list reset successfully" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:158 msgid "Configuration saved successfully." msgstr "" @@ -2643,8 +2677,8 @@ msgid "User Name" msgstr "Ім'Ñ ÐºÐ¾Ñ€Ð¸Ñтувача" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:183 -#: ../java/src/net/i2p/router/web/HomeHelper.java:235 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:972 +#: ../java/src/net/i2p/router/web/HomeHelper.java:242 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:998 msgid "Add" msgstr "Додати" @@ -2875,13 +2909,13 @@ msgstr "ПодіÑ" msgid "Details" msgstr "Деталі" -#: ../java/src/net/i2p/router/web/FormHandler.java:251 +#: ../java/src/net/i2p/router/web/FormHandler.java:253 msgid "" "Invalid form submission, probably because you used the 'back' or 'reload' " "button on your browser. Please resubmit." msgstr "" -#: ../java/src/net/i2p/router/web/FormHandler.java:253 +#: ../java/src/net/i2p/router/web/FormHandler.java:255 msgid "" "If the problem persists, verify that you have cookies enabled in your " "browser." @@ -3012,156 +3046,169 @@ msgstr "Зберегти Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñ– перемалювати г msgid "Graph settings saved" msgstr "ÐÐ°Ð»Ð°Ð³Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð³Ñ€Ð°Ñ„Ñ–ÐºÑ– збережено" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:229 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:236 msgid "Addressbook" msgstr "ÐдреÑна книга" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:227 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:234 msgid "Manage your I2P hosts file here (I2P domain name resolution)" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 msgid "Configure Bandwidth" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:330 msgid "I2P Bandwidth Configuration" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Configure Language" msgstr "Вибрати мову" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Console Language Selection" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 msgid "Customize Home Page" msgstr "Ðалаштувати домашню Ñторінку" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:346 msgid "I2P Home Page Configuration" msgstr "ÐÐ°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð¾Ð¼Ð°ÑˆÐ½ÑŒÐ¾Ñ— Ñторінки I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:139 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:146 msgid "Anonymous webmail client" msgstr "Ðнонімний поштовий клієнт" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:141 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:148 msgid "Email" msgstr "Пошта" -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:251 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 msgid "I2P Router Help" msgstr "Допомога по I2P-роутеру" -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:161 msgid "Router Console" msgstr "КонÑоль роутера" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:145 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:152 msgid "Built-in anonymous BitTorrent Client" msgstr "Вбудований анонімник клієнт BitTorrent" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:147 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:154 msgid "Torrents" msgstr "Торренти" -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:155 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:162 msgid "Local web server" msgstr "Локальний веб-Ñервер" -#: ../java/src/net/i2p/router/web/HomeHelper.java:41 +#: ../java/src/net/i2p/router/web/HomeHelper.java:43 msgid "The Anoncoin project" msgstr "Проект Anoncoin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug Reports" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug tracker" msgstr "Баг-трекер" #. "colombo-bt.i2p" + S + _x("The Italian Bittorrent Resource") + S + "http #. ://colombo-bt.i2p/" + S + I + "colomboicon.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Dev Forum" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Development forum" msgstr "Форум розробників" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Bittorrent tracker" msgstr "Трекер Bittorrent" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 msgid "diftracker" msgstr "diftracker" -#: ../java/src/net/i2p/router/web/HomeHelper.java:46 +#: ../java/src/net/i2p/router/web/HomeHelper.java:48 msgid "I2P Applications" msgstr "Додатки I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +msgid "Anonymous cryptocurrency exchange" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "FAQ" msgstr "FAQ" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "Frequently Asked Questions" msgstr "ЗаÑто задавані питаннÑ" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Community forum" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Forum" msgstr "Форум" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "" "A public anonymous Git hosting site - supports pulling via Git and HTTP and " "pushing via SSH" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "Anonymous Git Hosting" msgstr "Ðнонімний хоÑтинг Git" -#: ../java/src/net/i2p/router/web/HomeHelper.java:50 +#: ../java/src/net/i2p/router/web/HomeHelper.java:53 msgid "HiddenGate" msgstr "HiddenGate" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "Anonymous wiki - share the knowledge" +msgstr "" + +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "I2P Wiki" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Microblog" msgstr "Microblog" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Your premier microblogging service on I2P" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 msgid "Javadocs" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical documentation" msgstr "Технічна документаціÑ" @@ -3169,91 +3216,98 @@ msgstr "Технічна документаціÑ" #. "http://jisko.i2p/" + S + I + "jisko_console_icon.png" + S + #. _x("Key Server") + S + _x("OpenPGP Keyserver") + S + "http://keys.i2p/" + S #. + I + "education.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +#: ../java/src/net/i2p/router/web/HomeHelper.java:60 msgid "Debian and Tahoe-LAFS repositories" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free Web Hosting" msgstr "Безкоштовний веб хоÑтинг" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free eepsite hosting with PHP and MySQL" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "I2P Pastebin" msgstr "I2P Pastebin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "Pastebin" msgstr "Pastebin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:58 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 msgid "I2P News" msgstr "Ðовини I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +msgid "Planet I2P" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Add-on directory" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Plugins" msgstr "Модулі" -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Postman's Tracker" msgstr "Трекер Postman'a" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "I2P home page" msgstr "Ð”Ð¾Ð¼Ð°ÑˆÐ½Ñ Ñторінка I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "Project Website" msgstr "Веб-Ñайт проекту" +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:68 +msgid "Russian News Feed" +msgstr "" + #. "Salt" + S + "salt.i2p" + S + "http://salt.i2p/" + S + I + #. "salt_console.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +#: ../java/src/net/i2p/router/web/HomeHelper.java:70 msgid "I2P Network Statistics" msgstr "СтатиÑтика мережі I2P" -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical Docs" msgstr "Технічна документаціÑ" -#: ../java/src/net/i2p/router/web/HomeHelper.java:65 +#: ../java/src/net/i2p/router/web/HomeHelper.java:72 msgid "Trac Wiki" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:66 -msgid "Ugha's Wiki" -msgstr "" - -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Seedless and the Robert BitTorrent applications" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#. _x("Ugha's Wiki") + S + S + "http://ugha.i2p/" + S + I + +#. "billiard_marker.png" + S + +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Sponge's main site" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:108 +#: ../java/src/net/i2p/router/web/HomeHelper.java:115 msgid "The HTTP proxy is not up" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:110 +#: ../java/src/net/i2p/router/web/HomeHelper.java:117 #, java-format msgid "Your browser is not properly configured to use the HTTP proxy at {0}" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:210 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:906 +#: ../java/src/net/i2p/router/web/HomeHelper.java:217 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:932 msgid "Name" msgstr "Ðазва" -#: ../java/src/net/i2p/router/web/HomeHelper.java:212 +#: ../java/src/net/i2p/router/web/HomeHelper.java:219 msgid "URL" msgstr "URL" @@ -3381,210 +3435,219 @@ msgstr "Ð’ÑÑ– роутери з повною ÑтатиÑтикою" msgid "LeaseSets" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:105 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:106 #: ../java/strings/Strings.java:69 msgid "Router" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:112 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:113 msgid "not found in network database" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:156 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 msgid "LeaseSet" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:158 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:163 msgid "Local" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:160 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:165 msgid "Unpublished" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:176 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:166 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:181 msgid "Destination" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:173 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:185 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:178 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 msgid "Add to local addressbook" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:217 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:195 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:222 #, java-format msgid "Expires in {0}" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:192 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:219 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:197 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:224 #, java-format msgid "Expired {0} ago" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Gateway" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 msgid "Lease" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:213 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:218 msgid "Tunnel" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:280 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:286 msgid "Not initialized" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:330 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:342 msgid "Network Database Router Statistics" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Count" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 msgid "Transports" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Country" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:429 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:453 msgid "Our info" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:431 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:455 msgid "Peer info for" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:433 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:457 msgid "Full entry" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 #: ../java/src/net/i2p/router/web/SummaryHelper.java:152 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:726 msgid "Hidden" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 msgid "Updated" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:441 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:444 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:465 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:468 #, java-format msgid "{0} ago" msgstr "" #. shouldnt happen -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:443 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:447 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:467 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:471 msgid "Published" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:449 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 msgid "Signing Key" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:451 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:475 msgid "Address(es)" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:463 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:487 msgid "cost" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "Hidden or starting up" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU" msgstr "SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU with introducers" msgstr "SSU з поÑередниками" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP" msgstr "NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU" msgstr "NTCP Ñ– SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU with introducers" msgstr "NTCP Ñ– SSU з поÑередниками" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 Only SSU, introducers" msgstr "IPv6 тільки SSU, поÑередники" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU" msgstr "IPv6 SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU, introducers" msgstr "IPv6 SSU, поÑередники" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP" msgstr "IPv6 NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU" msgstr "IPv6 NTCP, SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU, introducers" msgstr "IPv6 NTCP, SSU, поÑередники" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 Only NTCP, SSU, introducers" msgstr "IPv6 тільки NTCP, SSU, поÑередники" -#: ../java/src/net/i2p/router/web/NewsHelper.java:295 +#: ../java/src/net/i2p/router/web/NewsFeedHelper.java:80 +#, java-format +msgid "by {0}" +msgstr "" + +#: ../java/src/net/i2p/router/web/NewsHelper.java:292 #, java-format msgid "News last updated {0} ago." msgstr "" -#: ../java/src/net/i2p/router/web/NewsHelper.java:301 +#: ../java/src/net/i2p/router/web/NewsHelper.java:298 #, java-format msgid "News last checked {0} ago." msgstr "" -#: ../java/src/net/i2p/router/web/NewsHelper.java:310 +#: ../java/src/net/i2p/router/web/NewsHelper.java:307 msgid "Hide news" msgstr "" -#: ../java/src/net/i2p/router/web/NewsHelper.java:313 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:647 +#: ../java/src/net/i2p/router/web/NewsHelper.java:310 msgid "Show news" msgstr "" +#: ../java/src/net/i2p/router/web/NewsHelper.java:314 +msgid "Show all news" +msgstr "" + #: ../java/src/net/i2p/router/web/PluginStarter.java:140 msgid "Checking for plugin updates" msgstr "" #: ../java/src/net/i2p/router/web/PluginStarter.java:155 +#: ../java/src/net/i2p/router/web/PluginStarter.java:161 msgid "Plugin update check failed" msgstr "" -#: ../java/src/net/i2p/router/web/PluginStarter.java:193 +#: ../java/src/net/i2p/router/web/PluginStarter.java:199 #, java-format msgid "1 plugin updated" msgid_plural "{0} plugins updated" @@ -3592,7 +3655,7 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: ../java/src/net/i2p/router/web/PluginStarter.java:195 +#: ../java/src/net/i2p/router/web/PluginStarter.java:201 msgid "Plugin update check complete" msgstr "" @@ -3661,7 +3724,7 @@ msgid "Failing" msgstr "" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:135 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:411 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:425 msgid "Integrated" msgstr "" @@ -3932,277 +3995,287 @@ msgstr "" msgid "Lifetime average value" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:121 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:128 msgid "I2P Router Help & FAQ" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:123 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:130 msgid "Help & FAQ" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:131 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:138 msgid "" "Configure startup of clients and webapps (services); manually start dormant " "services" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:133 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:140 msgid "I2P Services" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:169 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:176 msgid "Configure I2P Router" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:171 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:178 msgid "I2P Internals" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:177 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:484 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:184 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:498 msgid "View existing tunnels and tunnel build status" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:183 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:370 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:190 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:384 msgid "Show all current peer connections" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:189 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:196 msgid "Show recent peer performance profiles" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:191 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:198 msgid "Profiles" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:195 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:202 msgid "Show list of all known I2P routers" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:197 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:204 msgid "NetDB" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:201 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:208 msgid "Health Report" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:203 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:210 msgid "Logs" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:214 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 msgid "Graph router performance" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:216 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 msgid "Graphs" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:228 msgid "Textual router performance statistics" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:233 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:240 #: ../java/src/net/i2p/router/web/SummaryHelper.java:438 msgid "Local Tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:235 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:242 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:164 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:337 msgid "Hidden Services Manager" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:253 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:260 msgid "General" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 msgid "" "Your Local Identity is your unique I2P router identity, similar to an ip " "address but tailored to I2P. " msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:259 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:266 msgid "Never disclose this to anyone, as it can reveal your real world ip." msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:261 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:268 msgid "Local Identity" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:272 msgid "Your unique I2P router identity is" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:269 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:276 msgid "never reveal it to anyone" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:271 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 msgid "show" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:275 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:301 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:282 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:308 msgid "The version of the I2P software we are running" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:292 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:318 msgid "How long we've been running for this session" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:326 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:333 msgid "" "Help with configuring your firewall and router for optimal I2P performance" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:337 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:344 msgid "See more information on the wiki" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:339 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:346 msgid "Warning: ECDSA is not available. Update your Java or OS" msgstr "" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:351 -msgid "Configure I2P Updates" +#, java-format +msgid "Warning: Java version {0} is no longer supported by I2P." msgstr "" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#, java-format +msgid "Update Java to version {0} or higher to receive I2P updates." +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:365 +msgid "Configure I2P Updates" +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:367 msgid "I2P Update" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:378 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:392 msgid "Peers we've been talking to in the last few minutes/last hour" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:381 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:395 msgid "Active" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:390 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:404 msgid "The number of peers available for building client tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:393 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:407 msgid "Fast" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:399 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:413 msgid "The number of peers available for building exploratory tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:402 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:416 msgid "High capacity" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:408 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:422 msgid "The number of peers available for network database inquiries" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:417 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:431 msgid "The total number of peers in our network database" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:420 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:434 msgid "Known" msgstr "Відомі" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:440 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:454 msgid "Configure router bandwidth allocation" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:442 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:456 msgid "Bandwidth in/out" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:462 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:476 msgid "Total" msgstr "Загалом" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:469 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:483 msgid "Used" msgstr "ВикориÑтано" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:491 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:505 msgid "" "Used for building and testing tunnels, and communicating with floodfill " "peers" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:494 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:508 msgid "Exploratory" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:514 msgid "Tunnels we are using to provide or access services on the network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:509 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:523 msgid "" "Tunnels we are participating in, directly contributing bandwidth to the " "network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:512 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:526 msgid "Participating" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:518 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:532 msgid "" "The ratio of tunnel hops we provide to tunnel hops we use - a value greater " "than 1.00 indicates a positive contribution to the network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:521 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:535 msgid "Share ratio" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:534 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:548 msgid "What's in the router's job queue?" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:536 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 msgid "Congestion" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:541 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:555 msgid "Indicates router performance" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:544 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:558 msgid "Job lag" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:564 msgid "Indicates how quickly outbound messages to other I2P routers are sent" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:553 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:567 msgid "Message delay" msgstr "Затримка повідомленнÑ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:560 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:574 msgid "Round trip time for a tunnel test" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:563 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:577 msgid "Tunnel lag" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:570 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:584 msgid "Queued requests from other routers to participate in tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:573 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:587 msgid "Backlog" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:608 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:623 msgid "News & Updates" msgstr "Ðовини & оновленнÑ" @@ -4315,17 +4388,21 @@ msgid "Click Shutdown and restart to install" msgstr "" #: ../java/src/net/i2p/router/web/SummaryHelper.java:720 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:735 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:737 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:749 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:761 #, java-format msgid "Version {0}" msgstr "ВерÑÑ–Ñ {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:734 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:736 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:748 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:760 msgid "Update available" msgstr "ÐžÐ½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð´Ð¾Ñтупно" #. Note to translators: parameter is a version, e.g. "0.8.4" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:758 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:784 #, java-format msgid "Download {0} Update" msgstr "Завантажити Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ {0}" @@ -4334,7 +4411,7 @@ msgstr "Завантажити Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ {0}" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:766 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:792 #, java-format msgid "Download Signed<br>Development Update<br>{0}" msgstr "" @@ -4343,56 +4420,56 @@ msgstr "" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:774 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 #, java-format msgid "Download Unsigned<br>Update {0}" msgstr "Завантажити підпиÑане<br>Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:798 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:824 msgid "Help with firewall configuration" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:826 msgid "Check network connection and NAT/firewall" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:819 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:845 msgid "Reseed" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:908 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:934 msgid "Order" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:925 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:951 msgid "Top" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:956 msgid "Move to top" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:940 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:966 msgid "Move up" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:948 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:974 msgid "Down" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:953 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:979 msgid "Move down" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:958 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:984 msgid "Bottom" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:963 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 msgid "Move to bottom" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:975 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1001 msgid "Select a section to add" msgstr "" @@ -4439,100 +4516,100 @@ msgstr "КлієнтÑькі тунелі длÑ" msgid "dead" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:70 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:69 msgid "Participating tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "Receive on" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Expiration" msgstr "ЗавершеннÑ" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Send on" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Rate" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Role" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Usage" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:111 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:113 msgid "grace period" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:121 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 msgid "Outbound Endpoint" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 msgid "Inbound Gateway" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:127 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:174 msgid "Participant" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:130 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:133 #, java-format msgid "Limited display to the {0} tunnels with the highest usage" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:131 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:135 msgid "Inactive participating tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:132 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:224 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:138 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:232 msgid "Lifetime bandwidth usage" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Expiry" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:165 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 msgid "Participants" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:177 msgid "Endpoint" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 #: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "Build in progress" msgstr "Йде побудова" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 msgid "inbound" msgstr "вхідний" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "outbound" msgstr "вихідний" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:223 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:231 msgid "No tunnels; waiting for the grace period to end." msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:225 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:233 msgid "in" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:234 msgid "out" msgstr "" @@ -4669,10 +4746,6 @@ msgstr "ШифруваннÑ" msgid "i2cp" msgstr "" -#: ../java/strings/Strings.java:63 -msgid "I2PTunnel" -msgstr "" - #: ../java/strings/Strings.java:64 msgid "InNetPool" msgstr "" @@ -4719,10 +4792,12 @@ msgstr "key" msgid "port" msgstr "port" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 -msgid "configure bandwidth" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:146 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:318 +msgid "Certificates" msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:153 @@ -4756,6 +4831,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:149 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:155 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:154 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:149 @@ -4771,6 +4847,7 @@ msgstr "" #. We have intl defined when this is included, but not when compiled #. standalone. +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:333 @@ -4803,6 +4880,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:305 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:310 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:305 @@ -4818,6 +4896,7 @@ msgid "Refresh (s)" msgstr "" #. ditto +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:337 @@ -4850,6 +4929,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:309 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:339 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:314 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:309 @@ -4864,6 +4944,10 @@ msgstr "" msgid "Enable" msgstr "Ðктивувати" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 +msgid "configure bandwidth" +msgstr "" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:437 msgid "Bandwidth limiter" msgstr "" @@ -4940,7 +5024,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:501 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:477 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:639 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:587 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:558 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:509 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:461 @@ -5973,51 +6057,51 @@ msgstr "" msgid "Reseed URLs" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:541 msgid "Enable HTTP Proxy?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:543 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:545 msgid "HTTP Proxy Host" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:547 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:549 msgid "HTTP Proxy Port" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:551 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:553 msgid "Use HTTP Proxy Authorization?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:555 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:557 msgid "HTTP Proxy Username" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:559 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:561 msgid "HTTP Proxy Password" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:563 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:565 msgid "Enable HTTPS Proxy?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:567 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:569 msgid "HTTPS Proxy Host" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:571 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:573 msgid "HTTPS Proxy Port" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:575 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:577 msgid "Use HTTPS Proxy Authorization?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:579 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:581 msgid "HTTPS Proxy Username" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:583 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:585 msgid "HTTPS Proxy Password" msgstr "" @@ -6576,6 +6660,14 @@ msgstr "" msgid "I2P Network Database" msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:148 +msgid "News" +msgstr "" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:344 +msgid "Latest News" +msgstr "" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:152 msgid "WebApp Not Found" msgstr "" diff --git a/apps/routerconsole/locale/messages_vi.po b/apps/routerconsole/locale/messages_vi.po index 887594a8c57da9b23add604d0dd0dbac58b7f7ee..e7c87d9990e28d32b64ac58b33a34cef63521586 100644 --- a/apps/routerconsole/locale/messages_vi.po +++ b/apps/routerconsole/locale/messages_vi.po @@ -13,10 +13,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:05+0000\n" -"PO-Revision-Date: 2015-07-17 01:31+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-05 17:17+0000\n" "Last-Translator: kytv <killyourtv@i2pmail.org>\n" -"Language-Team: Vietnamese (http://www.transifex.com/projects/p/I2P/language/vi/)\n" +"Language-Team: Vietnamese (http://www.transifex.com/otf/I2P/language/vi/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -127,19 +127,22 @@ msgid "IPs Permanently Banned" msgstr "IP bị cấm vÄ©nh viá»…n" #: ../../../router/java/src/net/i2p/router/Blocklist.java:959 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "From" msgstr "Từ" #: ../../../router/java/src/net/i2p/router/Blocklist.java:961 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "To" msgstr "Äến" #: ../../../router/java/src/net/i2p/router/Blocklist.java:997 #: ../java/src/net/i2p/router/web/BanlistRenderer.java:48 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:652 +#: ../java/src/net/i2p/router/web/CertHelper.java:77 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:147 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:662 #: ../java/src/net/i2p/router/web/SummaryHelper.java:478 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:137 msgid "none" msgstr "không có" @@ -277,42 +280,42 @@ msgstr "Từ chối đưá»ng ống riêng: Äang tắt" msgid "Rejecting tunnels" msgstr "Chấp nháºn đưá»ng ống riêng" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:212 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:210 #, java-format msgid "Reseeding: got router info from file ({0} successful, {1} errors)." msgstr "" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:284 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:282 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:28 msgid "Reseeding" msgstr "Giữ chá»— tải trở lại" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:307 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:305 #, java-format msgid "Reseed fetched only 1 router." msgid_plural "Reseed fetched only {0} routers." msgstr[0] "Giữ chá»— tải lại chỉ có {0} định tuyến." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:314 msgid "Reseed failed." msgstr "Giữ chá»— tải trở lại thất bại." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:317 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:315 #, java-format msgid "See {0} for help." msgstr "Xem {0} để được giúp đỡ." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:318 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 msgid "reseed configuration page" msgstr "trang cấu hình giữ chá»— tải trở lại" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:566 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:697 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:564 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:695 msgid "Reseeding: fetching seed URL." msgstr "Giữ chá»— tải trở lại: Ä‘ang lấy phần đưá»ng dẫn giữ chá»— tải." -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:623 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:733 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:621 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:731 #, java-format msgid "" "Reseeding: fetching router info from seed URL ({0} successful, {1} errors)." @@ -377,12 +380,12 @@ msgid "Unreachable on any transport" msgstr "Không thể kết bằng bất kỳ phương thức truyá»n tải nà o" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:674 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:566 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:577 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:604 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:622 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1348 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2469 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2474 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:92 msgid "Status" msgstr "Trạng thái" @@ -397,12 +400,12 @@ msgid "{0} is used for outbound connections only" msgstr "{0} đã được dùng cho các kết nối vá»›i bên ngoà i" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:711 -#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:283 +#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:295 msgid "UPnP is not enabled" msgstr "UPnP hiện bị vô hiệu hóa" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:720 -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:167 msgid "Help" msgstr "Giúp đỡ" @@ -426,7 +429,7 @@ msgstr "Äịnh nghÄ©a" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:726 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1352 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2473 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:24 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:33 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:35 @@ -441,7 +444,7 @@ msgstr "Mạng ngang hà ng từ xa, được xác định bởi phần hash cá»§ #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:727 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1353 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Dir" msgstr "Thư mục" @@ -468,14 +471,14 @@ msgstr "Khoảng thá»i gian kể từ khi má»™t gói tin được nháºn / gá» #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:735 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1355 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2479 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 msgid "Idle" msgstr "Trạng thái nghỉ" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:736 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1356 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "In/Out" msgstr "Và o/Ra" @@ -489,14 +492,14 @@ msgstr "ÄÆ°á»ng nối nà y được bao lâu" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:737 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1357 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:935 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2494 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:961 msgid "Up" msgstr "Lên" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:738 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1358 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2491 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2496 msgid "Skew" msgstr "Lệch" @@ -545,7 +548,7 @@ msgstr "KÃch thước tối Ä‘a cá»§a gói tin gá»i Ä‘i hiện tại / kÃch t #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:748 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1359 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2508 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 msgid "TX" msgstr "TX" @@ -555,7 +558,7 @@ msgstr "Tổng số gói tin được gá»i đến mạng ngang hà ng" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:749 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1360 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2510 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 msgid "RX" msgstr "RX" @@ -564,7 +567,7 @@ msgid "The total number of packets received from the peer" msgstr "Tổng số gói tin nháºn được từ mạng ngang hà ng" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:750 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2518 msgid "Dup TX" msgstr "TX Trùng" @@ -573,7 +576,7 @@ msgid "The total number of packets retransmitted to the peer" msgstr "Tổng số gói tin được truyá»n tải lại đến mạng ngang hà ng" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:751 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2520 msgid "Dup RX" msgstr "RX Trùng" @@ -581,104 +584,104 @@ msgstr "RX Trùng" msgid "The total number of duplicate packets received from the peer" msgstr "Tổng số gói tin trùng lặp nháºn được từ mạng ngang hà ng" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:560 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:561 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 msgid "Service" msgstr "Dịch vụ" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:564 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 msgid "WAN Common Interface Configuration" msgstr "Cấu hình giao diện chung cho WAN" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:567 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:587 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:614 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:568 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:588 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:615 msgid "Type" msgstr "Loại" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:569 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:589 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:570 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:590 msgid "Upstream" msgstr "Dòng dữ liệu phÃa trên" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:571 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:591 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:572 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:592 msgid "Downstream" msgstr "Dòng dữ liệu phÃa dưới" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:575 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 msgid "WAN PPP Connection" msgstr "Kết nối WAN PPP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:583 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:610 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:288 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:314 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:584 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:611 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:295 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:321 msgid "Uptime" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:593 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:616 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:594 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:617 msgid "External IP" msgstr "IP bổ sung" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:597 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 msgid "Layer 3 Forwarding" msgstr "Lá»›p chuyển tiếp 3" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:599 msgid "Default Connection Service" msgstr "Dịch vụ kết nối mặc định" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:602 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 msgid "WAN IP Connection" msgstr "Kết nối IP dạng WAN" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:620 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 msgid "WAN Ethernet Link Configuration" msgstr "Cấu hình liên kết WAN Ethernet" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:641 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:642 msgid "Found Device" msgstr "Äã tìm thấy thiết bị" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:643 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:644 msgid "Subdevice" msgstr "Thiết bị phụ trợ" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:664 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:665 msgid "UPnP Status" msgstr "Trạng thái UPnP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:668 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:669 msgid "Disabled UPnP Devices" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:682 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:683 msgid "" "UPnP has been disabled; Do you have more than one UPnP Internet Gateway " "Device on your LAN ?" msgstr "UPnP đã bị vô hiệu hóa; Bạn có muốn có nhiá»u hÆ¡n thiết bị cổng chuyển tiếp internet dạng UPnP trên mạng LAN?" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:685 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:686 msgid "UPnP has not found any UPnP-aware, compatible device on your LAN." msgstr "UPnP không tìm thấy bất kỳ thiết bị UPnP liên quan nà o, tương thÃch vá»›i thiết bị cá»§a bạn trên mạng LAN." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:693 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:694 #, java-format msgid "The current external IP address reported by UPnP is {0}" msgstr "Äịa chỉ IP bổ sung hiện tại được báo cáo bởi UPnP là {0}" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:695 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:696 msgid "The current external IP address is not available." msgstr "Äịa chỉ IP bổ sung hiện tại hiện không sẵn có." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:699 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:700 #, java-format msgid "UPnP reports the maximum downstream bit rate is {0}bits/sec" msgstr "UPnP gá»i báo cáo vá» tỉ lệ bit tối Ä‘a cá»§a luồng dữ liệu phÃa dưới là {0}bits/giây" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:701 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:702 #, java-format msgid "UPnP reports the maximum upstream bit rate is {0}bits/sec" msgstr "UPnP gá»i báo cáo vá» tỉ lệ bit tối Ä‘a cá»§a luồng dữ liệu phÃa trên là {0}bits/giây" @@ -687,12 +690,12 @@ msgstr "UPnP gá»i báo cáo vá» tỉ lệ bit tối Ä‘a cá»§a luồng dữ li #. {1,number,#####} prevents 12345 from being output as 12,345 in the English #. locale. #. If you want the digit separator in your locale, translate as {1}. -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:709 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:710 #, java-format msgid "{0} port {1,number,#####} was successfully forwarded by UPnP." msgstr "{0} cổng {1,number,#####} đã được chuyển tiếp thà nh công bằng UPnP." -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:711 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:712 #, java-format msgid "{0} port {1,number,#####} was not forwarded by UPnP." msgstr "{0} cổng {1,number,#####} chưa được chuyển tiếp bằng UPnP." @@ -708,17 +711,17 @@ msgid "NTCP connections" msgstr "Kết nối NTCP" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1345 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2466 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2471 msgid "Limit" msgstr "Giá»›i hạn" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1346 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2467 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2472 msgid "Timeout" msgstr "Hết thá»i hạn" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1354 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2483 msgid "IPv6" msgstr "IPv6" @@ -731,125 +734,125 @@ msgid "Backlogged?" msgstr "Äăng nháºp trở lại?" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1375 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2532 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2537 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Inbound" msgstr "Luồng dữ liệu và o" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1377 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2534 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2539 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Outbound" msgstr "Luồng dữ liệu ra" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1432 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2699 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2704 #, java-format msgid "{0} peer" msgid_plural "{0} peers" msgstr[0] "{0} mạng ngang hà ng" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2465 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2470 msgid "UDP connections" msgstr "Kết nối UDP" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2475 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 msgid "Sort by peer hash" msgstr "Sắp xếp theo mã hash cá»§a mạng ngang hà ng" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Direction/Introduction" msgstr "Hướng/Giá»›i thiệu" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 msgid "Sort by idle inbound" msgstr "Sắp xếp theo trạng thái nhà n rá»—i cá»§a luồng tÃn hiệu và o" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 msgid "Sort by idle outbound" msgstr "Sắp xếp theo trạng thái nhà n rá»—i cá»§a luồng tÃn hiệu ra" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 msgid "Sort by inbound rate" msgstr "Sắp xếp theo tá»· lệ cá»§a luồng tÃn hiệu và o" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 msgid "Sort by outbound rate" msgstr "Sắp xếp theo tá»· lệ cá»§a luồng tÃn hiệu ra" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 msgid "Sort by connection uptime" msgstr "Sắp xếp theo thá»i gian hoạt động kết nối" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 msgid "Sort by clock skew" msgstr "Sắp xếp theo đồng hồ nghiêng" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 msgid "Sort by congestion window" msgstr "Sắp xếp theo cá»a sổ nghẽn" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2502 msgid "Sort by slow start threshold" msgstr "Sắp xếp theo ngưỡng giá»›i hạn cháºm" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2505 msgid "Sort by round trip time" msgstr "Sắp xếp theo thá»i gian hà nh trình vòng" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2504 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 msgid "Sort by retransmission timeout" msgstr "Sắp xếp theo thá»i gian giá»›i hạn truyá»n tải trở lại" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2507 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2512 msgid "Sort by outbound maximum transmit unit" msgstr "Sắp xếp theo đơn vị truyá»n tải tối Ä‘a cá»§a luồng tÃn hiệu ra" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 msgid "Sort by packets sent" msgstr "Sắp xếp theo gói tin đã gá»i" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2511 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 msgid "Sort by packets received" msgstr "Sắp xếp theo gói tin đã nháºn" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2519 msgid "Sort by packets retransmitted" msgstr "Sắp xếp theo gói tin bị truyá»n tải trở lại" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2521 msgid "Sort by packets received more than once" msgstr "Sắp xếp theo gói tin nháºn được nhiá»u hÆ¡n má»™t lần" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2536 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2541 msgid "We offered to introduce them" msgstr "Chúng tôi cung cấp phần giá»›i thiệu" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2538 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2543 msgid "They offered to introduce us" msgstr "Há» cung cấp phần giá»›i thiệu vá»›i chúng ta" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2542 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2547 msgid "Choked" msgstr "" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2550 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2555 msgid "1 fail" msgstr "1 thất bại" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2552 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2557 #, java-format msgid "{0} fails" msgstr "{0} thất bại" #. 1 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2558 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2563 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:166 #: ../java/src/net/i2p/router/web/ProfilesHelper.java:13 msgid "Banned" msgstr "Bị Cấm" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2617 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2622 msgid "backlogged" msgstr "đăng nháºp trở lại" @@ -866,96 +869,96 @@ msgstr "" msgid "Dropping tunnel requests: Overloaded" msgstr "Bá» yêu cầu đưá»ng ống riêng: Quá tải" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:693 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:695 msgid "Rejecting tunnels: Hidden mode" msgstr "" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:721 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:723 msgid "Rejecting tunnels: Request overload" msgstr "Từ chối đưá»ng ống riêng: Quá tải yêu cầu kết nối" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:752 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:754 msgid "Rejecting tunnels: Connection limit" msgstr "Từ chối đưá»ng ống riêng: vượt giá»›i hạn kết nối" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:964 -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:997 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:966 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:999 msgid "Dropping tunnel requests: High load" msgstr "Bá» yêu cầu đưá»ng ống riêng: Äá»™ tải quá cao" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1076 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1078 msgid "Dropping tunnel requests: Queue time" msgstr "Bá» yêu cầu đưá»ng ống riêng: Hà ng đợi thá»i gian" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:884 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:895 #, java-format msgid "New plugin version {0} is available" msgstr "Hiện đã phát hà nh tiện Ãch má»›i phiên bản {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:964 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:975 #, java-format msgid "Update check failed for plugin {0}" msgstr "Cáºp nháºt không thà nh công đối vá»›i tiện Ãch {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:968 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:979 #, java-format msgid "No new version is available for plugin {0}" msgstr "Không có phiên bản má»›i dà nh cho tiện Ãch {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:992 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1003 #, java-format msgid "{0}B transferred" msgstr "{0}B đã truyá»n" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1051 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1062 #, java-format msgid "Install failed from {0}" msgstr "" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1053 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1064 #: ../java/src/net/i2p/router/update/UpdateRunner.java:298 #, java-format msgid "Transfer failed from {0}" msgstr "Truyá»n thất bại từ phÃa {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1328 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1339 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1403 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 #: ../java/src/net/i2p/router/web/SummaryHelper.java:715 msgid "Update downloaded" msgstr "Äã tải vá» bản cáºp nháºt" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 msgid "Restarting" msgstr "Äang khởi động lại" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 msgid "Update verified" msgstr "Äã xác nháºn phần cáºp nháºt" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1381 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:189 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:306 #, java-format msgid "from {0}" msgstr "từ {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1396 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1407 #, java-format msgid "Unsigned update file from {0} is corrupt" msgstr "Chưa xác nháºn táºp tin cáºp nháºt từ {0} bị lá»—i" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1425 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1436 #, java-format msgid "Failed copy to {0}" msgstr "Xảy ra lá»—i khi sao chép sang {0}" -#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:47 +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:49 #: ../java/src/net/i2p/router/update/DevSU3UpdateRunner.java:40 #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:55 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:111 -#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:62 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:64 #: ../java/src/net/i2p/router/update/UnsignedUpdateRunner.java:41 #: ../java/src/net/i2p/router/update/UpdateRunner.java:155 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:573 @@ -964,6 +967,13 @@ msgstr "Xảy ra lá»—i khi sao chép sang {0}" msgid "HTTP client proxy tunnel must be running" msgstr "" +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:83 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:242 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:88 +#, java-format +msgid "Requires Java version {0} but installed Java version is {1}" +msgstr "" + #. set status before thread to ensure UI feedback #: ../java/src/net/i2p/router/update/DevSU3UpdateHandler.java:91 #: ../java/src/net/i2p/router/update/PluginUpdateHandler.java:82 @@ -973,24 +983,19 @@ msgstr "" msgid "Updating" msgstr "Äang cáºp nháºt" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:209 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:218 msgid "In-network updates disabled. Check package manager." msgstr "" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:215 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:224 msgid "No write permission for I2P install directory." msgstr "" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:223 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:232 #, java-format msgid "You must first update to version {0}" msgstr "" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:233 -#, java-format -msgid "Requires Java version {0} but installed Java version is {1}" -msgstr "" - #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:62 #, java-format msgid "Checking for update of plugin {0}" @@ -1194,8 +1199,10 @@ msgid "unban now" msgstr "" #: ../java/src/net/i2p/router/web/CSSHelper.java:149 -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../java/strings/Strings.java:29 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:217 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:221 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:219 @@ -1265,6 +1272,8 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:217 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:219 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:224 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:228 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:230 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:222 @@ -1290,6 +1299,16 @@ msgstr "" msgid "I2P Router Console" msgstr "" +#: ../java/src/net/i2p/router/web/CertHelper.java:25 +msgid "Local SSL Certificates" +msgstr "" + +#: ../java/src/net/i2p/router/web/CertHelper.java:46 +#: ../java/src/net/i2p/router/web/CertHelper.java:51 +#: ../java/strings/Strings.java:63 +msgid "I2PTunnel" +msgstr "" + #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:62 msgid "Error updating the configuration - please see the error logs" msgstr "" @@ -1304,7 +1323,8 @@ msgstr "" #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:98 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:622 #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:391 -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:151 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:109 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:160 msgid "" "Error saving the configuration (applied but not saved) - please see the " "error logs" @@ -1509,7 +1529,7 @@ msgid "Add Client" msgstr "Add Client" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:116 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:503 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:517 #: ../java/src/net/i2p/router/web/SummaryHelper.java:452 msgid "Client" msgstr "" @@ -1541,9 +1561,9 @@ msgid "Plugin" msgstr "" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:248 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:304 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 msgid "Version" msgstr "" @@ -1564,9 +1584,9 @@ msgid "License" msgstr "" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:294 -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/HomeHelper.java:171 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:157 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/HomeHelper.java:178 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:164 msgid "Website" msgstr "" @@ -1601,7 +1621,7 @@ msgstr "" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:21 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigUIHandler.java:19 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:970 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:996 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:496 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:516 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:532 @@ -1611,7 +1631,7 @@ msgstr "" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:23 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1015 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:494 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:502 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:514 @@ -1707,11 +1727,11 @@ msgstr "" msgid "Invalid destination" msgstr "" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:82 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:84 msgid "Log overrides updated" msgstr "" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:163 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:165 msgid "Log configuration saved" msgstr "" @@ -1759,8 +1779,8 @@ msgstr "" #: ../java/src/net/i2p/router/web/ConfigLoggingHelper.java:85 #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:170 -#: ../java/src/net/i2p/router/web/HomeHelper.java:208 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:904 +#: ../java/src/net/i2p/router/web/HomeHelper.java:215 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 msgid "Remove" msgstr "" @@ -1779,11 +1799,12 @@ msgid "Home Page" msgstr "" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:328 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:335 msgid "Network" msgstr "" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:320 @@ -1817,6 +1838,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:292 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:322 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:297 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:292 @@ -1835,8 +1857,8 @@ msgid "UI" msgstr "" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:179 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:486 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:186 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 #: ../java/strings/Strings.java:73 msgid "Tunnels" msgstr "" @@ -1855,15 +1877,15 @@ msgid "Logging" msgstr "" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:185 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:372 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:192 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:386 #: ../java/strings/Strings.java:68 msgid "Peers" msgstr "" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:497 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:230 msgid "Stats" msgstr "" @@ -1879,7 +1901,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:491 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:479 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:641 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:593 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:560 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:511 msgid "Save changes" @@ -2060,7 +2082,7 @@ msgid "Unsupported" msgstr "" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:24 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 msgid "Save changes and reseed now" msgstr "" @@ -2107,7 +2129,16 @@ msgid "Reseed successful, loaded {0} router info from file" msgid_plural "Reseed successful, loaded {0} router infos from file" msgstr[0] "" -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:149 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:99 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +msgid "Reset URL list" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:107 +msgid "URL list reset successfully" +msgstr "" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:158 msgid "Configuration saved successfully." msgstr "" @@ -2604,8 +2635,8 @@ msgid "User Name" msgstr "" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:183 -#: ../java/src/net/i2p/router/web/HomeHelper.java:235 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:972 +#: ../java/src/net/i2p/router/web/HomeHelper.java:242 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:998 msgid "Add" msgstr "" @@ -2836,13 +2867,13 @@ msgstr "" msgid "Details" msgstr "" -#: ../java/src/net/i2p/router/web/FormHandler.java:251 +#: ../java/src/net/i2p/router/web/FormHandler.java:253 msgid "" "Invalid form submission, probably because you used the 'back' or 'reload' " "button on your browser. Please resubmit." msgstr "" -#: ../java/src/net/i2p/router/web/FormHandler.java:253 +#: ../java/src/net/i2p/router/web/FormHandler.java:255 msgid "" "If the problem persists, verify that you have cookies enabled in your " "browser." @@ -2973,156 +3004,169 @@ msgstr "" msgid "Graph settings saved" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:229 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:236 msgid "Addressbook" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:227 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:234 msgid "Manage your I2P hosts file here (I2P domain name resolution)" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 msgid "Configure Bandwidth" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:330 msgid "I2P Bandwidth Configuration" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Configure Language" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Console Language Selection" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 msgid "Customize Home Page" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:346 msgid "I2P Home Page Configuration" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:139 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:146 msgid "Anonymous webmail client" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:141 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:148 msgid "Email" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:251 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 msgid "I2P Router Help" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:161 msgid "Router Console" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:145 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:152 msgid "Built-in anonymous BitTorrent Client" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:147 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:154 msgid "Torrents" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:155 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:162 msgid "Local web server" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:41 +#: ../java/src/net/i2p/router/web/HomeHelper.java:43 msgid "The Anoncoin project" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug Reports" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug tracker" msgstr "" #. "colombo-bt.i2p" + S + _x("The Italian Bittorrent Resource") + S + "http #. ://colombo-bt.i2p/" + S + I + "colomboicon.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Dev Forum" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Development forum" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Bittorrent tracker" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 msgid "diftracker" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:46 +#: ../java/src/net/i2p/router/web/HomeHelper.java:48 msgid "I2P Applications" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +msgid "Anonymous cryptocurrency exchange" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "FAQ" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "Frequently Asked Questions" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Community forum" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Forum" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "" "A public anonymous Git hosting site - supports pulling via Git and HTTP and " "pushing via SSH" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "Anonymous Git Hosting" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:50 +#: ../java/src/net/i2p/router/web/HomeHelper.java:53 msgid "HiddenGate" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "Anonymous wiki - share the knowledge" +msgstr "" + +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "I2P Wiki" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Microblog" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Your premier microblogging service on I2P" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 msgid "Javadocs" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical documentation" msgstr "" @@ -3130,91 +3174,98 @@ msgstr "" #. "http://jisko.i2p/" + S + I + "jisko_console_icon.png" + S + #. _x("Key Server") + S + _x("OpenPGP Keyserver") + S + "http://keys.i2p/" + S #. + I + "education.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +#: ../java/src/net/i2p/router/web/HomeHelper.java:60 msgid "Debian and Tahoe-LAFS repositories" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free Web Hosting" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free eepsite hosting with PHP and MySQL" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "I2P Pastebin" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "Pastebin" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:58 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 msgid "I2P News" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +msgid "Planet I2P" +msgstr "" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Add-on directory" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Plugins" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Postman's Tracker" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "I2P home page" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "Project Website" msgstr "" +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:68 +msgid "Russian News Feed" +msgstr "" + #. "Salt" + S + "salt.i2p" + S + "http://salt.i2p/" + S + I + #. "salt_console.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +#: ../java/src/net/i2p/router/web/HomeHelper.java:70 msgid "I2P Network Statistics" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical Docs" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:65 +#: ../java/src/net/i2p/router/web/HomeHelper.java:72 msgid "Trac Wiki" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:66 -msgid "Ugha's Wiki" -msgstr "" - -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Seedless and the Robert BitTorrent applications" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#. _x("Ugha's Wiki") + S + S + "http://ugha.i2p/" + S + I + +#. "billiard_marker.png" + S + +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Sponge's main site" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:108 +#: ../java/src/net/i2p/router/web/HomeHelper.java:115 msgid "The HTTP proxy is not up" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:110 +#: ../java/src/net/i2p/router/web/HomeHelper.java:117 #, java-format msgid "Your browser is not properly configured to use the HTTP proxy at {0}" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:210 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:906 +#: ../java/src/net/i2p/router/web/HomeHelper.java:217 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:932 msgid "Name" msgstr "" -#: ../java/src/net/i2p/router/web/HomeHelper.java:212 +#: ../java/src/net/i2p/router/web/HomeHelper.java:219 msgid "URL" msgstr "" @@ -3342,216 +3393,225 @@ msgstr "" msgid "LeaseSets" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:105 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:106 #: ../java/strings/Strings.java:69 msgid "Router" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:112 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:113 msgid "not found in network database" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:156 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 msgid "LeaseSet" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:158 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:163 msgid "Local" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:160 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:165 msgid "Unpublished" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:176 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:166 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:181 msgid "Destination" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:173 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:185 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:178 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 msgid "Add to local addressbook" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:217 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:195 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:222 #, java-format msgid "Expires in {0}" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:192 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:219 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:197 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:224 #, java-format msgid "Expired {0} ago" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Gateway" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 msgid "Lease" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:213 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:218 msgid "Tunnel" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:280 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:286 msgid "Not initialized" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:330 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:342 msgid "Network Database Router Statistics" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Count" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 msgid "Transports" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Country" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:429 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:453 msgid "Our info" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:431 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:455 msgid "Peer info for" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:433 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:457 msgid "Full entry" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 #: ../java/src/net/i2p/router/web/SummaryHelper.java:152 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:726 msgid "Hidden" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 msgid "Updated" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:441 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:444 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:465 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:468 #, java-format msgid "{0} ago" msgstr "" #. shouldnt happen -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:443 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:447 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:467 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:471 msgid "Published" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:449 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 msgid "Signing Key" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:451 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:475 msgid "Address(es)" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:463 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:487 msgid "cost" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "Hidden or starting up" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU with introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU with introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 Only SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 Only NTCP, SSU, introducers" msgstr "" -#: ../java/src/net/i2p/router/web/NewsHelper.java:295 +#: ../java/src/net/i2p/router/web/NewsFeedHelper.java:80 +#, java-format +msgid "by {0}" +msgstr "" + +#: ../java/src/net/i2p/router/web/NewsHelper.java:292 #, java-format msgid "News last updated {0} ago." msgstr "" -#: ../java/src/net/i2p/router/web/NewsHelper.java:301 +#: ../java/src/net/i2p/router/web/NewsHelper.java:298 #, java-format msgid "News last checked {0} ago." msgstr "" -#: ../java/src/net/i2p/router/web/NewsHelper.java:310 +#: ../java/src/net/i2p/router/web/NewsHelper.java:307 msgid "Hide news" msgstr "" -#: ../java/src/net/i2p/router/web/NewsHelper.java:313 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:647 +#: ../java/src/net/i2p/router/web/NewsHelper.java:310 msgid "Show news" msgstr "" +#: ../java/src/net/i2p/router/web/NewsHelper.java:314 +msgid "Show all news" +msgstr "" + #: ../java/src/net/i2p/router/web/PluginStarter.java:140 msgid "Checking for plugin updates" msgstr "" #: ../java/src/net/i2p/router/web/PluginStarter.java:155 +#: ../java/src/net/i2p/router/web/PluginStarter.java:161 msgid "Plugin update check failed" msgstr "" -#: ../java/src/net/i2p/router/web/PluginStarter.java:193 +#: ../java/src/net/i2p/router/web/PluginStarter.java:199 #, java-format msgid "1 plugin updated" msgid_plural "{0} plugins updated" msgstr[0] "" -#: ../java/src/net/i2p/router/web/PluginStarter.java:195 +#: ../java/src/net/i2p/router/web/PluginStarter.java:201 msgid "Plugin update check complete" msgstr "" @@ -3614,7 +3674,7 @@ msgid "Failing" msgstr "" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:135 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:411 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:425 msgid "Integrated" msgstr "" @@ -3881,277 +3941,287 @@ msgstr "" msgid "Lifetime average value" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:121 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:128 msgid "I2P Router Help & FAQ" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:123 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:130 msgid "Help & FAQ" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:131 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:138 msgid "" "Configure startup of clients and webapps (services); manually start dormant " "services" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:133 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:140 msgid "I2P Services" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:169 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:176 msgid "Configure I2P Router" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:171 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:178 msgid "I2P Internals" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:177 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:484 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:184 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:498 msgid "View existing tunnels and tunnel build status" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:183 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:370 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:190 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:384 msgid "Show all current peer connections" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:189 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:196 msgid "Show recent peer performance profiles" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:191 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:198 msgid "Profiles" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:195 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:202 msgid "Show list of all known I2P routers" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:197 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:204 msgid "NetDB" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:201 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:208 msgid "Health Report" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:203 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:210 msgid "Logs" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:214 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 msgid "Graph router performance" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:216 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 msgid "Graphs" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:228 msgid "Textual router performance statistics" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:233 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:240 #: ../java/src/net/i2p/router/web/SummaryHelper.java:438 msgid "Local Tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:235 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:242 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:164 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:337 msgid "Hidden Services Manager" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:253 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:260 msgid "General" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 msgid "" "Your Local Identity is your unique I2P router identity, similar to an ip " "address but tailored to I2P. " msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:259 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:266 msgid "Never disclose this to anyone, as it can reveal your real world ip." msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:261 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:268 msgid "Local Identity" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:272 msgid "Your unique I2P router identity is" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:269 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:276 msgid "never reveal it to anyone" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:271 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 msgid "show" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:275 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:301 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:282 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:308 msgid "The version of the I2P software we are running" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:292 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:318 msgid "How long we've been running for this session" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:326 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:333 msgid "" "Help with configuring your firewall and router for optimal I2P performance" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:337 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:344 msgid "See more information on the wiki" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:339 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:346 msgid "Warning: ECDSA is not available. Update your Java or OS" msgstr "" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:351 -msgid "Configure I2P Updates" +#, java-format +msgid "Warning: Java version {0} is no longer supported by I2P." msgstr "" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#, java-format +msgid "Update Java to version {0} or higher to receive I2P updates." +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:365 +msgid "Configure I2P Updates" +msgstr "" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:367 msgid "I2P Update" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:378 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:392 msgid "Peers we've been talking to in the last few minutes/last hour" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:381 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:395 msgid "Active" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:390 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:404 msgid "The number of peers available for building client tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:393 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:407 msgid "Fast" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:399 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:413 msgid "The number of peers available for building exploratory tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:402 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:416 msgid "High capacity" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:408 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:422 msgid "The number of peers available for network database inquiries" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:417 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:431 msgid "The total number of peers in our network database" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:420 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:434 msgid "Known" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:440 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:454 msgid "Configure router bandwidth allocation" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:442 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:456 msgid "Bandwidth in/out" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:462 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:476 msgid "Total" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:469 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:483 msgid "Used" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:491 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:505 msgid "" "Used for building and testing tunnels, and communicating with floodfill " "peers" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:494 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:508 msgid "Exploratory" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:514 msgid "Tunnels we are using to provide or access services on the network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:509 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:523 msgid "" "Tunnels we are participating in, directly contributing bandwidth to the " "network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:512 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:526 msgid "Participating" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:518 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:532 msgid "" "The ratio of tunnel hops we provide to tunnel hops we use - a value greater " "than 1.00 indicates a positive contribution to the network" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:521 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:535 msgid "Share ratio" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:534 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:548 msgid "What's in the router's job queue?" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:536 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 msgid "Congestion" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:541 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:555 msgid "Indicates router performance" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:544 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:558 msgid "Job lag" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:564 msgid "Indicates how quickly outbound messages to other I2P routers are sent" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:553 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:567 msgid "Message delay" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:560 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:574 msgid "Round trip time for a tunnel test" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:563 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:577 msgid "Tunnel lag" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:570 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:584 msgid "Queued requests from other routers to participate in tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:573 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:587 msgid "Backlog" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:608 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:623 msgid "News & Updates" msgstr "" @@ -4264,17 +4334,21 @@ msgid "Click Shutdown and restart to install" msgstr "" #: ../java/src/net/i2p/router/web/SummaryHelper.java:720 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:735 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:737 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:749 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:761 #, java-format msgid "Version {0}" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:734 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:736 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:748 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:760 msgid "Update available" msgstr "" #. Note to translators: parameter is a version, e.g. "0.8.4" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:758 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:784 #, java-format msgid "Download {0} Update" msgstr "" @@ -4283,7 +4357,7 @@ msgstr "" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:766 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:792 #, java-format msgid "Download Signed<br>Development Update<br>{0}" msgstr "" @@ -4292,56 +4366,56 @@ msgstr "" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:774 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 #, java-format msgid "Download Unsigned<br>Update {0}" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:798 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:824 msgid "Help with firewall configuration" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:826 msgid "Check network connection and NAT/firewall" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:819 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:845 msgid "Reseed" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:908 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:934 msgid "Order" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:925 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:951 msgid "Top" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:956 msgid "Move to top" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:940 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:966 msgid "Move up" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:948 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:974 msgid "Down" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:953 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:979 msgid "Move down" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:958 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:984 msgid "Bottom" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:963 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 msgid "Move to bottom" msgstr "" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:975 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1001 msgid "Select a section to add" msgstr "" @@ -4388,100 +4462,100 @@ msgstr "" msgid "dead" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:70 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:69 msgid "Participating tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "Receive on" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Expiration" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Send on" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Rate" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Role" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Usage" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:111 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:113 msgid "grace period" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:121 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 msgid "Outbound Endpoint" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 msgid "Inbound Gateway" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:127 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:174 msgid "Participant" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:130 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:133 #, java-format msgid "Limited display to the {0} tunnels with the highest usage" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:131 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:135 msgid "Inactive participating tunnels" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:132 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:224 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:138 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:232 msgid "Lifetime bandwidth usage" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Expiry" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:165 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 msgid "Participants" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:177 msgid "Endpoint" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 #: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "Build in progress" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 msgid "inbound" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "outbound" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:223 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:231 msgid "No tunnels; waiting for the grace period to end." msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:225 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:233 msgid "in" msgstr "" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:234 msgid "out" msgstr "" @@ -4618,10 +4692,6 @@ msgstr "" msgid "i2cp" msgstr "" -#: ../java/strings/Strings.java:63 -msgid "I2PTunnel" -msgstr "" - #: ../java/strings/Strings.java:64 msgid "InNetPool" msgstr "" @@ -4668,10 +4738,12 @@ msgstr "" msgid "port" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 -msgid "configure bandwidth" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:146 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:318 +msgid "Certificates" msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:153 @@ -4705,6 +4777,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:149 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:155 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:154 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:149 @@ -4720,6 +4793,7 @@ msgstr "" #. We have intl defined when this is included, but not when compiled #. standalone. +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:333 @@ -4752,6 +4826,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:305 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:310 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:305 @@ -4767,6 +4842,7 @@ msgid "Refresh (s)" msgstr "" #. ditto +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:337 @@ -4799,6 +4875,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:309 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:339 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:314 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:309 @@ -4813,6 +4890,10 @@ msgstr "" msgid "Enable" msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 +msgid "configure bandwidth" +msgstr "" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:437 msgid "Bandwidth limiter" msgstr "" @@ -4889,7 +4970,7 @@ msgstr "" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:501 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:477 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:639 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:587 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:558 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:509 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:461 @@ -5922,51 +6003,51 @@ msgstr "" msgid "Reseed URLs" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:541 msgid "Enable HTTP Proxy?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:543 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:545 msgid "HTTP Proxy Host" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:547 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:549 msgid "HTTP Proxy Port" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:551 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:553 msgid "Use HTTP Proxy Authorization?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:555 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:557 msgid "HTTP Proxy Username" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:559 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:561 msgid "HTTP Proxy Password" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:563 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:565 msgid "Enable HTTPS Proxy?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:567 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:569 msgid "HTTPS Proxy Host" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:571 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:573 msgid "HTTPS Proxy Port" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:575 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:577 msgid "Use HTTPS Proxy Authorization?" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:579 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:581 msgid "HTTPS Proxy Username" msgstr "" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:583 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:585 msgid "HTTPS Proxy Password" msgstr "" @@ -6525,6 +6606,14 @@ msgstr "" msgid "I2P Network Database" msgstr "" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:148 +msgid "News" +msgstr "" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:344 +msgid "Latest News" +msgstr "" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:152 msgid "WebApp Not Found" msgstr "" diff --git a/apps/routerconsole/locale/messages_zh.po b/apps/routerconsole/locale/messages_zh.po index c875ae4a5f5d3aaf810b13bf9d9725fe13ff8b24..1ab4ec5e2f02dcdca0763d597a68ea156b44a6e1 100644 --- a/apps/routerconsole/locale/messages_zh.po +++ b/apps/routerconsole/locale/messages_zh.po @@ -21,10 +21,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:05+0000\n" -"PO-Revision-Date: 2015-07-17 02:49+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-12 00:05+0000\n" "Last-Translator: YF <yfdyh000@gmail.com>\n" -"Language-Team: Chinese (China) (http://www.transifex.com/projects/p/I2P/language/zh_CN/)\n" +"Language-Team: Chinese (China) (http://www.transifex.com/otf/I2P/language/zh_CN/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -135,19 +135,22 @@ msgid "IPs Permanently Banned" msgstr "IP 永久å°é”" #: ../../../router/java/src/net/i2p/router/Blocklist.java:959 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "From" msgstr "从" #: ../../../router/java/src/net/i2p/router/Blocklist.java:961 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "To" msgstr "至" #: ../../../router/java/src/net/i2p/router/Blocklist.java:997 #: ../java/src/net/i2p/router/web/BanlistRenderer.java:48 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:652 +#: ../java/src/net/i2p/router/web/CertHelper.java:77 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:147 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:662 #: ../java/src/net/i2p/router/web/SummaryHelper.java:478 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:137 msgid "none" msgstr "æ— " @@ -285,42 +288,42 @@ msgstr "æ‹’ç»å…±äº«ï¼šå‡†å¤‡é€€å‡º" msgid "Rejecting tunnels" msgstr "æ‹’ç»å‚与共享隧é“" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:212 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:210 #, java-format msgid "Reseeding: got router info from file ({0} successful, {1} errors)." msgstr "è¡¥ç§ï¼šä»Žæ–‡ä»¶èŽ·å¾—è·¯ç”±ä¿¡æ¯ï¼ˆ{0} 个路由信æ¯ï¼Œ{1} 个错误)。" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:284 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:282 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:28 msgid "Reseeding" msgstr "网络引导" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:307 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:305 #, java-format msgid "Reseed fetched only 1 router." msgid_plural "Reseed fetched only {0} routers." msgstr[0] "网络引导åªå‘现了 {0} 个节点。" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:314 msgid "Reseed failed." msgstr "网络引导失败。" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:317 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:315 #, java-format msgid "See {0} for help." msgstr "帮助å‚è§ {0}。" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:318 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:316 msgid "reseed configuration page" msgstr "网络引导设置页é¢" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:566 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:697 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:564 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:695 msgid "Reseeding: fetching seed URL." msgstr "æ£åœ¨è¡¥ç§ï¼šä»Žç½‘å€è¡¥ç§ã€‚" -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:623 -#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:733 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:621 +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:731 #, java-format msgid "" "Reseeding: fetching router info from seed URL ({0} successful, {1} errors)." @@ -385,12 +388,12 @@ msgid "Unreachable on any transport" msgstr "å„ä¼ è¾“æ–¹å¼å‡ä¸å¯è¾¾" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:674 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:566 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:577 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:604 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:622 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1348 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2469 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2474 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:92 msgid "Status" msgstr "状æ€" @@ -405,12 +408,12 @@ msgid "{0} is used for outbound connections only" msgstr "{0} 仅被用作出站连接" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:711 -#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:283 +#: ../../../router/java/src/net/i2p/router/transport/UPnPManager.java:295 msgid "UPnP is not enabled" msgstr "UPnP 未å¯ç”¨" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:720 -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:167 msgid "Help" msgstr "帮助" @@ -434,7 +437,7 @@ msgstr "定义" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:726 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1352 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2473 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:24 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:33 #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:35 @@ -449,7 +452,7 @@ msgstr "以路由Hash区分的远程节点" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:727 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1353 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Dir" msgstr "类别" @@ -476,14 +479,14 @@ msgstr "最近一次数æ®ä¼ 输è·çŽ°åœ¨çš„æ—¶é—´" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:735 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1355 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2479 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 msgid "Idle" msgstr "空闲" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:736 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1356 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2484 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "In/Out" msgstr "å…¥/出" @@ -497,14 +500,14 @@ msgstr "æ¤è¿žæŽ¥å·²å»ºç«‹å¤šä¹…" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:737 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1357 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2489 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:935 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2494 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:961 msgid "Up" msgstr "寿命" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:738 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1358 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2491 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2496 msgid "Skew" msgstr "时滞" @@ -553,7 +556,7 @@ msgstr "当å‰å‘逿•°æ®åŒ…的最大大å°/预计接收数æ®åŒ…的最大大 #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:748 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1359 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2508 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 msgid "TX" msgstr "å‘包" @@ -563,7 +566,7 @@ msgstr "å‘节点å‘é€çš„æ•°æ®åŒ…总é‡" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:749 #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1360 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2510 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 msgid "RX" msgstr "接包" @@ -572,7 +575,7 @@ msgid "The total number of packets received from the peer" msgstr "从节点接收到数æ®åŒ…总é‡" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:750 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2513 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2518 msgid "Dup TX" msgstr "é‡å‘包" @@ -581,7 +584,7 @@ msgid "The total number of packets retransmitted to the peer" msgstr "å‘节点é‡å‘é€çš„æ•°æ®åŒ…总é‡" #: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:751 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2515 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2520 msgid "Dup RX" msgstr "é‡æŽ¥åŒ…" @@ -589,104 +592,104 @@ msgstr "é‡æŽ¥åŒ…" msgid "The total number of duplicate packets received from the peer" msgstr "从节点接收到的é‡å¤æ•°æ®åŒ…总é‡" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:560 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:561 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 msgid "Service" msgstr "æœåŠ¡" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:564 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:565 msgid "WAN Common Interface Configuration" msgstr "WAN 通用接å£è®¾ç½®" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:567 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:587 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:614 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:568 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:588 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:615 msgid "Type" msgstr "类型" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:569 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:589 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:570 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:590 msgid "Upstream" msgstr "上行" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:571 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:591 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:572 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:592 msgid "Downstream" msgstr "下行" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:575 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:576 msgid "WAN PPP Connection" msgstr "WAN PPP连接" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:583 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:610 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:288 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:314 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:584 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:611 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:295 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:321 msgid "Uptime" msgstr "è¿è¡Œæ—¶é—´" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:593 -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:616 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:594 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:617 msgid "External IP" msgstr "外部IP" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:597 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 msgid "Layer 3 Forwarding" msgstr "第三层(网络层)转å‘" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:598 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:599 msgid "Default Connection Service" msgstr "默认连接æœåŠ¡" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:602 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:603 msgid "WAN IP Connection" msgstr "WAN IP 连接" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:620 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:621 msgid "WAN Ethernet Link Configuration" msgstr "WAN 以太网(Ethernet)连接设置" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:641 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:642 msgid "Found Device" msgstr "å‘现设备" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:643 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:644 msgid "Subdevice" msgstr "å设备" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:664 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:665 msgid "UPnP Status" msgstr "UPnP状æ€" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:668 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:669 msgid "Disabled UPnP Devices" msgstr "ç¦ç”¨UPnP设备" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:682 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:683 msgid "" "UPnP has been disabled; Do you have more than one UPnP Internet Gateway " "Device on your LAN ?" msgstr "UPnP å·²ç»ç¦ç”¨ï¼›æ‚¨çš„局域网ä¸ä¸€ä¸ªä»¥ä¸Šçš„UPnP Internet 网关设备å—?" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:685 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:686 msgid "UPnP has not found any UPnP-aware, compatible device on your LAN." msgstr "UPnP 支æŒåœ¨æ‚¨çš„å±€åŸŸç½‘ä¸æ²¡æœ‰å‘现任何支æŒUPnP的设备。" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:693 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:694 #, java-format msgid "The current external IP address reported by UPnP is {0}" msgstr "UPnP报告的当å‰å¤–部IP为 {0}" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:695 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:696 msgid "The current external IP address is not available." msgstr "æ— æ³•èŽ·å–当å‰çš„外部IP地å€ã€‚" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:699 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:700 #, java-format msgid "UPnP reports the maximum downstream bit rate is {0}bits/sec" msgstr "UPnP 报告的最大下行比特率为 {0}bit/ç§’" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:701 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:702 #, java-format msgid "UPnP reports the maximum upstream bit rate is {0}bits/sec" msgstr "UPnP 报告的最大上行比特率为 {0}bit/ç§’" @@ -695,12 +698,12 @@ msgstr "UPnP 报告的最大上行比特率为 {0}bit/ç§’" #. {1,number,#####} prevents 12345 from being output as 12,345 in the English #. locale. #. If you want the digit separator in your locale, translate as {1}. -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:709 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:710 #, java-format msgid "{0} port {1,number,#####} was successfully forwarded by UPnP." msgstr "{0} ç«¯å£ {1,number,#####} å·²ç»é€šè¿‡ UPnP æˆåŠŸè½¬å‘。" -#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:711 +#: ../../../router/java/src/net/i2p/router/transport/UPnP.java:712 #, java-format msgid "{0} port {1,number,#####} was not forwarded by UPnP." msgstr "{0} ç«¯å£ {1,number,#####} 通过 UPnP 转å‘失败。" @@ -716,17 +719,17 @@ msgid "NTCP connections" msgstr "NTCP连接" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1345 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2466 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2471 msgid "Limit" msgstr "é™åˆ¶" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1346 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2467 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2472 msgid "Timeout" msgstr "è¶…æ—¶" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1354 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2478 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2483 msgid "IPv6" msgstr "IPv6" @@ -739,125 +742,125 @@ msgid "Backlogged?" msgstr "积压?" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1375 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2532 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2537 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Inbound" msgstr "入站" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1377 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2534 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2539 #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:91 msgid "Outbound" msgstr "出站" #: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:1432 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2699 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2704 #, java-format msgid "{0} peer" msgid_plural "{0} peers" msgstr[0] "{0} 个节点" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2465 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2470 msgid "UDP connections" msgstr "UDP连接" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2475 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 msgid "Sort by peer hash" msgstr "按节点Hash" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2477 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 msgid "Direction/Introduction" msgstr "按方å‘" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2480 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 msgid "Sort by idle inbound" msgstr "按出站空闲" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2482 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 msgid "Sort by idle outbound" msgstr "按入站空闲" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2485 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 msgid "Sort by inbound rate" msgstr "按入站速度" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2487 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 msgid "Sort by outbound rate" msgstr "按出站速度" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2490 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 msgid "Sort by connection uptime" msgstr "按连接时间" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2492 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 msgid "Sort by clock skew" msgstr "按时滞" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2495 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 msgid "Sort by congestion window" msgstr "按拥塞窗å£" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2497 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2502 msgid "Sort by slow start threshold" msgstr "按慢å¯åŠ¨é—¨æ§›" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2500 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2505 msgid "Sort by round trip time" msgstr "按往返时间" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2504 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 msgid "Sort by retransmission timeout" msgstr "按é‡ä¼ 输超时时间" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2507 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2512 msgid "Sort by outbound maximum transmit unit" msgstr "æŒ‰å‡ºç«™æœ€å¤§ä¼ è¾“å•å…ƒ" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2509 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 msgid "Sort by packets sent" msgstr "按已å‘逿•°æ®åŒ…" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2511 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 msgid "Sort by packets received" msgstr "按已接收数æ®åŒ…" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2514 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2519 msgid "Sort by packets retransmitted" msgstr "按é‡ä¼ æ•°æ®åŒ…" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2516 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2521 msgid "Sort by packets received more than once" msgstr "按é‡å¤æ•°æ®åŒ…" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2536 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2541 msgid "We offered to introduce them" msgstr "我们æä¾›ç»™å®ƒä»¬" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2538 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2543 msgid "They offered to introduce us" msgstr "它们æä¾›ç»™æˆ‘们" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2542 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2547 msgid "Choked" msgstr "阻塞" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2550 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2555 msgid "1 fail" msgstr "失败 1 次" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2552 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2557 #, java-format msgid "{0} fails" msgstr "失败 {0} 次" #. 1 -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2558 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2563 #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:166 #: ../java/src/net/i2p/router/web/ProfilesHelper.java:13 msgid "Banned" msgstr "å·²å°é”" -#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2617 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2622 msgid "backlogged" msgstr "积压" @@ -874,96 +877,96 @@ msgstr "忽略共享请求:高作业延迟" msgid "Dropping tunnel requests: Overloaded" msgstr "忽略共享请求:路由过载" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:693 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:695 msgid "Rejecting tunnels: Hidden mode" msgstr "æ‹’ç»éš§é“:éšèº«æ¨¡å¼" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:721 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:723 msgid "Rejecting tunnels: Request overload" msgstr "æ‹’ç»å…±äº«ï¼šè¯·æ±‚过多" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:752 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:754 msgid "Rejecting tunnels: Connection limit" msgstr "æ‹’ç»å…±äº«ï¼šè¿žæŽ¥å—é™" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:964 -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:997 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:966 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:999 msgid "Dropping tunnel requests: High load" msgstr "忽略共享请求:高负载" -#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1076 +#: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:1078 msgid "Dropping tunnel requests: Queue time" msgstr "忽略共享请求:队列积压" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:884 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:895 #, java-format msgid "New plugin version {0} is available" msgstr "æ–°æ’件版本 {0} å¯ç”¨" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:964 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:975 #, java-format msgid "Update check failed for plugin {0}" msgstr "{0} æ’件更新检查失败" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:968 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:979 #, java-format msgid "No new version is available for plugin {0}" msgstr "æ’ä»¶ {0} 没有更新å¯ç”¨" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:992 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1003 #, java-format msgid "{0}B transferred" msgstr "å·²ä¼ è¾“ {0}B" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1051 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1062 #, java-format msgid "Install failed from {0}" msgstr "从 {0} 安装失败" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1053 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1064 #: ../java/src/net/i2p/router/update/UpdateRunner.java:298 #, java-format msgid "Transfer failed from {0}" msgstr "ä¼ è¾“ {0} 的数æ®å¤±è´¥" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1328 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1339 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1403 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 #: ../java/src/net/i2p/router/web/SummaryHelper.java:715 msgid "Update downloaded" msgstr "更新已下载" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1416 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1427 msgid "Restarting" msgstr "æ£åœ¨é‡å¯" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1372 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1383 msgid "Update verified" msgstr "更新已验è¯" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1381 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1392 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:189 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:306 #, java-format msgid "from {0}" msgstr "自 {0}" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1396 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1407 #, java-format msgid "Unsigned update file from {0} is corrupt" msgstr "æ¥è‡ª {0} 的未ç¾å更新包已æŸå" -#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1425 +#: ../java/src/net/i2p/router/update/ConsoleUpdateManager.java:1436 #, java-format msgid "Failed copy to {0}" msgstr "æ— æ³•å¤åˆ¶åˆ° {0}" -#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:47 +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:49 #: ../java/src/net/i2p/router/update/DevSU3UpdateRunner.java:40 #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:55 #: ../java/src/net/i2p/router/update/PluginUpdateRunner.java:111 -#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:62 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:64 #: ../java/src/net/i2p/router/update/UnsignedUpdateRunner.java:41 #: ../java/src/net/i2p/router/update/UpdateRunner.java:155 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:573 @@ -972,6 +975,13 @@ msgstr "æ— æ³•å¤åˆ¶åˆ° {0}" msgid "HTTP client proxy tunnel must be running" msgstr "HTTP 客户端代ç†éš§é“å¿…é¡»è¿è¡Œ" +#: ../java/src/net/i2p/router/update/DevSU3UpdateChecker.java:83 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:242 +#: ../java/src/net/i2p/router/update/UnsignedUpdateChecker.java:88 +#, java-format +msgid "Requires Java version {0} but installed Java version is {1}" +msgstr "需è¦ç‰ˆæœ¬ä¸º {0} çš„ Javaï¼Œä½†ä½ å®‰è£…çš„ç‰ˆæœ¬æ˜¯ {1}" + #. set status before thread to ensure UI feedback #: ../java/src/net/i2p/router/update/DevSU3UpdateHandler.java:91 #: ../java/src/net/i2p/router/update/PluginUpdateHandler.java:82 @@ -981,24 +991,19 @@ msgstr "HTTP 客户端代ç†éš§é“å¿…é¡»è¿è¡Œ" msgid "Updating" msgstr "æ£åœ¨æ›´æ–°" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:209 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:218 msgid "In-network updates disabled. Check package manager." msgstr "网络更新被ç¦ç”¨ã€‚请检查软件包管ç†ã€‚" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:215 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:224 msgid "No write permission for I2P install directory." msgstr "没有对I2P安装目录的写æƒé™ã€‚" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:223 +#: ../java/src/net/i2p/router/update/NewsFetcher.java:232 #, java-format msgid "You must first update to version {0}" msgstr "ä½ å¿…é¡»å…ˆæ›´æ–°åˆ°ç‰ˆæœ¬{0}" -#: ../java/src/net/i2p/router/update/NewsFetcher.java:233 -#, java-format -msgid "Requires Java version {0} but installed Java version is {1}" -msgstr "需è¦ç‰ˆæœ¬ä¸º {0} çš„ Javaï¼Œä½†ä½ å®‰è£…çš„ç‰ˆæœ¬æ˜¯ {1}" - #: ../java/src/net/i2p/router/update/PluginUpdateChecker.java:62 #, java-format msgid "Checking for update of plugin {0}" @@ -1202,8 +1207,10 @@ msgid "unban now" msgstr "ç«‹å³è§£å°" #: ../java/src/net/i2p/router/web/CSSHelper.java:149 -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../java/strings/Strings.java:29 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:217 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:219 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:221 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:219 @@ -1273,6 +1280,8 @@ msgstr "ç«‹å³è§£å°" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:217 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:219 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:224 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:226 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:228 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:230 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:222 @@ -1298,6 +1307,16 @@ msgstr "ç«‹å³è§£å°" msgid "I2P Router Console" msgstr "I2P 路由控制å°" +#: ../java/src/net/i2p/router/web/CertHelper.java:25 +msgid "Local SSL Certificates" +msgstr "本地 SSL è¯ä¹¦" + +#: ../java/src/net/i2p/router/web/CertHelper.java:46 +#: ../java/src/net/i2p/router/web/CertHelper.java:51 +#: ../java/strings/Strings.java:63 +msgid "I2PTunnel" +msgstr "I2Péš§é“" + #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:62 msgid "Error updating the configuration - please see the error logs" msgstr "æ›´æ–°é…置出错 - 请查看错误日志" @@ -1312,7 +1331,8 @@ msgstr "设置ä¿å˜æˆåŠŸ" #: ../java/src/net/i2p/router/web/ConfigAdvancedHandler.java:98 #: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:622 #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:391 -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:151 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:109 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:160 msgid "" "Error saving the configuration (applied but not saved) - please see the " "error logs" @@ -1517,7 +1537,7 @@ msgid "Add Client" msgstr "æ·»åŠ å®¢æˆ·ç«¯" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:116 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:503 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:517 #: ../java/src/net/i2p/router/web/SummaryHelper.java:452 msgid "Client" msgstr "客户" @@ -1549,9 +1569,9 @@ msgid "Plugin" msgstr "æ’ä»¶" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:248 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:304 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 msgid "Version" msgstr "版本" @@ -1572,9 +1592,9 @@ msgid "License" msgstr "许å¯è¯" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:294 -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/HomeHelper.java:171 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:157 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/HomeHelper.java:178 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:164 msgid "Website" msgstr "网站" @@ -1609,7 +1629,7 @@ msgstr "åˆ é™¤" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:21 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigUIHandler.java:19 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:970 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:996 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:496 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:516 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:532 @@ -1619,7 +1639,7 @@ msgstr "åˆ é™¤é€‰ä¸é¡¹ç›®" #: ../java/src/net/i2p/router/web/ConfigHomeHandler.java:22 #: ../java/src/net/i2p/router/web/ConfigSummaryHandler.java:23 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1015 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:494 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:502 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:514 @@ -1715,11 +1735,11 @@ msgstr "在钥匙环未找到" msgid "Invalid destination" msgstr "ç›®æ ‡æ— æ•ˆ" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:82 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:84 msgid "Log overrides updated" msgstr "æ—¥å¿—å‚æ•°å·²æ›´æ–°" -#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:163 +#: ../java/src/net/i2p/router/web/ConfigLoggingHandler.java:165 msgid "Log configuration saved" msgstr "日志设置已ä¿å˜" @@ -1767,8 +1787,8 @@ msgstr "è¦å‘Š" #: ../java/src/net/i2p/router/web/ConfigLoggingHelper.java:85 #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:170 -#: ../java/src/net/i2p/router/web/HomeHelper.java:208 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:904 +#: ../java/src/net/i2p/router/web/HomeHelper.java:215 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 msgid "Remove" msgstr "åˆ é™¤" @@ -1787,11 +1807,12 @@ msgid "Home Page" msgstr "主页" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:328 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:335 msgid "Network" msgstr "网络" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:25 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:294 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:320 @@ -1825,6 +1846,7 @@ msgstr "网络" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:292 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:292 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:318 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:322 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:297 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:292 @@ -1843,8 +1865,8 @@ msgid "UI" msgstr "界é¢" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:26 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:179 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:486 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:186 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 #: ../java/strings/Strings.java:73 msgid "Tunnels" msgstr "éš§é“" @@ -1863,15 +1885,15 @@ msgid "Logging" msgstr "日志" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:185 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:372 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:192 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:386 #: ../java/strings/Strings.java:68 msgid "Peers" msgstr "节点" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:27 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:497 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:230 msgid "Stats" msgstr "统计" @@ -1887,7 +1909,7 @@ msgstr "高级" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:491 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:479 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:641 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:593 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:560 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:511 msgid "Save changes" @@ -2068,7 +2090,7 @@ msgid "Unsupported" msgstr "䏿”¯æŒ" #: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:24 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:591 msgid "Save changes and reseed now" msgstr "ä¿å˜ä¿®æ”¹å¹¶ç«‹å³å¼€å§‹ç½‘络引导" @@ -2115,7 +2137,16 @@ msgid "Reseed successful, loaded {0} router info from file" msgid_plural "Reseed successful, loaded {0} router infos from file" msgstr[0] "è¡¥ç§æˆåŠŸï¼Œä»Žæ–‡ä»¶è½½å…¥äº† {0} 个路由信æ¯" -#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:149 +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:99 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +msgid "Reset URL list" +msgstr "é‡ç½® URL 列表" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:107 +msgid "URL list reset successfully" +msgstr "URL 列表é‡ç½®æˆåŠŸ" + +#: ../java/src/net/i2p/router/web/ConfigReseedHandler.java:158 msgid "Configuration saved successfully." msgstr "设置ä¿å˜æˆåŠŸã€‚" @@ -2612,8 +2643,8 @@ msgid "User Name" msgstr "用户å" #: ../java/src/net/i2p/router/web/ConfigUIHelper.java:183 -#: ../java/src/net/i2p/router/web/HomeHelper.java:235 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:972 +#: ../java/src/net/i2p/router/web/HomeHelper.java:242 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:998 msgid "Add" msgstr "æ·»åŠ " @@ -2844,13 +2875,13 @@ msgstr "事件" msgid "Details" msgstr "详情" -#: ../java/src/net/i2p/router/web/FormHandler.java:251 +#: ../java/src/net/i2p/router/web/FormHandler.java:253 msgid "" "Invalid form submission, probably because you used the 'back' or 'reload' " "button on your browser. Please resubmit." msgstr "è¡¨å•æäº¤æ— æ•ˆï¼Œå¯èƒ½çš„åŽŸå› æ˜¯æ‚¨ä½¿ç”¨äº†â€œåŽé€€â€æˆ–â€œåˆ·æ–°â€æŒ‰é’®ã€‚è¯·é‡æ–°æäº¤ã€‚" -#: ../java/src/net/i2p/router/web/FormHandler.java:253 +#: ../java/src/net/i2p/router/web/FormHandler.java:255 msgid "" "If the problem persists, verify that you have cookies enabled in your " "browser." @@ -2981,156 +3012,169 @@ msgstr "ä¿å˜è®¾ç½®å¹¶é‡ç»˜å›¾è¡¨" msgid "Graph settings saved" msgstr "图表设置已ä¿å˜" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:229 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:236 msgid "Addressbook" msgstr "地å€ç°¿" -#: ../java/src/net/i2p/router/web/HomeHelper.java:29 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:227 +#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:234 msgid "Manage your I2P hosts file here (I2P domain name resolution)" msgstr "ç®¡ç†æ‚¨çš„ I2P hosts 文件(I2P域åè§£æžè¡¨ï¼‰" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 msgid "Configure Bandwidth" msgstr "é…置带宽" -#: ../java/src/net/i2p/router/web/HomeHelper.java:30 +#: ../java/src/net/i2p/router/web/HomeHelper.java:31 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:330 msgid "I2P Bandwidth Configuration" msgstr "I2P 带宽设置" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Configure Language" msgstr "设置è¯è¨€" -#: ../java/src/net/i2p/router/web/HomeHelper.java:31 +#: ../java/src/net/i2p/router/web/HomeHelper.java:32 msgid "Console Language Selection" msgstr "控制å°è¯è¨€é€‰æ‹©" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 msgid "Customize Home Page" msgstr "自定义主页" -#: ../java/src/net/i2p/router/web/HomeHelper.java:32 +#: ../java/src/net/i2p/router/web/HomeHelper.java:33 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confighome_jsp.java:346 msgid "I2P Home Page Configuration" msgstr "I2P 主页设置" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:139 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:146 msgid "Anonymous webmail client" msgstr "匿åWeb邮件客户端" -#: ../java/src/net/i2p/router/web/HomeHelper.java:33 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:141 +#: ../java/src/net/i2p/router/web/HomeHelper.java:34 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:148 msgid "Email" msgstr "匿å邮箱" -#: ../java/src/net/i2p/router/web/HomeHelper.java:34 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:251 +#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 msgid "I2P Router Help" msgstr "I2P路由帮助" -#: ../java/src/net/i2p/router/web/HomeHelper.java:35 +#: ../java/src/net/i2p/router/web/HomeHelper.java:36 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/error500_jsp.java:161 msgid "Router Console" msgstr "路由控制å°" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:145 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:152 msgid "Built-in anonymous BitTorrent Client" msgstr "内置的匿åBT客户端" -#: ../java/src/net/i2p/router/web/HomeHelper.java:36 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:147 +#: ../java/src/net/i2p/router/web/HomeHelper.java:37 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:154 msgid "Torrents" msgstr "匿åBT" -#: ../java/src/net/i2p/router/web/HomeHelper.java:37 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:155 +#: ../java/src/net/i2p/router/web/HomeHelper.java:38 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:162 msgid "Local web server" msgstr "本地WebæœåС噍" -#: ../java/src/net/i2p/router/web/HomeHelper.java:41 +#: ../java/src/net/i2p/router/web/HomeHelper.java:43 msgid "The Anoncoin project" msgstr "Anoncoin 项目" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug Reports" msgstr "Bug报告" -#: ../java/src/net/i2p/router/web/HomeHelper.java:42 +#: ../java/src/net/i2p/router/web/HomeHelper.java:44 msgid "Bug tracker" msgstr "Bug追踪系统" #. "colombo-bt.i2p" + S + _x("The Italian Bittorrent Resource") + S + "http #. ://colombo-bt.i2p/" + S + I + "colomboicon.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Dev Forum" msgstr "å¼€å‘论å›" -#: ../java/src/net/i2p/router/web/HomeHelper.java:44 +#: ../java/src/net/i2p/router/web/HomeHelper.java:46 msgid "Development forum" msgstr "å¼€å‘论å›" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Bittorrent tracker" msgstr "BT Tracker" -#: ../java/src/net/i2p/router/web/HomeHelper.java:45 +#: ../java/src/net/i2p/router/web/HomeHelper.java:47 msgid "diftracker" msgstr "diftracker" -#: ../java/src/net/i2p/router/web/HomeHelper.java:46 +#: ../java/src/net/i2p/router/web/HomeHelper.java:48 msgid "I2P Applications" msgstr "I2P 应用程åº" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +msgid "Anonymous cryptocurrency exchange" +msgstr "匿ååŠ å¯†ç®—æ³•äº¤æ¢" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "FAQ" msgstr "常è§é—®é¢˜" -#: ../java/src/net/i2p/router/web/HomeHelper.java:47 +#: ../java/src/net/i2p/router/web/HomeHelper.java:50 msgid "Frequently Asked Questions" msgstr "常è§é—®é¢˜è§£ç”" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Community forum" msgstr "社区论å›" -#: ../java/src/net/i2p/router/web/HomeHelper.java:48 +#: ../java/src/net/i2p/router/web/HomeHelper.java:51 msgid "Forum" msgstr "论å›" -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "" "A public anonymous Git hosting site - supports pulling via Git and HTTP and " "pushing via SSH" msgstr "公共匿åçš„Git托管 ï¼æ”¯æŒGit或HTTP下载和SHHä¸Šä¼ " -#: ../java/src/net/i2p/router/web/HomeHelper.java:49 +#: ../java/src/net/i2p/router/web/HomeHelper.java:52 msgid "Anonymous Git Hosting" msgstr "匿åGit托管" -#: ../java/src/net/i2p/router/web/HomeHelper.java:50 +#: ../java/src/net/i2p/router/web/HomeHelper.java:53 msgid "HiddenGate" msgstr "HiddenGate" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "Anonymous wiki - share the knowledge" +msgstr "匿å wiki - 分享åªçŸ¥è¯†" + +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +msgid "I2P Wiki" +msgstr "I2P Wiki" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Microblog" msgstr "å¾®åšå®¢" -#: ../java/src/net/i2p/router/web/HomeHelper.java:51 +#: ../java/src/net/i2p/router/web/HomeHelper.java:56 msgid "Your premier microblogging service on I2P" msgstr "I2P上的首选微åšå®¢æœåŠ¡" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 msgid "Javadocs" msgstr "Javadocs" -#: ../java/src/net/i2p/router/web/HomeHelper.java:52 -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical documentation" msgstr "技术文档" @@ -3138,91 +3182,98 @@ msgstr "技术文档" #. "http://jisko.i2p/" + S + I + "jisko_console_icon.png" + S + #. _x("Key Server") + S + _x("OpenPGP Keyserver") + S + "http://keys.i2p/" + S #. + I + "education.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:55 +#: ../java/src/net/i2p/router/web/HomeHelper.java:60 msgid "Debian and Tahoe-LAFS repositories" msgstr "DebianåŠTahoe-LAFSæºç 库" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free Web Hosting" msgstr "å…费的虚拟主机" -#: ../java/src/net/i2p/router/web/HomeHelper.java:56 +#: ../java/src/net/i2p/router/web/HomeHelper.java:61 msgid "Free eepsite hosting with PHP and MySQL" msgstr "支æŒPHP与MySQLçš„å…è´¹eepsite主机" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "I2P Pastebin" msgstr "I2P Pastebin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:57 +#: ../java/src/net/i2p/router/web/HomeHelper.java:62 msgid "Pastebin" msgstr "Pastebin" -#: ../java/src/net/i2p/router/web/HomeHelper.java:58 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 msgid "I2P News" msgstr "I2P æ–°é—»" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +msgid "Planet I2P" +msgstr "Planet I2P" + +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Add-on directory" msgstr "扩展目录" -#: ../java/src/net/i2p/router/web/HomeHelper.java:59 +#: ../java/src/net/i2p/router/web/HomeHelper.java:64 msgid "Plugins" msgstr "æ’ä»¶" -#: ../java/src/net/i2p/router/web/HomeHelper.java:60 +#: ../java/src/net/i2p/router/web/HomeHelper.java:65 msgid "Postman's Tracker" msgstr "Postman BT Tracker" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "I2P home page" msgstr "I2P 主页" -#: ../java/src/net/i2p/router/web/HomeHelper.java:61 +#: ../java/src/net/i2p/router/web/HomeHelper.java:66 msgid "Project Website" msgstr "项目网站" +#. FIXME ********** +#: ../java/src/net/i2p/router/web/HomeHelper.java:68 +msgid "Russian News Feed" +msgstr "俄罗斯新闻订阅" + #. "Salt" + S + "salt.i2p" + S + "http://salt.i2p/" + S + I + #. "salt_console.png" + S + -#: ../java/src/net/i2p/router/web/HomeHelper.java:63 +#: ../java/src/net/i2p/router/web/HomeHelper.java:70 msgid "I2P Network Statistics" msgstr "I2P网络统计" -#: ../java/src/net/i2p/router/web/HomeHelper.java:64 +#: ../java/src/net/i2p/router/web/HomeHelper.java:71 msgid "Technical Docs" msgstr "技术文档" -#: ../java/src/net/i2p/router/web/HomeHelper.java:65 +#: ../java/src/net/i2p/router/web/HomeHelper.java:72 msgid "Trac Wiki" msgstr "Trac Wiki" -#: ../java/src/net/i2p/router/web/HomeHelper.java:66 -msgid "Ugha's Wiki" -msgstr "Ugha's Wiki" - -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Seedless and the Robert BitTorrent applications" msgstr "Seedless åŠ Robert BT 程åº" -#: ../java/src/net/i2p/router/web/HomeHelper.java:67 +#. _x("Ugha's Wiki") + S + S + "http://ugha.i2p/" + S + I + +#. "billiard_marker.png" + S + +#: ../java/src/net/i2p/router/web/HomeHelper.java:74 msgid "Sponge's main site" msgstr "Sponge的主页" -#: ../java/src/net/i2p/router/web/HomeHelper.java:108 +#: ../java/src/net/i2p/router/web/HomeHelper.java:115 msgid "The HTTP proxy is not up" msgstr "HTTPä»£ç†æœªå¯åЍ" -#: ../java/src/net/i2p/router/web/HomeHelper.java:110 +#: ../java/src/net/i2p/router/web/HomeHelper.java:117 #, java-format msgid "Your browser is not properly configured to use the HTTP proxy at {0}" msgstr "您的æµè§ˆå™¨å°šæœªé…置使用HTTP代ç†{0}" -#: ../java/src/net/i2p/router/web/HomeHelper.java:210 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:906 +#: ../java/src/net/i2p/router/web/HomeHelper.java:217 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:932 msgid "Name" msgstr "åç§°" -#: ../java/src/net/i2p/router/web/HomeHelper.java:212 +#: ../java/src/net/i2p/router/web/HomeHelper.java:219 msgid "URL" msgstr "URL" @@ -3350,216 +3401,225 @@ msgstr "全部路由åŠå®Œæ•´ç»Ÿè®¡" msgid "LeaseSets" msgstr "èµé›†" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:105 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:106 #: ../java/strings/Strings.java:69 msgid "Router" msgstr "路由器" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:112 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:113 msgid "not found in network database" msgstr "在网络数æ®åº“䏿œªæ‰¾åˆ°" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:156 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 msgid "LeaseSet" msgstr "èµé›†" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:158 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:163 msgid "Local" msgstr "本地" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:160 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:165 msgid "Unpublished" msgstr "未å‘布" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:161 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:176 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:166 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:181 msgid "Destination" msgstr "ç›®æ ‡" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:173 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:185 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:178 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 msgid "Add to local addressbook" msgstr "æ·»åŠ åˆ°æœ¬åœ°åœ°å€ç°¿" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:190 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:217 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:195 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:222 #, java-format msgid "Expires in {0}" msgstr "{0} åŽè¿‡æœŸ" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:192 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:219 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:197 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:224 #, java-format msgid "Expired {0} ago" msgstr "{0} å‰è¿‡æœŸ" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Gateway" msgstr "网关" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:211 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:216 msgid "Lease" msgstr "ç§Ÿèµ" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:213 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:218 msgid "Tunnel" msgstr "éš§é“" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:280 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:286 msgid "Not initialized" msgstr "未åˆå§‹åŒ–" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:330 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:342 msgid "Network Database Router Statistics" msgstr "网络数æ®åº“路由统计" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:337 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:349 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Count" msgstr "计数" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:352 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:368 msgid "Transports" msgstr "ä¼ è¾“" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:370 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:390 msgid "Country" msgstr "国家" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:429 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:453 msgid "Our info" msgstr "我方信æ¯" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:431 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:455 msgid "Peer info for" msgstr "节点信æ¯" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:433 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:457 msgid "Full entry" msgstr "完整项" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 #: ../java/src/net/i2p/router/web/SummaryHelper.java:152 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:726 msgid "Hidden" msgstr "éšèº«" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:440 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:464 msgid "Updated" msgstr "已更新" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:441 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:444 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:465 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:468 #, java-format msgid "{0} ago" msgstr "{0} å‰" #. shouldnt happen -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:443 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:447 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:467 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:471 msgid "Published" msgstr "å‘布" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:449 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:473 msgid "Signing Key" msgstr "ç¾å密钥" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:451 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:475 msgid "Address(es)" msgstr "地å€" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:463 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:487 msgid "cost" msgstr "开销" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "Hidden or starting up" msgstr "éšèº«æˆ–æ£åœ¨å¯åЍ" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU" msgstr "SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:489 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:513 msgid "SSU with introducers" msgstr "使用ä¸ä»‹çš„SSU连接" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP" msgstr "NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU" msgstr "NTCP 与 SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:490 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:514 msgid "NTCP and SSU with introducers" msgstr "使用ä¸ä»‹çš„ NTCP å’Œ SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 Only SSU, introducers" msgstr "IPv6 ä»… SSU, ä¸ä»‹" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU" msgstr "IPv6 SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:491 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:515 msgid "IPv6 SSU, introducers" msgstr "IPv6 SSU, ä¸ä»‹" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP" msgstr "IPv6 NTCP" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU" msgstr "IPv6 NTCP, SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 NTCP, SSU, introducers" msgstr "IPv6 NTCP, SSU, ä¸ä»‹" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:492 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:516 msgid "IPv6 Only NTCP, SSU, introducers" msgstr "IPv6 ä»… NTCP, SSU, ä¸ä»‹" -#: ../java/src/net/i2p/router/web/NewsHelper.java:295 +#: ../java/src/net/i2p/router/web/NewsFeedHelper.java:80 +#, java-format +msgid "by {0}" +msgstr "ç”± {0}" + +#: ../java/src/net/i2p/router/web/NewsHelper.java:292 #, java-format msgid "News last updated {0} ago." msgstr "新闻更新于 {0}å‰ã€‚" -#: ../java/src/net/i2p/router/web/NewsHelper.java:301 +#: ../java/src/net/i2p/router/web/NewsHelper.java:298 #, java-format msgid "News last checked {0} ago." msgstr "最近一次查收新闻在 {0}å‰ã€‚" -#: ../java/src/net/i2p/router/web/NewsHelper.java:310 +#: ../java/src/net/i2p/router/web/NewsHelper.java:307 msgid "Hide news" msgstr "éšè—æ–°é—»" -#: ../java/src/net/i2p/router/web/NewsHelper.java:313 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:647 +#: ../java/src/net/i2p/router/web/NewsHelper.java:310 msgid "Show news" msgstr "显示新闻" +#: ../java/src/net/i2p/router/web/NewsHelper.java:314 +msgid "Show all news" +msgstr "显示所有新闻" + #: ../java/src/net/i2p/router/web/PluginStarter.java:140 msgid "Checking for plugin updates" msgstr "æ£åœ¨æ£€æŸ¥æ’ä»¶æ›´æ–°" #: ../java/src/net/i2p/router/web/PluginStarter.java:155 +#: ../java/src/net/i2p/router/web/PluginStarter.java:161 msgid "Plugin update check failed" msgstr "检查æ’件更新失败" -#: ../java/src/net/i2p/router/web/PluginStarter.java:193 +#: ../java/src/net/i2p/router/web/PluginStarter.java:199 #, java-format msgid "1 plugin updated" msgid_plural "{0} plugins updated" msgstr[0] "{0} 个æ’件已更新" -#: ../java/src/net/i2p/router/web/PluginStarter.java:195 +#: ../java/src/net/i2p/router/web/PluginStarter.java:201 msgid "Plugin update check complete" msgstr "æ’件的更新检查已完æˆ" @@ -3622,7 +3682,7 @@ msgid "Failing" msgstr "失败" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:135 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:411 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:425 msgid "Integrated" msgstr "已整åˆ" @@ -3889,277 +3949,287 @@ msgstr "图表事件计数" msgid "Lifetime average value" msgstr "全程å‡å€¼" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:121 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:128 msgid "I2P Router Help & FAQ" msgstr "I2P 使用帮助与常è§é—®ç”" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:123 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:130 msgid "Help & FAQ" msgstr "帮助与常è§é—®ç”" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:131 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:138 msgid "" "Configure startup of clients and webapps (services); manually start dormant " "services" msgstr "设置客户端åŠWeb应用(æœåŠ¡ï¼‰çš„å¯åŠ¨ï¼›æ‰‹åŠ¨å¯åЍé‡è¦æœåŠ¡" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:133 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:140 msgid "I2P Services" msgstr "I2P æœåŠ¡" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:169 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:176 msgid "Configure I2P Router" msgstr "设置 I2P 路由器" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:171 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:178 msgid "I2P Internals" msgstr "I2P内部设置" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:177 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:484 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:184 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:498 msgid "View existing tunnels and tunnel build status" msgstr "查看现å˜éš§é“åŠéš§é“的建立状æ€" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:183 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:370 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:190 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:384 msgid "Show all current peer connections" msgstr "æ˜¾ç¤ºå½“å‰æ‰€æœ‰çš„节点连接" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:189 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:196 msgid "Show recent peer performance profiles" msgstr "显示当å‰èŠ‚ç‚¹çš„æ€§èƒ½è®°å½•" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:191 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:198 msgid "Profiles" msgstr "摘è¦" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:195 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:202 msgid "Show list of all known I2P routers" msgstr "åŒ…å«æ‰€æœ‰å·²çŸ¥I2P路由器的列表" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:197 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:204 msgid "NetDB" msgstr "网络库" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:201 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:208 msgid "Health Report" msgstr "路由器å¥åº·çŠ¶å†µæŠ¥å‘Š" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:203 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:210 msgid "Logs" msgstr "日志" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:214 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 msgid "Graph router performance" msgstr "路由性能统计图" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:216 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:223 msgid "Graphs" msgstr "图表" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:221 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:228 msgid "Textual router performance statistics" msgstr "路由性能文å—统计" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:233 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:240 #: ../java/src/net/i2p/router/web/SummaryHelper.java:438 msgid "Local Tunnels" msgstr "本地隧é“" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:235 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:242 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:164 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/i2ptunnelmgr_jsp.java:337 msgid "Hidden Services Manager" msgstr "éšèº«æœåŠ¡ç®¡ç†å™¨" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:253 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:260 msgid "General" msgstr "功能概况" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:258 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 msgid "" "Your Local Identity is your unique I2P router identity, similar to an ip " "address but tailored to I2P. " msgstr "æ‚¨çš„æœ¬åœ°èº«ä»½å³æ‚¨çš„I2P路由唯一身份,相当于您在I2P网络ä¸çš„IP地å€ã€‚" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:259 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:266 msgid "Never disclose this to anyone, as it can reveal your real world ip." msgstr "ä¸è¦å°†å…¶é€éœ²ç»™ä»–äººï¼Œå› ä¸ºå®ƒå¯èƒ½è¢«ç”¨æ¥æŽ¢æµ‹å’Œç¡®å®šæ‚¨çš„真实IP。" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:261 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:268 msgid "Local Identity" msgstr "本地身份" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:265 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:272 msgid "Your unique I2P router identity is" msgstr "您的I2P路由的唯一身份为" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:269 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:276 msgid "never reveal it to anyone" msgstr "切勿将其告诉任何人" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:271 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:278 msgid "show" msgstr "显示" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:275 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:301 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:282 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:308 msgid "The version of the I2P software we are running" msgstr "当å‰è¿è¡Œçš„I2P软件版本" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:285 -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:311 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:292 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:318 msgid "How long we've been running for this session" msgstr "本次路由è¿è¡Œæ—¶é—´" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:326 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:333 msgid "" "Help with configuring your firewall and router for optimal I2P performance" msgstr "如何æ£ç¡®é…置您的防ç«å¢™å’Œç‰©ç†è·¯ç”±å™¨ä»¥ä¼˜åŒ– I2P 工作性能的帮助" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:337 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:344 msgid "See more information on the wiki" msgstr "在 wiki 查看更多信æ¯" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:339 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:346 msgid "Warning: ECDSA is not available. Update your Java or OS" msgstr "è¦å‘Šï¼šECDSA ä¸å¯ç”¨ã€‚请更新您的 Java 或æ“作系统" #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:351 +#, java-format +msgid "Warning: Java version {0} is no longer supported by I2P." +msgstr "è¦å‘Šï¼šJava 版本 {0} ä¸å†å—到 I2P 支æŒã€‚" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#, java-format +msgid "Update Java to version {0} or higher to receive I2P updates." +msgstr "æ›´æ–° Java 到 {0} 或更高版本以接收 I2P 更新。" + +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:365 msgid "Configure I2P Updates" msgstr "设置I2Pæ›´æ–°" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:353 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:367 msgid "I2P Update" msgstr "I2Pæ›´æ–°" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:378 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:392 msgid "Peers we've been talking to in the last few minutes/last hour" msgstr "过去数分钟/å°æ—¶ä¸è·¯ç”±è¿žæŽ¥è¿‡çš„节点" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:381 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:395 msgid "Active" msgstr "活动节点" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:390 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:404 msgid "The number of peers available for building client tunnels" msgstr "å¯ç”¨æ¥å»ºç«‹å®¢æˆ·ç«¯éš§é“的节点数é‡" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:393 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:407 msgid "Fast" msgstr "快速节点" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:399 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:413 msgid "The number of peers available for building exploratory tunnels" msgstr "å¯ç”¨æ¥å»ºç«‹æŽ¢æµ‹éš§é“的节点数é‡" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:402 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:416 msgid "High capacity" msgstr "高容é‡èŠ‚ç‚¹" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:408 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:422 msgid "The number of peers available for network database inquiries" msgstr "å¯ç”¨æ¥æŸ¥è¯¢ç½‘络数æ®åº“的节点" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:417 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:431 msgid "The total number of peers in our network database" msgstr "我方网络数æ®åº“ä¸è®°å½•的节点总数é‡" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:420 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:434 msgid "Known" msgstr "已知节点" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:440 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:454 msgid "Configure router bandwidth allocation" msgstr "设置路由的带宽é…é¢" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:442 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:456 msgid "Bandwidth in/out" msgstr "带宽(进/出站)" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:462 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:476 msgid "Total" msgstr "总计" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:469 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:483 msgid "Used" msgstr "已用" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:491 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:505 msgid "" "Used for building and testing tunnels, and communicating with floodfill " "peers" msgstr "用æ¥å»ºç«‹æˆ–测试隧é“,与 FloodFill 节点通信" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:494 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:508 msgid "Exploratory" msgstr "探测" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:500 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:514 msgid "Tunnels we are using to provide or access services on the network" msgstr "ç”¨æ¥æä¾›æœåŠ¡æˆ–è®¿é—®ä»–äººæœåŠ¡çš„éš§é“。" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:509 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:523 msgid "" "Tunnels we are participating in, directly contributing bandwidth to the " "network" msgstr "我方å‚与的隧é“,直接为网络贡献带宽" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:512 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:526 msgid "Participating" msgstr "共享" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:518 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:532 msgid "" "The ratio of tunnel hops we provide to tunnel hops we use - a value greater " "than 1.00 indicates a positive contribution to the network" msgstr "我方æä¾›ä¸Žä½¿ç”¨çš„éš§é“æ¯”例 - 大于 1.00 表示对网络作出了积æžè´¡çŒ®" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:521 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:535 msgid "Share ratio" msgstr "共享比率" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:534 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:548 msgid "What's in the router's job queue?" msgstr "查看路由的作业队列" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:536 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 msgid "Congestion" msgstr "æ‹¥å µ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:541 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:555 msgid "Indicates router performance" msgstr "表示路由器性能" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:544 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:558 msgid "Job lag" msgstr "作业延迟" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:550 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:564 msgid "Indicates how quickly outbound messages to other I2P routers are sent" msgstr "表示出站消æ¯å‘往其他I2P路由的速度" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:553 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:567 msgid "Message delay" msgstr "消æ¯å»¶è¿Ÿ" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:560 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:574 msgid "Round trip time for a tunnel test" msgstr "éš§é“æµ‹è¯•的往返时间" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:563 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:577 msgid "Tunnel lag" msgstr "éš§é“延迟" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:570 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:584 msgid "Queued requests from other routers to participate in tunnels" msgstr "è¯·æ±‚é˜Ÿåˆ—ä¸æ¥è‡ªå…¶ä»–è·¯ç”±çš„åŠ å…¥éš§é“请求" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:573 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:587 msgid "Backlog" msgstr "积压" -#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:608 +#: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:623 msgid "News & Updates" msgstr "新闻和更新" @@ -4272,17 +4342,21 @@ msgid "Click Shutdown and restart to install" msgstr "点击ã€å…³é—ã€‘å¹¶é‡æ–°å¯åЍI2På³å¯å®Œæˆå®‰è£…。" #: ../java/src/net/i2p/router/web/SummaryHelper.java:720 -#: ../java/src/net/i2p/router/web/SummaryHelper.java:735 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:737 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:749 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:761 #, java-format msgid "Version {0}" msgstr "版本 {0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:734 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:736 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:748 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:760 msgid "Update available" msgstr "有å¯ç”¨æ›´æ–°" #. Note to translators: parameter is a version, e.g. "0.8.4" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:758 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:784 #, java-format msgid "Download {0} Update" msgstr "下载 {0} æ›´æ–°" @@ -4291,7 +4365,7 @@ msgstr "下载 {0} æ›´æ–°" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:766 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:792 #, java-format msgid "Download Signed<br>Development Update<br>{0}" msgstr "下载已ç¾åçš„<br>å¼€å‘版更新<br>{0}" @@ -4300,56 +4374,56 @@ msgstr "下载已ç¾åçš„<br>å¼€å‘版更新<br>{0}" #. <br> is optional, to help the browser make the lines even in the button #. If the translation is shorter than the English, you should probably not #. include <br> -#: ../java/src/net/i2p/router/web/SummaryHelper.java:774 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 #, java-format msgid "Download Unsigned<br>Update {0}" msgstr "下载未ç¾å<br>æ›´æ–°{0}" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:798 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:824 msgid "Help with firewall configuration" msgstr "如何é…置防ç«å¢™" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:800 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:826 msgid "Check network connection and NAT/firewall" msgstr "检查网络连接和NAT/防ç«å¢™" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:819 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:845 msgid "Reseed" msgstr "è¡¥ç§" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:908 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:934 msgid "Order" msgstr "顺åº" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:925 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:951 msgid "Top" msgstr "顶部" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:930 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:956 msgid "Move to top" msgstr "移动到顶部" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:940 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:966 msgid "Move up" msgstr "上移" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:948 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:974 msgid "Down" msgstr "å‘下" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:953 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:979 msgid "Move down" msgstr "下移" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:958 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:984 msgid "Bottom" msgstr "底部" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:963 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:989 msgid "Move to bottom" msgstr "移动到底部" -#: ../java/src/net/i2p/router/web/SummaryHelper.java:975 +#: ../java/src/net/i2p/router/web/SummaryHelper.java:1001 msgid "Select a section to add" msgstr "é€‰æ‹©è¦æ·»åŠ çš„éƒ¨åˆ†" @@ -4396,100 +4470,100 @@ msgstr "å®¢æˆ·éš§é“ - " msgid "dead" msgstr "失效" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:70 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:69 msgid "Participating tunnels" msgstr "共享隧é“" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:71 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 msgid "Receive on" msgstr "接收" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Expiration" msgstr "到期" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:72 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 msgid "Send on" msgstr "å‘é€" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Rate" msgstr "速度" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 msgid "Role" msgstr "èŒèƒ½" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:73 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:74 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Usage" msgstr "使用é‡" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:111 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:113 msgid "grace period" msgstr "过渡期" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:121 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 msgid "Outbound Endpoint" msgstr "出站终端" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:123 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 msgid "Inbound Gateway" msgstr "入站网关" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:125 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:127 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:174 msgid "Participant" msgstr "å‚与节点" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:130 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:133 #, java-format msgid "Limited display to the {0} tunnels with the highest usage" msgstr "å·²é™åˆ¶ä¸ºæ˜¾ç¤ºä½¿ç”¨æœ€å¤šçš„{0}个隧é“" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:131 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:135 msgid "Inactive participating tunnels" msgstr "䏿´»è·ƒçš„共享隧é“" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:132 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:224 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:138 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:232 msgid "Lifetime bandwidth usage" msgstr "本次è¿è¡Œå¸¦å®½ä½¿ç”¨é‡" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:162 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:168 msgid "Expiry" msgstr "到期" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:165 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 msgid "Participants" msgstr "å‚与节点" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:171 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:177 msgid "Endpoint" msgstr "终端" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 #: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "Build in progress" msgstr "创建ä¸" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:211 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 msgid "inbound" msgstr "入站" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:218 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 msgid "outbound" msgstr "出站" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:223 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:231 msgid "No tunnels; waiting for the grace period to end." msgstr "æ— éš§é“ï¼›ç‰å¾…宽陿œŸç»“æŸã€‚" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:225 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:233 msgid "in" msgstr "å…¥" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:226 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:234 msgid "out" msgstr "出" @@ -4626,10 +4700,6 @@ msgstr "åŠ å¯†" msgid "i2cp" msgstr "i2cp" -#: ../java/strings/Strings.java:63 -msgid "I2PTunnel" -msgstr "I2Péš§é“" - #: ../java/strings/Strings.java:64 msgid "InNetPool" msgstr "InNetPool" @@ -4676,10 +4746,12 @@ msgstr "密钥" msgid "port" msgstr "端å£" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 -msgid "configure bandwidth" -msgstr "é…置带宽" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:146 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:318 +msgid "Certificates" +msgstr "è¯ä¹¦" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:153 @@ -4713,6 +4785,7 @@ msgstr "é…置带宽" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:149 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:149 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:151 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:155 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:154 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:149 @@ -4728,6 +4801,7 @@ msgstr "路由器已关é—" #. We have intl defined when this is included, but not when compiled #. standalone. +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:307 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:333 @@ -4760,6 +4834,7 @@ msgstr "路由器已关é—" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:305 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:305 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:331 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:310 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:305 @@ -4775,6 +4850,7 @@ msgid "Refresh (s)" msgstr "刷新(ç§’)" #. ditto +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/certs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:311 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:337 @@ -4807,6 +4883,7 @@ msgstr "刷新(ç§’)" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/jobs_jsp.java:309 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/netdb_jsp.java:309 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:335 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:339 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/oldconsole_jsp.java:314 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/peers_jsp.java:309 @@ -4821,6 +4898,10 @@ msgstr "刷新(ç§’)" msgid "Enable" msgstr "å¯ç”¨" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:148 +msgid "configure bandwidth" +msgstr "é…置带宽" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:437 msgid "Bandwidth limiter" msgstr "带宽é™åˆ¶" @@ -4897,7 +4978,7 @@ msgstr "高级网络é…置页é¢" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:501 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:477 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/confignet_jsp.java:639 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:587 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:589 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:558 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:509 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:461 @@ -5930,51 +6011,51 @@ msgstr "仅使用普通HTTP" msgid "Reseed URLs" msgstr "网络å¯åЍ" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:539 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:541 msgid "Enable HTTP Proxy?" msgstr "å¯ç”¨ HTTP 代ç†ï¼Ÿ" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:543 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:545 msgid "HTTP Proxy Host" msgstr "HTTP 代ç†åœ°å€" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:547 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:549 msgid "HTTP Proxy Port" msgstr "HTTP 代ç†ç«¯å£" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:551 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:553 msgid "Use HTTP Proxy Authorization?" msgstr "使用 HTTP 代ç†è®¤è¯ï¼Ÿ" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:555 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:557 msgid "HTTP Proxy Username" msgstr "HTTP 代ç†ç”¨æˆ·å" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:559 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:561 msgid "HTTP Proxy Password" msgstr "HTTP 代ç†å¯†ç " -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:563 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:565 msgid "Enable HTTPS Proxy?" msgstr "å¯ç”¨ HTTPS 代ç†ï¼Ÿ" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:567 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:569 msgid "HTTPS Proxy Host" msgstr "HTTPS 代ç†åœ°å€" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:571 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:573 msgid "HTTPS Proxy Port" msgstr "HTTPS 代ç†ç«¯å£" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:575 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:577 msgid "Use HTTPS Proxy Authorization?" msgstr "使用 HTTPS 代ç†è®¤è¯ï¼Ÿ" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:579 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:581 msgid "HTTPS Proxy Username" msgstr "HTTPS 代ç†ç”¨æˆ·å" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:583 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configreseed_jsp.java:585 msgid "HTTPS Proxy Password" msgstr "HTTPS 代ç†å¯†ç " @@ -6533,6 +6614,14 @@ msgstr "网络数æ®åº“" msgid "I2P Network Database" msgstr "I2P 网络数æ®åº“" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:148 +msgid "News" +msgstr "æ–°é—»" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/news_jsp.java:344 +msgid "Latest News" +msgstr "最新消æ¯" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/nowebapp_jsp.java:152 msgid "WebApp Not Found" msgstr "Web程åº(war)未找到" diff --git a/apps/sam/doc/README-test.txt b/apps/sam/doc/README-test.txt new file mode 100644 index 0000000000000000000000000000000000000000..c1936274d9d8e8265396d7e6266666b229e91b4e --- /dev/null +++ b/apps/sam/doc/README-test.txt @@ -0,0 +1,25 @@ +To run tests: + +Build and run standalone Java I2CP (no router): +ant buildTest +java -cp build/i2ptest.jar:build/routertest.jar -Djava.library.path=. net.i2p.router.client.LocalClientManager + + +Build and run standalone SAM server: +ant buildSAM +java -cp build/i2p.jar:build/mstreaming.jar:build/streaming.jar:build/sam.jar -Djava.library.path=. net.i2p.sam.SAMBridge + + +Build Java test clients: +cd apps/sam/java +ant clientjar +cd ../../.. + +Run sink client: +mkdir samsinkdir +java -cp build/i2p.jar:apps/sam/java/build/samclient.jar net.i2p.sam.client.SAMStreamSink samdest.txt samsinkdir -v 3.2 +run with no args to see usage + +Run send client: +java -cp build/i2p.jar:apps/sam/java/build/samclient.jar net.i2p.sam.client.SAMStreamSend samdest.txt samtestdata -v 3.2 +run with no args to see usage diff --git a/apps/sam/java/build.xml b/apps/sam/java/build.xml index 5d93ae4768eb3d4f5957a181e6cb5a913d468a76..9ecc58b8c20f241abf90b09be514f52c856a23ef 100644 --- a/apps/sam/java/build.xml +++ b/apps/sam/java/build.xml @@ -21,7 +21,9 @@ </depend> </target> - <property name="javac.compilerargs" value="" /> + <!-- ignored for now, we require java 7 here --> + <property name="javac.compilerargs7" value="" /> + <!-- ignored for now, we require java 7 here --> <property name="javac.version" value="1.6" /> <!-- compile everything including client classes --> @@ -30,22 +32,22 @@ <mkdir dir="./build/obj" /> <javac srcdir="./src" - debug="true" deprecation="on" source="${javac.version}" target="${javac.version}" + debug="true" deprecation="on" source="1.7" target="1.7" includeAntRuntime="false" destdir="./build/obj" classpath="../../../core/java/build/i2p.jar:../../ministreaming/java/build/mstreaming.jar" > - <compilerarg line="${javac.compilerargs}" /> + <compilerarg line="${javac.compilerargs7}" /> </javac> </target> <target name="compileTest" depends="compile"> <javac srcdir="./test" - debug="true" deprecation="on" source="${javac.version}" target="${javac.version}" + debug="true" deprecation="on" source="1.7" target="1.7" includeAntRuntime="false" destdir="./build/obj" classpath="../../../core/java/build/i2p.jar:../../ministreaming/java/build/mstreaming.jar" > - <compilerarg line="${javac.compilerargs}" /> + <compilerarg line="${javac.compilerargs7}" /> </javac> </target> diff --git a/apps/sam/java/src/net/i2p/sam/ReadLine.java b/apps/sam/java/src/net/i2p/sam/ReadLine.java new file mode 100644 index 0000000000000000000000000000000000000000..88c9a2553e60a78d4ab22232d33f602b3adbc199 --- /dev/null +++ b/apps/sam/java/src/net/i2p/sam/ReadLine.java @@ -0,0 +1,79 @@ +package net.i2p.sam; + +import java.io.EOFException; +import java.io.IOException; +import java.io.InputStream; +import java.io.Reader; +import java.net.Socket; +import java.net.SocketException; +import java.net.SocketTimeoutException; + +/** + * Modified from I2PTunnelHTTPServer + * Handles UTF-8. Does not buffer past the end of line. + * + * @since 0.9.24 + */ +class ReadLine { + + private static final int MAX_LINE_LENGTH = 8*1024; + + /** + * Read a line teriminated by newline, with a total read timeout. + * + * Warning - strips \n but not \r + * Warning - 8KB line length limit as of 0.7.13, @throws IOException if exceeded + * + * @param buf output + * @param timeout forever if if zero or negative + * @throws SocketTimeoutException if timeout is reached before newline + * @throws EOFException if EOF is reached before newline + * @throws LineTooLongException if too long + * @throws IOException on other errors in the underlying stream + */ + public static void readLine(Socket socket, StringBuilder buf, int timeout) throws IOException { + final int origTimeout = timeout; + int c; + int i = 0; + final long expires; + if (origTimeout > 0) { + socket.setSoTimeout(timeout); + expires = System.currentTimeMillis() + timeout; + } else { + expires = 0; + } + final Reader reader = new UTF8Reader(socket.getInputStream()); + while ( (c = reader.read()) != -1) { + if (++i > MAX_LINE_LENGTH) + throw new LineTooLongException("Line too long - max " + MAX_LINE_LENGTH); + if (c == '\n') + break; + if (origTimeout > 0) { + int newTimeout = (int) (expires - System.currentTimeMillis()); + if (newTimeout <= 0) + throw new SocketTimeoutException(); + buf.append((char)c); + if (newTimeout != timeout) { + timeout = newTimeout; + socket.setSoTimeout(timeout); + } + } else { + buf.append((char)c); + } + } + if (c == -1) { + if (origTimeout > 0 && System.currentTimeMillis() >= expires) + throw new SocketTimeoutException(); + else + throw new EOFException(); + } + } + + private static class LineTooLongException extends IOException { + public LineTooLongException(String s) { + super(s); + } + } +} + + diff --git a/apps/sam/java/src/net/i2p/sam/SAMBridge.java b/apps/sam/java/src/net/i2p/sam/SAMBridge.java index 383f44fb574b50a8ce6803eea3143a778143e67d..df7528c3304d59c46eceed7ac3c39845d87c0fc9 100644 --- a/apps/sam/java/src/net/i2p/sam/SAMBridge.java +++ b/apps/sam/java/src/net/i2p/sam/SAMBridge.java @@ -9,15 +9,16 @@ package net.i2p.sam; */ import java.io.BufferedReader; +import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStreamReader; +import java.net.InetAddress; import java.net.InetSocketAddress; import java.nio.channels.ServerSocketChannel; import java.nio.channels.SocketChannel; -import java.nio.ByteBuffer; import java.util.Arrays; import java.util.ArrayList; import java.util.HashMap; @@ -27,14 +28,23 @@ import java.util.Map; import java.util.Properties; import java.util.Set; +import javax.net.ssl.SSLServerSocket; +import javax.net.ssl.SSLServerSocketFactory; + +import gnu.getopt.Getopt; + import net.i2p.I2PAppContext; import net.i2p.app.*; import static net.i2p.app.ClientAppState.*; import net.i2p.data.DataFormatException; +import net.i2p.data.DataHelper; import net.i2p.data.Destination; import net.i2p.util.I2PAppThread; +import net.i2p.util.I2PSSLSocketFactory; import net.i2p.util.Log; +import net.i2p.util.OrderedProperties; import net.i2p.util.PortMapper; +import net.i2p.util.SystemVersion; /** * SAM bridge implementation. @@ -48,7 +58,11 @@ public class SAMBridge implements Runnable, ClientApp { private final String _listenHost; private final int _listenPort; private final Properties i2cpProps; + private final boolean _useSSL; + private final File _configFile; private volatile Thread _runner; + private final Object _v3DGServerLock = new Object(); + private SAMv3DatagramServer _v3DGServer; /** * filename in which the name to private key mapping should @@ -65,21 +79,27 @@ public class SAMBridge implements Runnable, ClientApp { private volatile boolean acceptConnections = true; private final ClientAppManager _mgr; - private final String[] _args; private volatile ClientAppState _state = UNINITIALIZED; private static final int SAM_LISTENPORT = 7656; public static final String DEFAULT_SAM_KEYFILE = "sam.keys"; + static final String DEFAULT_SAM_CONFIGFILE = "sam.config"; + private static final String PROP_SAM_KEYFILE = "sam.keyfile"; + private static final String PROP_SAM_SSL = "sam.useSSL"; public static final String PROP_TCP_HOST = "sam.tcp.host"; public static final String PROP_TCP_PORT = "sam.tcp.port"; - protected static final String DEFAULT_TCP_HOST = "0.0.0.0"; + public static final String PROP_AUTH = "sam.auth"; + public static final String PROP_PW_PREFIX = "sam.auth."; + public static final String PROP_PW_SUFFIX = ".shash"; + protected static final String DEFAULT_TCP_HOST = "127.0.0.1"; protected static final String DEFAULT_TCP_PORT = "7656"; public static final String PROP_DATAGRAM_HOST = "sam.udp.host"; public static final String PROP_DATAGRAM_PORT = "sam.udp.port"; - protected static final String DEFAULT_DATAGRAM_HOST = "0.0.0.0"; - protected static final String DEFAULT_DATAGRAM_PORT = "7655"; + protected static final String DEFAULT_DATAGRAM_HOST = "127.0.0.1"; + protected static final int DEFAULT_DATAGRAM_PORT_INT = 7655; + protected static final String DEFAULT_DATAGRAM_PORT = Integer.toString(DEFAULT_DATAGRAM_PORT_INT); /** @@ -95,11 +115,14 @@ public class SAMBridge implements Runnable, ClientApp { public SAMBridge(I2PAppContext context, ClientAppManager mgr, String[] args) throws Exception { _log = context.logManager().getLog(SAMBridge.class); _mgr = mgr; - _args = args; Options options = getOptions(args); _listenHost = options.host; _listenPort = options.port; + _useSSL = options.isSSL; + if (_useSSL && !SystemVersion.isJava7()) + throw new IllegalArgumentException("SSL requires Java 7 or higher"); persistFilename = options.keyFile; + _configFile = options.configFile; nameToPrivKeys = new HashMap<String,String>(8); _handlers = new HashSet<Handler>(8); this.i2cpProps = options.opts; @@ -123,13 +146,18 @@ public class SAMBridge implements Runnable, ClientApp { * @param persistFile location to store/load named keys to/from * @throws RuntimeException if a server socket can't be opened */ - public SAMBridge(String listenHost, int listenPort, Properties i2cpProps, String persistFile) { + public SAMBridge(String listenHost, int listenPort, boolean isSSL, Properties i2cpProps, + String persistFile, File configFile) { _log = I2PAppContext.getGlobalContext().logManager().getLog(SAMBridge.class); _mgr = null; - _args = new String[] {listenHost, Integer.toString(listenPort) }; // placeholder _listenHost = listenHost; _listenPort = listenPort; + _useSSL = isSSL; + if (_useSSL && !SystemVersion.isJava7()) + throw new IllegalArgumentException("SSL requires Java 7 or higher"); + this.i2cpProps = i2cpProps; persistFilename = persistFile; + _configFile = configFile; nameToPrivKeys = new HashMap<String,String>(8); _handlers = new HashSet<Handler>(8); loadKeys(); @@ -142,7 +170,6 @@ public class SAMBridge implements Runnable, ClientApp { + ":" + listenPort, e); throw new RuntimeException(e); } - this.i2cpProps = i2cpProps; _state = INITIALIZED; } @@ -150,17 +177,28 @@ public class SAMBridge implements Runnable, ClientApp { * @since 0.9.6 */ private void openSocket() throws IOException { - if ( (_listenHost != null) && !("0.0.0.0".equals(_listenHost)) ) { - serverSocket = ServerSocketChannel.open(); - serverSocket.socket().bind(new InetSocketAddress(_listenHost, _listenPort)); - if (_log.shouldLog(Log.DEBUG)) - _log.debug("SAM bridge listening on " - + _listenHost + ":" + _listenPort); + if (_useSSL) { + SSLServerSocketFactory fact = SSLUtil.initializeFactory(i2cpProps); + InetAddress addr; + if (_listenHost != null && !_listenHost.equals("0.0.0.0")) + addr = InetAddress.getByName(_listenHost); + else + addr = null; + SSLServerSocket sock = (SSLServerSocket) fact.createServerSocket(_listenPort, 0, addr); + I2PSSLSocketFactory.setProtocolsAndCiphers(sock); + serverSocket = new SSLServerSocketChannel(sock); } else { serverSocket = ServerSocketChannel.open(); - serverSocket.socket().bind(new InetSocketAddress(_listenPort)); - if (_log.shouldLog(Log.DEBUG)) - _log.debug("SAM bridge listening on 0.0.0.0:" + _listenPort); + if (_listenHost != null && !_listenHost.equals("0.0.0.0")) { + serverSocket.socket().bind(new InetSocketAddress(_listenHost, _listenPort)); + if (_log.shouldLog(Log.DEBUG)) + _log.debug("SAM bridge listening on " + + _listenHost + ":" + _listenPort); + } else { + serverSocket.socket().bind(new InetSocketAddress(_listenPort)); + if (_log.shouldLog(Log.DEBUG)) + _log.debug("SAM bridge listening on 0.0.0.0:" + _listenPort); + } } } @@ -169,8 +207,8 @@ public class SAMBridge implements Runnable, ClientApp { * * @param name name of the destination * @return null if the name does not exist, or if it is improperly formatted - * @deprecated unused */ +/**** public Destination getDestination(String name) { synchronized (nameToPrivKeys) { String val = nameToPrivKeys.get(name); @@ -186,6 +224,7 @@ public class SAMBridge implements Runnable, ClientApp { } } } +****/ /** * Retrieve the I2P private keystream for the given name, formatted @@ -218,59 +257,51 @@ public class SAMBridge implements Runnable, ClientApp { /** * Load up the keys from the persistFilename. - * TODO use DataHelper - * TODO store in config dir, not base dir */ + @SuppressWarnings("unchecked") private void loadKeys() { synchronized (nameToPrivKeys) { nameToPrivKeys.clear(); - BufferedReader br = null; + File file = new File(persistFilename); + // now in config dir but check base dir too... + if (!file.exists()) { + if (file.isAbsolute()) + return; + file = new File(I2PAppContext.getGlobalContext().getConfigDir(), persistFilename); + if (!file.exists()) + return; + } try { - br = new BufferedReader(new InputStreamReader( - new FileInputStream(persistFilename), "UTF-8")); - String line = null; - while ( (line = br.readLine()) != null) { - int eq = line.indexOf('='); - String name = line.substring(0, eq); - String privKeys = line.substring(eq+1); - nameToPrivKeys.put(name, privKeys); - } + Properties props = new Properties(); + DataHelper.loadProps(props, file); + // unchecked + Map foo = props; + nameToPrivKeys.putAll(foo); if (_log.shouldInfo()) - _log.info("Loaded " + nameToPrivKeys.size() + " private keys from " + persistFilename); - } catch (FileNotFoundException fnfe) { - _log.warn("Key file does not exist at " + persistFilename); + _log.info("Loaded " + nameToPrivKeys.size() + " private keys from " + file); } catch (IOException ioe) { - _log.error("Unable to read the keys from " + persistFilename, ioe); - } finally { - if (br != null) try { br.close(); } catch (IOException ioe) {} + _log.error("Unable to read the keys from " + file, ioe); } } } /** * Store the current keys to disk in the location specified on creation. - * TODO use DataHelper - * TODO store in config dir, not base dir */ private void storeKeys() { synchronized (nameToPrivKeys) { - FileOutputStream out = null; + File file = new File(persistFilename); + // now in config dir but check base dir too... + if (!file.exists() && !file.isAbsolute()) + file = new File(I2PAppContext.getGlobalContext().getConfigDir(), persistFilename); try { - out = new FileOutputStream(persistFilename); - for (Map.Entry<String, String> entry : nameToPrivKeys.entrySet()) { - String name = entry.getKey(); - String privKeys = entry.getValue(); - out.write(name.getBytes("UTF-8")); - out.write('='); - out.write(privKeys.getBytes("UTF-8")); - out.write('\n'); - } + Properties props = new OrderedProperties(); + props.putAll(nameToPrivKeys); + DataHelper.storeProps(props, file); if (_log.shouldInfo()) - _log.info("Saved " + nameToPrivKeys.size() + " private keys to " + persistFilename); + _log.info("Saved " + nameToPrivKeys.size() + " private keys to " + file); } catch (IOException ioe) { - _log.error("Error writing out the SAM keys to " + persistFilename, ioe); - } finally { - if (out != null) try { out.close(); } catch (IOException ioe) {} + _log.error("Error writing out the SAM keys to " + file, ioe); } } } @@ -320,6 +351,40 @@ public class SAMBridge implements Runnable, ClientApp { } } + /** + * Was a static singleton, now a singleton for this bridge. + * Instantiate and start server if it doesn't exist. + * We only listen on one host and port, as specified in the + * sam.udp.host and sam.udp.port properties. + * TODO we could have multiple servers on different hosts/ports in the future. + * + * @param props non-null instantiate and start server if it doesn't exist + * @param return non-null + * @throws IOException if can't bind to host/port, or if different than existing + * @since 0.9.24 + */ + SAMv3DatagramServer getV3DatagramServer(Properties props) throws IOException { + String host = props.getProperty(PROP_DATAGRAM_HOST, DEFAULT_DATAGRAM_HOST); + int port; + String portStr = props.getProperty(PROP_DATAGRAM_PORT, DEFAULT_DATAGRAM_PORT); + try { + port = Integer.parseInt(portStr); + } catch (NumberFormatException e) { + port = DEFAULT_DATAGRAM_PORT_INT; + } + synchronized (_v3DGServerLock) { + if (_v3DGServer == null) { + _v3DGServer = new SAMv3DatagramServer(this, host, port, props); + _v3DGServer.start(); + } else { + if (_v3DGServer.getPort() != port || !_v3DGServer.getHost().equals(host)) + throw new IOException("Already have V3 DatagramServer with host=" + host + " port=" + port); + } + return _v3DGServer; + } + } + + ////// begin ClientApp interface, use only if using correct construtor /** @@ -381,7 +446,7 @@ public class SAMBridge implements Runnable, ClientApp { * @since 0.9.6 */ public String getDisplayName() { - return "SAM " + Arrays.toString(_args); + return "SAM " + _listenHost + ':' + _listenPort; } ////// end ClientApp interface @@ -421,7 +486,8 @@ public class SAMBridge implements Runnable, ClientApp { public static void main(String args[]) { try { Options options = getOptions(args); - SAMBridge bridge = new SAMBridge(options.host, options.port, options.opts, options.keyFile); + SAMBridge bridge = new SAMBridge(options.host, options.port, options.isSSL, options.opts, + options.keyFile, options.configFile); bridge.startThread(); } catch (RuntimeException e) { e.printStackTrace(); @@ -459,9 +525,13 @@ public class SAMBridge implements Runnable, ClientApp { private final String host, keyFile; private final int port; private final Properties opts; + private final boolean isSSL; + private final File configFile; - public Options(String host, int port, Properties opts, String keyFile) { + public Options(String host, int port, boolean isSSL, Properties opts, String keyFile, File configFile) { this.host = host; this.port = port; this.opts = opts; this.keyFile = keyFile; + this.isSSL = isSSL; + this.configFile = configFile; } } @@ -476,73 +546,162 @@ public class SAMBridge implements Runnable, ClientApp { * depth, etc. * @param args [ keyfile [ listenHost ] listenPort [ name=val ]* ] * @return non-null Options or throws Exception + * @throws HelpRequestedException on command line problems + * @throws IllegalArgumentException if specified config file does not exist + * @throws IOException if specified config file cannot be read, or on SSL keystore problems * @since 0.9.6 */ private static Options getOptions(String args[]) throws Exception { - String keyfile = DEFAULT_SAM_KEYFILE; - int port = SAM_LISTENPORT; - String host = DEFAULT_TCP_HOST; - Properties opts = null; - if (args.length > 0) { - opts = parseOptions(args, 0); - keyfile = args[0]; - int portIndex = 1; - try { - if (args.length>portIndex) port = Integer.parseInt(args[portIndex]); - } catch (NumberFormatException nfe) { - host = args[portIndex]; - portIndex++; - try { - if (args.length>portIndex) port = Integer.parseInt(args[portIndex]); - } catch (NumberFormatException nfe1) { - port = Integer.parseInt(opts.getProperty(SAMBridge.PROP_TCP_PORT, SAMBridge.DEFAULT_TCP_PORT)); - host = opts.getProperty(SAMBridge.PROP_TCP_HOST, SAMBridge.DEFAULT_TCP_HOST); - } - } + String keyfile = null; + int port = -1; + String host = null; + boolean isSSL = false; + String cfile = null; + Getopt g = new Getopt("SAM", args, "hsc:"); + int c; + while ((c = g.getopt()) != -1) { + switch (c) { + case 's': + isSSL = true; + break; + + case 'c': + cfile = g.getOptarg(); + break; + + case 'h': + case '?': + case ':': + default: + throw new HelpRequestedException(); + } // switch + } // while + + int startArgs = g.getOptind(); + // possible args before ones containing '='; + // (none) + // key port + // key host port + int startOpts; + for (startOpts = startArgs; startOpts < args.length; startOpts++) { + if (args[startOpts].contains("=")) + break; + } + int numArgs = startOpts - startArgs; + switch (numArgs) { + case 0: + break; + + case 2: + keyfile = args[startArgs]; + try { + port = Integer.parseInt(args[startArgs + 1]); + } catch (NumberFormatException nfe) { + throw new HelpRequestedException(); + } + break; + + case 3: + keyfile = args[startArgs]; + host = args[startArgs + 1]; + try { + port = Integer.parseInt(args[startArgs + 2]); + } catch (NumberFormatException nfe) { + throw new HelpRequestedException(); + } + break; + + default: + throw new HelpRequestedException(); + } + + String scfile = cfile != null ? cfile : DEFAULT_SAM_CONFIGFILE; + File file = new File(scfile); + if (!file.isAbsolute()) + file = new File(I2PAppContext.getGlobalContext().getConfigDir(), scfile); + + Properties opts = new Properties(); + if (file.exists()) { + DataHelper.loadProps(opts, file); + } else if (cfile != null) { + // only throw if specified on command line + throw new IllegalArgumentException("Config file not found: " + file); } - return new Options(host, port, opts, keyfile); + // command line trumps config file trumps defaults + if (host == null) + host = opts.getProperty(PROP_TCP_HOST, DEFAULT_TCP_HOST); + if (port < 0) { + try { + port = Integer.parseInt(opts.getProperty(PROP_TCP_PORT, DEFAULT_TCP_PORT)); + } catch (NumberFormatException nfe) { + throw new HelpRequestedException(); + } + } + if (keyfile == null) + keyfile = opts.getProperty(PROP_SAM_KEYFILE, DEFAULT_SAM_KEYFILE); + if (!isSSL) + isSSL = Boolean.parseBoolean(opts.getProperty(PROP_SAM_SSL)); + if (isSSL) { + // must do this before we add command line opts since we may be writing them back out + boolean shouldSave = SSLUtil.verifyKeyStore(opts); + if (shouldSave) + DataHelper.storeProps(opts, file); + } + + int remaining = args.length - startOpts; + if (remaining > 0) { + parseOptions(args, startOpts, opts); + } + return new Options(host, port, isSSL, opts, keyfile, file); } - private static Properties parseOptions(String args[], int startArgs) throws HelpRequestedException { - Properties props = new Properties(); - // skip over first few options + /** + * Parse key=value options starting at startArgs. + * @param props out parameter, any options found are added + * @throws HelpRequestedException on any item not of the form key=value. + */ + private static void parseOptions(String args[], int startArgs, Properties props) throws HelpRequestedException { for (int i = startArgs; i < args.length; i++) { - if (args[i].equals("-h")) throw new HelpRequestedException(); int eq = args[i].indexOf('='); - if (eq <= 0) continue; - if (eq >= args[i].length()-1) continue; + if (eq <= 0) + throw new HelpRequestedException(); + if (eq >= args[i].length()-1) + throw new HelpRequestedException(); String key = args[i].substring(0, eq); String val = args[i].substring(eq+1); key = key.trim(); val = val.trim(); if ( (key.length() > 0) && (val.length() > 0) ) props.setProperty(key, val); + else + throw new HelpRequestedException(); } - return props; } private static void usage() { - System.err.println("Usage: SAMBridge [keyfile [listenHost] listenPortNum[ name=val]*]"); - System.err.println("or:"); - System.err.println(" SAMBridge [ name=val ]*"); - System.err.println(" keyfile: location to persist private keys (default sam.keys)"); - System.err.println(" listenHost: interface to listen on (0.0.0.0 for all interfaces)"); - System.err.println(" listenPort: port to listen for SAM connections on (default 7656)"); - System.err.println(" name=val: options to pass when connecting via I2CP, such as "); - System.err.println(" i2cp.host=localhost and i2cp.port=7654"); - System.err.println(""); - System.err.println("Host and ports of the SAM bridge can be specified with the alternate"); - System.err.println("form by specifying options "+SAMBridge.PROP_TCP_HOST+" and/or "+ - SAMBridge.PROP_TCP_PORT); - System.err.println(""); - System.err.println("Options "+SAMBridge.PROP_DATAGRAM_HOST+" and "+SAMBridge.PROP_DATAGRAM_PORT+ - " specify the listening ip"); - System.err.println("range and the port of SAM datagram server. This server is"); - System.err.println("only launched after a client creates the first SAM datagram"); - System.err.println("or raw session, after a handshake with SAM version >= 3.0."); - System.err.println(""); - System.err.println("The option loglevel=[DEBUG|WARN|ERROR|CRIT] can be used"); - System.err.println("for tuning the log verbosity.\n"); + System.err.println("Usage: SAMBridge [-s] [-c sam.config] [keyfile [listenHost] listenPortNum[ name=val]*]\n" + + "or:\n" + + " SAMBridge [ name=val ]*\n" + + " -s: Use SSL\n" + + " -c sam.config: Specify config file\n" + + " keyfile: location to persist private keys (default sam.keys)\n" + + " listenHost: interface to listen on (0.0.0.0 for all interfaces)\n" + + " listenPort: port to listen for SAM connections on (default 7656)\n" + + " name=val: options to pass when connecting via I2CP, such as \n" + + " i2cp.host=localhost and i2cp.port=7654\n" + + "\n" + + "Host and ports of the SAM bridge can be specified with the alternate\n" + + "form by specifying options "+SAMBridge.PROP_TCP_HOST+" and/or "+ + SAMBridge.PROP_TCP_PORT + + "\n" + + "Options "+SAMBridge.PROP_DATAGRAM_HOST+" and "+SAMBridge.PROP_DATAGRAM_PORT+ + " specify the listening ip\n" + + "range and the port of SAM datagram server. This server is\n" + + "only launched after a client creates the first SAM datagram\n" + + "or raw session, after a handshake with SAM version >= 3.0.\n" + + "\n" + + "The option loglevel=[DEBUG|WARN|ERROR|CRIT] can be used\n" + + "for tuning the log verbosity."); } public void run() { @@ -550,7 +709,9 @@ public class SAMBridge implements Runnable, ClientApp { changeState(RUNNING); if (_mgr != null) _mgr.register(this); - I2PAppContext.getGlobalContext().portMapper().register(PortMapper.SVC_SAM, _listenPort); + I2PAppContext.getGlobalContext().portMapper().register(_useSSL ? PortMapper.SVC_SAM_SSL : PortMapper.SVC_SAM, + _listenHost != null ? _listenHost : "127.0.0.1", + _listenPort); try { while (acceptConnections) { SocketChannel s = serverSocket.accept(); @@ -616,9 +777,14 @@ public class SAMBridge implements Runnable, ClientApp { if (serverSocket != null) serverSocket.close(); } catch (IOException e) {} - I2PAppContext.getGlobalContext().portMapper().unregister(PortMapper.SVC_SAM); + I2PAppContext.getGlobalContext().portMapper().unregister(_useSSL ? PortMapper.SVC_SAM_SSL : PortMapper.SVC_SAM); stopHandlers(); changeState(STOPPED); } } + + /** @since 0.9.24 */ + public void saveConfig() throws IOException { + DataHelper.storeProps(i2cpProps, _configFile); + } } diff --git a/apps/sam/java/src/net/i2p/sam/SAMDatagramReceiver.java b/apps/sam/java/src/net/i2p/sam/SAMDatagramReceiver.java index 68971af31a46a208277ab550064144c2fd325a6b..b07ff8fbed71097a33238aed793137c7a917870d 100644 --- a/apps/sam/java/src/net/i2p/sam/SAMDatagramReceiver.java +++ b/apps/sam/java/src/net/i2p/sam/SAMDatagramReceiver.java @@ -22,9 +22,12 @@ interface SAMDatagramReceiver { * * @param sender Destination * @param data Byte array to be received + * @param proto I2CP protocol + * @param fromPort I2CP from port + * @param toPort I2CP to port * @throws IOException */ - public void receiveDatagramBytes(Destination sender, byte data[]) throws IOException; + public void receiveDatagramBytes(Destination sender, byte data[], int proto, int fromPort, int toPort) throws IOException; /** * Stop receiving data. diff --git a/apps/sam/java/src/net/i2p/sam/SAMDatagramSession.java b/apps/sam/java/src/net/i2p/sam/SAMDatagramSession.java index ce3c1803c31b326e3c057109d0c73d9b74ee95b8..b25d6ad0b3b1911b11f7a75c5f8422f1a855b2b5 100644 --- a/apps/sam/java/src/net/i2p/sam/SAMDatagramSession.java +++ b/apps/sam/java/src/net/i2p/sam/SAMDatagramSession.java @@ -78,24 +78,24 @@ class SAMDatagramSession extends SAMMessageSession { * * @param dest Destination * @param data Bytes to be sent + * @param proto ignored, will always use PROTO_DATAGRAM (17) * * @return True if the data was sent, false otherwise * @throws DataFormatException on unknown / bad dest * @throws I2PSessionException on serious error, probably session closed */ - public boolean sendBytes(String dest, byte[] data) throws DataFormatException, I2PSessionException { + public boolean sendBytes(String dest, byte[] data, int proto, + int fromPort, int toPort) throws DataFormatException, I2PSessionException { if (data.length > DGRAM_SIZE_MAX) throw new DataFormatException("Datagram size exceeded (" + data.length + ")"); byte[] dgram ; synchronized (dgramMaker) { dgram = dgramMaker.makeI2PDatagram(data); } - // TODO pass ports through - return sendBytesThroughMessageSession(dest, dgram, I2PSession.PROTO_DATAGRAM, - I2PSession.PORT_UNSPECIFIED, I2PSession.PORT_UNSPECIFIED); + return sendBytesThroughMessageSession(dest, dgram, I2PSession.PROTO_DATAGRAM, fromPort, toPort); } - protected void messageReceived(byte[] msg) { + protected void messageReceived(byte[] msg, int proto, int fromPort, int toPort) { byte[] payload; Destination sender; try { @@ -106,18 +106,18 @@ class SAMDatagramSession extends SAMMessageSession { } } catch (DataFormatException e) { if (_log.shouldLog(Log.DEBUG)) { - _log.debug("Dropping ill-formatted I2P repliable datagram"); + _log.debug("Dropping ill-formatted I2P repliable datagram", e); } return; } catch (I2PInvalidDatagramException e) { if (_log.shouldLog(Log.DEBUG)) { - _log.debug("Dropping ill-signed I2P repliable datagram"); + _log.debug("Dropping ill-signed I2P repliable datagram", e); } return; } try { - recv.receiveDatagramBytes(sender, payload); + recv.receiveDatagramBytes(sender, payload, proto, fromPort, toPort); } catch (IOException e) { _log.error("Error forwarding message to receiver", e); close(); diff --git a/apps/sam/java/src/net/i2p/sam/SAMHandler.java b/apps/sam/java/src/net/i2p/sam/SAMHandler.java index 56d68878c612ec998fdc6a80f56e5b298f03f7e0..80ee1b568a3a7e35a8c5f3f706210798425abc77 100644 --- a/apps/sam/java/src/net/i2p/sam/SAMHandler.java +++ b/apps/sam/java/src/net/i2p/sam/SAMHandler.java @@ -35,8 +35,8 @@ abstract class SAMHandler implements Runnable, Handler { private final Object socketWLock = new Object(); // Guards writings on socket protected final SocketChannel socket; - protected final int verMajor; - protected final int verMinor; + public final int verMajor; + public final int verMinor; /** I2CP options configuring the I2CP connection (port, host, numHops, etc) */ protected final Properties i2cpProps; @@ -102,7 +102,10 @@ abstract class SAMHandler implements Runnable, Handler { } } - static public void writeBytes(ByteBuffer data, SocketChannel out) throws IOException { + /** + * Caller must synch + */ + private static void writeBytes(ByteBuffer data, SocketChannel out) throws IOException { while (data.hasRemaining()) out.write(data); out.socket().getOutputStream().flush(); } @@ -132,11 +135,14 @@ abstract class SAMHandler implements Runnable, Handler { } } - /** @return success */ + /** + * Unsynchronized, use with caution + * @return success + */ public static boolean writeString(String str, SocketChannel out) { try { - writeBytes(ByteBuffer.wrap(DataHelper.getASCII(str)), out); + writeBytes(ByteBuffer.wrap(DataHelper.getUTF8(str)), out); } catch (IOException e) { //_log.debug("Caught IOException", e); return false; @@ -158,6 +164,8 @@ abstract class SAMHandler implements Runnable, Handler { * unregister with the bridge. */ public void stopHandling() { + if (_log.shouldInfo()) + _log.info("Stopping: " + this, new Exception("I did it")); synchronized (stopLock) { stopHandler = true; } diff --git a/apps/sam/java/src/net/i2p/sam/SAMHandlerFactory.java b/apps/sam/java/src/net/i2p/sam/SAMHandlerFactory.java index 582854d870617970e18ea5efbeb4dba2c11c7bb6..d40b5352e9d834101f2a4570af0f5617c97f5ef7 100644 --- a/apps/sam/java/src/net/i2p/sam/SAMHandlerFactory.java +++ b/apps/sam/java/src/net/i2p/sam/SAMHandlerFactory.java @@ -13,11 +13,11 @@ import java.net.Socket; import java.net.SocketTimeoutException; import java.nio.channels.SocketChannel; import java.util.Properties; -import java.util.StringTokenizer; import net.i2p.I2PAppContext; import net.i2p.data.DataHelper; import net.i2p.util.Log; +import net.i2p.util.PasswordManager; import net.i2p.util.VersionComparator; /** @@ -25,7 +25,7 @@ import net.i2p.util.VersionComparator; */ class SAMHandlerFactory { - private static final String VERSION = "3.1"; + private static final String VERSION = "3.2"; private static final int HELLO_TIMEOUT = 60*1000; @@ -40,39 +40,33 @@ class SAMHandlerFactory { */ public static SAMHandler createSAMHandler(SocketChannel s, Properties i2cpProps, SAMBridge parent) throws SAMException { - StringTokenizer tok; + String line; Log log = I2PAppContext.getGlobalContext().logManager().getLog(SAMHandlerFactory.class); try { Socket sock = s.socket(); - sock.setSoTimeout(HELLO_TIMEOUT); sock.setKeepAlive(true); - String line = DataHelper.readLine(sock.getInputStream()); + StringBuilder buf = new StringBuilder(128); + ReadLine.readLine(sock, buf, HELLO_TIMEOUT); sock.setSoTimeout(0); - if (line == null) { - log.debug("Connection closed by client"); - return null; - } - tok = new StringTokenizer(line.trim(), " "); + line = buf.toString(); } catch (SocketTimeoutException e) { throw new SAMException("Timeout waiting for HELLO VERSION", e); } catch (IOException e) { throw new SAMException("Error reading from socket", e); - } catch (Exception e) { + } catch (RuntimeException e) { throw new SAMException("Unexpected error", e); } + if (log.shouldDebug()) + log.debug("New message received: [" + line + ']'); // Message format: HELLO VERSION [MIN=v1] [MAX=v2] - if (tok.countTokens() < 2) { - throw new SAMException("Must start with HELLO VERSION"); - } - if (!tok.nextToken().equals("HELLO") || - !tok.nextToken().equals("VERSION")) { + Properties props = SAMUtils.parseParams(line); + if (!"HELLO".equals(props.remove(SAMUtils.COMMAND)) || + !"VERSION".equals(props.remove(SAMUtils.OPCODE))) { throw new SAMException("Must start with HELLO VERSION"); } - Properties props = SAMUtils.parseParams(tok); - String minVer = props.getProperty("MIN"); if (minVer == null) { //throw new SAMException("Missing MIN parameter in HELLO VERSION message"); @@ -93,6 +87,20 @@ class SAMHandlerFactory { SAMHandler.writeString("HELLO REPLY RESULT=NOVERSION\n", s); return null; } + + if (Boolean.parseBoolean(i2cpProps.getProperty(SAMBridge.PROP_AUTH))) { + String user = props.getProperty("USER"); + String pw = props.getProperty("PASSWORD"); + if (user == null || pw == null) + throw new SAMException("USER and PASSWORD required"); + String savedPW = i2cpProps.getProperty(SAMBridge.PROP_PW_PREFIX + user + SAMBridge.PROP_PW_SUFFIX); + if (savedPW == null) + throw new SAMException("Authorization failed"); + PasswordManager pm = new PasswordManager(I2PAppContext.getGlobalContext()); + if (!pm.checkHash(savedPW, pw)) + throw new SAMException("Authorization failed"); + } + // Let's answer positively if (!SAMHandler.writeString("HELLO REPLY RESULT=OK VERSION=" + ver + "\n", s)) throw new SAMException("Error writing to socket"); @@ -131,6 +139,9 @@ class SAMHandlerFactory { if (VersionComparator.comp(VERSION, minVer) >= 0 && VersionComparator.comp(VERSION, maxVer) <= 0) return VERSION; + if (VersionComparator.comp("3.1", minVer) >= 0 && + VersionComparator.comp("3.1", maxVer) <= 0) + return "3.1"; // in VersionComparator, "3" < "3.0" so // use comparisons carefully if (VersionComparator.comp("3.0", minVer) >= 0 && diff --git a/apps/sam/java/src/net/i2p/sam/SAMMessageSession.java b/apps/sam/java/src/net/i2p/sam/SAMMessageSession.java index e8e502da8b2c5b5cf51cbc5b01343f6b68fd52d2..c95b6a9ab22c8faff38daeb7c99d507096662ec8 100644 --- a/apps/sam/java/src/net/i2p/sam/SAMMessageSession.java +++ b/apps/sam/java/src/net/i2p/sam/SAMMessageSession.java @@ -19,11 +19,12 @@ import net.i2p.client.I2PClient; import net.i2p.client.I2PClientFactory; import net.i2p.client.I2PSession; import net.i2p.client.I2PSessionException; -import net.i2p.client.I2PSessionListener; +import net.i2p.client.I2PSessionMuxedListener; +import net.i2p.client.SendMessageOptions; import net.i2p.data.Base64; import net.i2p.data.DataFormatException; import net.i2p.data.Destination; -import net.i2p.util.HexDump; +//import net.i2p.util.HexDump; import net.i2p.util.I2PAppThread; import net.i2p.util.Log; @@ -97,7 +98,8 @@ abstract class SAMMessageSession implements Closeable { * @throws DataFormatException on unknown / bad dest * @throws I2PSessionException on serious error, probably session closed */ - public abstract boolean sendBytes(String dest, byte[] data) throws DataFormatException, I2PSessionException; + public abstract boolean sendBytes(String dest, byte[] data, int proto, + int fromPort, int toPort) throws DataFormatException, I2PSessionException; /** * Actually send bytes through the SAM message-based session I2PSession @@ -125,6 +127,40 @@ abstract class SAMMessageSession implements Closeable { return session.sendMessage(d, data, proto, fromPort, toPort); } + /** + * Actually send bytes through the SAM message-based session I2PSession. + * TODO unused, umimplemented in the sessions and handlers + * + * @param dest Destination + * @param data Bytes to be sent + * @param proto I2CP protocol + * @param fromPort I2CP from port + * @param toPort I2CP to port + * + * @return True if the data was sent, false otherwise + * @throws DataFormatException on unknown / bad dest + * @throws I2PSessionException on serious error, probably session closed + * @since 0.9.24 + */ + protected boolean sendBytesThroughMessageSession(String dest, byte[] data, + int proto, int fromPort, int toPort, + boolean sendLeaseSet, int sendTags, + int tagThreshold, long expires) + throws DataFormatException, I2PSessionException { + Destination d = SAMUtils.getDest(dest); + + if (_log.shouldLog(Log.DEBUG)) { + _log.debug("Sending " + data.length + " bytes to " + dest); + } + SendMessageOptions opts = new SendMessageOptions(); + opts.setSendLeaseSet(sendLeaseSet); + opts.setTagsToSend(sendTags); + opts.setTagThreshold(tagThreshold); + opts.setDate(expires); + + return session.sendMessage(d, data, 0, data.length, proto, fromPort, toPort, opts); + } + /** * Close a SAM message-based session. */ @@ -136,7 +172,7 @@ abstract class SAMMessageSession implements Closeable { * Handle a new received message * @param msg Message payload */ - protected abstract void messageReceived(byte[] msg); + protected abstract void messageReceived(byte[] msg, int proto, int fromPort, int toPort); /** * Do whatever is needed to shutdown the SAM session @@ -158,7 +194,7 @@ abstract class SAMMessageSession implements Closeable { * * @author human */ - class SAMMessageSessionHandler implements Runnable, I2PSessionListener { + class SAMMessageSessionHandler implements Runnable, I2PSessionMuxedListener { private final Object runningLock = new Object(); private volatile boolean stillRunning = true; @@ -187,7 +223,7 @@ abstract class SAMMessageSession implements Closeable { if (_log.shouldLog(Log.DEBUG)) _log.debug("I2P session connected"); - session.setSessionListener(this); + session.addMuxedSessionListener(this, I2PSession.PROTO_ANY, I2PSession.PORT_ANY); } /** @@ -218,6 +254,7 @@ abstract class SAMMessageSession implements Closeable { _log.debug("Shutting down SAM message-based session handler"); shutDown(); + session.removeListener(I2PSession.PROTO_ANY, I2PSession.PORT_ANY); try { if (_log.shouldLog(Log.DEBUG)) @@ -243,7 +280,15 @@ abstract class SAMMessageSession implements Closeable { stopRunning(); } - public void messageAvailable(I2PSession session, int msgId, long size){ + public void messageAvailable(I2PSession session, int msgId, long size) { + messageAvailable(session, msgId, size, I2PSession.PROTO_UNSPECIFIED, + I2PSession.PORT_UNSPECIFIED, I2PSession.PORT_UNSPECIFIED); + } + + /** @since 0.9.24 */ + public void messageAvailable(I2PSession session, int msgId, long size, + int proto, int fromPort, int toPort) { + if (_log.shouldLog(Log.DEBUG)) { _log.debug("I2P message available (id: " + msgId + "; size: " + size + ")"); @@ -252,12 +297,12 @@ abstract class SAMMessageSession implements Closeable { byte msg[] = session.receiveMessage(msgId); if (msg == null) return; - if (_log.shouldLog(Log.DEBUG)) { - _log.debug("Content of message " + msgId + ":\n" - + HexDump.dump(msg)); - } + //if (_log.shouldLog(Log.DEBUG)) { + // _log.debug("Content of message " + msgId + ":\n" + // + HexDump.dump(msg)); + //} - messageReceived(msg); + messageReceived(msg, proto, fromPort, toPort); } catch (I2PSessionException e) { _log.error("Error fetching I2P message", e); stopRunning(); diff --git a/apps/sam/java/src/net/i2p/sam/SAMRawReceiver.java b/apps/sam/java/src/net/i2p/sam/SAMRawReceiver.java index 96ebe45d082102ffd98e4a35d1062a498fcfd5cd..564f95c3d8b39e53b2a20c07f3f4b1d5eac95d1f 100644 --- a/apps/sam/java/src/net/i2p/sam/SAMRawReceiver.java +++ b/apps/sam/java/src/net/i2p/sam/SAMRawReceiver.java @@ -20,9 +20,12 @@ interface SAMRawReceiver { * regarding the sender. * * @param data Byte array to be received + * @param proto I2CP protocol + * @param fromPort I2CP from port + * @param toPort I2CP to port * @throws IOException */ - public void receiveRawBytes(byte data[]) throws IOException; + public void receiveRawBytes(byte data[], int proto, int fromPort, int toPort) throws IOException; /** * Stop receiving data. diff --git a/apps/sam/java/src/net/i2p/sam/SAMRawSession.java b/apps/sam/java/src/net/i2p/sam/SAMRawSession.java index e3c42160834a7f46fd736f33d779b4472ce9bae4..ab1cd76322e36d6ca305510d14b9f0b1f82fffb9 100644 --- a/apps/sam/java/src/net/i2p/sam/SAMRawSession.java +++ b/apps/sam/java/src/net/i2p/sam/SAMRawSession.java @@ -67,22 +67,24 @@ class SAMRawSession extends SAMMessageSession { * Send bytes through a SAM RAW session. * * @param data Bytes to be sent + * @param proto if 0, will use PROTO_DATAGRAM_RAW (18) * * @return True if the data was sent, false otherwise * @throws DataFormatException on unknown / bad dest * @throws I2PSessionException on serious error, probably session closed */ - public boolean sendBytes(String dest, byte[] data) throws DataFormatException, I2PSessionException { + public boolean sendBytes(String dest, byte[] data, int proto, + int fromPort, int toPort) throws DataFormatException, I2PSessionException { if (data.length > RAW_SIZE_MAX) throw new DataFormatException("Data size limit exceeded (" + data.length + ")"); - // TODO pass ports through - return sendBytesThroughMessageSession(dest, data, I2PSession.PROTO_DATAGRAM_RAW, - I2PSession.PORT_UNSPECIFIED, I2PSession.PORT_UNSPECIFIED); + if (proto == I2PSession.PROTO_UNSPECIFIED) + proto = I2PSession.PROTO_DATAGRAM_RAW; + return sendBytesThroughMessageSession(dest, data, proto, fromPort, toPort); } - protected void messageReceived(byte[] msg) { + protected void messageReceived(byte[] msg, int proto, int fromPort, int toPort) { try { - recv.receiveRawBytes(msg); + recv.receiveRawBytes(msg, proto, fromPort, toPort); } catch (IOException e) { _log.error("Error forwarding message to receiver", e); close(); diff --git a/apps/sam/java/src/net/i2p/sam/SAMStreamSession.java b/apps/sam/java/src/net/i2p/sam/SAMStreamSession.java index 7504072714e8e44d0c351543ffe342d1a27a4378..14ed92b3eec9057c3f99449563c15045237e2565 100644 --- a/apps/sam/java/src/net/i2p/sam/SAMStreamSession.java +++ b/apps/sam/java/src/net/i2p/sam/SAMStreamSession.java @@ -226,8 +226,7 @@ class SAMStreamSession { return false; } - Destination d = new Destination(); - d.fromBase64(dest); + Destination d = SAMUtils.getDest(dest); I2PSocketOptions opts = socketMgr.buildOptions(props); if (props.getProperty(I2PSocketOptions.PROP_CONNECT_TIMEOUT) == null) diff --git a/apps/sam/java/src/net/i2p/sam/SAMUtils.java b/apps/sam/java/src/net/i2p/sam/SAMUtils.java index e1e52f4fc4c1dead45aff0f3231fe043b2ce725d..e0b0debff230f19fa535c1e7ab788aa6b2df1d40 100644 --- a/apps/sam/java/src/net/i2p/sam/SAMUtils.java +++ b/apps/sam/java/src/net/i2p/sam/SAMUtils.java @@ -11,9 +11,9 @@ package net.i2p.sam; import java.io.ByteArrayInputStream; import java.io.IOException; import java.io.OutputStream; +import java.util.Locale; import java.util.Map; import java.util.Properties; -import java.util.StringTokenizer; import net.i2p.I2PAppContext; import net.i2p.I2PException; @@ -82,6 +82,7 @@ class SAMUtils { * * @return True if the destination is valid, false otherwise */ +/**** public static boolean checkDestination(String dest) { try { Destination d = new Destination(); @@ -92,6 +93,7 @@ class SAMUtils { return false; } } +****/ /** * Check whether a base64-encoded {dest,privkey,signingprivkey} is valid @@ -105,8 +107,7 @@ class SAMUtils { return false; ByteArrayInputStream destKeyStream = new ByteArrayInputStream(b); try { - Destination d = new Destination(); - d.readBytes(destKeyStream); + Destination d = Destination.create(destKeyStream); new PrivateKey().readBytes(destKeyStream); SigningPrivateKey spk = new SigningPrivateKey(d.getSigningPublicKey().getType()); spk.readBytes(destKeyStream); @@ -159,95 +160,186 @@ class SAMUtils { return d; } + public static final String COMMAND = "\"\"COMMAND\"\""; + public static final String OPCODE = "\"\"OPCODE\"\""; + /** - * Parse SAM parameters, and put them into a Propetries object + * Parse SAM parameters, and put them into a Propetries object + * + * Modified from EepGet. + * COMMAND and OPCODE are mapped to upper case; keys, values, and ping data are not. + * Double quotes around values are stripped. + * + * Possible input: + *<pre> + * COMMAND + * COMMAND OPCODE + * COMMAND OPCODE [key=val]... + * COMMAND OPCODE [key=" val with spaces "]... + * PING + * PONG + * PING any thing goes + * PONG any thing goes + * + * Escaping is allowed with a backslash, e.g. \" + * No spaces before or after '=' allowed + * Keys may not be quoted + * COMMAND, OPCODE, and keys may not have '=' or whitespace unless escaped + * Duplicate keys not allowed + *</pre> + * + * A key without a value is not allowed by the spec, but is + * returned with the value "true". * - * @param tok A StringTokenizer pointing to the SAM parameters + * COMMAND is returned as the value of the key ""COMMAND"". + * OPCODE, or the remainder of the PING/PONG line if any, is returned as the value of the key ""OPCODE"". * - * @throws SAMException if the data was formatted incorrectly - * @return Properties with the parsed SAM params, never null + * @param args non-null + * @throws SAMException on some errors but not all + * @return non-null, may be empty. Does not throw on missing COMMAND or OPCODE; caller must check. */ - public static Properties parseParams(StringTokenizer tok) throws SAMException { - int ntoks = tok.countTokens(); - Properties props = new Properties(); - - StringBuilder value = new StringBuilder(); - for (int i = 0; i < ntoks; ++i) { - String token = tok.nextToken(); - - int pos = token.indexOf("="); - if (pos <= 0) { - //_log.debug("Error in params format"); - if (pos == 0) { - throw new SAMException("No param specified [" + token + "]"); - } else { - throw new SAMException("Bad formatting for param [" + token + "]"); - } - } - - String param = token.substring(0, pos); - value.append(token.substring(pos+1)); - if (value.length() == 0) - throw new SAMException("Empty value for param " + param); - - // FIXME: The following code does not take into account that there - // may have been multiple subsequent space chars in the input that - // StringTokenizer treates as one. - if (value.charAt(0) == '"') { - while ( (i < ntoks) && (value.lastIndexOf("\"") <= 0) ) { - value.append(' ').append(tok.nextToken()); - i++; - } - } + public static Properties parseParams(String args) throws SAMException { + final Properties rv = new Properties(); + final StringBuilder buf = new StringBuilder(32); + final int length = args.length(); + boolean isQuoted = false; + String key = null; + // We go one past the end to force a fake trailing space + // to make things easier, so we don't need cleanup at the end + for (int i = 0; i <= length; i++) { + char c = (i < length) ? args.charAt(i) : ' '; + switch (c) { + case '"': + if (isQuoted) { + // keys never quoted + if (key != null) { + if (rv.setProperty(key, buf.length() > 0 ? buf.toString() : "true") != null) + throw new SAMException("Duplicate parameter " + key); + key = null; + } + buf.setLength(0); + } + isQuoted = !isQuoted; + break; - props.setProperty(param, value.toString()); - value.setLength(0); - } + case '\r': + case '\n': + break; - //if (_log.shouldLog(Log.DEBUG)) { - // _log.debug("Parsed properties: " + dumpProperties(props)); - //} + case ' ': + case '\b': + case '\f': + case '\t': + // whitespace - if we're in a quoted section, keep this as part of the quote, + // otherwise use it as a delim + if (isQuoted) { + buf.append(c); + } else { + if (key != null) { + if (rv.setProperty(key, buf.length() > 0 ? buf.toString() : "true") != null) + throw new SAMException("Duplicate parameter " + key); + key = null; + } else if (buf.length() > 0) { + // key without value + String k = buf.toString(); + if (rv.isEmpty()) { + k = k.toUpperCase(Locale.US); + rv.setProperty(COMMAND, k); + if (k.equals("PING") || k.equals("PONG")) { + // eat the rest of the line + if (i + 1 < args.length()) { + String pingData = args.substring(i + 1); + rv.setProperty(OPCODE, pingData); + } + // this will force an end of the loop + i = length + 1; + } + } else if (rv.size() == 1) { + rv.setProperty(OPCODE, k.toUpperCase(Locale.US)); + } else { + if (rv.setProperty(k, "true") != null) + throw new SAMException("Duplicate parameter " + k); + } + } + buf.setLength(0); + } + break; - return props; - } + case '=': + if (isQuoted) { + buf.append(c); + } else if (key != null) { + // '=' in a value + buf.append(c); + } else { + if (buf.length() == 0) + throw new SAMException("Empty parameter name"); + key = buf.toString(); + buf.setLength(0); + } + break; - /* Dump a Properties object in an human-readable form */ -/**** - private static String dumpProperties(Properties props) { - StringBuilder builder = new StringBuilder(); - String key, val; - boolean firstIter = true; - - for (Map.Entry<Object, Object> entry : props.entrySet()) { - key = (String) entry.getKey(); - val = (String) entry.getValue(); - - if (!firstIter) { - builder.append(";"); - } else { - firstIter = false; + case '\\': + if (++i >= length) + throw new SAMException("Unterminated escape"); + c = args.charAt(i); + // fall through... + + default: + buf.append(c); + break; } - builder.append(" \"" + key + "\" -> \"" + val + "\""); } - - return builder.toString(); + // nothing needed here, as we forced a trailing space in the loop + // unterminated quoted content will be lost + if (isQuoted) + throw new SAMException("Unterminated quote"); + return rv; } -****/ - + /**** public static void main(String args[]) { try { test("a=b c=d e=\"f g h\""); test("a=\"b c d\" e=\"f g h\" i=\"j\""); test("a=\"b c d\" e=f i=\"j\""); + if (args.length == 0) { + System.out.println("Usage: CommandParser file || CommandParser text to parse"); + return; + } + if (args.length > 1 || !(new java.io.File(args[0])).exists()) { + StringBuilder buf = new StringBuilder(128); + for (int i = 0; i < args.length; i++) { + if (i != 0) + buf.append(' '); + buf.append(args[i]); + } + test(buf.toString()); + } else { + java.io.InputStream in = new java.io.FileInputStream(args[0]); + String line; + while ((line = net.i2p.data.DataHelper.readLine(in)) != null) { + try { + test(line); + } catch (Exception e) { + e.printStackTrace(); + } + } + } } catch (Exception e) { e.printStackTrace(); } } + private static void test(String props) throws Exception { - StringTokenizer tok = new StringTokenizer(props); - Properties p = parseParams(tok); - System.out.println(p); + System.out.println("Testing: " + props); + Properties m = parseParams(props); + System.out.println("Found " + m.size() + " keys"); + for (Map.Entry e : m.entrySet()) { + System.out.println(e.getKey() + "=[" + e.getValue() + ']'); + } + System.out.println("-------------"); } ****/ } + diff --git a/apps/sam/java/src/net/i2p/sam/SAMv1Handler.java b/apps/sam/java/src/net/i2p/sam/SAMv1Handler.java index 588d5f5e5786d0c6d3e228ec1949cd84f4abcaf5..d2cba4b82d5c4ceb7731539520e433dbd2f0e471 100644 --- a/apps/sam/java/src/net/i2p/sam/SAMv1Handler.java +++ b/apps/sam/java/src/net/i2p/sam/SAMv1Handler.java @@ -15,14 +15,16 @@ import java.io.IOException; import java.io.InterruptedIOException; import java.net.ConnectException; import java.net.NoRouteToHostException; +import java.net.Socket; +import java.net.SocketTimeoutException; import java.nio.channels.SocketChannel; import java.nio.ByteBuffer; import java.util.Properties; -import java.util.StringTokenizer; import java.util.concurrent.atomic.AtomicLong; import net.i2p.I2PException; import net.i2p.client.I2PClient; +import net.i2p.client.I2PSession; import net.i2p.client.I2PSessionException; import net.i2p.crypto.SigType; import net.i2p.data.Base64; @@ -48,6 +50,7 @@ class SAMv1Handler extends SAMHandler implements SAMRawReceiver, SAMDatagramRece protected final long _id; private static final AtomicLong __id = new AtomicLong(); + private static final int FIRST_READ_TIMEOUT = 60*1000; /** * Create a new SAM version 1 handler. This constructor expects @@ -97,14 +100,15 @@ class SAMv1Handler extends SAMHandler implements SAMRawReceiver, SAMDatagramRece String domain = null; String opcode = null; boolean canContinue = false; - StringTokenizer tok; Properties props; + final StringBuilder buf = new StringBuilder(128); this.thread.setName("SAMv1Handler " + _id); if (_log.shouldLog(Log.DEBUG)) _log.debug("SAM handling started"); try { + boolean gotFirstLine = false; while (true) { if (shouldStop()) { if (_log.shouldLog(Log.DEBUG)) @@ -121,43 +125,39 @@ class SAMv1Handler extends SAMHandler implements SAMRawReceiver, SAMDatagramRece _log.info("Connection closed by client"); break; } - java.io.InputStream is = clientSocketChannel.socket().getInputStream(); - if (is == null) { - _log.info("Connection closed by client"); - break; - } - msg = DataHelper.readLine(is); - if (msg == null) { - _log.info("Connection closed by client (line read : null)"); + buf.setLength(0); + // first time, set a timeout + try { + Socket sock = clientSocketChannel.socket(); + ReadLine.readLine(sock, buf, gotFirstLine ? 0 : FIRST_READ_TIMEOUT); + sock.setSoTimeout(0); + } catch (SocketTimeoutException ste) { + writeString("SESSION STATUS RESULT=I2P_ERROR MESSAGE=\"command timeout, bye\"\n"); break; } - msg = msg.trim(); + msg = buf.toString(); if (_log.shouldLog(Log.DEBUG)) { - _log.debug("New message received: [" + msg + "]"); + _log.debug("New message received: [" + msg + ']'); } - - if(msg.equals("")) { + props = SAMUtils.parseParams(msg); + domain = (String) props.remove(SAMUtils.COMMAND); + if (domain == null) { if (_log.shouldLog(Log.DEBUG)) _log.debug("Ignoring newline"); continue; } - - tok = new StringTokenizer(msg, " "); - if (tok.countTokens() < 2) { - // This is not a correct message, for sure + opcode = (String) props.remove(SAMUtils.OPCODE); + if (opcode == null) { if (_log.shouldLog(Log.DEBUG)) _log.debug("Error in message format"); break; } - domain = tok.nextToken(); - opcode = tok.nextToken(); if (_log.shouldLog(Log.DEBUG)) { _log.debug("Parsing (domain: \"" + domain + "\"; opcode: \"" + opcode + "\")"); } - props = SAMUtils.parseParams(tok); - + gotFirstLine = true; if (domain.equals("STREAM")) { canContinue = execStreamMessage(opcode, props); } else if (domain.equals("DATAGRAM")) { @@ -186,7 +186,9 @@ class SAMv1Handler extends SAMHandler implements SAMRawReceiver, SAMDatagramRece } catch (IOException e) { if (_log.shouldLog(Log.DEBUG)) _log.debug("Caught IOException for message [" + msg + "]", e); - } catch (Exception e) { + } catch (SAMException e) { + _log.error("Unexpected exception for message [" + msg + "]", e); + } catch (RuntimeException e) { _log.error("Unexpected exception for message [" + msg + "]", e); } finally { if (_log.shouldLog(Log.DEBUG)) @@ -367,16 +369,11 @@ class SAMv1Handler extends SAMHandler implements SAMRawReceiver, SAMDatagramRece /* Parse and execute a NAMING message */ protected boolean execNamingMessage(String opcode, Properties props) { if (opcode.equals("LOOKUP")) { - if (props.isEmpty()) { - _log.debug("No parameters specified in NAMING LOOKUP message"); - return false; - } - String name = props.getProperty("NAME"); if (name == null) { if (_log.shouldLog(Log.DEBUG)) _log.debug("Name to resolve not specified in NAMING message"); - return false; + return writeString("NAMING REPLY RESULT=KEY_NOT_FOUND NAME=\"\" MESSAGE=\"Must specify NAME\"\n"); } Destination dest = null ; @@ -438,25 +435,44 @@ class SAMv1Handler extends SAMHandler implements SAMRawReceiver, SAMDatagramRece } int size; - { - String strsize = props.getProperty("SIZE"); - if (strsize == null) { - if (_log.shouldLog(Log.DEBUG)) - _log.debug("Size not specified in DATAGRAM SEND message"); - return false; - } + String strsize = props.getProperty("SIZE"); + if (strsize == null) { + if (_log.shouldLog(Log.WARN)) + _log.warn("Size not specified in DATAGRAM SEND message"); + return false; + } + try { + size = Integer.parseInt(strsize); + } catch (NumberFormatException e) { + if (_log.shouldLog(Log.WARN)) + _log.warn("Invalid DATAGRAM SEND size specified: " + strsize); + return false; + } + if (!checkDatagramSize(size)) { + if (_log.shouldLog(Log.WARN)) + _log.warn("Specified size (" + size + + ") is out of protocol limits"); + return false; + } + int proto = I2PSession.PROTO_DATAGRAM; + int fromPort = I2PSession.PORT_UNSPECIFIED; + int toPort = I2PSession.PORT_UNSPECIFIED; + String s = props.getProperty("FROM_PORT"); + if (s != null) { try { - size = Integer.parseInt(strsize); + fromPort = Integer.parseInt(s); } catch (NumberFormatException e) { - if (_log.shouldLog(Log.DEBUG)) - _log.debug("Invalid DATAGRAM SEND size specified: " + strsize); - return false; + if (_log.shouldLog(Log.WARN)) + _log.warn("Invalid DATAGRAM SEND port specified: " + s); } - if (!checkDatagramSize(size)) { - if (_log.shouldLog(Log.DEBUG)) - _log.debug("Specified size (" + size - + ") is out of protocol limits"); - return false; + } + s = props.getProperty("TO_PORT"); + if (s != null) { + try { + toPort = Integer.parseInt(s); + } catch (NumberFormatException e) { + if (_log.shouldLog(Log.WARN)) + _log.warn("Invalid RAW SEND port specified: " + s); } } @@ -466,7 +482,7 @@ class SAMv1Handler extends SAMHandler implements SAMRawReceiver, SAMDatagramRece in.readFully(data); - if (!getDatagramSession().sendBytes(dest, data)) { + if (!getDatagramSession().sendBytes(dest, data, proto, fromPort, toPort)) { _log.error("DATAGRAM SEND failed"); // a message send failure is no reason to drop the SAM session // for raw and repliable datagrams, just carry on our merry way @@ -523,25 +539,53 @@ class SAMv1Handler extends SAMHandler implements SAMRawReceiver, SAMDatagramRece } int size; - { - String strsize = props.getProperty("SIZE"); - if (strsize == null) { - if (_log.shouldLog(Log.DEBUG)) - _log.debug("Size not specified in RAW SEND message"); - return false; + String strsize = props.getProperty("SIZE"); + if (strsize == null) { + if (_log.shouldLog(Log.WARN)) + _log.warn("Size not specified in RAW SEND message"); + return false; + } + try { + size = Integer.parseInt(strsize); + } catch (NumberFormatException e) { + if (_log.shouldLog(Log.WARN)) + _log.warn("Invalid RAW SEND size specified: " + strsize); + return false; + } + if (!checkSize(size)) { + if (_log.shouldLog(Log.WARN)) + _log.warn("Specified size (" + size + + ") is out of protocol limits"); + return false; + } + int proto = I2PSession.PROTO_DATAGRAM_RAW; + int fromPort = I2PSession.PORT_UNSPECIFIED; + int toPort = I2PSession.PORT_UNSPECIFIED; + String s = props.getProperty("PROTOCOL"); + if (s != null) { + try { + proto = Integer.parseInt(s); + } catch (NumberFormatException e) { + if (_log.shouldLog(Log.WARN)) + _log.warn("Invalid RAW SEND protocol specified: " + s); } + } + s = props.getProperty("FROM_PORT"); + if (s != null) { try { - size = Integer.parseInt(strsize); + fromPort = Integer.parseInt(s); } catch (NumberFormatException e) { - if (_log.shouldLog(Log.DEBUG)) - _log.debug("Invalid RAW SEND size specified: " + strsize); - return false; + if (_log.shouldLog(Log.WARN)) + _log.warn("Invalid RAW SEND port specified: " + s); } - if (!checkSize(size)) { - if (_log.shouldLog(Log.DEBUG)) - _log.debug("Specified size (" + size - + ") is out of protocol limits"); - return false; + } + s = props.getProperty("TO_PORT"); + if (s != null) { + try { + toPort = Integer.parseInt(s); + } catch (NumberFormatException e) { + if (_log.shouldLog(Log.WARN)) + _log.warn("Invalid RAW SEND port specified: " + s); } } @@ -551,7 +595,7 @@ class SAMv1Handler extends SAMHandler implements SAMRawReceiver, SAMDatagramRece in.readFully(data); - if (!getRawSession().sendBytes(dest, data)) { + if (!getRawSession().sendBytes(dest, data, proto, fromPort, toPort)) { _log.error("RAW SEND failed"); // a message send failure is no reason to drop the SAM session // for raw and repliable datagrams, just carry on our merry way @@ -796,16 +840,21 @@ class SAMv1Handler extends SAMHandler implements SAMRawReceiver, SAMDatagramRece } // SAMRawReceiver implementation - public void receiveRawBytes(byte data[]) throws IOException { + public void receiveRawBytes(byte data[], int proto, int fromPort, int toPort) throws IOException { if (getRawSession() == null) { _log.error("BUG! Received raw bytes, but session is null!"); return; } - ByteArrayOutputStream msg = new ByteArrayOutputStream(); + ByteArrayOutputStream msg = new ByteArrayOutputStream(64 + data.length); - String msgText = "RAW RECEIVED SIZE=" + data.length + "\n"; + String msgText = "RAW RECEIVED SIZE=" + data.length; msg.write(DataHelper.getASCII(msgText)); + if ((verMajor == 3 && verMinor >= 2) || verMajor > 3) { + msgText = " PROTOCOL=" + proto + " FROM_PORT=" + fromPort + " TO_PORT=" + toPort; + msg.write(DataHelper.getASCII(msgText)); + } + msg.write((byte) '\n'); msg.write(data); if (_log.shouldLog(Log.DEBUG)) @@ -832,17 +881,23 @@ class SAMv1Handler extends SAMHandler implements SAMRawReceiver, SAMDatagramRece } // SAMDatagramReceiver implementation - public void receiveDatagramBytes(Destination sender, byte data[]) throws IOException { + public void receiveDatagramBytes(Destination sender, byte data[], int proto, + int fromPort, int toPort) throws IOException { if (getDatagramSession() == null) { _log.error("BUG! Received datagram bytes, but session is null!"); return; } - ByteArrayOutputStream msg = new ByteArrayOutputStream(); + ByteArrayOutputStream msg = new ByteArrayOutputStream(100 + data.length); String msgText = "DATAGRAM RECEIVED DESTINATION=" + sender.toBase64() - + " SIZE=" + data.length + "\n"; + + " SIZE=" + data.length; msg.write(DataHelper.getASCII(msgText)); + if ((verMajor == 3 && verMinor >= 2) || verMajor > 3) { + msgText = " FROM_PORT=" + fromPort + " TO_PORT=" + toPort; + msg.write(DataHelper.getASCII(msgText)); + } + msg.write((byte) '\n'); if (_log.shouldLog(Log.DEBUG)) _log.debug("sending to client: " + msgText); diff --git a/apps/sam/java/src/net/i2p/sam/SAMv2StreamSession.java b/apps/sam/java/src/net/i2p/sam/SAMv2StreamSession.java index b579812c239f4c7eaf72074052eef4468db51640..dcd8ca4be48bfadf74ca28e6c890baa1f3143662 100644 --- a/apps/sam/java/src/net/i2p/sam/SAMv2StreamSession.java +++ b/apps/sam/java/src/net/i2p/sam/SAMv2StreamSession.java @@ -105,29 +105,18 @@ class SAMv2StreamSession extends SAMStreamSession return false ; } - Destination d = new Destination(); - - d.fromBase64 ( dest ); - + Destination d = SAMUtils.getDest(dest); I2PSocketOptions opts = socketMgr.buildOptions ( props ); - if ( props.getProperty ( I2PSocketOptions.PROP_CONNECT_TIMEOUT ) == null ) opts.setConnectTimeout ( 60 * 1000 ); if (_log.shouldLog(Log.DEBUG)) _log.debug ( "Connecting new I2PSocket..." ); - // non-blocking connection (SAMv2) - - StreamConnector connector ; - - connector = new StreamConnector ( id, d, opts ); - + StreamConnector connector = new StreamConnector ( id, d, opts ); I2PAppThread connectThread = new I2PAppThread ( connector, "StreamConnector" + id ) ; - connectThread.start() ; - return true ; } diff --git a/apps/sam/java/src/net/i2p/sam/SAMv3DatagramServer.java b/apps/sam/java/src/net/i2p/sam/SAMv3DatagramServer.java new file mode 100644 index 0000000000000000000000000000000000000000..e23f4e066dcdf65054aa34572d5de7a7c914339d --- /dev/null +++ b/apps/sam/java/src/net/i2p/sam/SAMv3DatagramServer.java @@ -0,0 +1,234 @@ +package net.i2p.sam; +/* + * free (adj.): unencumbered; not under the control of others + * Written by human in 2004 and released into the public domain + * with no warranty of any kind, either expressed or implied. + * It probably won't make your computer catch on fire, or eat + * your children, but it might. Use at your own risk. + * + */ + + +import java.io.ByteArrayInputStream; +import java.io.IOException; +import java.io.InputStream; +import java.net.InetSocketAddress; +import java.net.SocketAddress; +import java.nio.ByteBuffer; +import java.nio.channels.DatagramChannel; +import java.util.Properties; +import java.util.StringTokenizer; + +import net.i2p.I2PAppContext; +import net.i2p.client.I2PSession; +import net.i2p.data.DataHelper; +import net.i2p.util.I2PAppThread; +import net.i2p.util.Log; +import net.i2p.util.PortMapper; + +/** + * This is the thread listening on 127.0.0.1:7655 or as specified by + * sam.udp.host and sam.udp.port properties. + * This is used for both repliable and raw datagrams. + * + * @since 0.9.24 moved from SAMv3Handler + */ +class SAMv3DatagramServer implements Handler { + + private final DatagramChannel _server; + private final Thread _listener; + private final SAMBridge _parent; + private final String _host; + private final int _port; + + /** + * Does not start listener. + * Caller must call start(). + * + * @param parent may be null + * @param props ignored for now + */ + public SAMv3DatagramServer(SAMBridge parent, String host, int port, Properties props) throws IOException { + _parent = parent; + _server = DatagramChannel.open(); + + _server.socket().bind(new InetSocketAddress(host, port)); + _listener = new I2PAppThread(new Listener(_server), "SAM DatagramListener " + port); + _host = host; + _port = port; + } + + /** + * Only call once. + * @since 0.9.22 + */ + public synchronized void start() { + _listener.start(); + if (_parent != null) + _parent.register(this); + } + + /** + * Cannot be restarted. + * @since 0.9.22 + */ + public synchronized void stopHandling() { + try { + _server.close(); + } catch (IOException ioe) {} + _listener.interrupt(); + if (_parent != null) + _parent.unregister(this); + } + + public void send(SocketAddress addr, ByteBuffer msg) throws IOException { + _server.send(msg, addr); + } + + /** @since 0.9.24 */ + public String getHost() { return _host; } + + /** @since 0.9.24 */ + public int getPort() { return _port; } + + private class Listener implements Runnable { + + private final DatagramChannel server; + + public Listener(DatagramChannel server) + { + this.server = server ; + } + + public void run() { + I2PAppContext.getGlobalContext().portMapper().register(PortMapper.SVC_SAM_UDP, _host, _port); + try { + run2(); + } finally { + I2PAppContext.getGlobalContext().portMapper().unregister(PortMapper.SVC_SAM_UDP); + } + } + + private void run2() { + ByteBuffer inBuf = ByteBuffer.allocateDirect(SAMRawSession.RAW_SIZE_MAX+1024); + + while (!Thread.interrupted()) + { + inBuf.clear(); + try { + server.receive(inBuf); + } catch (IOException e) { + break ; + } + inBuf.flip(); + ByteBuffer outBuf = ByteBuffer.wrap(new byte[inBuf.remaining()]); + outBuf.put(inBuf); + outBuf.flip(); + // A new thread for every message is wildly inefficient... + //new I2PAppThread(new MessageDispatcher(outBuf.array()), "MessageDispatcher").start(); + // inline + // Even though we could be sending messages through multiple sessions, + // that isn't a common use case, and blocking should be rare. + // Inside router context, I2CP drops on overflow. + (new MessageDispatcher(outBuf.array())).run(); + } + } + } + + private static class MessageDispatcher implements Runnable { + private final ByteArrayInputStream is; + + public MessageDispatcher(byte[] buf) { + this.is = new ByteArrayInputStream(buf) ; + } + + public void run() { + try { + String header = DataHelper.readLine(is).trim(); + // we cannot use SAMUtils.parseParams() here + StringTokenizer tok = new StringTokenizer(header, " "); + if (tok.countTokens() < 3) { + // This is not a correct message, for sure + warn("Bad datagram header received"); + return; + } + String version = tok.nextToken(); + if (!version.startsWith("3.")) { + warn("Bad datagram header received"); + return; + } + String nick = tok.nextToken(); + String dest = tok.nextToken(); + + SAMv3Handler.SessionRecord rec = SAMv3Handler.sSessionsHash.get(nick); + if (rec!=null) { + Properties sprops = rec.getProps(); + String pr = sprops.getProperty("PROTOCOL"); + String fp = sprops.getProperty("FROM_PORT"); + String tp = sprops.getProperty("TO_PORT"); + while (tok.hasMoreTokens()) { + String t = tok.nextToken(); + if (t.startsWith("PROTOCOL=")) + pr = t.substring("PROTOCOL=".length()); + else if (t.startsWith("FROM_PORT=")) + fp = t.substring("FROM_PORT=".length()); + else if (t.startsWith("TO_PORT=")) + tp = t.substring("TO_PORT=".length()); + } + + int proto = I2PSession.PROTO_UNSPECIFIED; + int fromPort = I2PSession.PORT_UNSPECIFIED; + int toPort = I2PSession.PORT_UNSPECIFIED; + if (pr != null) { + try { + proto = Integer.parseInt(pr); + } catch (NumberFormatException nfe) { + warn("Bad datagram header received"); + return; + } + } + if (fp != null) { + try { + fromPort = Integer.parseInt(fp); + } catch (NumberFormatException nfe) { + warn("Bad datagram header received"); + return; + } + } + if (tp != null) { + try { + toPort = Integer.parseInt(tp); + } catch (NumberFormatException nfe) { + warn("Bad datagram header received"); + return; + } + } + // TODO too many allocations and copies. One here and one in Listener above. + byte[] data = new byte[is.available()]; + is.read(data); + SAMv3Handler.Session sess = rec.getHandler().getSession(); + if (sess != null) + sess.sendBytes(dest, data, proto, fromPort, toPort); + else + warn("Dropping datagram, no session for " + nick); + } else { + warn("Dropping datagram, no session for " + nick); + } + } catch (Exception e) { + warn("Error handling datagram", e); + } + } + + /** @since 0.9.22 */ + private static void warn(String s) { + warn(s, null); + } + + /** @since 0.9.22 */ + private static void warn(String s, Throwable t) { + Log log = I2PAppContext.getGlobalContext().logManager().getLog(SAMv3DatagramServer.class); + if (log.shouldLog(Log.WARN)) + log.warn(s, t); + } + } +} diff --git a/apps/sam/java/src/net/i2p/sam/SAMv3DatagramSession.java b/apps/sam/java/src/net/i2p/sam/SAMv3DatagramSession.java index a16c92327fe23cc2f055d850a3ab48cd08a546a9..ee2782559266ceb1bb820069d796155a1fd02666 100644 --- a/apps/sam/java/src/net/i2p/sam/SAMv3DatagramSession.java +++ b/apps/sam/java/src/net/i2p/sam/SAMv3DatagramSession.java @@ -21,7 +21,7 @@ import java.nio.ByteBuffer; class SAMv3DatagramSession extends SAMDatagramSession implements SAMv3Handler.Session, SAMDatagramReceiver { private final SAMv3Handler handler; - private final SAMv3Handler.DatagramServer server; + private final SAMv3DatagramServer server; private final String nick; private final SocketAddress clientAddress; @@ -30,52 +30,58 @@ class SAMv3DatagramSession extends SAMDatagramSession implements SAMv3Handler.Se /** * build a DatagramSession according to informations registered * with the given nickname + * * @param nick nickname of the session * @throws IOException * @throws DataFormatException * @throws I2PSessionException */ - public SAMv3DatagramSession(String nick) - throws IOException, DataFormatException, I2PSessionException, SAMException { - + public SAMv3DatagramSession(String nick, SAMv3DatagramServer dgServer) + throws IOException, DataFormatException, I2PSessionException, SAMException { super(SAMv3Handler.sSessionsHash.get(nick).getDest(), SAMv3Handler.sSessionsHash.get(nick).getProps(), null // to be replaced by this ); - this.nick = nick ; - this.recv = this ; // replacement - this.server = SAMv3Handler.DatagramServer.getInstance() ; + this.nick = nick; + this.recv = this; // replacement + this.server = dgServer; SAMv3Handler.SessionRecord rec = SAMv3Handler.sSessionsHash.get(nick); - if ( rec==null ) throw new SAMException("Record disappeared for nickname : \""+nick+"\"") ; + if (rec == null) + throw new SAMException("Record disappeared for nickname : \""+nick+"\""); - this.handler = rec.getHandler(); + this.handler = rec.getHandler(); - Properties props = rec.getProps(); - String portStr = props.getProperty("PORT") ; - if ( portStr==null ) { - _log.debug("receiver port not specified. Current socket will be used."); - this.clientAddress = null; - } - else { - int port = Integer.parseInt(portStr); - - String host = props.getProperty("HOST"); - if ( host==null ) { - host = rec.getHandler().getClientIP(); - _log.debug("no host specified. Taken from the client socket : " + host+':'+port); - } - - - this.clientAddress = new InetSocketAddress(host,port); - } + Properties props = rec.getProps(); + String portStr = props.getProperty("PORT"); + if (portStr == null) { + if (_log.shouldDebug()) + _log.debug("receiver port not specified. Current socket will be used."); + this.clientAddress = null; + } else { + int port = Integer.parseInt(portStr); + String host = props.getProperty("HOST"); + if (host == null) { + host = rec.getHandler().getClientIP(); + if (_log.shouldDebug()) + _log.debug("no host specified. Taken from the client socket : " + host+':'+port); + } + this.clientAddress = new InetSocketAddress(host, port); + } } - public void receiveDatagramBytes(Destination sender, byte[] data) throws IOException { + public void receiveDatagramBytes(Destination sender, byte[] data, int proto, + int fromPort, int toPort) throws IOException { if (this.clientAddress==null) { - this.handler.receiveDatagramBytes(sender, data); + this.handler.receiveDatagramBytes(sender, data, proto, fromPort, toPort); } else { - String msg = sender.toBase64()+"\n"; + StringBuilder buf = new StringBuilder(600); + buf.append(sender.toBase64()); + if ((handler.verMajor == 3 && handler.verMinor >= 2) || handler.verMajor > 3) { + buf.append(" FROM_PORT=").append(fromPort).append(" TO_PORT=").append(toPort); + } + buf.append('\n'); + String msg = buf.toString(); ByteBuffer msgBuf = ByteBuffer.allocate(msg.length()+data.length); msgBuf.put(DataHelper.getASCII(msg)); msgBuf.put(data); diff --git a/apps/sam/java/src/net/i2p/sam/SAMv3Handler.java b/apps/sam/java/src/net/i2p/sam/SAMv3Handler.java index 5e75dcf661d485c1fa1b94e8a54683b122dfa849..032538b0c8962f9412dc2d7c7358cccd6774f337 100644 --- a/apps/sam/java/src/net/i2p/sam/SAMv3Handler.java +++ b/apps/sam/java/src/net/i2p/sam/SAMv3Handler.java @@ -10,24 +10,25 @@ package net.i2p.sam; import java.io.ByteArrayOutputStream; -import java.io.ByteArrayInputStream; import java.io.IOException; import java.io.InputStream; import java.io.InterruptedIOException; import java.net.ConnectException; import java.net.InetSocketAddress; +import java.net.Socket; import java.net.SocketAddress; +import java.net.SocketException; +import java.net.SocketTimeoutException; import java.net.NoRouteToHostException; -import java.nio.channels.DatagramChannel; import java.nio.channels.SocketChannel; import java.nio.ByteBuffer; import java.util.Properties; import java.util.HashMap; -import java.util.StringTokenizer; import net.i2p.I2PAppContext; import net.i2p.I2PException; import net.i2p.client.I2PClient; +import net.i2p.client.I2PSession; import net.i2p.client.I2PSessionException; import net.i2p.crypto.SigType; import net.i2p.data.Base64; @@ -36,6 +37,7 @@ import net.i2p.data.DataHelper; import net.i2p.data.Destination; import net.i2p.util.Log; import net.i2p.util.I2PAppThread; +import net.i2p.util.PasswordManager; /** * Class able to handle a SAM version 3 client connection. @@ -50,12 +52,16 @@ class SAMv3Handler extends SAMv1Handler public static final SessionsDB sSessionsHash = new SessionsDB(); private volatile boolean stolenSocket; private volatile boolean streamForwardingSocket; - + private final boolean sendPorts; + private long _lastPing; + private static final int FIRST_READ_TIMEOUT = 60*1000; + private static final int READ_TIMEOUT = 3*60*1000; interface Session { String getNick(); void close(); - boolean sendBytes(String dest, byte[] data) throws DataFormatException, I2PSessionException; + boolean sendBytes(String dest, byte[] data, int proto, + int fromPort, int toPort) throws DataFormatException, I2PSessionException; } /** @@ -88,6 +94,7 @@ class SAMv3Handler extends SAMv1Handler Properties i2cpProps, SAMBridge parent) throws SAMException, IOException { super(s, verMajor, verMinor, i2cpProps, parent); + sendPorts = (verMajor == 3 && verMinor >= 2) || verMajor > 3; if (_log.shouldLog(Log.DEBUG)) _log.debug("SAM version 3 handler instantiated"); } @@ -97,124 +104,6 @@ class SAMv3Handler extends SAMv1Handler { return (verMajor == 3); } - - public static class DatagramServer { - - private static DatagramServer _instance; - private static DatagramChannel server; - - public static DatagramServer getInstance() throws IOException { - return getInstance(new Properties()); - } - - public static DatagramServer getInstance(Properties props) throws IOException { - synchronized(DatagramServer.class) { - if (_instance==null) - _instance = new DatagramServer(props); - return _instance ; - } - } - - public DatagramServer(Properties props) throws IOException { - synchronized(DatagramServer.class) { - if (server==null) - server = DatagramChannel.open(); - } - - String host = props.getProperty(SAMBridge.PROP_DATAGRAM_HOST, SAMBridge.DEFAULT_DATAGRAM_HOST); - String portStr = props.getProperty(SAMBridge.PROP_DATAGRAM_PORT, SAMBridge.DEFAULT_DATAGRAM_PORT); - int port ; - try { - port = Integer.parseInt(portStr); - } catch (NumberFormatException e) { - port = Integer.parseInt(SAMBridge.DEFAULT_DATAGRAM_PORT); - } - - server.socket().bind(new InetSocketAddress(host, port)); - new I2PAppThread(new Listener(server), "DatagramListener").start(); - } - - public void send(SocketAddress addr, ByteBuffer msg) throws IOException { - server.send(msg, addr); - } - - static class Listener implements Runnable { - - private final DatagramChannel server; - - public Listener(DatagramChannel server) - { - this.server = server ; - } - public void run() - { - ByteBuffer inBuf = ByteBuffer.allocateDirect(SAMRawSession.RAW_SIZE_MAX+1024); - - while (!Thread.interrupted()) - { - inBuf.clear(); - try { - server.receive(inBuf); - } catch (IOException e) { - break ; - } - inBuf.flip(); - ByteBuffer outBuf = ByteBuffer.wrap(new byte[inBuf.remaining()]); - outBuf.put(inBuf); - outBuf.flip(); - // A new thread for every message is wildly inefficient... - //new I2PAppThread(new MessageDispatcher(outBuf.array()), "MessageDispatcher").start(); - // inline - // Even though we could be sending messages through multiple sessions, - // that isn't a common use case, and blocking should be rare. - // Inside router context, I2CP drops on overflow. - (new MessageDispatcher(outBuf.array())).run(); - } - } - } - } - - private static class MessageDispatcher implements Runnable - { - private final ByteArrayInputStream is; - - public MessageDispatcher(byte[] buf) - { - this.is = new java.io.ByteArrayInputStream(buf) ; - } - - public void run() { - try { - String header = DataHelper.readLine(is).trim(); - StringTokenizer tok = new StringTokenizer(header, " "); - if (tok.countTokens() != 3) { - // This is not a correct message, for sure - //_log.debug("Error in message format"); - // FIXME log? throw? - return; - } - String version = tok.nextToken(); - if (!"3.0".equals(version)) return ; - String nick = tok.nextToken(); - String dest = tok.nextToken(); - - byte[] data = new byte[is.available()]; - is.read(data); - SessionRecord rec = sSessionsHash.get(nick); - if (rec!=null) { - rec.getHandler().session.sendBytes(dest,data); - } else { - Log log = I2PAppContext.getGlobalContext().logManager().getLog(SAMv3Handler.class); - if (log.shouldLog(Log.WARN)) - log.warn("Dropping datagram, no session for " + nick); - } - } catch (Exception e) { - Log log = I2PAppContext.getGlobalContext().logManager().getLog(SAMv3Handler.class); - if (log.shouldLog(Log.WARN)) - log.warn("Error handling datagram", e); - } - } - } /** * The values in the SessionsDB @@ -342,6 +231,11 @@ class SAMv3Handler extends SAMv1Handler public void stealSocket() { stolenSocket = true ; + if (sendPorts) { + try { + socket.socket().setSoTimeout(0); + } catch (SocketException se) {} + } this.stopHandling(); } @@ -353,12 +247,21 @@ class SAMv3Handler extends SAMv1Handler return bridge; } + /** + * For SAMv3DatagramServer + * @return may be null + * @since 0.9.24 + */ + Session getSession() { + return session; + } + + @Override public void handle() { String msg = null; String domain = null; String opcode = null; boolean canContinue = false; - StringTokenizer tok; Properties props; this.thread.setName("SAMv3Handler " + _id); @@ -366,47 +269,115 @@ class SAMv3Handler extends SAMv1Handler _log.debug("SAMv3 handling started"); try { - InputStream in = getClientSocket().socket().getInputStream(); + Socket socket = getClientSocket().socket(); + InputStream in = socket.getInputStream(); + StringBuilder buf = new StringBuilder(1024); + boolean gotFirstLine = false; while (true) { if (shouldStop()) { if (_log.shouldLog(Log.DEBUG)) _log.debug("Stop request found"); break; } - String line = DataHelper.readLine(in) ; - if (line==null) { - if (_log.shouldLog(Log.DEBUG)) - _log.debug("Connection closed by client (line read : null)"); - break; - } - msg = line.trim(); - - if (_log.shouldLog(Log.DEBUG)) { - if (_log.shouldLog(Log.DEBUG)) - _log.debug("New message received: [" + msg + "]"); + String line; + if (sendPorts) { + // client supports PING + try { + ReadLine.readLine(socket, buf, READ_TIMEOUT); + line = buf.toString(); + buf.setLength(0); + } catch (SocketTimeoutException ste) { + long now = System.currentTimeMillis(); + if (buf.length() <= 0) { + if (_lastPing > 0) { + if (now - _lastPing >= READ_TIMEOUT) { + if (_log.shouldWarn()) + _log.warn("Failed to respond to PING"); + writeString("SESSION STATUS RESULT=I2P_ERROR MESSAGE=\"PONG timeout\"\n"); + break; + } + } else { + if (_log.shouldDebug()) + _log.debug("Sendng PING " + now); + _lastPing = now; + if (!writeString("PING " + now + '\n')) + break; + } + } else { + if (_lastPing > 0) { + if (now - _lastPing >= 2*READ_TIMEOUT) { + if (_log.shouldWarn()) + _log.warn("Failed to respond to PING"); + writeString("SESSION STATUS RESULT=I2P_ERROR MESSAGE=\"PONG timeout\"\n"); + break; + } + } else if (_lastPing < 0) { + if (_log.shouldWarn()) + _log.warn("2nd timeout"); + writeString("SESSION STATUS RESULT=I2P_ERROR MESSAGE=\"command timeout, bye\"\n"); + break; + } else { + // don't clear buffer, don't send ping, + // go around again + _lastPing = -1; + if (_log.shouldWarn()) + _log.warn("timeout after partial: " + buf); + } + } + if (_log.shouldDebug()) + _log.debug("loop after timeout"); + continue; + } + } else { + buf.setLength(0); + // first time, set a timeout + try { + ReadLine.readLine(socket, buf, gotFirstLine ? 0 : FIRST_READ_TIMEOUT); + socket.setSoTimeout(0); + } catch (SocketTimeoutException ste) { + writeString("SESSION STATUS RESULT=I2P_ERROR MESSAGE=\"command timeout, bye\"\n"); + break; + } + line = buf.toString(); } - if(msg.equals("")) { + if (_log.shouldLog(Log.DEBUG)) + _log.debug("New message received: [" + line + ']'); + props = SAMUtils.parseParams(line); + domain = (String) props.remove(SAMUtils.COMMAND); + if (domain == null) { if (_log.shouldLog(Log.DEBUG)) _log.debug("Ignoring newline"); continue; } - - tok = new StringTokenizer(msg, " "); - if (tok.countTokens() < 2) { - // This is not a correct message, for sure - if (_log.shouldLog(Log.DEBUG)) - _log.debug("Error in message format"); - break; - } - domain = tok.nextToken(); - opcode = tok.nextToken(); + gotFirstLine = true; + opcode = (String) props.remove(SAMUtils.OPCODE); if (_log.shouldLog(Log.DEBUG)) { _log.debug("Parsing (domain: \"" + domain + "\"; opcode: \"" + opcode + "\")"); } - props = SAMUtils.parseParams(tok); + + // these may not have a second token + if (domain.equals("PING")) { + execPingMessage(opcode); + continue; + } else if (domain.equals("PONG")) { + execPongMessage(opcode); + continue; + } else if (domain.equals("QUIT") || domain.equals("STOP") || + domain.equals("EXIT")) { + writeString(domain + " STATUS RESULT=OK MESSAGE=bye\n"); + break; + } + + if (opcode == null) { + // This is not a correct message, for sure + if (writeString(domain + " STATUS RESULT=I2P_ERROR MESSAGE=\"command not specified\"\n")) + continue; + else + break; + } if (domain.equals("STREAM")) { canContinue = execStreamMessage(opcode, props); @@ -424,6 +395,8 @@ class SAMv3Handler extends SAMv1Handler } else if (domain.equals("RAW")) { // TODO not yet overridden, ID is ignored, most recent RAW session is used canContinue = execRawMessage(opcode, props); + } else if (domain.equals("AUTH")) { + canContinue = execAuthMessage(opcode, props); } else { if (_log.shouldLog(Log.DEBUG)) _log.debug("Unrecognized message domain: \"" @@ -434,12 +407,14 @@ class SAMv3Handler extends SAMv1Handler if (!canContinue) { break; } - } + } // while } catch (IOException e) { if (_log.shouldLog(Log.DEBUG)) - _log.debug("Caught IOException for message [" + msg + "]", e); - } catch (Exception e) { - _log.error("Unexpected exception for message [" + msg + "]", e); + _log.debug("Caught IOException in handler", e); + } catch (SAMException e) { + _log.error("Unexpected exception for message [" + msg + ']', e); + } catch (RuntimeException e) { + _log.error("Unexpected exception for message [" + msg + ']', e); } finally { if (_log.shouldLog(Log.DEBUG)) _log.debug("Stopping handler"); @@ -481,6 +456,8 @@ class SAMv3Handler extends SAMv1Handler */ @Override public void stopHandling() { + if (_log.shouldInfo()) + _log.info("Stopping (stolen? " + stolenSocket + "): " + this, new Exception("I did it")); synchronized (stopLock) { stopHandler = true; } @@ -609,13 +586,13 @@ class SAMv3Handler extends SAMv1Handler // Create the session if (style.equals("RAW")) { - DatagramServer.getInstance(i2cpProps); - SAMv3RawSession v3 = newSAMRawSession(nick); + SAMv3DatagramServer dgs = bridge.getV3DatagramServer(props); + SAMv3RawSession v3 = new SAMv3RawSession(nick, dgs); rawSession = v3; this.session = v3; } else if (style.equals("DATAGRAM")) { - DatagramServer.getInstance(i2cpProps); - SAMv3DatagramSession v3 = newSAMDatagramSession(nick); + SAMv3DatagramServer dgs = bridge.getV3DatagramServer(props); + SAMv3DatagramSession v3 = new SAMv3DatagramSession(nick, dgs); datagramSession = v3; this.session = v3; } else if (style.equals("STREAM")) { @@ -669,18 +646,6 @@ class SAMv3Handler extends SAMv1Handler return new SAMv3StreamSession( login ) ; } - private static SAMv3RawSession newSAMRawSession(String login ) - throws IOException, DataFormatException, SAMException, I2PSessionException - { - return new SAMv3RawSession( login ) ; - } - - private static SAMv3DatagramSession newSAMDatagramSession(String login ) - throws IOException, DataFormatException, SAMException, I2PSessionException - { - return new SAMv3DatagramSession( login ) ; - } - /* Parse and execute a STREAM message */ @Override protected boolean execStreamMessage ( String opcode, Properties props ) @@ -757,14 +722,16 @@ class SAMv3Handler extends SAMv1Handler @Override protected boolean execStreamConnect( Properties props) { + // Messages are NOT sent if SILENT=true, + // The specs said that they were. + boolean verbose = !Boolean.parseBoolean(props.getProperty("SILENT")); try { if (props.isEmpty()) { - notifyStreamResult(true,"I2P_ERROR","No parameters specified in STREAM CONNECT message"); + notifyStreamResult(verbose, "I2P_ERROR","No parameters specified in STREAM CONNECT message"); if (_log.shouldLog(Log.DEBUG)) _log.debug("No parameters specified in STREAM CONNECT message"); return false; } - boolean verbose = props.getProperty("SILENT","false").equals("false"); String dest = props.getProperty("DESTINATION"); if (dest == null) { @@ -804,11 +771,14 @@ class SAMv3Handler extends SAMv1Handler return false ; } - protected boolean execStreamForwardIncoming( Properties props ) { + private boolean execStreamForwardIncoming( Properties props ) { + // Messages ARE sent if SILENT=true, + // which is different from CONNECT and ACCEPT. + // But this matched the specs. try { try { streamForwardingSocket = true ; - ((SAMv3StreamSession)streamSession).startForwardingIncoming(props); + ((SAMv3StreamSession)streamSession).startForwardingIncoming(props, sendPorts); notifyStreamResult( true, "OK", null ); return true ; } catch (SAMException e) { @@ -821,9 +791,11 @@ class SAMv3Handler extends SAMv1Handler return false ; } - protected boolean execStreamAccept( Properties props ) + private boolean execStreamAccept( Properties props ) { - boolean verbose = props.getProperty( "SILENT", "false").equals("false"); + // Messages are NOT sent if SILENT=true, + // The specs said that they were. + boolean verbose = !Boolean.parseBoolean(props.getProperty("SILENT")); try { try { notifyStreamResult(verbose, "OK", null); @@ -858,13 +830,18 @@ class SAMv3Handler extends SAMv1Handler } } - public void notifyStreamIncomingConnection(Destination d) throws IOException { + public void notifyStreamIncomingConnection(Destination d, int fromPort, int toPort) throws IOException { if (getStreamSession() == null) { _log.error("BUG! Received stream connection, but session is null!"); throw new NullPointerException("BUG! STREAM session is null!"); } - - if (!writeString(d.toBase64() + "\n")) { + StringBuilder buf = new StringBuilder(600); + buf.append(d.toBase64()); + if (sendPorts) { + buf.append(" FROM_PORT=").append(fromPort).append(" TO_PORT=").append(toPort); + } + buf.append('\n'); + if (!writeString(buf.toString())) { throw new IOException("Error notifying connection to SAM client"); } } @@ -874,6 +851,92 @@ class SAMv3Handler extends SAMv1Handler throw new IOException("Error notifying connection to SAM client"); } } + + /** @since 0.9.24 */ + public static void notifyStreamIncomingConnection(SocketChannel client, Destination d, + int fromPort, int toPort) throws IOException { + if (!writeString(d.toBase64() + " FROM_PORT=" + fromPort + " TO_PORT=" + toPort + '\n', client)) { + throw new IOException("Error notifying connection to SAM client"); + } + } + /** @since 0.9.24 */ + private boolean execAuthMessage(String opcode, Properties props) { + if (opcode.equals("ENABLE")) { + i2cpProps.setProperty(SAMBridge.PROP_AUTH, "true"); + } else if (opcode.equals("DISABLE")) { + i2cpProps.setProperty(SAMBridge.PROP_AUTH, "false"); + } else if (opcode.equals("ADD")) { + String user = props.getProperty("USER"); + String pw = props.getProperty("PASSWORD"); + if (user == null || pw == null) + return writeString("AUTH STATUS RESULT=I2P_ERROR MESSAGE=\"USER and PASSWORD required\"\n"); + String prop = SAMBridge.PROP_PW_PREFIX + user + SAMBridge.PROP_PW_SUFFIX; + if (i2cpProps.containsKey(prop)) + return writeString("AUTH STATUS RESULT=I2P_ERROR MESSAGE=\"user " + user + " already exists\"\n"); + PasswordManager pm = new PasswordManager(I2PAppContext.getGlobalContext()); + String shash = pm.createHash(pw); + i2cpProps.setProperty(prop, shash); + } else if (opcode.equals("REMOVE")) { + String user = props.getProperty("USER"); + if (user == null) + return writeString("AUTH STATUS RESULT=I2P_ERROR MESSAGE=\"USER required\"\n"); + String prop = SAMBridge.PROP_PW_PREFIX + user + SAMBridge.PROP_PW_SUFFIX; + if (!i2cpProps.containsKey(prop)) + return writeString("AUTH STATUS RESULT=I2P_ERROR MESSAGE=\"user " + user + " not found\"\n"); + i2cpProps.remove(prop); + } else { + return writeString("AUTH STATUS RESULT=I2P_ERROR MESSAGE=\"Unknown AUTH command\"\n"); + } + try { + bridge.saveConfig(); + return writeString("AUTH STATUS RESULT=OK\n"); + } catch (IOException ioe) { + return writeString("AUTH STATUS RESULT=I2P_ERROR MESSAGE=\"Config save failed: " + ioe + "\"\n"); + } + } + + /** + * Handle a PING. + * Send a PONG. + * + * @param msg to append, may be null + * @since 0.9.24 + */ + private void execPingMessage(String msg) { + StringBuilder buf = new StringBuilder(); + buf.append("PONG"); + if (msg != null) { + buf.append(' ').append(msg); + } + buf.append('\n'); + writeString(buf.toString()); + } + + /** + * Handle a PONG. + * + * @param s received, may be null + * @since 0.9.24 + */ + private void execPongMessage(String s) { + if (s == null) { + s = ""; + } + if (_lastPing > 0) { + String expected = Long.toString(_lastPing); + if (expected.equals(s)) { + _lastPing = 0; + if (_log.shouldInfo()) + _log.warn("Got expected pong: " + s); + } else { + if (_log.shouldInfo()) + _log.warn("Got unexpected pong: " + s); + } + } else { + if (_log.shouldWarn()) + _log.warn("Pong received without a ping: " + s); + } + } } diff --git a/apps/sam/java/src/net/i2p/sam/SAMv3RawSession.java b/apps/sam/java/src/net/i2p/sam/SAMv3RawSession.java index 90eae76f9315f5e71bf4e7d1574bb1b332c78b1f..b68f3a74a151f7d5126b68e3be8234fc18906002 100644 --- a/apps/sam/java/src/net/i2p/sam/SAMv3RawSession.java +++ b/apps/sam/java/src/net/i2p/sam/SAMv3RawSession.java @@ -12,6 +12,7 @@ import java.util.Properties; import net.i2p.client.I2PSessionException; import net.i2p.data.DataFormatException; +import net.i2p.data.DataHelper; import net.i2p.util.Log; /** @@ -22,8 +23,9 @@ class SAMv3RawSession extends SAMRawSession implements SAMv3Handler.Session, SA private final String nick; private final SAMv3Handler handler; - private final SAMv3Handler.DatagramServer server; + private final SAMv3DatagramServer server; private final SocketAddress clientAddress; + private final boolean _sendHeader; public String getNick() { return nick; } @@ -36,52 +38,57 @@ class SAMv3RawSession extends SAMRawSession implements SAMv3Handler.Session, SA * @throws DataFormatException * @throws I2PSessionException */ - public SAMv3RawSession(String nick) - throws IOException, DataFormatException, I2PSessionException { - + public SAMv3RawSession(String nick, SAMv3DatagramServer dgServer) + throws IOException, DataFormatException, I2PSessionException { super(SAMv3Handler.sSessionsHash.get(nick).getDest(), - SAMv3Handler.sSessionsHash.get(nick).getProps(), - SAMv3Handler.sSessionsHash.get(nick).getHandler() // to be replaced by this - ); + SAMv3Handler.sSessionsHash.get(nick).getProps(), + SAMv3Handler.sSessionsHash.get(nick).getHandler() // to be replaced by this + ); this.nick = nick ; this.recv = this ; // replacement - this.server = SAMv3Handler.DatagramServer.getInstance() ; + this.server = dgServer; SAMv3Handler.SessionRecord rec = SAMv3Handler.sSessionsHash.get(nick); - if ( rec==null ) throw new InterruptedIOException() ; - - this.handler = rec.getHandler(); - - Properties props = rec.getProps(); - - - String portStr = props.getProperty("PORT") ; - if ( portStr==null ) { - if (_log.shouldLog(Log.DEBUG)) - _log.debug("receiver port not specified. Current socket will be used."); - this.clientAddress = null; - } - else { - int port = Integer.parseInt(portStr); - - String host = props.getProperty("HOST"); - if ( host==null ) { - host = rec.getHandler().getClientIP(); - + if (rec == null) + throw new InterruptedIOException() ; + this.handler = rec.getHandler(); + Properties props = rec.getProps(); + String portStr = props.getProperty("PORT") ; + if (portStr == null) { if (_log.shouldLog(Log.DEBUG)) - _log.debug("no host specified. Taken from the client socket : " + host +':'+port); - } - - - this.clientAddress = new InetSocketAddress(host,port); - } + _log.debug("receiver port not specified. Current socket will be used."); + this.clientAddress = null; + } else { + int port = Integer.parseInt(portStr); + String host = props.getProperty("HOST"); + if ( host==null ) { + host = rec.getHandler().getClientIP(); + if (_log.shouldLog(Log.DEBUG)) + _log.debug("no host specified. Taken from the client socket : " + host +':'+port); + } + this.clientAddress = new InetSocketAddress(host, port); + } + _sendHeader = ((handler.verMajor == 3 && handler.verMinor >= 2) || handler.verMajor > 3) && + Boolean.parseBoolean(props.getProperty("HEADER")); } - public void receiveRawBytes(byte[] data) throws IOException { + public void receiveRawBytes(byte[] data, int proto, int fromPort, int toPort) throws IOException { if (this.clientAddress==null) { - this.handler.receiveRawBytes(data); + this.handler.receiveRawBytes(data, proto, fromPort, toPort); } else { - ByteBuffer msgBuf = ByteBuffer.allocate(data.length); + ByteBuffer msgBuf; + if (_sendHeader) { + StringBuilder buf = new StringBuilder(64); + buf.append("PROTOCOL=").append(proto) + .append(" FROM_PORT=").append(fromPort) + .append(" TO_PORT=").append(toPort) + .append('\n'); + String msg = buf.toString(); + msgBuf = ByteBuffer.allocate(msg.length()+data.length); + msgBuf.put(DataHelper.getASCII(msg)); + } else { + msgBuf = ByteBuffer.allocate(data.length); + } msgBuf.put(data); msgBuf.flip(); this.server.send(this.clientAddress, msgBuf); diff --git a/apps/sam/java/src/net/i2p/sam/SAMv3StreamSession.java b/apps/sam/java/src/net/i2p/sam/SAMv3StreamSession.java index fe9561cedbc4fca9edcb31dc4d6ec77753705441..54f58054f6b7e74e66bafed57f05ae60fb4dbe37 100644 --- a/apps/sam/java/src/net/i2p/sam/SAMv3StreamSession.java +++ b/apps/sam/java/src/net/i2p/sam/SAMv3StreamSession.java @@ -11,9 +11,22 @@ package net.i2p.sam; import java.io.IOException; import java.io.InterruptedIOException; import java.net.ConnectException; +import java.net.InetSocketAddress; import java.net.NoRouteToHostException; +import java.net.SocketTimeoutException; +import java.nio.channels.Channels; +import java.nio.channels.ReadableByteChannel; +import java.nio.channels.WritableByteChannel; +import java.nio.ByteBuffer; +import java.nio.channels.SocketChannel; +import java.security.GeneralSecurityException; import java.util.Properties; +import java.util.concurrent.atomic.AtomicInteger; + +import javax.net.ssl.SSLException; +import javax.net.ssl.SSLSocket; +import net.i2p.I2PAppContext; import net.i2p.I2PException; import net.i2p.client.streaming.I2PServerSocket; import net.i2p.client.streaming.I2PSocket; @@ -21,12 +34,8 @@ import net.i2p.client.streaming.I2PSocketOptions; import net.i2p.data.DataFormatException; import net.i2p.data.Destination; import net.i2p.util.I2PAppThread; +import net.i2p.util.I2PSSLSocketFactory; import net.i2p.util.Log; -import java.nio.channels.Channels; -import java.nio.channels.ReadableByteChannel; -import java.nio.channels.WritableByteChannel; -import java.nio.ByteBuffer; -import java.nio.channels.SocketChannel; /** * SAMv3 STREAM session class. @@ -40,7 +49,12 @@ class SAMv3StreamSession extends SAMStreamSession implements SAMv3Handler.Sessi private static final int BUFFER_SIZE = 1024 ; private final Object socketServerLock = new Object(); + /** this is ONLY set for FORWARD, not for ACCEPT */ private I2PServerSocket socketServer; + /** this is the count of active ACCEPT sockets */ + private final AtomicInteger _acceptors = new AtomicInteger(); + + private static I2PSSLSocketFactory _sslSocketFactory; private final String nick ; @@ -91,12 +105,28 @@ class SAMv3StreamSession extends SAMStreamSession implements SAMv3Handler.Sessi throws I2PException, ConnectException, NoRouteToHostException, DataFormatException, InterruptedIOException, IOException { - boolean verbose = (props.getProperty("SILENT", "false").equals("false")); + boolean verbose = !Boolean.parseBoolean(props.getProperty("SILENT")); Destination d = SAMUtils.getDest(dest); I2PSocketOptions opts = socketMgr.buildOptions(props); if (props.getProperty(I2PSocketOptions.PROP_CONNECT_TIMEOUT) == null) opts.setConnectTimeout(60 * 1000); + String fromPort = props.getProperty("FROM_PORT"); + if (fromPort != null) { + try { + opts.setLocalPort(Integer.parseInt(fromPort)); + } catch (NumberFormatException nfe) { + throw new I2PException("Bad port " + fromPort); + } + } + String toPort = props.getProperty("TO_PORT"); + if (toPort != null) { + try { + opts.setPort(Integer.parseInt(toPort)); + } catch (NumberFormatException nfe) { + throw new I2PException("Bad port " + toPort); + } + } if (_log.shouldLog(Log.DEBUG)) _log.debug("Connecting new I2PSocket..."); @@ -119,16 +149,18 @@ class SAMv3StreamSession extends SAMStreamSession implements SAMv3Handler.Sessi WritableByteChannel toI2P = Channels.newChannel(i2ps.getOutputStream()); SAMBridge bridge = handler.getBridge(); - (new Thread(rec.getThreadGroup(), + (new I2PAppThread(rec.getThreadGroup(), new Pipe(fromClient, toI2P, bridge), "ConnectV3 SAMPipeClientToI2P")).start(); - (new Thread(rec.getThreadGroup(), + (new I2PAppThread(rec.getThreadGroup(), new Pipe(fromI2P, toClient, bridge), "ConnectV3 SAMPipeI2PToClient")).start(); } /** * Accept a single incoming STREAM on the socket stolen from the handler. + * As of version 3.2 (0.9.24), multiple simultaneous accepts are allowed. + * Accepts and forwarding may not be done at the same time. * * @param handler The handler that communicates with the requesting client * @param verbose If true, SAM will send the Base64-encoded peer Destination of an @@ -145,30 +177,30 @@ class SAMv3StreamSession extends SAMStreamSession implements SAMv3Handler.Sessi public void accept(SAMv3Handler handler, boolean verbose) throws I2PException, InterruptedIOException, IOException, SAMException { - synchronized( this.socketServerLock ) - { - if (this.socketServer!=null) { - if (_log.shouldLog(Log.DEBUG)) - _log.debug("a socket server is already defined for this destination"); - throw new SAMException("a socket server is already defined for this destination"); - } - this.socketServer = this.socketMgr.getServerSocket(); - } - - I2PSocket i2ps = this.socketServer.accept(); + synchronized(this.socketServerLock) { + if (this.socketServer != null) { + if (_log.shouldWarn()) + _log.warn("a forwarding server is already defined for this destination"); + throw new SAMException("a forwarding server is already defined for this destination"); + } + } + + I2PSocket i2ps; + _acceptors.incrementAndGet(); + try { + i2ps = socketMgr.getServerSocket().accept(); + } finally { + _acceptors.decrementAndGet(); + } - synchronized( this.socketServerLock ) - { - this.socketServer = null ; - } - SAMv3Handler.SessionRecord rec = SAMv3Handler.sSessionsHash.get(nick); if ( rec==null || i2ps==null ) throw new InterruptedIOException() ; - if (verbose) - handler.notifyStreamIncomingConnection(i2ps.getPeerDestination()) ; - + if (verbose) { + handler.notifyStreamIncomingConnection(i2ps.getPeerDestination(), + i2ps.getPort(), i2ps.getLocalPort()); + } handler.stealSocket() ; ReadableByteChannel fromClient = handler.getClientSocket(); ReadableByteChannel fromI2P = Channels.newChannel(i2ps.getInputStream()); @@ -176,19 +208,23 @@ class SAMv3StreamSession extends SAMStreamSession implements SAMv3Handler.Sessi WritableByteChannel toI2P = Channels.newChannel(i2ps.getOutputStream()); SAMBridge bridge = handler.getBridge(); - (new Thread(rec.getThreadGroup(), + (new I2PAppThread(rec.getThreadGroup(), new Pipe(fromClient, toI2P, bridge), "AcceptV3 SAMPipeClientToI2P")).start(); - (new Thread(rec.getThreadGroup(), + (new I2PAppThread(rec.getThreadGroup(), new Pipe(fromI2P, toClient, bridge), "AcceptV3 SAMPipeI2PToClient")).start(); } - public void startForwardingIncoming( Properties props ) throws SAMException, InterruptedIOException + /** + * Forward sockets from I2P to the host/port provided. + * Accepts and forwarding may not be done at the same time. + */ + public void startForwardingIncoming(Properties props, boolean sendPorts) throws SAMException, InterruptedIOException { SAMv3Handler.SessionRecord rec = SAMv3Handler.sSessionsHash.get(nick); - boolean verbose = props.getProperty("SILENT", "false").equals("false"); + boolean verbose = !Boolean.parseBoolean(props.getProperty("SILENT")); if ( rec==null ) throw new InterruptedIOException() ; @@ -206,34 +242,43 @@ class SAMv3StreamSession extends SAMStreamSession implements SAMv3Handler.Sessi if (_log.shouldLog(Log.DEBUG)) _log.debug("no host specified. Taken from the client socket : " + host +':'+port); } - - - synchronized( this.socketServerLock ) - { - if (this.socketServer!=null) { - if (_log.shouldLog(Log.DEBUG)) - _log.debug("a socket server is already defined for this destination"); - throw new SAMException("a socket server is already defined for this destination"); - } + boolean isSSL = Boolean.parseBoolean(props.getProperty("SSL")); + if (_acceptors.get() > 0) { + if (_log.shouldWarn()) + _log.warn("an accepting server is already defined for this destination"); + throw new SAMException("an accepting server is already defined for this destination"); + } + synchronized(this.socketServerLock) { + if (this.socketServer!=null) { + if (_log.shouldWarn()) + _log.warn("a forwarding server is already defined for this destination"); + throw new SAMException("a forwarding server is already defined for this destination"); + } this.socketServer = this.socketMgr.getServerSocket(); } - SocketForwarder forwarder = new SocketForwarder(host, port, this, verbose); - (new Thread(rec.getThreadGroup(), forwarder, "SAMV3StreamForwarder")).start(); + SocketForwarder forwarder = new SocketForwarder(host, port, isSSL, this, verbose, sendPorts); + (new I2PAppThread(rec.getThreadGroup(), forwarder, "SAMV3StreamForwarder")).start(); } + /** + * Forward sockets from I2P to the host/port provided + */ private static class SocketForwarder implements Runnable { private final String host; private final int port; private final SAMv3StreamSession session; - private final boolean verbose; + private final boolean isSSL, verbose, sendPorts; - SocketForwarder(String host, int port, SAMv3StreamSession session, boolean verbose) { + SocketForwarder(String host, int port, boolean isSSL, + SAMv3StreamSession session, boolean verbose, boolean sendPorts) { this.host = host ; this.port = port ; this.session = session ; this.verbose = verbose ; + this.sendPorts = sendPorts; + this.isSSL = isSSL; } public void run() @@ -241,32 +286,77 @@ class SAMv3StreamSession extends SAMStreamSession implements SAMv3Handler.Sessi while (session.getSocketServer()!=null) { // wait and accept a connection from I2P side - I2PSocket i2ps = null ; + I2PSocket i2ps; try { i2ps = session.getSocketServer().accept(); - } catch (Exception e) {} - - if (i2ps==null) { - continue ; - } + if (i2ps == null) + continue; + } catch (SocketTimeoutException ste) { + continue; + } catch (ConnectException ce) { + Log log = I2PAppContext.getGlobalContext().logManager().getLog(SAMv3StreamSession.class); + if (log.shouldLog(Log.WARN)) + log.warn("Error accepting", ce); + try { Thread.sleep(50); } catch (InterruptedException ie) {} + continue; + } catch (I2PException ipe) { + Log log = I2PAppContext.getGlobalContext().logManager().getLog(SAMv3StreamSession.class); + if (log.shouldLog(Log.WARN)) + log.warn("Error accepting", ipe); + break; + } // open a socket towards client - java.net.InetSocketAddress addr = new java.net.InetSocketAddress(host,port); - SocketChannel clientServerSock = null ; + SocketChannel clientServerSock; try { - clientServerSock = SocketChannel.open(addr) ; - } - catch ( IOException e ) { - continue ; + if (isSSL) { + I2PAppContext ctx = I2PAppContext.getGlobalContext(); + synchronized(SAMv3StreamSession.class) { + if (_sslSocketFactory == null) { + try { + _sslSocketFactory = new I2PSSLSocketFactory( + ctx, true, "certificates/sam"); + } catch (GeneralSecurityException gse) { + Log log = ctx.logManager().getLog(SAMv3StreamSession.class); + log.error("SSL error", gse); + try { + i2ps.close(); + } catch (IOException ee) {} + throw new RuntimeException("SSL error", gse); + } + } + } + SSLSocket sock = (SSLSocket) _sslSocketFactory.createSocket(host, port); + I2PSSLSocketFactory.verifyHostname(ctx, sock, host); + clientServerSock = new SSLSocketChannel(sock); + } else { + InetSocketAddress addr = new InetSocketAddress(host, port); + clientServerSock = SocketChannel.open(addr) ; + } + } catch (IOException ioe) { + Log log = I2PAppContext.getGlobalContext().logManager().getLog(SAMv3StreamSession.class); + if (log.shouldLog(Log.WARN)) + log.warn("Error forwarding", ioe); + try { + i2ps.close(); + } catch (IOException ee) {} + continue; } // build pipes between both sockets try { clientServerSock.socket().setKeepAlive(true); - if (this.verbose) - SAMv3Handler.notifyStreamIncomingConnection( + if (this.verbose) { + if (sendPorts) { + SAMv3Handler.notifyStreamIncomingConnection( + clientServerSock, i2ps.getPeerDestination(), + i2ps.getPort(), i2ps.getLocalPort()); + } else { + SAMv3Handler.notifyStreamIncomingConnection( clientServerSock, i2ps.getPeerDestination()); + } + } ReadableByteChannel fromClient = clientServerSock ; ReadableByteChannel fromI2P = Channels.newChannel(i2ps.getInputStream()); WritableByteChannel toClient = clientServerSock ; @@ -347,7 +437,7 @@ class SAMv3StreamSession extends SAMStreamSession implements SAMv3Handler.Sessi } } - public I2PServerSocket getSocketServer() + private I2PServerSocket getSocketServer() { synchronized ( this.socketServerLock ) { return this.socketServer ; @@ -390,7 +480,11 @@ class SAMv3StreamSession extends SAMStreamSession implements SAMv3Handler.Sessi socketMgr.destroySocketManager(); } - public boolean sendBytes(String s, byte[] b) throws DataFormatException + /** + * Unsupported + * @throws DataFormatException always + */ + public boolean sendBytes(String s, byte[] b, int pr, int fp, int tp) throws DataFormatException { throw new DataFormatException(null); } diff --git a/apps/sam/java/src/net/i2p/sam/SSLServerSocketChannel.java b/apps/sam/java/src/net/i2p/sam/SSLServerSocketChannel.java new file mode 100644 index 0000000000000000000000000000000000000000..546955ceefb56375b2f49c49fe666164ba2b40e8 --- /dev/null +++ b/apps/sam/java/src/net/i2p/sam/SSLServerSocketChannel.java @@ -0,0 +1,77 @@ +package net.i2p.sam; + +import java.io.IOException; +import java.net.ServerSocket; +import java.net.SocketAddress; +/* requires Java 7 */ +import java.net.SocketOption; +import java.nio.ByteBuffer; +import java.nio.channels.SocketChannel; +import java.nio.channels.ServerSocketChannel; +import java.nio.channels.spi.SelectorProvider; +import java.util.Collections; +import java.util.Set; + +import javax.net.ssl.SSLServerSocket; +import javax.net.ssl.SSLSocket; + +/** + * Simple wrapper for a SSLServerSocket. + * Cannot be used for asynch ops. + * + * @since 0.9.24 + */ +class SSLServerSocketChannel extends ServerSocketChannel { + + private final SSLServerSocket _socket; + + public SSLServerSocketChannel(SSLServerSocket socket) { + super(SelectorProvider.provider()); + _socket = socket; + } + + //// ServerSocketChannel abstract methods + + public SocketChannel accept() throws IOException { + return new SSLSocketChannel((SSLSocket)_socket.accept()); + } + + public ServerSocket socket() { + return _socket; + } + + /** requires Java 7 */ + public ServerSocketChannel bind(SocketAddress local, int backlog) { + throw new UnsupportedOperationException(); + } + + /** requires Java 7 */ + public <T> ServerSocketChannel setOption(SocketOption<T> name, T value) { + return this; + } + + //// AbstractSelectableChannel abstract methods + + public void implCloseSelectableChannel() throws IOException { + _socket.close(); + } + + public void implConfigureBlocking(boolean block) throws IOException { + if (!block) + throw new UnsupportedOperationException(); + } + + //// NetworkChannel interface methods + + public SocketAddress getLocalAddress() { + return _socket.getLocalSocketAddress(); + } + + public <T> T getOption(SocketOption<T> name) { + return null; + } + + public Set<SocketOption<?>> supportedOptions() { + return Collections.emptySet(); + } +} diff --git a/apps/sam/java/src/net/i2p/sam/SSLSocketChannel.java b/apps/sam/java/src/net/i2p/sam/SSLSocketChannel.java new file mode 100644 index 0000000000000000000000000000000000000000..7b956a16e3d1381c388801e2d288e0dc2db676f6 --- /dev/null +++ b/apps/sam/java/src/net/i2p/sam/SSLSocketChannel.java @@ -0,0 +1,140 @@ +package net.i2p.sam; + +import java.io.IOException; +import java.net.ServerSocket; +import java.net.Socket; +import java.net.SocketAddress; +/* requires Java 7 */ +import java.net.SocketOption; +import java.nio.ByteBuffer; +import java.nio.channels.SocketChannel; +import java.nio.channels.spi.SelectorProvider; +import java.util.Collections; +import java.util.Set; + +import javax.net.ssl.SSLSocket; + +/** + * Simple wrapper for a SSLSocket. + * Cannot be used for asynch ops. + * + * @since 0.9.24 + */ +class SSLSocketChannel extends SocketChannel { + + private final SSLSocket _socket; + + public SSLSocketChannel(SSLSocket socket) { + super(SelectorProvider.provider()); + _socket = socket; + } + + //// SocketChannel abstract methods + + public Socket socket() { + return _socket; + } + + public boolean connect(SocketAddress remote) { + throw new UnsupportedOperationException(); + } + + public boolean finishConnect() { + return true; + } + + public boolean isConnected() { + return _socket.isConnected(); + } + + public boolean isConnectionPending() { + return false; + } + + /** new in Java 7 */ + public SocketAddress getRemoteAddress() { + return _socket.getRemoteSocketAddress(); + } + + /** new in Java 7 */ + public SocketChannel shutdownInput() throws IOException { + _socket.getInputStream().close(); + return this; + } + + /** new in Java 7 */ + public SocketChannel shutdownOutput() throws IOException { + _socket.getOutputStream().close(); + return this; + } + + /** requires Java 7 */ + public <T> SocketChannel setOption(SocketOption<T> name, T value) { + return this; + } + + /** requires Java 7 */ + public SocketChannel bind(SocketAddress local) { + throw new UnsupportedOperationException(); + } + + //// SocketChannel abstract methods + + public int read(ByteBuffer src) throws IOException { + if (!src.hasArray()) + throw new UnsupportedOperationException(); + int pos = src.position(); + int len = src.remaining(); + int read = _socket.getInputStream().read(src.array(), src.arrayOffset() + pos, len); + if (read > 0) + src.position(pos + read); + return read; + } + + public long read(ByteBuffer[] srcs, int offset, int length) { + throw new UnsupportedOperationException(); + } + + public int write(ByteBuffer src) throws IOException { + if (!src.hasArray()) + throw new UnsupportedOperationException(); + int pos = src.position(); + int len = src.remaining(); + _socket.getOutputStream().write(src.array(), src.arrayOffset() + pos, len); + src.position(pos + len); + return len; + } + + public long write(ByteBuffer[] srcs, int offset, int length) { + throw new UnsupportedOperationException(); + } + + //// AbstractSelectableChannel abstract methods + + public void implCloseSelectableChannel() throws IOException { + _socket.close(); + } + + public void implConfigureBlocking(boolean block) throws IOException { + if (!block) + throw new UnsupportedOperationException(); + } + + + //// NetworkChannel interface methods + + public SocketAddress getLocalAddress() { + return _socket.getLocalSocketAddress(); + } + + public <T> T getOption(SocketOption<T> name) { + return null; + } + + public Set<SocketOption<?>> supportedOptions() { + return Collections.emptySet(); + } + + + +} diff --git a/apps/sam/java/src/net/i2p/sam/SSLUtil.java b/apps/sam/java/src/net/i2p/sam/SSLUtil.java new file mode 100644 index 0000000000000000000000000000000000000000..bf4ebf1e42b3fa1b80f64295f38d4d629193266f --- /dev/null +++ b/apps/sam/java/src/net/i2p/sam/SSLUtil.java @@ -0,0 +1,188 @@ +package net.i2p.sam; + +import java.io.File; +import java.io.FileInputStream; +import java.io.IOException; +import java.io.InputStream; +import java.security.KeyStore; +import java.security.GeneralSecurityException; +import java.util.Properties; + +import javax.net.ssl.KeyManagerFactory; +import javax.net.ssl.SSLServerSocketFactory; +import javax.net.ssl.SSLContext; + +import net.i2p.I2PAppContext; +import net.i2p.crypto.KeyStoreUtil; +import net.i2p.util.Log; +import net.i2p.util.SecureDirectory; + +/** + * Utilities for SAM SSL server sockets. + * + * @since 0.9.24 adopted from net.i2p.i2ptunnel.SSLClientUtil + */ +class SSLUtil { + + private static final String PROP_KEYSTORE_PASSWORD = "sam.keystorePassword"; + private static final String DEFAULT_KEYSTORE_PASSWORD = "changeit"; + private static final String PROP_KEY_PASSWORD = "sam.keyPassword"; + private static final String PROP_KEY_ALIAS = "sam.keyAlias"; + private static final String ASCII_KEYFILE_SUFFIX = ".local.crt"; + private static final String PROP_KS_NAME = "sam.keystoreFile"; + private static final String KS_DIR = "keystore"; + private static final String PREFIX = "sam-"; + private static final String KS_SUFFIX = ".ks"; + private static final String CERT_DIR = "certificates/sam"; + + /** + * Create a new selfsigned cert and keystore and pubkey cert if they don't exist. + * May take a while. + * + * @param opts in/out, updated if rv is true + * @return false if it already exists; if true, caller must save opts + * @throws IOException on creation fail + */ + public static boolean verifyKeyStore(Properties opts) throws IOException { + String name = opts.getProperty(PROP_KEY_ALIAS); + if (name == null) { + name = KeyStoreUtil.randomString(); + opts.setProperty(PROP_KEY_ALIAS, name); + } + String ksname = opts.getProperty(PROP_KS_NAME); + if (ksname == null) { + ksname = PREFIX + name + KS_SUFFIX; + opts.setProperty(PROP_KS_NAME, ksname); + } + File ks = new File(ksname); + if (!ks.isAbsolute()) { + ks = new File(I2PAppContext.getGlobalContext().getConfigDir(), KS_DIR); + ks = new File(ks, ksname); + } + if (ks.exists()) + return false; + File dir = ks.getParentFile(); + if (!dir.exists()) { + File sdir = new SecureDirectory(dir.getAbsolutePath()); + if (!sdir.mkdirs()) + throw new IOException("Unable to create keystore " + ks); + } + boolean rv = createKeyStore(ks, name, opts); + if (!rv) + throw new IOException("Unable to create keystore " + ks); + + // Now read it back out of the new keystore and save it in ascii form + // where the clients can get to it. + // Failure of this part is not fatal. + exportCert(ks, name, opts); + return true; + } + + + /** + * Call out to keytool to create a new keystore with a keypair in it. + * + * @param name used in CNAME + * @param opts in/out, updated if rv is true, must contain PROP_KEY_ALIAS + * @return success, if true, opts will have password properties added to be saved + */ + private static boolean createKeyStore(File ks, String name, Properties opts) { + // make a random 48 character password (30 * 8 / 5) + String keyPassword = KeyStoreUtil.randomString(); + // and one for the cname + String cname = name + ".sam.i2p.net"; + + String keyName = opts.getProperty(PROP_KEY_ALIAS); + boolean success = KeyStoreUtil.createKeys(ks, keyName, cname, "SAM", keyPassword); + if (success) { + success = ks.exists(); + if (success) { + opts.setProperty(PROP_KEYSTORE_PASSWORD, DEFAULT_KEYSTORE_PASSWORD); + opts.setProperty(PROP_KEY_PASSWORD, keyPassword); + } + } + if (success) { + logAlways("Created self-signed certificate for " + cname + " in keystore: " + ks.getAbsolutePath() + "\n" + + "The certificate name was generated randomly, and is not associated with your " + + "IP address, host name, router identity, or destination keys."); + } else { + error("Failed to create SAM SSL keystore.\n" + + "If you create the keystore manually, you must add " + PROP_KEYSTORE_PASSWORD + " and " + PROP_KEY_PASSWORD + + " to " + (new File(I2PAppContext.getGlobalContext().getConfigDir(), SAMBridge.DEFAULT_SAM_CONFIGFILE)).getAbsolutePath()); + } + return success; + } + + /** + * Pull the cert back OUT of the keystore and save it as ascii + * so the clients can get to it. + * + * @param name used to generate output file name + * @param opts must contain PROP_KEY_ALIAS + */ + private static void exportCert(File ks, String name, Properties opts) { + File sdir = new SecureDirectory(I2PAppContext.getGlobalContext().getConfigDir(), CERT_DIR); + if (sdir.exists() || sdir.mkdirs()) { + String keyAlias = opts.getProperty(PROP_KEY_ALIAS); + String ksPass = opts.getProperty(PROP_KEYSTORE_PASSWORD, DEFAULT_KEYSTORE_PASSWORD); + File out = new File(sdir, PREFIX + name + ASCII_KEYFILE_SUFFIX); + boolean success = KeyStoreUtil.exportCert(ks, ksPass, keyAlias, out); + if (!success) + error("Error getting SSL cert to save as ASCII"); + } else { + error("Error saving ASCII SSL keys"); + } + } + + /** + * Sets up the SSLContext and sets the socket factory. + * No option prefix allowed. + * + * @throws IOException; GeneralSecurityExceptions are wrapped in IOE for convenience + * @return factory, throws on all errors + */ + public static SSLServerSocketFactory initializeFactory(Properties opts) throws IOException { + String ksPass = opts.getProperty(PROP_KEYSTORE_PASSWORD, DEFAULT_KEYSTORE_PASSWORD); + String keyPass = opts.getProperty(PROP_KEY_PASSWORD); + if (keyPass == null) { + throw new IOException("No key password, set " + PROP_KEY_PASSWORD + " in " + + (new File(I2PAppContext.getGlobalContext().getConfigDir(), SAMBridge.DEFAULT_SAM_CONFIGFILE)).getAbsolutePath()); + } + String ksname = opts.getProperty(PROP_KS_NAME); + if (ksname == null) { + throw new IOException("No keystore, set " + PROP_KS_NAME + " in " + + (new File(I2PAppContext.getGlobalContext().getConfigDir(), SAMBridge.DEFAULT_SAM_CONFIGFILE)).getAbsolutePath()); + } + File ks = new File(ksname); + if (!ks.isAbsolute()) { + ks = new File(I2PAppContext.getGlobalContext().getConfigDir(), KS_DIR); + ks = new File(ks, ksname); + } + + InputStream fis = null; + try { + SSLContext sslc = SSLContext.getInstance("TLS"); + KeyStore keyStore = KeyStore.getInstance(KeyStore.getDefaultType()); + fis = new FileInputStream(ks); + keyStore.load(fis, ksPass.toCharArray()); + KeyManagerFactory kmf = KeyManagerFactory.getInstance(KeyManagerFactory.getDefaultAlgorithm()); + kmf.init(keyStore, keyPass.toCharArray()); + sslc.init(kmf.getKeyManagers(), null, I2PAppContext.getGlobalContext().random()); + return sslc.getServerSocketFactory(); + } catch (GeneralSecurityException gse) { + IOException ioe = new IOException("keystore error"); + ioe.initCause(gse); + throw ioe; + } finally { + if (fis != null) try { fis.close(); } catch (IOException ioe) {} + } + } + + private static void error(String s) { + I2PAppContext.getGlobalContext().logManager().getLog(SSLUtil.class).error(s); + } + + private static void logAlways(String s) { + I2PAppContext.getGlobalContext().logManager().getLog(SSLUtil.class).logAlways(Log.INFO, s); + } +} diff --git a/apps/sam/java/src/net/i2p/sam/UTF8Reader.java b/apps/sam/java/src/net/i2p/sam/UTF8Reader.java new file mode 100644 index 0000000000000000000000000000000000000000..da375f529ddb535236d931c9bd34d96bb3210523 --- /dev/null +++ b/apps/sam/java/src/net/i2p/sam/UTF8Reader.java @@ -0,0 +1,152 @@ +package net.i2p.sam; + +import java.io.IOException; +import java.io.InputStream; +import java.io.Reader; +import java.nio.ByteBuffer; +import java.nio.CharBuffer; +import java.nio.charset.Charset; +import java.nio.charset.CharsetDecoder; +import java.nio.charset.CoderResult; + + +/** + * An unbuffered version of InputStreamReader. + * + * Does not read any extra characters, as long as input is well-formed. + * This permits the partial reading of an InputStream as UTF-8 + * and then passing the remainder of the input stream elsewhere. + * This isn't the most robust for malformed input, so it + * may not be appropriate for e.g. HTTP headers. + * + * Not thread-safe, obviously. + * + * May be moved to net.i2p.util if anybody else needs it. + * + * @since 0.9.24 somewhat adapted from net.i2p.util.TranslateReader + */ +public class UTF8Reader extends Reader { + + private final InputStream _in; + // following three are lazily initialized when needed + private ByteBuffer _bb; + private CharBuffer _cb; + private CharsetDecoder _dc; + + // Charset.forName("UTF-8").newDecoder().replacement().charAt(0) & 0xffff + private static final int REPLACEMENT = 0xfffd; + + /** + * @param in UTF-8 + */ + public UTF8Reader(InputStream in) { + super(); + _in = in; + } + + /** + * @return replacement character on decoding error + */ + @Override + public int read() throws IOException { + int b = _in.read(); + if (b < 0) + return b; + // https://en.wikipedia.org/wiki/Utf-8 + if ((b & 0x80) == 0) + return b; + if (_bb == null) { + _bb = ByteBuffer.allocate(6); + _cb = CharBuffer.allocate(1); + _dc = Charset.forName("UTF-8").newDecoder(); + } else { + _bb.clear(); + _cb.clear(); + } + _bb.put((byte) b); + int end; // how many more + if ((b & 0xe0) == 0xc0) + end = 1; + else if ((b & 0xf0) == 0xe0) + end = 2; + else if ((b & 0xf8) == 0xf0) + end = 3; + else if ((b & 0xfc) == 0xf8) + end = 4; + else if ((b & 0xfe) == 0xfc) + end = 5; + else // error, 10xxxxxx + return REPLACEMENT; + for (int i = 0; i < end; i++) { + b = _in.read(); + if (b < 0) + return REPLACEMENT; // next read will return EOF + // we aren't going to check for all errors, + // but let's fail fast on this one + if ((b & 0x80) == 0) + return REPLACEMENT; + _bb.put((byte) b); + } + _dc.reset(); + _bb.flip(); + CoderResult result = _dc.decode(_bb, _cb, true); + // Overflow and underflow are not errors. + // It seems to return underflow every time. + // So just check if we got a character back in the buffer. + _cb.flip(); + if (result.isError() || !_cb.hasRemaining()) + return REPLACEMENT; + // let underflow and overflow go, return first + return _cb.get() & 0xffff; + } + + @Override + public int read(char cbuf[]) throws IOException { + return read(cbuf, 0, cbuf.length); + } + + public int read(char cbuf[], int off, int len) throws IOException { + for (int i = 0; i < len; i++) { + int c = read(); + if (c < 0) { + if (i == 0) + return -1; + return i; + } + cbuf[off + i] = (char) c; + } + return len; + } + + public void close() throws IOException { + _in.close(); + } + +/**** + public static void main(String[] args) { + try { + String s = "Consider the encoding of the Euro sign, €." + + " The Unicode code point for \"€\" is U+20AC."; + byte[] test = s.getBytes("UTF-8"); + InputStream bais = new java.io.ByteArrayInputStream(test); + UTF8Reader r = new UTF8Reader(bais); + int b; + StringBuilder buf = new StringBuilder(128); + while ((b = r.read()) >= 0) { + buf.append((char) b); + } + System.out.println("Received: " + buf); + System.out.println("Test passed? " + buf.toString().equals(s)); + buf.setLength(0); + bais = new java.io.ByteArrayInputStream(new byte[] { 'x', (byte) 0xcc, 'x' } ); + r = new UTF8Reader(bais); + while ((b = r.read()) >= 0) { + buf.append((char) b); + } + System.out.println("Received: " + buf); + } catch (IOException ioe) { + ioe.printStackTrace(); + } + } +****/ +} diff --git a/apps/sam/java/src/net/i2p/sam/client/SAMClientEventListenerImpl.java b/apps/sam/java/src/net/i2p/sam/client/SAMClientEventListenerImpl.java index 5388f5dc2336f831aca586628ca1a6105553bcd2..1b7cdc99adffc516863998a11943d2bfc297d59c 100644 --- a/apps/sam/java/src/net/i2p/sam/client/SAMClientEventListenerImpl.java +++ b/apps/sam/java/src/net/i2p/sam/client/SAMClientEventListenerImpl.java @@ -7,12 +7,16 @@ import java.util.Properties; */ public class SAMClientEventListenerImpl implements SAMReader.SAMClientEventListener { public void destReplyReceived(String publicKey, String privateKey) {} - public void helloReplyReceived(boolean ok) {} + public void helloReplyReceived(boolean ok, String version) {} public void namingReplyReceived(String name, String result, String value, String message) {} public void sessionStatusReceived(String result, String destination, String message) {} - public void streamClosedReceived(String result, int id, String message) {} - public void streamConnectedReceived(String remoteDestination, int id) {} - public void streamDataReceived(int id, byte[] data, int offset, int length) {} - public void streamStatusReceived(String result, int id, String message) {} + public void streamClosedReceived(String result, String id, String message) {} + public void streamConnectedReceived(String remoteDestination, String id) {} + public void streamDataReceived(String id, byte[] data, int offset, int length) {} + public void streamStatusReceived(String result, String id, String message) {} + public void datagramReceived(String dest, byte[] data, int offset, int length, int fromPort, int toPort) {} + public void rawReceived(byte[] data, int offset, int length, int fromPort, int toPort, int protocol) {} + public void pingReceived(String data) {} + public void pongReceived(String data) {} public void unknownMessageReceived(String major, String minor, Properties params) {} } diff --git a/apps/sam/java/src/net/i2p/sam/client/SAMEventHandler.java b/apps/sam/java/src/net/i2p/sam/client/SAMEventHandler.java index 2d1a5b63b90a770b227e132a5e6c9cb2968e21e1..dc90d3fb2423dd31688e7e7cbcef8a0411158617 100644 --- a/apps/sam/java/src/net/i2p/sam/client/SAMEventHandler.java +++ b/apps/sam/java/src/net/i2p/sam/client/SAMEventHandler.java @@ -13,31 +13,35 @@ import net.i2p.util.Log; */ public class SAMEventHandler extends SAMClientEventListenerImpl { //private I2PAppContext _context; - private Log _log; + private final Log _log; private Boolean _helloOk; - private Object _helloLock = new Object(); + private String _version; + private final Object _helloLock = new Object(); private Boolean _sessionCreateOk; - private Object _sessionCreateLock = new Object(); - private Object _namingReplyLock = new Object(); - private Map<String,String> _namingReplies = new HashMap<String,String>(); + private Boolean _streamStatusOk; + private final Object _sessionCreateLock = new Object(); + private final Object _namingReplyLock = new Object(); + private final Object _streamStatusLock = new Object(); + private final Map<String,String> _namingReplies = new HashMap<String,String>(); public SAMEventHandler(I2PAppContext ctx) { //_context = ctx; _log = ctx.logManager().getLog(getClass()); } - @Override - public void helloReplyReceived(boolean ok) { + @Override + public void helloReplyReceived(boolean ok, String version) { synchronized (_helloLock) { if (ok) _helloOk = Boolean.TRUE; else _helloOk = Boolean.FALSE; + _version = version; _helloLock.notifyAll(); } } - @Override + @Override public void sessionStatusReceived(String result, String destination, String msg) { synchronized (_sessionCreateLock) { if (SAMReader.SAMClientEventListener.SESSION_STATUS_OK.equals(result)) @@ -48,7 +52,7 @@ public class SAMEventHandler extends SAMClientEventListenerImpl { } } - @Override + @Override public void namingReplyReceived(String name, String result, String value, String msg) { synchronized (_namingReplyLock) { if (SAMReader.SAMClientEventListener.NAMING_REPLY_OK.equals(result)) @@ -59,9 +63,20 @@ public class SAMEventHandler extends SAMClientEventListenerImpl { } } - @Override + @Override + public void streamStatusReceived(String result, String id, String message) { + synchronized (_streamStatusLock) { + if (SAMReader.SAMClientEventListener.SESSION_STATUS_OK.equals(result)) + _streamStatusOk = Boolean.TRUE; + else + _streamStatusOk = Boolean.FALSE; + _streamStatusLock.notifyAll(); + } + } + + @Override public void unknownMessageReceived(String major, String minor, Properties params) { - _log.error("wrt, [" + major + "] [" + minor + "] [" + params + "]"); + _log.error("Unhandled message: [" + major + "] [" + minor + "] [" + params + "]"); } @@ -70,20 +85,20 @@ public class SAMEventHandler extends SAMClientEventListenerImpl { // /** - * Wait for the connection to be established, returning true if everything + * Wait for the connection to be established, returning the server version if everything * went ok - * @return true if everything ok + * @return SAM server version if everything ok, or null on failure */ - public boolean waitForHelloReply() { + public String waitForHelloReply() { while (true) { try { synchronized (_helloLock) { if (_helloOk == null) _helloLock.wait(); else - return _helloOk.booleanValue(); + return _helloOk.booleanValue() ? _version : null; } - } catch (InterruptedException ie) {} + } catch (InterruptedException ie) { return null; } } } @@ -101,7 +116,25 @@ public class SAMEventHandler extends SAMClientEventListenerImpl { else return _sessionCreateOk.booleanValue(); } - } catch (InterruptedException ie) {} + } catch (InterruptedException ie) { return false; } + } + } + + /** + * Wait for the stream to be created, returning true if everything went ok + * + * @return true if everything ok + */ + public boolean waitForStreamStatusReply() { + while (true) { + try { + synchronized (_streamStatusLock) { + if (_streamStatusOk == null) + _streamStatusLock.wait(); + else + return _streamStatusOk.booleanValue(); + } + } catch (InterruptedException ie) { return false; } } } @@ -128,7 +161,7 @@ public class SAMEventHandler extends SAMClientEventListenerImpl { return val; } } - } catch (InterruptedException ie) {} + } catch (InterruptedException ie) { return null; } } } } diff --git a/apps/sam/java/src/net/i2p/sam/client/SAMReader.java b/apps/sam/java/src/net/i2p/sam/client/SAMReader.java index f39394901754eae7c1dbbb8cb6453a8722b84866..0ab88cfcee93bc4b1916401632dc88ba5d0dea97 100644 --- a/apps/sam/java/src/net/i2p/sam/client/SAMReader.java +++ b/apps/sam/java/src/net/i2p/sam/client/SAMReader.java @@ -5,8 +5,10 @@ import java.io.IOException; import java.io.InputStream; import java.util.Properties; import java.util.StringTokenizer; +import java.util.concurrent.atomic.AtomicInteger; import net.i2p.I2PAppContext; +import net.i2p.client.I2PSession; import net.i2p.data.DataHelper; import net.i2p.util.I2PAppThread; import net.i2p.util.Log; @@ -16,10 +18,12 @@ import net.i2p.util.Log; * */ public class SAMReader { - private Log _log; - private InputStream _inRaw; - private SAMClientEventListener _listener; - private boolean _live; + private final Log _log; + private final InputStream _inRaw; + private final SAMClientEventListener _listener; + private volatile boolean _live; + private Thread _thread; + private static final AtomicInteger _count = new AtomicInteger(); public SAMReader(I2PAppContext context, InputStream samIn, SAMClientEventListener listener) { _log = context.logManager().getLog(SAMReader.class); @@ -27,12 +31,23 @@ public class SAMReader { _listener = listener; } - public void startReading() { + public synchronized void startReading() { + if (_live) + throw new IllegalStateException(); _live = true; - I2PAppThread t = new I2PAppThread(new Runner(), "SAM reader"); + I2PAppThread t = new I2PAppThread(new Runner(), "SAM reader " + _count.incrementAndGet()); t.start(); + _thread = t; + } + + public synchronized void stopReading() { + _live = false; + if (_thread != null) { + _thread.interrupt(); + _thread = null; + try { _inRaw.close(); } catch (IOException ioe) {} + } } - public void stopReading() { _live = false; } /** * Async event notification interface for SAM clients @@ -60,14 +75,18 @@ public class SAMReader { public static final String NAMING_REPLY_INVALID_KEY = "INVALID_KEY"; public static final String NAMING_REPLY_KEY_NOT_FOUND = "KEY_NOT_FOUND"; - public void helloReplyReceived(boolean ok); + public void helloReplyReceived(boolean ok, String version); public void sessionStatusReceived(String result, String destination, String message); - public void streamStatusReceived(String result, int id, String message); - public void streamConnectedReceived(String remoteDestination, int id); - public void streamClosedReceived(String result, int id, String message); - public void streamDataReceived(int id, byte data[], int offset, int length); + public void streamStatusReceived(String result, String id, String message); + public void streamConnectedReceived(String remoteDestination, String id); + public void streamClosedReceived(String result, String id, String message); + public void streamDataReceived(String id, byte data[], int offset, int length); public void namingReplyReceived(String name, String result, String value, String message); public void destReplyReceived(String publicKey, String privateKey); + public void datagramReceived(String dest, byte[] data, int offset, int length, int fromPort, int toPort); + public void rawReceived(byte[] data, int offset, int length, int fromPort, int toPort, int protocol); + public void pingReceived(String data); + public void pongReceived(String data); public void unknownMessageReceived(String major, String minor, Properties params); } @@ -87,33 +106,29 @@ public class SAMReader { baos.write(c); } if (c == -1) { - _log.error("Error reading from the SAM bridge"); - return; + _log.info("EOF reading from the SAM bridge"); + break; } } catch (IOException ioe) { _log.error("Error reading from SAM", ioe); + break; } String line = DataHelper.getUTF8(baos.toByteArray()); baos.reset(); - if (line == null) { - _log.info("No more data from the SAM bridge"); - break; - } - - _log.debug("Line read from the bridge: " + line); + if (_log.shouldDebug()) + _log.debug("Line read from the bridge: " + line); StringTokenizer tok = new StringTokenizer(line); - if (tok.countTokens() < 2) { + if (tok.countTokens() <= 0) { _log.error("Invalid SAM line: [" + line + "]"); - _live = false; - return; + break; } String major = tok.nextToken(); - String minor = tok.nextToken(); + String minor = tok.hasMoreTokens() ? tok.nextToken() : ""; params.clear(); while (tok.hasMoreTokens()) { @@ -132,6 +147,9 @@ public class SAMReader { processEvent(major, minor, params); } + _live = false; + if (_log.shouldWarn()) + _log.warn("SAMReader exiting"); } } @@ -144,10 +162,11 @@ public class SAMReader { if ("HELLO".equals(major)) { if ("REPLY".equals(minor)) { String result = params.getProperty("RESULT"); - if ("OK".equals(result)) - _listener.helloReplyReceived(true); + String version= params.getProperty("VERSION"); + if ("OK".equals(result) && version != null) + _listener.helloReplyReceived(true, version); else - _listener.helloReplyReceived(false); + _listener.helloReplyReceived(false, version); } else { _listener.unknownMessageReceived(major, minor, params); } @@ -165,24 +184,17 @@ public class SAMReader { String result = params.getProperty("RESULT"); String id = params.getProperty("ID"); String msg = params.getProperty("MESSAGE"); - if (id != null) { - try { - _listener.streamStatusReceived(result, Integer.parseInt(id), msg); - } catch (NumberFormatException nfe) { - _listener.unknownMessageReceived(major, minor, params); - } - } else { - _listener.unknownMessageReceived(major, minor, params); - } + // id is null in v3, so pass it through regardless + //if (id != null) { + _listener.streamStatusReceived(result, id, msg); + //} else { + // _listener.unknownMessageReceived(major, minor, params); + //} } else if ("CONNECTED".equals(minor)) { String dest = params.getProperty("DESTINATION"); String id = params.getProperty("ID"); if (id != null) { - try { - _listener.streamConnectedReceived(dest, Integer.parseInt(id)); - } catch (NumberFormatException nfe) { - _listener.unknownMessageReceived(major, minor, params); - } + _listener.streamConnectedReceived(dest, id); } else { _listener.unknownMessageReceived(major, minor, params); } @@ -191,11 +203,7 @@ public class SAMReader { String id = params.getProperty("ID"); String msg = params.getProperty("MESSAGE"); if (id != null) { - try { - _listener.streamClosedReceived(result, Integer.parseInt(id), msg); - } catch (NumberFormatException nfe) { - _listener.unknownMessageReceived(major, minor, params); - } + _listener.streamClosedReceived(result, id, msg); } else { _listener.unknownMessageReceived(major, minor, params); } @@ -204,7 +212,6 @@ public class SAMReader { String size = params.getProperty("SIZE"); if (id != null) { try { - int idVal = Integer.parseInt(id); int sizeVal = Integer.parseInt(size); byte data[] = new byte[sizeVal]; @@ -212,7 +219,7 @@ public class SAMReader { if (read != sizeVal) { _listener.unknownMessageReceived(major, minor, params); } else { - _listener.streamDataReceived(idVal, data, 0, sizeVal); + _listener.streamDataReceived(id, data, 0, sizeVal); } } catch (NumberFormatException nfe) { _listener.unknownMessageReceived(major, minor, params); @@ -226,6 +233,73 @@ public class SAMReader { } else { _listener.unknownMessageReceived(major, minor, params); } + } else if ("DATAGRAM".equals(major)) { + if ("RECEIVED".equals(minor)) { + String dest = params.getProperty("DESTINATION"); + String size = params.getProperty("SIZE"); + String fp = params.getProperty("FROM_PORT"); + String tp = params.getProperty("TO_PORT"); + int fromPort = 0; + int toPort = 0; + if (dest != null) { + try { + if (fp != null) + fromPort = Integer.parseInt(fp); + if (tp != null) + toPort = Integer.parseInt(tp); + int sizeVal = Integer.parseInt(size); + byte data[] = new byte[sizeVal]; + int read = DataHelper.read(_inRaw, data); + if (read != sizeVal) { + _listener.unknownMessageReceived(major, minor, params); + } else { + _listener.datagramReceived(dest, data, 0, sizeVal, fromPort, toPort); + } + } catch (NumberFormatException nfe) { + _listener.unknownMessageReceived(major, minor, params); + } catch (IOException ioe) { + _live = false; + _listener.unknownMessageReceived(major, minor, params); + } + } else { + _listener.unknownMessageReceived(major, minor, params); + } + } else { + _listener.unknownMessageReceived(major, minor, params); + } + } else if ("RAW".equals(major)) { + if ("RECEIVED".equals(minor)) { + String size = params.getProperty("SIZE"); + String fp = params.getProperty("FROM_PORT"); + String tp = params.getProperty("TO_PORT"); + String pr = params.getProperty("PROTOCOL"); + int fromPort = 0; + int toPort = 0; + int protocol = I2PSession.PROTO_DATAGRAM_RAW; + try { + if (fp != null) + fromPort = Integer.parseInt(fp); + if (tp != null) + toPort = Integer.parseInt(tp); + if (pr != null) + protocol = Integer.parseInt(pr); + int sizeVal = Integer.parseInt(size); + byte data[] = new byte[sizeVal]; + int read = DataHelper.read(_inRaw, data); + if (read != sizeVal) { + _listener.unknownMessageReceived(major, minor, params); + } else { + _listener.rawReceived(data, 0, sizeVal, fromPort, toPort, protocol); + } + } catch (NumberFormatException nfe) { + _listener.unknownMessageReceived(major, minor, params); + } catch (IOException ioe) { + _live = false; + _listener.unknownMessageReceived(major, minor, params); + } + } else { + _listener.unknownMessageReceived(major, minor, params); + } } else if ("NAMING".equals(major)) { if ("REPLY".equals(minor)) { String name = params.getProperty("NAME"); @@ -244,6 +318,12 @@ public class SAMReader { } else { _listener.unknownMessageReceived(major, minor, params); } + } else if ("PING".equals(major)) { + // this omits anything after a space + _listener.pingReceived(minor); + } else if ("PONG".equals(major)) { + // this omits anything after a space + _listener.pongReceived(minor); } else { _listener.unknownMessageReceived(major, minor, params); } diff --git a/apps/sam/java/src/net/i2p/sam/client/SAMStreamSend.java b/apps/sam/java/src/net/i2p/sam/client/SAMStreamSend.java index 2ce8b3b02f81f86ee9a48c9f5dd2dbf290559a0c..761e50e814aac27b7e3090146d42495cd569af80 100644 --- a/apps/sam/java/src/net/i2p/sam/client/SAMStreamSend.java +++ b/apps/sam/java/src/net/i2p/sam/client/SAMStreamSend.java @@ -1,50 +1,141 @@ package net.i2p.sam.client; +import java.io.ByteArrayOutputStream; +import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; +import java.net.DatagramPacket; +import java.net.DatagramSocket; +import java.net.InetSocketAddress; import java.net.Socket; +import java.security.GeneralSecurityException; import java.util.HashMap; import java.util.Map; +import javax.net.ssl.SSLSocket; + +import gnu.getopt.Getopt; import net.i2p.I2PAppContext; +import net.i2p.data.Base32; import net.i2p.data.DataHelper; import net.i2p.util.I2PAppThread; +import net.i2p.util.I2PSSLSocketFactory; import net.i2p.util.Log; +import net.i2p.util.VersionComparator; /** - * Send a file to a peer + * Swiss army knife tester. + * Sends a file (datafile) to a peer (b64 dest in peerDestFile). + * + * Usage: SAMStreamSend [options] peerDestFile dataFile * - * Usage: SAMStreamSend samHost samPort peerDestFile dataFile + * See apps/sam/doc/README-test.txt for info on test setup. + * Sends data in one of 5 modes. + * Optionally uses SSL. + * Configurable SAM client version. * */ public class SAMStreamSend { - private I2PAppContext _context; - private Log _log; - private String _samHost; - private String _samPort; - private String _destFile; - private String _dataFile; + private final I2PAppContext _context; + private final Log _log; + private final String _samHost; + private final String _samPort; + private final String _destFile; + private final String _dataFile; private String _conOptions; - private Socket _samSocket; - private OutputStream _samOut; - private InputStream _samIn; - private SAMReader _reader; + private SAMReader _reader, _reader2; + private boolean _isV3; + private boolean _isV32; + private String _v3ID; //private boolean _dead; - private SAMEventHandler _eventHandler; /** Connection id (Integer) to peer (Flooder) */ - private Map<Integer, Sender> _remotePeers; + private final Map<String, Sender> _remotePeers; + private static I2PSSLSocketFactory _sslSocketFactory; + private static final int STREAM=0, DG=1, V1DG=2, RAW=3, V1RAW=4; + private static final String USAGE = "Usage: SAMStreamSend [-s] [-m mode] [-v version] [-b samHost] [-p samPort] [-o opt=val] [-u user] [-w password] peerDestFile dataDir\n" + + " modes: stream: 0; datagram: 1; v1datagram: 2; raw: 3; v1raw: 4\n" + + " -s: use SSL\n" + + " multiple -o session options are allowed"; + public static void main(String args[]) { - if (args.length < 4) { - System.err.println("Usage: SAMStreamSend samHost samPort peerDestFile dataFile"); + Getopt g = new Getopt("SAM", args, "sb:m:o:p:u:v:w:"); + boolean isSSL = false; + int mode = STREAM; + String version = "1.0"; + String host = "127.0.0.1"; + String port = "7656"; + String user = null; + String password = null; + String opts = "inbound.length=0 outbound.length=0"; + int c; + while ((c = g.getopt()) != -1) { + switch (c) { + case 's': + isSSL = true; + break; + + case 'm': + mode = Integer.parseInt(g.getOptarg()); + if (mode < 0 || mode > V1RAW) { + System.err.println(USAGE); + return; + } + break; + + case 'v': + version = g.getOptarg(); + break; + + case 'b': + host = g.getOptarg(); + break; + + case 'o': + opts = opts + ' ' + g.getOptarg(); + break; + + case 'p': + port = g.getOptarg(); + break; + + case 'u': + user = g.getOptarg(); + break; + + case 'w': + password = g.getOptarg(); + break; + + case 'h': + case '?': + case ':': + default: + System.err.println(USAGE); + return; + } // switch + } // while + + int startArgs = g.getOptind(); + if (args.length - startArgs != 2) { + System.err.println(USAGE); return; } - I2PAppContext ctx = new I2PAppContext(); - //String files[] = new String[args.length - 3]; - SAMStreamSend sender = new SAMStreamSend(ctx, args[0], args[1], args[2], args[3]); - sender.startup(); + if ((user == null && password != null) || + (user != null && password == null)) { + System.err.println("both user and password or neither"); + return; + } + if (user != null && password != null && VersionComparator.comp(version, "3.2") < 0) { + System.err.println("user/password require 3.2"); + return; + } + I2PAppContext ctx = I2PAppContext.getGlobalContext(); + SAMStreamSend sender = new SAMStreamSend(ctx, host, port, + args[startArgs], args[startArgs + 1]); + sender.startup(version, isSSL, mode, user, password, opts); } public SAMStreamSend(I2PAppContext ctx, String samHost, String samPort, String destFile, String dataFile) { @@ -56,86 +147,144 @@ public class SAMStreamSend { _destFile = destFile; _dataFile = dataFile; _conOptions = ""; - _eventHandler = new SendEventHandler(_context); - _remotePeers = new HashMap<Integer,Sender>(); + _remotePeers = new HashMap<String, Sender>(); } - public void startup() { + public void startup(String version, boolean isSSL, int mode, String user, String password, String sessionOpts) { if (_log.shouldLog(Log.DEBUG)) _log.debug("Starting up"); - boolean ok = connect(); - if (_log.shouldLog(Log.DEBUG)) - _log.debug("Connected: " + ok); - if (ok) { - _reader = new SAMReader(_context, _samIn, _eventHandler); + try { + Socket sock = connect(isSSL); + SAMEventHandler eventHandler = new SendEventHandler(_context); + _reader = new SAMReader(_context, sock.getInputStream(), eventHandler); _reader.startReading(); if (_log.shouldLog(Log.DEBUG)) _log.debug("Reader created"); - String ourDest = handshake(); + OutputStream out = sock.getOutputStream(); + String ourDest = handshake(out, version, true, eventHandler, mode, user, password, sessionOpts); + if (ourDest == null) + throw new IOException("handshake failed"); if (_log.shouldLog(Log.DEBUG)) _log.debug("Handshake complete. we are " + ourDest); - if (ourDest != null) { - send(); + if (_isV3 && mode == STREAM) { + Socket sock2 = connect(isSSL); + eventHandler = new SendEventHandler(_context); + _reader2 = new SAMReader(_context, sock2.getInputStream(), eventHandler); + _reader2.startReading(); + if (_log.shouldLog(Log.DEBUG)) + _log.debug("Reader2 created"); + out = sock2.getOutputStream(); + String ok = handshake(out, version, false, eventHandler, mode, user, password, ""); + if (ok == null) + throw new IOException("2nd handshake failed"); + if (_log.shouldLog(Log.DEBUG)) + _log.debug("Handshake2 complete."); } + if (mode == DG || mode == RAW) + out = null; + send(out, eventHandler, mode); + } catch (IOException e) { + _log.error("Unable to connect to SAM at " + _samHost + ":" + _samPort, e); + if (_reader != null) + _reader.stopReading(); + if (_reader2 != null) + _reader2.stopReading(); } } private class SendEventHandler extends SAMEventHandler { public SendEventHandler(I2PAppContext ctx) { super(ctx); } - public void streamClosedReceived(String result, int id, String message) { + + @Override + public void streamClosedReceived(String result, String id, String message) { Sender sender = null; synchronized (_remotePeers) { - sender = _remotePeers.remove(Integer.valueOf(id)); + sender = _remotePeers.remove(id); } if (sender != null) { sender.closed(); if (_log.shouldLog(Log.DEBUG)) _log.debug("Connection " + sender.getConnectionId() + " closed to " + sender.getDestination()); } else { - _log.error("wtf, not connected to " + id + " but we were just closed?"); + _log.error("not connected to " + id + " but we were just closed?"); } } } - private boolean connect() { - try { - _samSocket = new Socket(_samHost, Integer.parseInt(_samPort)); - _samOut = _samSocket.getOutputStream(); - _samIn = _samSocket.getInputStream(); - return true; - } catch (Exception e) { - _log.error("Unable to connect to SAM at " + _samHost + ":" + _samPort, e); - return false; + private Socket connect(boolean isSSL) throws IOException { + int port = Integer.parseInt(_samPort); + if (!isSSL) + return new Socket(_samHost, port); + synchronized(SAMStreamSink.class) { + if (_sslSocketFactory == null) { + try { + _sslSocketFactory = new I2PSSLSocketFactory( + _context, true, "certificates/sam"); + } catch (GeneralSecurityException gse) { + throw new IOException("SSL error", gse); + } + } } + SSLSocket sock = (SSLSocket) _sslSocketFactory.createSocket(_samHost, port); + I2PSSLSocketFactory.verifyHostname(_context, sock, _samHost); + return sock; } - private String handshake() { - synchronized (_samOut) { + /** @return our b64 dest or null */ + private String handshake(OutputStream samOut, String version, boolean isMaster, + SAMEventHandler eventHandler, int mode, String user, String password, + String opts) { + synchronized (samOut) { try { - _samOut.write("HELLO VERSION MIN=1.0 MAX=1.0\n".getBytes()); - _samOut.flush(); + if (user != null && password != null) + samOut.write(("HELLO VERSION MIN=1.0 MAX=" + version + " USER=\"" + user.replace("\"", "\\\"") + + "\" PASSWORD=\"" + password.replace("\"", "\\\"") + "\"\n").getBytes("UTF-8")); + else + samOut.write(("HELLO VERSION MIN=1.0 MAX=" + version + '\n').getBytes("UTF-8")); + samOut.flush(); if (_log.shouldLog(Log.DEBUG)) _log.debug("Hello sent"); - boolean ok = _eventHandler.waitForHelloReply(); + String hisVersion = eventHandler.waitForHelloReply(); if (_log.shouldLog(Log.DEBUG)) - _log.debug("Hello reply found: " + ok); - if (!ok) - throw new IOException("wtf, hello failed?"); - String req = "SESSION CREATE STYLE=STREAM DESTINATION=TRANSIENT " + _conOptions + "\n"; - _samOut.write(req.getBytes()); - _samOut.flush(); + _log.debug("Hello reply found: " + hisVersion); + if (hisVersion == null) + throw new IOException("Hello failed"); + if (!isMaster) + return "OK"; + _isV3 = VersionComparator.comp(hisVersion, "3") >= 0; + if (_isV3) { + _isV32 = VersionComparator.comp(hisVersion, "3.2") >= 0; + byte[] id = new byte[5]; + _context.random().nextBytes(id); + _v3ID = Base32.encode(id); + if (_isV32) + _v3ID = "xx€€xx" + _v3ID; + _conOptions = "ID=" + _v3ID; + } + String style; + if (mode == STREAM) + style = "STREAM"; + else if (mode == DG || mode == V1DG) + style = "DATAGRAM"; + else + style = "RAW"; + String req = "SESSION CREATE STYLE=" + style + " DESTINATION=TRANSIENT " + _conOptions + ' ' + opts + '\n'; + samOut.write(req.getBytes("UTF-8")); + samOut.flush(); if (_log.shouldLog(Log.DEBUG)) _log.debug("Session create sent"); - ok = _eventHandler.waitForSessionCreateReply(); + boolean ok = eventHandler.waitForSessionCreateReply(); + if (!ok) + throw new IOException("Session create failed"); if (_log.shouldLog(Log.DEBUG)) _log.debug("Session create reply found: " + ok); req = "NAMING LOOKUP NAME=ME\n"; - _samOut.write(req.getBytes()); - _samOut.flush(); + samOut.write(req.getBytes("UTF-8")); + samOut.flush(); if (_log.shouldLog(Log.DEBUG)) _log.debug("Naming lookup sent"); - String destination = _eventHandler.waitForNamingReply("ME"); + String destination = eventHandler.waitForNamingReply("ME"); if (_log.shouldLog(Log.DEBUG)) _log.debug("Naming lookup reply found: " + destination); if (destination == null) { @@ -145,32 +294,56 @@ public class SAMStreamSend { _log.info("We are " + destination); } return destination; - } catch (Exception e) { + } catch (IOException e) { _log.error("Error handshaking", e); return null; } } } - private void send() { - Sender sender = new Sender(); + private void send(OutputStream samOut, SAMEventHandler eventHandler, int mode) throws IOException { + Sender sender = new Sender(samOut, eventHandler, mode); boolean ok = sender.openConnection(); if (ok) { I2PAppThread t = new I2PAppThread(sender, "Sender"); t.start(); + } else { + throw new IOException("Sender failed to connect"); } } private class Sender implements Runnable { - private int _connectionId; + private final String _connectionId; private String _remoteDestination; private InputStream _in; - private boolean _closed; + private volatile boolean _closed; private long _started; private long _totalSent; + private final OutputStream _samOut; + private final SAMEventHandler _eventHandler; + private final int _mode; + private final DatagramSocket _dgSock; + private final InetSocketAddress _dgSAM; - public Sender() { - _closed = false; + public Sender(OutputStream samOut, SAMEventHandler eventHandler, int mode) throws IOException { + _samOut = samOut; + _eventHandler = eventHandler; + _mode = mode; + if (mode == DG || mode == RAW) { + // samOut will be null + _dgSock = new DatagramSocket(); + _dgSAM = new InetSocketAddress(_samHost, 7655); + } else { + _dgSock = null; + _dgSAM = null; + } + synchronized (_remotePeers) { + if (_v3ID != null) + _connectionId = _v3ID; + else + _connectionId = Integer.toString(_remotePeers.size() + 1); + _remotePeers.put(_connectionId, Sender.this); + } } public boolean openConnection() { @@ -181,19 +354,27 @@ public class SAMStreamSend { int read = DataHelper.read(fin, dest); _remoteDestination = DataHelper.getUTF8(dest, 0, read); - synchronized (_remotePeers) { - _connectionId = _remotePeers.size() + 1; - _remotePeers.put(Integer.valueOf(_connectionId), Sender.this); - } _context.statManager().createRateStat("send." + _connectionId + ".totalSent", "Data size sent", "swarm", new long[] { 30*1000, 60*1000, 5*60*1000 }); _context.statManager().createRateStat("send." + _connectionId + ".started", "When we start", "swarm", new long[] { 5*60*1000 }); _context.statManager().createRateStat("send." + _connectionId + ".lifetime", "How long we talk to a peer", "swarm", new long[] { 5*60*1000 }); - byte msg[] = ("STREAM CONNECT ID=" + _connectionId + " DESTINATION=" + _remoteDestination + "\n").getBytes(); - synchronized (_samOut) { - _samOut.write(msg); - _samOut.flush(); + if (_mode == STREAM) { + StringBuilder buf = new StringBuilder(1024); + buf.append("STREAM CONNECT ID=").append(_connectionId).append(" DESTINATION=").append(_remoteDestination); + // not supported until 3.2 but 3.0-3.1 will ignore + if (_isV3) + buf.append(" FROM_PORT=1234 TO_PORT=5678"); + buf.append('\n'); + byte[] msg = DataHelper.getUTF8(buf.toString()); + synchronized (_samOut) { + _samOut.write(msg); + _samOut.flush(); + } + _log.debug("STREAM CONNECT sent, waiting for STREAM STATUS..."); + boolean ok = _eventHandler.waitForStreamStatusReply(); + if (!ok) + throw new IOException("STREAM CONNECT failed"); } _in = new FileInputStream(_dataFile); @@ -210,7 +391,7 @@ public class SAMStreamSend { } } - public int getConnectionId() { return _connectionId; } + public String getConnectionId() { return _connectionId; } public String getDestination() { return _remoteDestination; } public void closed() { @@ -224,7 +405,8 @@ public class SAMStreamSend { public void run() { _started = _context.clock().now(); _context.statManager().addRateData("send." + _connectionId + ".started", 1, 0); - byte data[] = new byte[1024]; + final long toSend = (new File(_dataFile)).length(); + byte data[] = new byte[8192]; long lastSend = _context.clock().now(); while (!_closed) { try { @@ -239,11 +421,45 @@ public class SAMStreamSend { _log.debug("Sending " + read + " on " + _connectionId + " after " + (now-lastSend)); lastSend = now; - byte msg[] = ("STREAM SEND ID=" + _connectionId + " SIZE=" + read + "\n").getBytes(); - synchronized (_samOut) { - _samOut.write(msg); - _samOut.write(data, 0, read); - _samOut.flush(); + if (_samOut != null) { + synchronized (_samOut) { + if (!_isV3 || _mode == V1DG || _mode == V1RAW) { + String m; + if (_mode == STREAM) { + m = "STREAM SEND ID=" + _connectionId + " SIZE=" + read + "\n"; + } else if (_mode == V1DG) { + m = "DATAGRAM SEND DESTINATION=" + _remoteDestination + " SIZE=" + read + "\n"; + } else if (_mode == V1RAW) { + m = "RAW SEND DESTINATION=" + _remoteDestination + " SIZE=" + read + "\n"; + } else { + throw new IOException("unsupported mode " + _mode); + } + byte msg[] = DataHelper.getUTF8(m); + _samOut.write(msg); + } + _samOut.write(data, 0, read); + _samOut.flush(); + } + } else { + // real datagrams + ByteArrayOutputStream baos = new ByteArrayOutputStream(read + 1024); + baos.write(DataHelper.getUTF8("3.0 ")); + baos.write(DataHelper.getUTF8(_v3ID)); + baos.write((byte) ' '); + baos.write(DataHelper.getUTF8(_remoteDestination)); + if (_isV32) { + // only set TO_PORT to test session setting of FROM_PORT + if (_mode == RAW) + baos.write(DataHelper.getUTF8(" PROTOCOL=123 TO_PORT=5678")); + else + baos.write(DataHelper.getUTF8(" TO_PORT=5678")); + } + baos.write((byte) '\n'); + baos.write(data, 0, read); + byte[] pkt = baos.toByteArray(); + DatagramPacket p = new DatagramPacket(pkt, pkt.length, _dgSAM); + _dgSock.send(p); + try { Thread.sleep(25); } catch (InterruptedException ie) {} } _totalSent += read; @@ -251,20 +467,48 @@ public class SAMStreamSend { } } catch (IOException ioe) { _log.error("Error sending", ioe); + break; } } - byte msg[] = ("STREAM CLOSE ID=" + _connectionId + "\n").getBytes(); - try { - synchronized (_samOut) { - _samOut.write(msg); - _samOut.flush(); + if (_samOut != null) { + if (_isV3) { + try { + _samOut.close(); + } catch (IOException ioe) { + _log.info("Error closing", ioe); + } + } else { + try { + byte msg[] = ("STREAM CLOSE ID=" + _connectionId + "\n").getBytes("UTF-8"); + synchronized (_samOut) { + _samOut.write(msg); + _samOut.flush(); + // we can't close this yet, we will lose data + //_samOut.close(); + } + } catch (IOException ioe) { + _log.info("Error closing", ioe); + } } - } catch (IOException ioe) { - _log.error("Error closing", ioe); + } else if (_dgSock != null) { + _dgSock.close(); } closed(); + // stop the reader, since we're only doing this once for testing + // you wouldn't do this in a real application + // closing the master socket too fast will kill the data socket flushing through + try { + Thread.sleep(10000); + } catch (InterruptedException ie) {} + if (_log.shouldLog(Log.DEBUG)) + _log.debug("Runner exiting"); + if (toSend != _totalSent) + _log.error("Only sent " + _totalSent + " of " + toSend + " bytes"); + if (_reader2 != null) + _reader2.stopReading(); + _reader.stopReading(); } } } diff --git a/apps/sam/java/src/net/i2p/sam/client/SAMStreamSink.java b/apps/sam/java/src/net/i2p/sam/client/SAMStreamSink.java index 666b7116d8bf4fb3a7022981c6ec1102a3579467..d59ebb0a37e303cf43d78ed6ecf71a21fd85c430 100644 --- a/apps/sam/java/src/net/i2p/sam/client/SAMStreamSink.java +++ b/apps/sam/java/src/net/i2p/sam/client/SAMStreamSink.java @@ -1,184 +1,691 @@ package net.i2p.sam.client; +import java.io.ByteArrayInputStream; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; +import java.net.DatagramPacket; +import java.net.DatagramSocket; +import java.net.ServerSocket; import java.net.Socket; +import java.security.GeneralSecurityException; import java.util.HashMap; import java.util.Map; +import java.util.Properties; +import javax.net.ssl.SSLSocket; +import javax.net.ssl.SSLServerSocket; +import javax.net.ssl.SSLServerSocketFactory; + +import gnu.getopt.Getopt; import net.i2p.I2PAppContext; +import net.i2p.data.Base32; +import net.i2p.data.DataHelper; +import net.i2p.util.I2PAppThread; +import net.i2p.util.I2PSSLSocketFactory; import net.i2p.util.Log; +import net.i2p.util.VersionComparator; /** - * Sit around on a SAM destination, receiving lots of data and - * writing it to disk + * Swiss army knife tester. + * Saves our transient b64 destination to myKeyFile where SAMStreamSend can get it. + * Saves received data to a file (in sinkDir). + * + * Usage: SAMStreamSink [options] myKeyFile sinkDir * - * Usage: SAMStreamSink samHost samPort myKeyFile sinkDir + * See apps/sam/doc/README-test.txt for info on test setup. + * Receives data in one of 7 modes. + * Optionally uses SSL. + * Configurable SAM client version. * */ public class SAMStreamSink { - private I2PAppContext _context; - private Log _log; - private String _samHost; - private String _samPort; - private String _destFile; - private String _sinkDir; + private final I2PAppContext _context; + private final Log _log; + private final String _samHost; + private final String _samPort; + private final String _destFile; + private final String _sinkDir; private String _conOptions; - private Socket _samSocket; - private OutputStream _samOut; - private InputStream _samIn; - private SAMReader _reader; - //private boolean _dead; - private SAMEventHandler _eventHandler; + private SAMReader _reader, _reader2; + private boolean _isV3; + private boolean _isV32; + private String _v3ID; /** Connection id (Integer) to peer (Flooder) */ - private Map<Integer, Sink> _remotePeers; + private final Map<String, Sink> _remotePeers; + private static I2PSSLSocketFactory _sslSocketFactory; + private static final int STREAM=0, DG=1, V1DG=2, RAW=3, V1RAW=4, RAWHDR = 5, FORWARD = 6, FORWARDSSL=7; + private static final String USAGE = "Usage: SAMStreamSink [-s] [-m mode] [-v version] [-b samHost] [-p samPort]\n" + + " [-o opt=val] [-u user] [-w password] myDestFile sinkDir\n" + + " modes: stream: 0; datagram: 1; v1datagram: 2;\n" + + " raw: 3; v1raw: 4; raw-with-headers: 5;\n" + + " stream-forward: 6; stream-forward-ssl: 7\n" + + " -s: use SSL to connect to bridge\n" + + " multiple -o session options are allowed"; + private static final int V3FORWARDPORT=9998; + private static final int V3DGPORT=9999; + public static void main(String args[]) { - if (args.length < 4) { - System.err.println("Usage: SAMStreamSink samHost samPort myDestFile sinkDir"); + Getopt g = new Getopt("SAM", args, "sb:m:p:u:v:w:"); + boolean isSSL = false; + int mode = STREAM; + String version = "1.0"; + String host = "127.0.0.1"; + String port = "7656"; + String user = null; + String password = null; + String opts = "inbound.length=0 outbound.length=0"; + int c; + while ((c = g.getopt()) != -1) { + switch (c) { + case 's': + isSSL = true; + break; + + case 'm': + mode = Integer.parseInt(g.getOptarg()); + if (mode < 0 || mode > FORWARDSSL) { + System.err.println(USAGE); + return; + } + break; + + case 'v': + version = g.getOptarg(); + break; + + case 'b': + host = g.getOptarg(); + break; + + case 'o': + opts = opts + ' ' + g.getOptarg(); + break; + + case 'p': + port = g.getOptarg(); + break; + + case 'u': + user = g.getOptarg(); + break; + + case 'w': + password = g.getOptarg(); + break; + + case 'h': + case '?': + case ':': + default: + System.err.println(USAGE); + return; + } // switch + } // while + + int startArgs = g.getOptind(); + if (args.length - startArgs != 2) { + System.err.println(USAGE); return; } - I2PAppContext ctx = new I2PAppContext(); - SAMStreamSink sink = new SAMStreamSink(ctx, args[0], args[1], args[2], args[3]); - sink.startup(); + if ((user == null && password != null) || + (user != null && password == null)) { + System.err.println("both user and password or neither"); + return; + } + if (user != null && password != null && VersionComparator.comp(version, "3.2") < 0) { + System.err.println("user/password require 3.2"); + return; + } + I2PAppContext ctx = I2PAppContext.getGlobalContext(); + SAMStreamSink sink = new SAMStreamSink(ctx, host, port, + args[startArgs], args[startArgs + 1]); + sink.startup(version, isSSL, mode, user, password, opts); } public SAMStreamSink(I2PAppContext ctx, String samHost, String samPort, String destFile, String sinkDir) { _context = ctx; _log = ctx.logManager().getLog(SAMStreamSink.class); - //_dead = false; _samHost = samHost; _samPort = samPort; _destFile = destFile; _sinkDir = sinkDir; _conOptions = ""; - _eventHandler = new SinkEventHandler(_context); - _remotePeers = new HashMap<Integer,Sink>(); + _remotePeers = new HashMap<String, Sink>(); } - public void startup() { + public void startup(String version, boolean isSSL, int mode, String user, String password, String sessionOpts) { if (_log.shouldLog(Log.DEBUG)) _log.debug("Starting up"); - boolean ok = connect(); - if (_log.shouldLog(Log.DEBUG)) - _log.debug("Connected: " + ok); - if (ok) { - _reader = new SAMReader(_context, _samIn, _eventHandler); + try { + Socket sock = connect(isSSL); + OutputStream out = sock.getOutputStream(); + SAMEventHandler eventHandler = new SinkEventHandler(_context, out); + _reader = new SAMReader(_context, sock.getInputStream(), eventHandler); _reader.startReading(); if (_log.shouldLog(Log.DEBUG)) _log.debug("Reader created"); - String ourDest = handshake(); + String ourDest = handshake(out, version, true, eventHandler, mode, user, password, sessionOpts); + if (ourDest == null) + throw new IOException("handshake failed"); if (_log.shouldLog(Log.DEBUG)) _log.debug("Handshake complete. we are " + ourDest); - if (ourDest != null) { - //boolean written = - writeDest(ourDest); - if (_log.shouldLog(Log.DEBUG)) - _log.debug("Dest written"); + if (_isV32) { + _log.debug("Starting pinger"); + Thread t = new Pinger(out); + t.start(); + } + if (_isV3 && (mode == STREAM || mode == FORWARD || mode == FORWARDSSL)) { + // test multiple acceptors, only works in 3.2 + int acceptors = (_isV32 && mode == STREAM) ? 4 : 1; + for (int i = 0; i < acceptors; i++) { + Socket sock2 = connect(isSSL); + out = sock2.getOutputStream(); + eventHandler = new SinkEventHandler2(_context, sock2.getInputStream(), out); + _reader2 = new SAMReader(_context, sock2.getInputStream(), eventHandler); + _reader2.startReading(); + if (_log.shouldLog(Log.DEBUG)) + _log.debug("Reader " + (2 + i) + " created"); + String ok = handshake(out, version, false, eventHandler, mode, user, password, ""); + if (ok == null) + throw new IOException("handshake " + (2 + i) + " failed"); + if (_log.shouldLog(Log.DEBUG)) + _log.debug("Handshake " + (2 + i) + " complete."); + } + if (mode == FORWARD) { + // set up a listening ServerSocket + (new FwdRcvr(false, null)).start(); + } else if (mode == FORWARDSSL) { + // set up a listening ServerSocket + String scfile = SSLUtil.DEFAULT_SAMCLIENT_CONFIGFILE; + File file = new File(scfile); + Properties opts = new Properties(); + if (file.exists()) + DataHelper.loadProps(opts, file); + boolean shouldSave = SSLUtil.verifyKeyStore(opts); + if (shouldSave) + DataHelper.storeProps(opts, file); + (new FwdRcvr(true, opts)).start(); + } + } else if (_isV3 && (mode == DG || mode == RAW || mode == RAWHDR)) { + // set up a listening DatagramSocket + (new DGRcvr(mode)).start(); + } + writeDest(ourDest); + } catch (IOException e) { + _log.error("Unable to connect to SAM at " + _samHost + ":" + _samPort, e); + } + } + + private class DGRcvr extends I2PAppThread { + private final int _mode; + + public DGRcvr(int mode) { + super("SAM DG Rcvr"); + _mode = mode; + } + + public void run() { + byte[] buf = new byte[32768]; + try { + Sink sink = new Sink("FAKE", "FAKEFROM"); + DatagramSocket dg = new DatagramSocket(V3DGPORT); + while (true) { + DatagramPacket p = new DatagramPacket(buf, 32768); + dg.receive(p); + int len = p.getLength(); + int off = p.getOffset(); + byte[] data = p.getData(); + _log.info("Got datagram length " + len); + if (_mode == DG || _mode == RAWHDR) { + ByteArrayInputStream bais = new ByteArrayInputStream(data, off, len); + String line = DataHelper.readLine(bais); + if (line == null) { + _log.error("DGRcvr no header line"); + continue; + } + if (_mode == DG && line.length() < 516) { + _log.error("DGRcvr line too short: \"" + line + '\n'); + continue; + } + String[] parts = line.split(" "); + int i = 0; + if (_mode == DG) { + String dest = parts[0]; + _log.info("DG is from " + dest); + i++; + } + for ( ; i < parts.length; i++) { + _log.info("Parameter: " + parts[i]); + } + int left = bais.available(); + sink.received(data, off + len - left, left); + } else { + sink.received(data, off, len); + } + } + } catch (IOException ioe) { + _log.error("DGRcvr", ioe); + } + } + } + + private class FwdRcvr extends I2PAppThread { + private final boolean _isSSL; + // for SSL only + private final Properties _opts; + + public FwdRcvr(boolean isSSL, Properties opts) { + super("SAM Fwd Rcvr"); + _isSSL = isSSL; + _opts = opts; + } + + public void run() { + try { + ServerSocket ss; + if (_isSSL) { + SSLServerSocketFactory fact = SSLUtil.initializeFactory(_opts); + SSLServerSocket sock = (SSLServerSocket) fact.createServerSocket(V3FORWARDPORT); + I2PSSLSocketFactory.setProtocolsAndCiphers(sock); + ss = sock; + } else { + ss = new ServerSocket(V3FORWARDPORT); + } + while (true) { + Socket s = ss.accept(); + Sink sink = new Sink("FAKE", "FAKEFROM"); + try { + InputStream in = s.getInputStream(); + boolean gotDest = false; + byte[] dest = new byte[1024]; + int dlen = 0; + byte[] buf = new byte[32768]; + int len; + while((len = in.read(buf)) >= 0) { + if (!gotDest) { + // eat the dest line + for (int i = 0; i < len; i++) { + byte b = buf[i]; + if (b == (byte) '\n') { + gotDest = true; + if (_log.shouldInfo()) { + try { + _log.info("Got incoming accept from: \"" + new String(dest, 0, dlen, "ISO-8859-1") + '"'); + } catch (IOException uee) {} + } + // feed any remaining to the sink + i++; + if (i < len) + sink.received(buf, i, len - i); + break; + } else { + if (dlen < dest.length) { + dest[dlen++] = b; + } else if (dlen == dest.length) { + dlen++; + _log.error("first line overflow on accept"); + } + } + } + } else { + sink.received(buf, 0, len); + } + } + sink.closed(); + } catch (IOException ioe) { + _log.error("Fwdcvr", ioe); + } + } + } catch (IOException ioe) { + _log.error("Fwdcvr", ioe); + } + } + } + + private static class Pinger extends I2PAppThread { + private final OutputStream _out; + + public Pinger(OutputStream out) { + super("SAM Sink Pinger"); + setDaemon(true); + _out = out; + } + + public void run() { + while (true) { + try { + Thread.sleep(127*1000); + synchronized(_out) { + _out.write(DataHelper.getUTF8("PING " + System.currentTimeMillis() + '\n')); + _out.flush(); + } + } catch (InterruptedException ie) { + break; + } catch (IOException ioe) { + break; + } } } } private class SinkEventHandler extends SAMEventHandler { - public SinkEventHandler(I2PAppContext ctx) { super(ctx); } + protected final OutputStream _out; + + public SinkEventHandler(I2PAppContext ctx, OutputStream out) { + super(ctx); + _out = out; + } @Override - public void streamClosedReceived(String result, int id, String message) { - Sink sink = null; + public void streamClosedReceived(String result, String id, String message) { + Sink sink; synchronized (_remotePeers) { - sink = _remotePeers.remove(Integer.valueOf(id)); + sink = _remotePeers.remove(id); } if (sink != null) { sink.closed(); if (_log.shouldLog(Log.DEBUG)) _log.debug("Connection " + sink.getConnectionId() + " closed to " + sink.getDestination()); } else { - _log.error("wtf, not connected to " + id + " but we were just closed?"); + _log.error("not connected to " + id + " but we were just closed?"); } } @Override - public void streamDataReceived(int id, byte data[], int offset, int length) { - Sink sink = null; + public void streamDataReceived(String id, byte data[], int offset, int length) { + Sink sink; synchronized (_remotePeers) { - sink = _remotePeers.get(Integer.valueOf(id)); + sink = _remotePeers.get(id); } if (sink != null) { sink.received(data, offset, length); } else { - _log.error("wtf, not connected to " + id + " but we received " + length + "?"); + _log.error("not connected to " + id + " but we received " + length + "?"); } } @Override - public void streamConnectedReceived(String dest, int id) { + public void streamConnectedReceived(String dest, String id) { if (_log.shouldLog(Log.DEBUG)) _log.debug("Connection " + id + " received from " + dest); try { Sink sink = new Sink(id, dest); synchronized (_remotePeers) { - _remotePeers.put(Integer.valueOf(id), sink); + _remotePeers.put(id, sink); } } catch (IOException ioe) { _log.error("Error creating a new sink", ioe); } } + + @Override + public void pingReceived(String data) { + if (_log.shouldInfo()) + _log.info("Got PING " + data + ", sending PONG " + data); + synchronized (_out) { + try { + _out.write(("PONG " + data + '\n').getBytes("UTF-8")); + _out.flush(); + } catch (IOException ioe) { + _log.error("PONG fail", ioe); + } + } + } + + @Override + public void datagramReceived(String dest, byte[] data, int offset, int length, int fromPort, int toPort) { + // just get the first + Sink sink; + synchronized (_remotePeers) { + if (_remotePeers.isEmpty()) { + _log.error("not connected but we received datagram " + length + "?"); + return; + } + sink = _remotePeers.values().iterator().next(); + } + sink.received(data, offset, length); + } + + @Override + public void rawReceived(byte[] data, int offset, int length, int fromPort, int toPort, int protocol) { + // just get the first + Sink sink; + synchronized (_remotePeers) { + if (_remotePeers.isEmpty()) { + _log.error("not connected but we received raw " + length + "?"); + return; + } + sink = _remotePeers.values().iterator().next(); + } + sink.received(data, offset, length); + } + } + + private class SinkEventHandler2 extends SinkEventHandler { + + private final InputStream _in; + + public SinkEventHandler2(I2PAppContext ctx, InputStream in, OutputStream out) { + super(ctx, out); + _in = in; + } + + @Override + public void streamStatusReceived(String result, String id, String message) { + if (_log.shouldLog(Log.DEBUG)) + _log.debug("got STREAM STATUS, result=" + result); + super.streamStatusReceived(result, id, message); + Sink sink = null; + try { + String dest = "TODO_if_not_silent"; + sink = new Sink(_v3ID, dest); + synchronized (_remotePeers) { + _remotePeers.put(_v3ID, sink); + } + } catch (IOException ioe) { + _log.error("Error creating a new sink", ioe); + try { _in.close(); } catch (IOException ioe2) {} + if (sink != null) + sink.closed(); + return; + } + // inline so the reader doesn't grab the data + try { + boolean gotDest = false; + byte[] dest = new byte[1024]; + int dlen = 0; + byte buf[] = new byte[4096]; + int len; + while((len = _in.read(buf)) >= 0) { + if (!gotDest) { + // eat the dest line + for (int i = 0; i < len; i++) { + byte b = buf[i]; + if (b == (byte) '\n') { + gotDest = true; + if (_log.shouldInfo()) { + try { + _log.info("Got incoming accept from: \"" + new String(dest, 0, dlen, "ISO-8859-1") + '"'); + } catch (IOException uee) {} + } + // feed any remaining to the sink + i++; + if (i < len) + sink.received(buf, i, len - i); + break; + } else { + if (dlen < dest.length) { + dest[dlen++] = b; + } else if (dlen == dest.length) { + dlen++; + _log.error("first line overflow on accept"); + } + } + } + } else { + sink.received(buf, 0, len); + } + } + sink.closed(); + } catch (IOException ioe) { + _log.error("Error reading", ioe); + } finally { + try { _in.close(); } catch (IOException ioe) {} + } + } } - private boolean connect() { - try { - _samSocket = new Socket(_samHost, Integer.parseInt(_samPort)); - _samOut = _samSocket.getOutputStream(); - _samIn = _samSocket.getInputStream(); - return true; - } catch (Exception e) { - _log.error("Unable to connect to SAM at " + _samHost + ":" + _samPort, e); - return false; + private Socket connect(boolean isSSL) throws IOException { + int port = Integer.parseInt(_samPort); + if (!isSSL) + return new Socket(_samHost, port); + synchronized(SAMStreamSink.class) { + if (_sslSocketFactory == null) { + try { + _sslSocketFactory = new I2PSSLSocketFactory( + _context, true, "certificates/sam"); + } catch (GeneralSecurityException gse) { + throw new IOException("SSL error", gse); + } + } } + SSLSocket sock = (SSLSocket) _sslSocketFactory.createSocket(_samHost, port); + I2PSSLSocketFactory.verifyHostname(_context, sock, _samHost); + return sock; } - private String handshake() { - synchronized (_samOut) { + /** @return our b64 dest or null */ + private String handshake(OutputStream samOut, String version, boolean isMaster, + SAMEventHandler eventHandler, int mode, String user, String password, + String sopts) { + synchronized (samOut) { try { - _samOut.write("HELLO VERSION MIN=1.0 MAX=1.0\n".getBytes()); - _samOut.flush(); + if (user != null && password != null) + samOut.write(("HELLO VERSION MIN=1.0 MAX=" + version + " USER=" + user + " PASSWORD=" + password + '\n').getBytes("UTF-8")); + else + samOut.write(("HELLO VERSION MIN=1.0 MAX=" + version + '\n').getBytes("UTF-8")); + samOut.flush(); if (_log.shouldLog(Log.DEBUG)) _log.debug("Hello sent"); - boolean ok = _eventHandler.waitForHelloReply(); + String hisVersion = eventHandler.waitForHelloReply(); if (_log.shouldLog(Log.DEBUG)) - _log.debug("Hello reply found: " + ok); - if (!ok) - throw new IOException("wtf, hello failed?"); - String req = "SESSION CREATE STYLE=STREAM DESTINATION=" + _destFile + " " + _conOptions + "\n"; - _samOut.write(req.getBytes()); - _samOut.flush(); + _log.debug("Hello reply found: " + hisVersion); + if (hisVersion == null) + throw new IOException("Hello failed"); + if (!isMaster) { + // only for v3 + //String req = "STREAM ACCEPT SILENT=true ID=" + _v3ID + "\n"; + // TO_PORT not supported until 3.2 but 3.0-3.1 will ignore + String req; + if (mode == STREAM) + req = "STREAM ACCEPT SILENT=false TO_PORT=5678 ID=" + _v3ID + "\n"; + else if (mode == FORWARD) + req = "STREAM FORWARD ID=" + _v3ID + " PORT=" + V3FORWARDPORT + '\n'; + else if (mode == FORWARDSSL) + req = "STREAM FORWARD ID=" + _v3ID + " PORT=" + V3FORWARDPORT + " SSL=true\n"; + else + throw new IllegalStateException("mode " + mode); + samOut.write(req.getBytes("UTF-8")); + samOut.flush(); + if (_log.shouldLog(Log.DEBUG)) + _log.debug("STREAM ACCEPT/FORWARD sent"); + if (mode == FORWARD || mode == FORWARDSSL) { + // docs were wrong, we do not get a STREAM STATUS if SILENT=true for ACCEPT + boolean ok = eventHandler.waitForStreamStatusReply(); + if (!ok) + throw new IOException("Stream status failed"); + if (_log.shouldLog(Log.DEBUG)) + _log.debug("got STREAM STATUS, awaiting connection"); + } + return "OK"; + } + _isV3 = VersionComparator.comp(hisVersion, "3") >= 0; + String dest; + if (_isV3) { + _isV32 = VersionComparator.comp(hisVersion, "3.2") >= 0; + // we use the filename as the name in sam.keys + // and read it in ourselves + File keys = new File("sam.keys"); + if (keys.exists()) { + Properties opts = new Properties(); + DataHelper.loadProps(opts, keys); + String s = opts.getProperty(_destFile); + if (s != null) { + dest = s; + } else { + dest = "TRANSIENT"; + (new File(_destFile)).delete(); + if (_log.shouldLog(Log.DEBUG)) + _log.debug("Requesting new transient destination"); + } + } else { + dest = "TRANSIENT"; + (new File(_destFile)).delete(); + if (_log.shouldLog(Log.DEBUG)) + _log.debug("Requesting new transient destination"); + } + if (isMaster) { + byte[] id = new byte[5]; + _context.random().nextBytes(id); + _v3ID = Base32.encode(id); + _conOptions = "ID=" + _v3ID; + } + } else { + // we use the filename as the name in sam.keys + // and give it to the SAM server + dest = _destFile; + } + String style; + if (mode == STREAM || mode == FORWARD || mode == FORWARDSSL) + style = "STREAM"; + else if (mode == V1DG) + style = "DATAGRAM"; + else if (mode == DG) + style = "DATAGRAM PORT=" + V3DGPORT; + else if (mode == V1RAW) + style = "RAW"; + else if (mode == RAW) + style = "RAW PORT=" + V3DGPORT; + else + style = "RAW HEADER=true PORT=" + V3DGPORT; + String req = "SESSION CREATE STYLE=" + style + " DESTINATION=" + dest + ' ' + _conOptions + ' ' + sopts + '\n'; + samOut.write(req.getBytes("UTF-8")); + samOut.flush(); if (_log.shouldLog(Log.DEBUG)) _log.debug("Session create sent"); - ok = _eventHandler.waitForSessionCreateReply(); - if (_log.shouldLog(Log.DEBUG)) - _log.debug("Session create reply found: " + ok); - + if (mode == STREAM) { + boolean ok = eventHandler.waitForSessionCreateReply(); + if (!ok) + throw new IOException("Session create failed"); + if (_log.shouldLog(Log.DEBUG)) + _log.debug("Session create reply found: " + ok); + } req = "NAMING LOOKUP NAME=ME\n"; - _samOut.write(req.getBytes()); - _samOut.flush(); + samOut.write(req.getBytes("UTF-8")); + samOut.flush(); if (_log.shouldLog(Log.DEBUG)) _log.debug("Naming lookup sent"); - String destination = _eventHandler.waitForNamingReply("ME"); + String destination = eventHandler.waitForNamingReply("ME"); if (_log.shouldLog(Log.DEBUG)) _log.debug("Naming lookup reply found: " + destination); if (destination == null) { _log.error("No naming lookup reply found!"); return null; - } else { + } + if (_log.shouldInfo()) _log.info(_destFile + " is located at " + destination); + if (mode == V1DG || mode == V1RAW) { + // fake it so the sink starts + eventHandler.streamConnectedReceived(destination, "FAKE"); } return destination; - } catch (Exception e) { + } catch (IOException e) { _log.error("Error handshaking", e); return null; } @@ -186,11 +693,21 @@ public class SAMStreamSink { } private boolean writeDest(String dest) { + File f = new File(_destFile); +/* + if (f.exists()) { + if (_log.shouldLog(Log.DEBUG)) + _log.debug("Destination file exists, not overwriting: " + _destFile); + return false; + } +*/ FileOutputStream fos = null; try { - fos = new FileOutputStream(_destFile); - fos.write(dest.getBytes()); - } catch (Exception e) { + fos = new FileOutputStream(f); + fos.write(dest.getBytes("UTF-8")); + if (_log.shouldLog(Log.DEBUG)) + _log.debug("My destination written to " + _destFile); + } catch (IOException e) { _log.error("Error writing to " + _destFile, e); return false; } finally { @@ -200,14 +717,14 @@ public class SAMStreamSink { } private class Sink { - private int _connectionId; - private String _remoteDestination; - private boolean _closed; - private long _started; + private final String _connectionId; + private final String _remoteDestination; + private volatile boolean _closed; + private final long _started; private long _lastReceivedOn; - private OutputStream _out; + private final OutputStream _out; - public Sink(int conId, String remDest) throws IOException { + public Sink(String conId, String remDest) throws IOException { _connectionId = conId; _remoteDestination = remDest; _closed = false; @@ -221,10 +738,13 @@ public class SAMStreamSink { sinkDir.mkdirs(); File out = File.createTempFile("sink", ".dat", sinkDir); + if (_log.shouldWarn()) + _log.warn("outputting to " + out); _out = new FileOutputStream(out); + _started = _context.clock().now(); } - public int getConnectionId() { return _connectionId; } + public String getConnectionId() { return _connectionId; } public String getDestination() { return _remoteDestination; } public void closed() { @@ -235,7 +755,7 @@ public class SAMStreamSink { try { _out.close(); } catch (IOException ioe) { - _log.error("Error closing", ioe); + _log.info("Error closing", ioe); } } public void received(byte data[], int offset, int len) { diff --git a/apps/sam/java/src/net/i2p/sam/client/SSLUtil.java b/apps/sam/java/src/net/i2p/sam/client/SSLUtil.java new file mode 100644 index 0000000000000000000000000000000000000000..4c73d988302e5c1014d2cf7132bf3b53c8c0443c --- /dev/null +++ b/apps/sam/java/src/net/i2p/sam/client/SSLUtil.java @@ -0,0 +1,189 @@ +package net.i2p.sam.client; + +import java.io.File; +import java.io.FileInputStream; +import java.io.IOException; +import java.io.InputStream; +import java.security.KeyStore; +import java.security.GeneralSecurityException; +import java.util.Properties; + +import javax.net.ssl.KeyManagerFactory; +import javax.net.ssl.SSLServerSocketFactory; +import javax.net.ssl.SSLContext; + +import net.i2p.I2PAppContext; +import net.i2p.crypto.KeyStoreUtil; +import net.i2p.util.Log; +import net.i2p.util.SecureDirectory; + +/** + * Utilities for SAM SSL server sockets. + * + * @since 0.9.24 copied from net.i2p.sam for testing SSL stream forwarding + */ +class SSLUtil { + + public static final String DEFAULT_SAMCLIENT_CONFIGFILE = "samclient.config"; + private static final String PROP_KEYSTORE_PASSWORD = "samclient.keystorePassword"; + private static final String DEFAULT_KEYSTORE_PASSWORD = "changeit"; + private static final String PROP_KEY_PASSWORD = "samclient.keyPassword"; + private static final String PROP_KEY_ALIAS = "samclient.keyAlias"; + private static final String ASCII_KEYFILE_SUFFIX = ".local.crt"; + private static final String PROP_KS_NAME = "samclient.keystoreFile"; + private static final String KS_DIR = "keystore"; + private static final String PREFIX = "samclient-"; + private static final String KS_SUFFIX = ".ks"; + private static final String CERT_DIR = "certificates/samclient"; + + /** + * Create a new selfsigned cert and keystore and pubkey cert if they don't exist. + * May take a while. + * + * @param opts in/out, updated if rv is true + * @return false if it already exists; if true, caller must save opts + * @throws IOException on creation fail + */ + public static boolean verifyKeyStore(Properties opts) throws IOException { + String name = opts.getProperty(PROP_KEY_ALIAS); + if (name == null) { + name = KeyStoreUtil.randomString(); + opts.setProperty(PROP_KEY_ALIAS, name); + } + String ksname = opts.getProperty(PROP_KS_NAME); + if (ksname == null) { + ksname = PREFIX + name + KS_SUFFIX; + opts.setProperty(PROP_KS_NAME, ksname); + } + File ks = new File(ksname); + if (!ks.isAbsolute()) { + ks = new File(I2PAppContext.getGlobalContext().getConfigDir(), KS_DIR); + ks = new File(ks, ksname); + } + if (ks.exists()) + return false; + File dir = ks.getParentFile(); + if (!dir.exists()) { + File sdir = new SecureDirectory(dir.getAbsolutePath()); + if (!sdir.mkdirs()) + throw new IOException("Unable to create keystore " + ks); + } + boolean rv = createKeyStore(ks, name, opts); + if (!rv) + throw new IOException("Unable to create keystore " + ks); + + // Now read it back out of the new keystore and save it in ascii form + // where the clients can get to it. + // Failure of this part is not fatal. + exportCert(ks, name, opts); + return true; + } + + + /** + * Call out to keytool to create a new keystore with a keypair in it. + * + * @param name used in CNAME + * @param opts in/out, updated if rv is true, must contain PROP_KEY_ALIAS + * @return success, if true, opts will have password properties added to be saved + */ + private static boolean createKeyStore(File ks, String name, Properties opts) { + // make a random 48 character password (30 * 8 / 5) + String keyPassword = KeyStoreUtil.randomString(); + // and one for the cname + String cname = name + ".sam.i2p.net"; + + String keyName = opts.getProperty(PROP_KEY_ALIAS); + boolean success = KeyStoreUtil.createKeys(ks, keyName, cname, "SAM", keyPassword); + if (success) { + success = ks.exists(); + if (success) { + opts.setProperty(PROP_KEYSTORE_PASSWORD, DEFAULT_KEYSTORE_PASSWORD); + opts.setProperty(PROP_KEY_PASSWORD, keyPassword); + } + } + if (success) { + logAlways("Created self-signed certificate for " + cname + " in keystore: " + ks.getAbsolutePath() + "\n" + + "The certificate name was generated randomly, and is not associated with your " + + "IP address, host name, router identity, or destination keys."); + } else { + error("Failed to create SAM SSL keystore.\n" + + "If you create the keystore manually, you must add " + PROP_KEYSTORE_PASSWORD + " and " + PROP_KEY_PASSWORD + + " to " + (new File(I2PAppContext.getGlobalContext().getConfigDir(), DEFAULT_SAMCLIENT_CONFIGFILE)).getAbsolutePath()); + } + return success; + } + + /** + * Pull the cert back OUT of the keystore and save it as ascii + * so the clients can get to it. + * + * @param name used to generate output file name + * @param opts must contain PROP_KEY_ALIAS + */ + private static void exportCert(File ks, String name, Properties opts) { + File sdir = new SecureDirectory(I2PAppContext.getGlobalContext().getConfigDir(), CERT_DIR); + if (sdir.exists() || sdir.mkdirs()) { + String keyAlias = opts.getProperty(PROP_KEY_ALIAS); + String ksPass = opts.getProperty(PROP_KEYSTORE_PASSWORD, DEFAULT_KEYSTORE_PASSWORD); + File out = new File(sdir, PREFIX + name + ASCII_KEYFILE_SUFFIX); + boolean success = KeyStoreUtil.exportCert(ks, ksPass, keyAlias, out); + if (!success) + error("Error getting SSL cert to save as ASCII"); + } else { + error("Error saving ASCII SSL keys"); + } + } + + /** + * Sets up the SSLContext and sets the socket factory. + * No option prefix allowed. + * + * @throws IOException; GeneralSecurityExceptions are wrapped in IOE for convenience + * @return factory, throws on all errors + */ + public static SSLServerSocketFactory initializeFactory(Properties opts) throws IOException { + String ksPass = opts.getProperty(PROP_KEYSTORE_PASSWORD, DEFAULT_KEYSTORE_PASSWORD); + String keyPass = opts.getProperty(PROP_KEY_PASSWORD); + if (keyPass == null) { + throw new IOException("No key password, set " + PROP_KEY_PASSWORD + " in " + + (new File(I2PAppContext.getGlobalContext().getConfigDir(), DEFAULT_SAMCLIENT_CONFIGFILE)).getAbsolutePath()); + } + String ksname = opts.getProperty(PROP_KS_NAME); + if (ksname == null) { + throw new IOException("No keystore, set " + PROP_KS_NAME + " in " + + (new File(I2PAppContext.getGlobalContext().getConfigDir(), DEFAULT_SAMCLIENT_CONFIGFILE)).getAbsolutePath()); + } + File ks = new File(ksname); + if (!ks.isAbsolute()) { + ks = new File(I2PAppContext.getGlobalContext().getConfigDir(), KS_DIR); + ks = new File(ks, ksname); + } + + InputStream fis = null; + try { + SSLContext sslc = SSLContext.getInstance("TLS"); + KeyStore keyStore = KeyStore.getInstance(KeyStore.getDefaultType()); + fis = new FileInputStream(ks); + keyStore.load(fis, ksPass.toCharArray()); + KeyManagerFactory kmf = KeyManagerFactory.getInstance(KeyManagerFactory.getDefaultAlgorithm()); + kmf.init(keyStore, keyPass.toCharArray()); + sslc.init(kmf.getKeyManagers(), null, I2PAppContext.getGlobalContext().random()); + return sslc.getServerSocketFactory(); + } catch (GeneralSecurityException gse) { + IOException ioe = new IOException("keystore error"); + ioe.initCause(gse); + throw ioe; + } finally { + if (fis != null) try { fis.close(); } catch (IOException ioe) {} + } + } + + private static void error(String s) { + I2PAppContext.getGlobalContext().logManager().getLog(SSLUtil.class).error(s); + } + + private static void logAlways(String s) { + I2PAppContext.getGlobalContext().logManager().getLog(SSLUtil.class).logAlways(Log.INFO, s); + } +} diff --git a/apps/streaming/java/src/net/i2p/client/streaming/impl/ConnectionHandler.java b/apps/streaming/java/src/net/i2p/client/streaming/impl/ConnectionHandler.java index b92648d0b86a6dbddd0e34db0e1de2432dcc852e..7bffd2435de6765cb4b62acf6b467b027774bdb5 100644 --- a/apps/streaming/java/src/net/i2p/client/streaming/impl/ConnectionHandler.java +++ b/apps/streaming/java/src/net/i2p/client/streaming/impl/ConnectionHandler.java @@ -296,7 +296,14 @@ class ConnectionHandler { public PoisonPacket() { super(null); - setOptionalDelay(POISON_MAX_DELAY_REQUEST); + } + + @Override + public int getOptionalDelay() { return POISON_MAX_DELAY_REQUEST; } + + @Override + public String toString() { + return "POISON"; } } } diff --git a/apps/streaming/java/src/net/i2p/client/streaming/impl/I2PSocketManagerFull.java b/apps/streaming/java/src/net/i2p/client/streaming/impl/I2PSocketManagerFull.java index 280c1549d9a1709ceeb7c9fa4c0f93d715b89357..7473bb79c646bc9a21a9edbbd297d58c6627393c 100644 --- a/apps/streaming/java/src/net/i2p/client/streaming/impl/I2PSocketManagerFull.java +++ b/apps/streaming/java/src/net/i2p/client/streaming/impl/I2PSocketManagerFull.java @@ -9,6 +9,7 @@ import java.net.NoRouteToHostException; import java.net.ServerSocket; import java.net.Socket; import java.net.SocketTimeoutException; +import java.security.GeneralSecurityException; import java.util.HashSet; import java.util.List; import java.util.Map; @@ -27,6 +28,7 @@ import net.i2p.client.streaming.I2PServerSocket; import net.i2p.client.streaming.I2PSocket; import net.i2p.client.streaming.I2PSocketManager; import net.i2p.client.streaming.I2PSocketOptions; +import net.i2p.crypto.SigAlgo; import net.i2p.crypto.SigType; import net.i2p.data.Certificate; import net.i2p.data.Destination; @@ -62,9 +64,12 @@ public class I2PSocketManagerFull implements I2PSocketManager { private final ConnectionManager _connectionManager; private final AtomicBoolean _isDestroyed = new AtomicBoolean(); - /** @since 0.9.21 */ - private static final Set<Hash> _dsaOnly = new HashSet<Hash>(16); - private static final String[] DSA_ONLY_HASHES = { + /** + * Does not support EC + * @since 0.9.21 + */ + private static final Set<Hash> _ecUnsupported = new HashSet<Hash>(16); + private static final String[] EC_UNSUPPORTED_HASHES = { // list from http://zzz.i2p/topics/1682?page=1#p8414 // bzr.welterde.i2p "Cvs1gCZTTkgD2Z2byh2J9atPmh5~I8~L7BNQnQl0hUE=", @@ -86,7 +91,7 @@ public class I2PSocketManagerFull implements I2PSocketManager { "VXwmNIwMy1BcUVmut0oZ72jbWoqFzvxJukmS-G8kAAE=", // paste.i2p2.i2p "DoyMyUUgOSTddvRpqYfKHFPPjkkX~iQmResyfjjBYWs=", - // syndie.wetlerde.i2p + // syndie.welterde.i2p "xMxC54BFgyp-~zzrQI3F8m2CK--9XMcNmSAep6RH4Kk=", // ugha.i2p "zsu3WF~QLBxZXH-gHq9MuZE6y8ROZmMF7dA2MbMMKkY=", @@ -95,13 +100,54 @@ public class I2PSocketManagerFull implements I2PSocketManager { // www.i2p2.i2p "im9gytzKT15mT1sB5LC9bHXCcwytQ4EPcrGQhoam-4w=" }; + + /** + * Does not support Ed + * @since 0.9.23 + */ + private static final Set<Hash> _edUnsupported = new HashSet<Hash>(16); + private static final String[] ED_UNSUPPORTED_HASHES = { + // list from http://zzz.i2p/topics/1682?page=1#p8414 + // minus those tested to support Ed + // last tested 2015-11-04 + // bzr.welterde.i2p + "Cvs1gCZTTkgD2Z2byh2J9atPmh5~I8~L7BNQnQl0hUE=", + // docs.i2p2.i2p + "WCXV87RdrF6j-mnn6qt7kVSBifHTlPL0PmVMFWwaolo=", + // i2jump.i2p + "9vaoGZbOaeqdRK2qEunlwRM9mUSW-I9R4OON35TDKK4=", + // irc.welterde.i2p + "5rjezx4McFk3bNhoJV-NTLlQW1AR~jiUcN6DOWMCCVc=", + // lists.i2p2.i2p + "qwtgoFoMSK0TOtbT4ovBX1jHUzCoZCPzrJVxjKD7RCg=", + // mtn.i2p2.i2p + "X5VDzYaoX9-P6bAWnrVSR5seGLkOeORP2l3Mh4drXPo=", + // nntp.welterde.i2p + "VXwmNIwMy1BcUVmut0oZ72jbWoqFzvxJukmS-G8kAAE=", + // paste.i2p2.i2p + "DoyMyUUgOSTddvRpqYfKHFPPjkkX~iQmResyfjjBYWs=", + // syndie.welterde.i2p + "xMxC54BFgyp-~zzrQI3F8m2CK--9XMcNmSAep6RH4Kk=", + // tracker.welterde.i2p + "EVkFgKkrDKyGfI7TIuDmlHoAmvHC~FbnY946DfujR0A=", + // www.i2p2.i2p + "im9gytzKT15mT1sB5LC9bHXCcwytQ4EPcrGQhoam-4w=" + }; static { - for (int i = 0; i < DSA_ONLY_HASHES.length; i++) { - String s = DSA_ONLY_HASHES[i]; + for (int i = 0; i < EC_UNSUPPORTED_HASHES.length; i++) { + String s = EC_UNSUPPORTED_HASHES[i]; Hash h = ConvertToHash.getHash(s); if (h != null) - _dsaOnly.add(h); + _ecUnsupported.add(h); + else + System.out.println("Bad hash " + s); + } + for (int i = 0; i < ED_UNSUPPORTED_HASHES.length; i++) { + String s = ED_UNSUPPORTED_HASHES[i]; + Hash h = ConvertToHash.getHash(s); + if (h != null) + _edUnsupported.add(h); else System.out.println("Bad hash " + s); } @@ -214,7 +260,13 @@ public class I2PSocketManagerFull implements I2PSocketManager { Certificate.NULL_CERT.writeBytes(keyStream); priv.writeBytes(keyStream); keys[1].writeBytes(keyStream); // signing priv - } catch (Exception e) { + } catch (GeneralSecurityException e) { + throw new I2PSessionException("Error creating keys", e); + } catch (I2PException e) { + throw new I2PSessionException("Error creating keys", e); + } catch (IOException e) { + throw new I2PSessionException("Error creating keys", e); + } catch (RuntimeException e) { throw new I2PSessionException("Error creating keys", e); } privateKeyStream = new ByteArrayInputStream(keyStream.toByteArray()); @@ -486,7 +538,10 @@ public class I2PSocketManagerFull implements I2PSocketManager { if (!_subsessions.isEmpty()) { updateUserDsaList(); Hash h = peer.calculateHash(); - if (_dsaOnly.contains(h) || (!_userDsaOnly.isEmpty() && _userDsaOnly.contains(h))) { + SigAlgo myAlgo = session.getMyDestination().getSigType().getBaseAlgorithm(); + if ((myAlgo == SigAlgo.EC && _ecUnsupported.contains(h)) || + (myAlgo == SigAlgo.EdDSA && _edUnsupported.contains(h)) || + (!_userDsaOnly.isEmpty() && _userDsaOnly.contains(h))) { // FIXME just taking the first one for now for (I2PSession sess : _subsessions) { if (sess.getMyDestination().getSigType() == SigType.DSA_SHA1) { @@ -512,7 +567,7 @@ public class I2PSocketManagerFull implements I2PSocketManager { /** * Update the global user DSA-only list. - * This does not affect the hardcoded DSA_ONLY_HASHES list above, + * This does not affect the hardcoded Ex_UNSUPPORTED_HASHES lists above, * the user can only add, not remove. * * @since 0.9.21 diff --git a/apps/streaming/java/src/net/i2p/client/streaming/impl/Packet.java b/apps/streaming/java/src/net/i2p/client/streaming/impl/Packet.java index a872b2d77d0d7ccd534bcb2d218210cde985db07..a887dc3d2ba54496d91459733c3faf9a893ee816 100644 --- a/apps/streaming/java/src/net/i2p/client/streaming/impl/Packet.java +++ b/apps/streaming/java/src/net/i2p/client/streaming/impl/Packet.java @@ -585,7 +585,7 @@ class Packet { cur += 4; setAckThrough(DataHelper.fromLong(buffer, cur, 4)); cur += 4; - int numNacks = (int)DataHelper.fromLong(buffer, cur, 1); + int numNacks = buffer[cur] & 0xff; cur++; if (length < 22 + numNacks*4) throw new IllegalArgumentException("Too small with " + numNacks + " nacks: " + length); @@ -599,7 +599,7 @@ class Packet { } else { setNacks(null); } - setResendDelay((int)DataHelper.fromLong(buffer, cur, 1)); + setResendDelay(buffer[cur] & 0xff); cur++; setFlags((int)DataHelper.fromLong(buffer, cur, 2)); cur += 2; diff --git a/apps/susidns/locale/messages_el.po b/apps/susidns/locale/messages_el.po index 36bdd11abd19bfacfec99c4efacd3699c7e6ab59..954ccef26eb6de5508805170e8a1400f7a1d6e3e 100644 --- a/apps/susidns/locale/messages_el.po +++ b/apps/susidns/locale/messages_el.po @@ -4,15 +4,16 @@ # To contribute translations, see http://www.i2p2.de/newdevelopers # # Translators: +# LaScapigliata <ditri2000@hotmail.com>, 2015 # lixtetrax <lixtetrax@grhack.net>, 2012 msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-05-14 08:33+0000\n" -"PO-Revision-Date: 2015-05-14 08:34+0000\n" -"Last-Translator: kytv <killyourtv@i2pmail.org>\n" -"Language-Team: Greek (http://www.transifex.com/projects/p/I2P/language/el/)\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-05 23:26+0000\n" +"Last-Translator: LaScapigliata <ditri2000@hotmail.com>\n" +"Language-Team: Greek (http://www.transifex.com/otf/I2P/language/el/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -51,7 +52,7 @@ msgstr "" #: ../src/java/src/i2p/susi/dns/AddressBean.java:219 msgid "None" -msgstr "" +msgstr "ΚανÎνα" #: ../src/java/src/i2p/susi/dns/AddressBean.java:227 msgid "Hashcash" @@ -59,7 +60,7 @@ msgstr "" #: ../src/java/src/i2p/susi/dns/AddressBean.java:229 msgid "Hidden" -msgstr "" +msgstr "ΚÏυφό" #: ../src/java/src/i2p/susi/dns/AddressBean.java:231 msgid "Signed" @@ -67,7 +68,7 @@ msgstr "" #: ../src/java/src/i2p/susi/dns/AddressBean.java:233 msgid "Key" -msgstr "" +msgstr "Κλειδί" #: ../src/java/src/i2p/susi/dns/AddressBean.java:235 #: ../src/java/src/i2p/susi/dns/AddressBean.java:260 @@ -116,7 +117,7 @@ msgstr "Εμφάνιση {0} από {1}" #: ../src/java/src/i2p/susi/dns/AddressbookBean.java:244 #: ../src/java/src/i2p/susi/dns/NamingServiceBean.java:232 -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:425 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:432 msgid "Add" msgstr "Î Ïόσθεση" @@ -124,7 +125,7 @@ msgstr "Î Ïόσθεση" #: ../src/java/src/i2p/susi/dns/AddressbookBean.java:255 #: ../src/java/src/i2p/susi/dns/NamingServiceBean.java:232 #: ../src/java/src/i2p/susi/dns/NamingServiceBean.java:244 -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:423 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:430 msgid "Replace" msgstr "Αντικατάσταση" @@ -186,7 +187,7 @@ msgstr "" #: ../src/java/src/i2p/susi/dns/AddressbookBean.java:291 #: ../src/java/src/i2p/susi/dns/NamingServiceBean.java:283 -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:351 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:354 msgid "Delete Selected" msgstr "ΔιαγÏαφή ΕπιλεγμÎνων" @@ -214,7 +215,7 @@ msgstr "" #: ../src/java/src/i2p/susi/dns/AddressbookBean.java:318 #: ../src/java/src/i2p/susi/dns/NamingServiceBean.java:312 msgid "Address book saved." -msgstr "" +msgstr "Το βιβλίο διευθÏνσεων αποθηκεÏτηκε." #: ../src/java/src/i2p/susi/dns/AddressbookBean.java:321 msgid "ERROR: Could not write addressbook file." @@ -223,7 +224,7 @@ msgstr "ΣΦΑΛΜΑ: Δεν μπόÏεσε να εγγÏαφεί το αÏχε #: ../src/java/src/i2p/susi/dns/AddressbookBean.java:326 #: ../src/java/src/i2p/susi/dns/ConfigBean.java:108 #: ../src/java/src/i2p/susi/dns/NamingServiceBean.java:316 -#: ../src/java/src/i2p/susi/dns/SubscriptionsBean.java:153 +#: ../src/java/src/i2p/susi/dns/SubscriptionsBean.java:157 msgid "" "Invalid form submission, probably because you used the \"back\" or " "\"reload\" button on your browser. Please resubmit." @@ -232,14 +233,14 @@ msgstr "ΆκυÏη αποστολή φόÏμας, πιθανότατα γιατ #: ../src/java/src/i2p/susi/dns/AddressbookBean.java:328 #: ../src/java/src/i2p/susi/dns/ConfigBean.java:110 #: ../src/java/src/i2p/susi/dns/NamingServiceBean.java:318 -#: ../src/java/src/i2p/susi/dns/SubscriptionsBean.java:155 +#: ../src/java/src/i2p/susi/dns/SubscriptionsBean.java:159 msgid "" "If the problem persists, verify that you have cookies enabled in your " "browser." msgstr "" #: ../src/java/src/i2p/susi/dns/ConfigBean.java:99 -#: ../src/java/src/i2p/susi/dns/SubscriptionsBean.java:128 +#: ../src/java/src/i2p/susi/dns/SubscriptionsBean.java:131 #: ../src/tmp/i2p/susi/dns/jsp/config_jsp.java:160 #: ../src/tmp/i2p/susi/dns/jsp/subscriptions_jsp.java:151 msgid "Save" @@ -250,7 +251,7 @@ msgid "Configuration saved." msgstr "ΠαÏάμετÏοι αποθηκεÏθηκαν." #: ../src/java/src/i2p/susi/dns/ConfigBean.java:102 -#: ../src/java/src/i2p/susi/dns/SubscriptionsBean.java:147 +#: ../src/java/src/i2p/susi/dns/SubscriptionsBean.java:151 #: ../src/tmp/i2p/susi/dns/jsp/config_jsp.java:158 #: ../src/tmp/i2p/susi/dns/jsp/subscriptions_jsp.java:149 msgid "Reload" @@ -279,22 +280,22 @@ msgstr "" msgid "Failed to delete Destination for {0} from naming service {1}" msgstr "" -#: ../src/java/src/i2p/susi/dns/SubscriptionsBean.java:140 +#: ../src/java/src/i2p/susi/dns/SubscriptionsBean.java:144 msgid "" "Subscriptions saved, updating addressbook from subscription sources now." msgstr "ΣυνδÏομÎÏ‚ αποθηκεÏθηκαν, ανανÎωση βιβλίου διευθÏνσεων από πηγÎÏ‚ συνδÏομών τώÏα." -#: ../src/java/src/i2p/susi/dns/SubscriptionsBean.java:145 +#: ../src/java/src/i2p/susi/dns/SubscriptionsBean.java:149 msgid "Subscriptions saved." msgstr "ΣυνδÏομÎÏ‚ αποθηκεÏθηκαν." -#: ../src/java/src/i2p/susi/dns/SubscriptionsBean.java:149 +#: ../src/java/src/i2p/susi/dns/SubscriptionsBean.java:153 msgid "Subscriptions reloaded." msgstr "ΣυνδÏομÎÏ‚ επαναφοÏτώθηκαν." #: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:127 msgid "address book" -msgstr "" +msgstr "βιβλίο διευθÏνσεων" #: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:133 #: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:149 @@ -306,7 +307,7 @@ msgstr "" #: ../src/tmp/i2p/susi/dns/jsp/subscriptions_jsp.java:123 #: ../src/tmp/i2p/susi/dns/jsp/subscriptions_jsp.java:139 msgid "Overview" -msgstr "" +msgstr "Επισκόπηση" #: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:135 #: ../src/tmp/i2p/susi/dns/jsp/config_jsp.java:134 @@ -314,7 +315,7 @@ msgstr "" #: ../src/tmp/i2p/susi/dns/jsp/index_jsp.java:121 #: ../src/tmp/i2p/susi/dns/jsp/subscriptions_jsp.java:125 msgid "Address books" -msgstr "" +msgstr "Βιβλία διευθÏνσεων" #: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:137 #: ../src/tmp/i2p/susi/dns/jsp/config_jsp.java:136 @@ -367,7 +368,7 @@ msgstr "" #: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:151 #: ../src/tmp/i2p/susi/dns/jsp/details_jsp.java:136 msgid "Address book" -msgstr "" +msgstr "Βιβλίο ΔιευθÏνσεων" #: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:156 #: ../src/tmp/i2p/susi/dns/jsp/details_jsp.java:141 @@ -380,7 +381,7 @@ msgstr "ΦίλτÏο" #: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:177 msgid "other" -msgstr "" +msgstr "άλλο" #: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:179 msgid "all" @@ -388,7 +389,7 @@ msgstr "όλα" #: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:193 msgid "Current filter" -msgstr "ΠαÏών φίλτÏο" +msgstr "ΠαÏόν φίλτÏο" #: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:198 msgid "clear filter" @@ -399,54 +400,54 @@ msgstr "εκκαθάÏιση φίλτÏου" msgid "Search" msgstr "Αναζήτηση" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:248 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:249 msgid "Name" msgstr "Όνομα" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:250 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:251 msgid "Links" -msgstr "" +msgstr "ΣÏνδεσμοι" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:252 -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:417 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:253 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:424 #: ../src/tmp/i2p/susi/dns/jsp/details_jsp.java:262 msgid "Destination" msgstr "Î ÏοοÏισμός" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:288 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:289 msgid "Mark for deletion" msgstr "Επιλογή Ï€Ïος διαγÏαφή" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:307 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:308 msgid "Base 32 address" msgstr "" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:311 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:312 msgid "More information on this entry" msgstr "" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:314 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:315 msgid "details" -msgstr "" +msgstr "λεπτομÎÏειες" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:349 -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:421 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:352 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:428 msgid "Cancel" msgstr "ΑκÏÏωση" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:373 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:379 msgid "Export in hosts.txt format" msgstr "" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:396 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:403 msgid "This address book is empty." -msgstr "" +msgstr "Το βιβλίο διευθÏνσεων είναι κενό." -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:411 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:418 msgid "Add new destination" msgstr "Î Ïοσθήκη νÎου Ï€ÏοοÏισμοÏ" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:413 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:420 #: ../src/tmp/i2p/susi/dns/jsp/details_jsp.java:168 msgid "Host Name" msgstr "" @@ -574,7 +575,7 @@ msgstr "" #: ../src/tmp/i2p/susi/dns/jsp/details_jsp.java:216 msgid "link" -msgstr "" +msgstr "σÏνδεσμος " #: ../src/tmp/i2p/susi/dns/jsp/details_jsp.java:220 msgid "Public Key" @@ -598,7 +599,7 @@ msgstr "" #: ../src/tmp/i2p/susi/dns/jsp/details_jsp.java:244 msgid "Source" -msgstr "" +msgstr "Πηγή" #: ../src/tmp/i2p/susi/dns/jsp/details_jsp.java:250 msgid "Last Modified" @@ -606,15 +607,15 @@ msgstr "" #: ../src/tmp/i2p/susi/dns/jsp/details_jsp.java:256 msgid "Notes" -msgstr "" +msgstr "Σημειώσεις" #: ../src/tmp/i2p/susi/dns/jsp/index_jsp.java:115 msgid "Introduction" -msgstr "" +msgstr "Εισαγωγή" #: ../src/tmp/i2p/susi/dns/jsp/index_jsp.java:137 msgid "What is the addressbook?" -msgstr "" +msgstr "Τι είναι το βιβλίο διευθÏνσεων;" #: ../src/tmp/i2p/susi/dns/jsp/index_jsp.java:139 msgid "The addressbook application is part of your I2P installation." diff --git a/apps/susidns/locale/messages_en.po b/apps/susidns/locale/messages_en.po index f2c41273ea85fb59cd3b673b8c2636829d6209f5..06c5cfc244f2eb19c0a137c3823f247b1855ed62 100644 --- a/apps/susidns/locale/messages_en.po +++ b/apps/susidns/locale/messages_en.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: I2P susidns\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:33+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" "PO-Revision-Date: 2010-06-15 14:09+0100\n" "Last-Translator: duck <duck@mail.i2p>\n" "Language-Team: duck <duck@mail.i2p>\n" @@ -115,7 +115,7 @@ msgstr "" #: ../src/java/src/i2p/susi/dns/AddressbookBean.java:244 #: ../src/java/src/i2p/susi/dns/NamingServiceBean.java:232 -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:425 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:432 msgid "Add" msgstr "" @@ -123,7 +123,7 @@ msgstr "" #: ../src/java/src/i2p/susi/dns/AddressbookBean.java:255 #: ../src/java/src/i2p/susi/dns/NamingServiceBean.java:232 #: ../src/java/src/i2p/susi/dns/NamingServiceBean.java:244 -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:423 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:430 msgid "Replace" msgstr "" @@ -185,7 +185,7 @@ msgstr "" #: ../src/java/src/i2p/susi/dns/AddressbookBean.java:291 #: ../src/java/src/i2p/susi/dns/NamingServiceBean.java:283 -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:351 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:354 msgid "Delete Selected" msgstr "" @@ -398,54 +398,54 @@ msgstr "" msgid "Search" msgstr "" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:248 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:249 msgid "Name" msgstr "" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:250 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:251 msgid "Links" msgstr "" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:252 -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:417 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:253 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:424 #: ../src/tmp/i2p/susi/dns/jsp/details_jsp.java:262 msgid "Destination" msgstr "" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:288 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:289 msgid "Mark for deletion" msgstr "" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:307 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:308 msgid "Base 32 address" msgstr "" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:311 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:312 msgid "More information on this entry" msgstr "" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:314 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:315 msgid "details" msgstr "" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:349 -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:421 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:352 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:428 msgid "Cancel" msgstr "" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:373 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:379 msgid "Export in hosts.txt format" msgstr "" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:396 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:403 msgid "This address book is empty." msgstr "" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:411 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:418 msgid "Add new destination" msgstr "" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:413 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:420 #: ../src/tmp/i2p/susi/dns/jsp/details_jsp.java:168 msgid "Host Name" msgstr "" diff --git a/apps/susidns/locale/messages_pt.po b/apps/susidns/locale/messages_pt.po index 25e64bd5e513a320743e7be0fb7b4645361d6974..9263bd59c84c4ff56d5652454a0e015650642862 100644 --- a/apps/susidns/locale/messages_pt.po +++ b/apps/susidns/locale/messages_pt.po @@ -12,10 +12,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-07-17 01:13+0000\n" -"PO-Revision-Date: 2015-06-08 21:12+0000\n" +"POT-Creation-Date: 2015-11-05 17:12+0000\n" +"PO-Revision-Date: 2015-11-09 03:40+0000\n" "Last-Translator: wtfisthis <low_fps11@yahoo.com>\n" -"Language-Team: Portuguese (http://www.transifex.com/projects/p/I2P/language/pt/)\n" +"Language-Team: Portuguese (http://www.transifex.com/otf/I2P/language/pt/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -119,7 +119,7 @@ msgstr "Mostrando {0} de {1}" #: ../src/java/src/i2p/susi/dns/AddressbookBean.java:244 #: ../src/java/src/i2p/susi/dns/NamingServiceBean.java:232 -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:425 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:432 msgid "Add" msgstr "Adicionar" @@ -127,7 +127,7 @@ msgstr "Adicionar" #: ../src/java/src/i2p/susi/dns/AddressbookBean.java:255 #: ../src/java/src/i2p/susi/dns/NamingServiceBean.java:232 #: ../src/java/src/i2p/susi/dns/NamingServiceBean.java:244 -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:423 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:430 msgid "Replace" msgstr "Substituir" @@ -189,7 +189,7 @@ msgstr "Apagar entrada" #: ../src/java/src/i2p/susi/dns/AddressbookBean.java:291 #: ../src/java/src/i2p/susi/dns/NamingServiceBean.java:283 -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:351 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:354 msgid "Delete Selected" msgstr "Apagar Selecionados" @@ -402,54 +402,54 @@ msgstr "limpar filtro" msgid "Search" msgstr "Procurar" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:248 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:249 msgid "Name" msgstr "Nome" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:250 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:251 msgid "Links" msgstr "Links" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:252 -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:417 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:253 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:424 #: ../src/tmp/i2p/susi/dns/jsp/details_jsp.java:262 msgid "Destination" msgstr "Destino" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:288 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:289 msgid "Mark for deletion" msgstr "Marcar para excluir" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:307 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:308 msgid "Base 32 address" msgstr "Endereço Base 32" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:311 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:312 msgid "More information on this entry" msgstr "Mais informações para esta entrada" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:314 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:315 msgid "details" msgstr "detalhes" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:349 -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:421 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:352 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:428 msgid "Cancel" msgstr "Cancelar" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:373 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:379 msgid "Export in hosts.txt format" msgstr "Exportar em formato host.txt" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:396 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:403 msgid "This address book is empty." msgstr "Este livro de endereços está vazio." -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:411 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:418 msgid "Add new destination" msgstr "Adicionar destino" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:413 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:420 #: ../src/tmp/i2p/susi/dns/jsp/details_jsp.java:168 msgid "Host Name" msgstr "Nome do servidor" diff --git a/apps/susidns/src/java/src/i2p/susi/dns/AddressbookBean.java b/apps/susidns/src/java/src/i2p/susi/dns/AddressbookBean.java index 360310682a9f4845c4107bafee031127f4c6a931..205fcc8a75cd519d38a25f9403ade1ca9f450a6f 100644 --- a/apps/susidns/src/java/src/i2p/susi/dns/AddressbookBean.java +++ b/apps/susidns/src/java/src/i2p/susi/dns/AddressbookBean.java @@ -164,7 +164,7 @@ public class AddressbookBean extends BaseBean message = generateLoadMessage(); } - catch (Exception e) { + catch (IOException e) { warn(e); } finally { if (fis != null) @@ -316,7 +316,7 @@ public class AddressbookBean extends BaseBean try { save(); message += "<br>" + _t("Address book saved."); - } catch (Exception e) { + } catch (IOException e) { warn(e); message += "<br>" + _t("ERROR: Could not write addressbook file."); } diff --git a/apps/susidns/src/java/src/i2p/susi/dns/FormatDate.java b/apps/susidns/src/java/src/i2p/susi/dns/FormatDate.java index ad576dfb04fdc3360d221c89d3ee81ba32f8666e..cc582d3c98bc78159cbd9e121c784563560317f3 100644 --- a/apps/susidns/src/java/src/i2p/susi/dns/FormatDate.java +++ b/apps/susidns/src/java/src/i2p/susi/dns/FormatDate.java @@ -2,9 +2,8 @@ package i2p.susi.dns; import java.util.Date; import java.text.DateFormat; -import java.util.TimeZone; -import net.i2p.I2PAppContext; +import net.i2p.util.SystemVersion; /** * Format a date in local time zone @@ -17,9 +16,7 @@ public abstract class FormatDate static { DateFormat fmt = DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM); // the router sets the JVM time zone to UTC but saves the original here so we can get it - String systemTimeZone = I2PAppContext.getGlobalContext().getProperty("i2p.systemTimeZone"); - if (systemTimeZone != null) - fmt.setTimeZone(TimeZone.getTimeZone(systemTimeZone)); + fmt.setTimeZone(SystemVersion.getSystemTimeZone()); _dateFormat = fmt; } diff --git a/apps/susidns/src/java/src/i2p/susi/dns/NamingServiceBean.java b/apps/susidns/src/java/src/i2p/susi/dns/NamingServiceBean.java index 14eaebbd732779766e6fc08aa68573c907b34685..0fd3262019eebd93979fb5c0f24e0497553027b1 100644 --- a/apps/susidns/src/java/src/i2p/susi/dns/NamingServiceBean.java +++ b/apps/susidns/src/java/src/i2p/susi/dns/NamingServiceBean.java @@ -205,7 +205,7 @@ public class NamingServiceBean extends AddressbookBean message = generateLoadMessage(); } - catch (Exception e) { + catch (RuntimeException e) { warn(e); } if( message.length() > 0 ) diff --git a/apps/susimail/locale/messages_fi.po b/apps/susimail/locale/messages_fi.po index 9ce897ac0787f649abc23c4322572c688e6a9ea3..b727e3d54f00708ddd1dd88f0a16b0e2b20917a7 100644 --- a/apps/susimail/locale/messages_fi.po +++ b/apps/susimail/locale/messages_fi.po @@ -10,10 +10,10 @@ msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-02-06 18:28+0000\n" -"PO-Revision-Date: 2015-02-08 18:41+0000\n" +"POT-Creation-Date: 2015-03-29 14:30+0000\n" +"PO-Revision-Date: 2015-11-07 16:10+0000\n" "Last-Translator: oselotti\n" -"Language-Team: Finnish (http://www.transifex.com/projects/p/I2P/language/fi/)\n" +"Language-Team: Finnish (http://www.transifex.com/otf/I2P/language/fi/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -25,170 +25,170 @@ msgstr "" msgid "No encoder found for encoding \\''{0}\\''." msgstr "Koodausohjelman löytäminen kohteen â€{0}†koodausta varten epäonnistui." -#: src/src/i2p/susi/webmail/WebMail.java:324 -#: src/src/i2p/susi/webmail/WebMail.java:338 -#: src/src/i2p/susi/webmail/WebMail.java:990 +#: src/src/i2p/susi/webmail/WebMail.java:325 +#: src/src/i2p/susi/webmail/WebMail.java:339 +#: src/src/i2p/susi/webmail/WebMail.java:991 msgid "Re:" msgstr "Vast:" -#: src/src/i2p/susi/webmail/WebMail.java:328 -#: src/src/i2p/susi/webmail/WebMail.java:342 -#: src/src/i2p/susi/webmail/WebMail.java:1028 +#: src/src/i2p/susi/webmail/WebMail.java:329 +#: src/src/i2p/susi/webmail/WebMail.java:343 +#: src/src/i2p/susi/webmail/WebMail.java:1029 msgid "Fwd:" msgstr "Edelleenläh:" -#: src/src/i2p/susi/webmail/WebMail.java:579 +#: src/src/i2p/susi/webmail/WebMail.java:580 msgid "unknown" msgstr "tuntematon" -#: src/src/i2p/susi/webmail/WebMail.java:600 +#: src/src/i2p/susi/webmail/WebMail.java:601 msgid "Warning: no charset found, fallback to US-ASCII." msgstr "Varoitus: merkistöä ei löytynyt, palataan takaisin US-ACII-merkistöön." -#: src/src/i2p/susi/webmail/WebMail.java:614 +#: src/src/i2p/susi/webmail/WebMail.java:615 #, java-format msgid "Charset \\''{0}\\'' not supported." msgstr "Merkistöä â€{0}†ei tueta." -#: src/src/i2p/susi/webmail/WebMail.java:618 +#: src/src/i2p/susi/webmail/WebMail.java:619 #, java-format msgid "Part ({0}) not shown, because of {1}" msgstr "Osaa ({0}) ei näytetä, syy: {1}" -#: src/src/i2p/susi/webmail/WebMail.java:654 -#: src/src/i2p/susi/webmail/WebMail.java:657 +#: src/src/i2p/susi/webmail/WebMail.java:655 +#: src/src/i2p/susi/webmail/WebMail.java:658 #, java-format msgid "Download attachment {0}" msgstr "Lataa liite {0}" -#: src/src/i2p/susi/webmail/WebMail.java:658 +#: src/src/i2p/susi/webmail/WebMail.java:659 msgid "File is packed into a zipfile for security reasons." msgstr "Tiedosto on pakattu zip-tiedostoksi turvallisuussyistä." -#: src/src/i2p/susi/webmail/WebMail.java:663 +#: src/src/i2p/susi/webmail/WebMail.java:664 #, java-format msgid "Attachment ({0})." msgstr "Liite ({0})." -#: src/src/i2p/susi/webmail/WebMail.java:714 +#: src/src/i2p/susi/webmail/WebMail.java:715 msgid "Need username for authentication." msgstr "Käyttäjänimivaltuutustarve." -#: src/src/i2p/susi/webmail/WebMail.java:718 +#: src/src/i2p/susi/webmail/WebMail.java:719 msgid "Need password for authentication." msgstr "Salasanavaltuutustarve." -#: src/src/i2p/susi/webmail/WebMail.java:722 +#: src/src/i2p/susi/webmail/WebMail.java:723 msgid "Need hostname for connect." msgstr "Yhteydelle verkkotietokonenimitarve." -#: src/src/i2p/susi/webmail/WebMail.java:727 +#: src/src/i2p/susi/webmail/WebMail.java:728 msgid "Need port number for pop3 connect." msgstr "Pop3-yhteyden porttinumerotarve." -#: src/src/i2p/susi/webmail/WebMail.java:734 +#: src/src/i2p/susi/webmail/WebMail.java:735 msgid "POP3 port number is not in range 0..65535." msgstr "POP3 portin numero ei ole alueella 0..65535." -#: src/src/i2p/susi/webmail/WebMail.java:740 +#: src/src/i2p/susi/webmail/WebMail.java:741 msgid "POP3 port number is invalid." msgstr "POP3 portin numero on virheellinen." -#: src/src/i2p/susi/webmail/WebMail.java:746 +#: src/src/i2p/susi/webmail/WebMail.java:747 msgid "Need port number for smtp connect." msgstr "Smtp-yhteyden porttinumerotarve." -#: src/src/i2p/susi/webmail/WebMail.java:753 +#: src/src/i2p/susi/webmail/WebMail.java:754 msgid "SMTP port number is not in range 0..65535." msgstr "SMTP portin numero ei ole alueella 0..65535." -#: src/src/i2p/susi/webmail/WebMail.java:759 +#: src/src/i2p/susi/webmail/WebMail.java:760 msgid "SMTP port number is invalid." msgstr "SMTP portin numero on virheellinen." -#: src/src/i2p/susi/webmail/WebMail.java:833 +#: src/src/i2p/susi/webmail/WebMail.java:834 msgid "User logged out." msgstr "Käyttäjä kirjautunut ulos." -#: src/src/i2p/susi/webmail/WebMail.java:836 +#: src/src/i2p/susi/webmail/WebMail.java:837 msgid "Internal error, lost connection." msgstr "Sisäinen virhe, yhteys katkesi." -#: src/src/i2p/susi/webmail/WebMail.java:993 +#: src/src/i2p/susi/webmail/WebMail.java:994 #, java-format msgid "On {0} {1} wrote:" msgstr "Kohteessa {0} {1} kirjoitti:" -#: src/src/i2p/susi/webmail/WebMail.java:1040 +#: src/src/i2p/susi/webmail/WebMail.java:1041 msgid "begin forwarded mail" msgstr "edelleenlähetetyn sähköpostiviestin alku" -#: src/src/i2p/susi/webmail/WebMail.java:1062 +#: src/src/i2p/susi/webmail/WebMail.java:1063 msgid "end forwarded mail" msgstr "edelleenlähetetyn sähköpostiviestin loppu" -#: src/src/i2p/susi/webmail/WebMail.java:1069 -#: src/src/i2p/susi/webmail/WebMail.java:2367 +#: src/src/i2p/susi/webmail/WebMail.java:1070 +#: src/src/i2p/susi/webmail/WebMail.java:2369 msgid "Could not fetch mail body." msgstr "Sähköpostiviestin rungon noutaminen epäonnistui." -#: src/src/i2p/susi/webmail/WebMail.java:1099 +#: src/src/i2p/susi/webmail/WebMail.java:1100 msgid "Message id not valid." msgstr "Viestitunniste ei ollut kelvollinen." -#: src/src/i2p/susi/webmail/WebMail.java:1137 +#: src/src/i2p/susi/webmail/WebMail.java:1138 msgid "Configuration reloaded" msgstr "Asetukset ladattu uudelleen" -#: src/src/i2p/susi/webmail/WebMail.java:1198 +#: src/src/i2p/susi/webmail/WebMail.java:1199 #, java-format msgid "No Encoding found for {0}" msgstr "Koodauksen löytäminen kohteesta {0} epäonnistui" -#: src/src/i2p/susi/webmail/WebMail.java:1202 +#: src/src/i2p/susi/webmail/WebMail.java:1203 #, java-format msgid "Could not encode data: {0}" msgstr "Tietojen koodaus epäonnistui: {0}" -#: src/src/i2p/susi/webmail/WebMail.java:1207 +#: src/src/i2p/susi/webmail/WebMail.java:1208 #, java-format msgid "Error reading uploaded file: {0}" msgstr "Palvelimelle kopioidun tiedoston lukeminen epäonnistui: {0}" #. error if we get here -#: src/src/i2p/susi/webmail/WebMail.java:1292 -#: src/src/i2p/susi/webmail/WebMail.java:1295 +#: src/src/i2p/susi/webmail/WebMail.java:1293 +#: src/src/i2p/susi/webmail/WebMail.java:1296 msgid "Attachment not found." msgstr "Liitettä ei löytynyt." #. error if we get here -#: src/src/i2p/susi/webmail/WebMail.java:1322 -#: src/src/i2p/susi/webmail/WebMail.java:1324 +#: src/src/i2p/susi/webmail/WebMail.java:1323 +#: src/src/i2p/susi/webmail/WebMail.java:1325 msgid "Message not found." msgstr "Viestiä ei löydetty." -#: src/src/i2p/susi/webmail/WebMail.java:1369 -#: src/src/i2p/susi/webmail/WebMail.java:1497 +#: src/src/i2p/susi/webmail/WebMail.java:1370 +#: src/src/i2p/susi/webmail/WebMail.java:1498 msgid "Invalid pagesize number, resetting to default value." msgstr "Virheellinen sivukokonumero, nollataan oletusarvoon." -#: src/src/i2p/susi/webmail/WebMail.java:1393 +#: src/src/i2p/susi/webmail/WebMail.java:1394 msgid "No messages marked for deletion." msgstr "Yhtään viestiä ei ole merkitty poistettavaksi." -#: src/src/i2p/susi/webmail/WebMail.java:1409 +#: src/src/i2p/susi/webmail/WebMail.java:1410 #, java-format msgid "1 message deleted." msgid_plural "{0} messages deleted." msgstr[0] "1 viesti poistettu." msgstr[1] "{0} viestiä poistettu." -#: src/src/i2p/susi/webmail/WebMail.java:1476 +#: src/src/i2p/susi/webmail/WebMail.java:1477 msgid "Configuration saved" msgstr "Asetukset tallennettu" -#: src/src/i2p/susi/webmail/WebMail.java:1696 -#: src/src/i2p/susi/webmail/WebMail.java:2157 +#: src/src/i2p/susi/webmail/WebMail.java:1697 +#: src/src/i2p/susi/webmail/WebMail.java:2159 msgid "Login" msgstr "Kirjaudu sisään" @@ -197,154 +197,154 @@ msgstr "Kirjaudu sisään" #. "vanish" #. subtitle = ngettext("1 Message", "{0} Messages", #. sessionObject.mailbox.getNumMails()); -#: src/src/i2p/susi/webmail/WebMail.java:1701 +#: src/src/i2p/susi/webmail/WebMail.java:1702 #, java-format msgid "1 Message" msgid_plural "{0} Messages" msgstr[0] "1 viesti" msgstr[1] "{0} viestiä" -#: src/src/i2p/susi/webmail/WebMail.java:1707 +#: src/src/i2p/susi/webmail/WebMail.java:1708 msgid "Show Message" msgstr "Näytä viesti" -#: src/src/i2p/susi/webmail/WebMail.java:1709 +#: src/src/i2p/susi/webmail/WebMail.java:1710 msgid "New Message" msgstr "Uusi viesti" -#: src/src/i2p/susi/webmail/WebMail.java:1711 +#: src/src/i2p/susi/webmail/WebMail.java:1712 msgid "Configuration" msgstr "Asetukset" -#: src/src/i2p/susi/webmail/WebMail.java:1722 +#: src/src/i2p/susi/webmail/WebMail.java:1723 msgid "SusiMail" msgstr "SusiMail" -#: src/src/i2p/susi/webmail/WebMail.java:1735 +#: src/src/i2p/susi/webmail/WebMail.java:1736 msgid "Message has not been sent. Do you want to discard it?" msgstr "Viestiä ei ole lähetetty. Haluatko hylätä sen?" -#: src/src/i2p/susi/webmail/WebMail.java:1797 +#: src/src/i2p/susi/webmail/WebMail.java:1798 #, java-format msgid "Error decoding content: {0}" msgstr "Sisällön koodauksen purkamisessa virhe: {0}" -#: src/src/i2p/susi/webmail/WebMail.java:1905 +#: src/src/i2p/susi/webmail/WebMail.java:1907 msgid "no subject" msgstr "ei aihetta" -#: src/src/i2p/susi/webmail/WebMail.java:1922 +#: src/src/i2p/susi/webmail/WebMail.java:1924 msgid "Found no valid sender address." msgstr "Kelvollista lähettäjäosoitetta ei löytynyt." -#: src/src/i2p/susi/webmail/WebMail.java:1928 +#: src/src/i2p/susi/webmail/WebMail.java:1930 #, java-format msgid "Found no valid address in \\''{0}\\''." msgstr "Kelvollisen osoitteen löytäminen kohteessa â€{0}†epäonnistui." -#: src/src/i2p/susi/webmail/WebMail.java:1949 +#: src/src/i2p/susi/webmail/WebMail.java:1951 msgid "No recipients found." msgstr "Vastaanottajien löytäminen epäonnistui." -#: src/src/i2p/susi/webmail/WebMail.java:2013 +#: src/src/i2p/susi/webmail/WebMail.java:2015 msgid "Mail sent." msgstr "Viesti lähetetty." -#: src/src/i2p/susi/webmail/WebMail.java:2057 +#: src/src/i2p/susi/webmail/WebMail.java:2059 msgid "Send" msgstr "Lähetä" -#: src/src/i2p/susi/webmail/WebMail.java:2058 -#: src/src/i2p/susi/webmail/WebMail.java:2273 -#: src/src/i2p/susi/webmail/WebMail.java:2407 +#: src/src/i2p/susi/webmail/WebMail.java:2060 +#: src/src/i2p/susi/webmail/WebMail.java:2275 +#: src/src/i2p/susi/webmail/WebMail.java:2409 msgid "Cancel" msgstr "Peruuta" -#: src/src/i2p/susi/webmail/WebMail.java:2101 -#: src/src/i2p/susi/webmail/WebMail.java:2200 -#: src/src/i2p/susi/webmail/WebMail.java:2355 +#: src/src/i2p/susi/webmail/WebMail.java:2103 +#: src/src/i2p/susi/webmail/WebMail.java:2202 +#: src/src/i2p/susi/webmail/WebMail.java:2357 msgid "From" msgstr "Lähettäjä" -#: src/src/i2p/susi/webmail/WebMail.java:2102 +#: src/src/i2p/susi/webmail/WebMail.java:2104 msgid "To" msgstr "Vastaanottaja" -#: src/src/i2p/susi/webmail/WebMail.java:2103 +#: src/src/i2p/susi/webmail/WebMail.java:2105 msgid "Cc" msgstr "Kopio" -#: src/src/i2p/susi/webmail/WebMail.java:2104 +#: src/src/i2p/susi/webmail/WebMail.java:2106 msgid "Bcc" msgstr "Piilokopio" -#: src/src/i2p/susi/webmail/WebMail.java:2105 +#: src/src/i2p/susi/webmail/WebMail.java:2107 msgid "Bcc to self" msgstr "Piilokopio itselle" -#: src/src/i2p/susi/webmail/WebMail.java:2106 -#: src/src/i2p/susi/webmail/WebMail.java:2201 -#: src/src/i2p/susi/webmail/WebMail.java:2357 +#: src/src/i2p/susi/webmail/WebMail.java:2108 +#: src/src/i2p/susi/webmail/WebMail.java:2203 +#: src/src/i2p/susi/webmail/WebMail.java:2359 msgid "Subject" msgstr "Aihe" -#: src/src/i2p/susi/webmail/WebMail.java:2109 +#: src/src/i2p/susi/webmail/WebMail.java:2111 msgid "Add Attachment" msgstr "Lisää liite" #. TODO disable/hide in JS if no file selected -#: src/src/i2p/susi/webmail/WebMail.java:2111 +#: src/src/i2p/susi/webmail/WebMail.java:2113 msgid "Add another attachment" msgstr "Lisää toinen liite" -#: src/src/i2p/susi/webmail/WebMail.java:2117 +#: src/src/i2p/susi/webmail/WebMail.java:2119 msgid "Attachments" msgstr "Liitteet" -#: src/src/i2p/susi/webmail/WebMail.java:2126 +#: src/src/i2p/susi/webmail/WebMail.java:2128 msgid "Delete selected attachments" msgstr "Poista valitut liitteet" #. current postman hq length limits 16/12, new postman version 32/32 -#: src/src/i2p/susi/webmail/WebMail.java:2145 +#: src/src/i2p/susi/webmail/WebMail.java:2147 msgid "User" msgstr "Käyttäjä" -#: src/src/i2p/susi/webmail/WebMail.java:2146 +#: src/src/i2p/susi/webmail/WebMail.java:2148 msgid "Password" msgstr "Salasana" -#: src/src/i2p/susi/webmail/WebMail.java:2151 +#: src/src/i2p/susi/webmail/WebMail.java:2153 msgid "Host" msgstr "Verkkotietokone" -#: src/src/i2p/susi/webmail/WebMail.java:2152 +#: src/src/i2p/susi/webmail/WebMail.java:2154 msgid "POP3 Port" msgstr "POP3 portti" -#: src/src/i2p/susi/webmail/WebMail.java:2153 +#: src/src/i2p/susi/webmail/WebMail.java:2155 msgid "SMTP Port" msgstr "SMTP portti" -#: src/src/i2p/susi/webmail/WebMail.java:2158 +#: src/src/i2p/susi/webmail/WebMail.java:2160 msgid "Read Mail Offline" msgstr "Lue postia yhteydettömässä tilassa" -#: src/src/i2p/susi/webmail/WebMail.java:2162 -#: src/src/i2p/susi/webmail/WebMail.java:2291 +#: src/src/i2p/susi/webmail/WebMail.java:2164 +#: src/src/i2p/susi/webmail/WebMail.java:2293 msgid "Settings" msgstr "Asetukset" -#: src/src/i2p/susi/webmail/WebMail.java:2165 +#: src/src/i2p/susi/webmail/WebMail.java:2167 msgid "Learn about I2P mail" msgstr "Lisätietoja I2P-postista" -#: src/src/i2p/susi/webmail/WebMail.java:2166 +#: src/src/i2p/susi/webmail/WebMail.java:2168 msgid "Create Account" msgstr "Luo tili" -#: src/src/i2p/susi/webmail/WebMail.java:2179 -#: src/src/i2p/susi/webmail/WebMail.java:2335 +#: src/src/i2p/susi/webmail/WebMail.java:2181 +#: src/src/i2p/susi/webmail/WebMail.java:2337 msgid "New" msgstr "Uusi" @@ -354,139 +354,139 @@ msgstr "Uusi" #. button( REPLYALL, _t("Reply All") ) + #. button( FORWARD, _t("Forward") ) + spacer + #. button( DELETE, _t("Delete") ) + spacer + -#: src/src/i2p/susi/webmail/WebMail.java:2186 +#: src/src/i2p/susi/webmail/WebMail.java:2188 msgid "Check Mail" msgstr "Tarkista posti" #. if (Config.hasConfigFile()) #. out.println(button( RELOAD, _t("Reload Config") ) + spacer); -#: src/src/i2p/susi/webmail/WebMail.java:2189 +#: src/src/i2p/susi/webmail/WebMail.java:2191 msgid "Logout" msgstr "Kirjaudu ulos" -#: src/src/i2p/susi/webmail/WebMail.java:2202 -#: src/src/i2p/susi/webmail/WebMail.java:2359 +#: src/src/i2p/susi/webmail/WebMail.java:2204 +#: src/src/i2p/susi/webmail/WebMail.java:2361 msgid "Date" msgstr "Päiväys" -#: src/src/i2p/susi/webmail/WebMail.java:2205 +#: src/src/i2p/susi/webmail/WebMail.java:2207 msgid "Size" msgstr "Koko" -#: src/src/i2p/susi/webmail/WebMail.java:2246 +#: src/src/i2p/susi/webmail/WebMail.java:2248 msgid "Message is new" msgstr "Viesti on uusi" -#: src/src/i2p/susi/webmail/WebMail.java:2249 +#: src/src/i2p/susi/webmail/WebMail.java:2251 msgid "Message has an attachment" msgstr "Viestissä on liite" -#: src/src/i2p/susi/webmail/WebMail.java:2251 +#: src/src/i2p/susi/webmail/WebMail.java:2253 msgid "Message is spam" msgstr "Viesti on roskapostia" -#: src/src/i2p/susi/webmail/WebMail.java:2259 +#: src/src/i2p/susi/webmail/WebMail.java:2261 msgid "No messages" msgstr "Ei viestejä" #. TODO ngettext -#: src/src/i2p/susi/webmail/WebMail.java:2271 +#: src/src/i2p/susi/webmail/WebMail.java:2273 msgid "Really delete the marked messages?" msgstr "Poistetaanko merkityt viestit oikeasti?" -#: src/src/i2p/susi/webmail/WebMail.java:2272 +#: src/src/i2p/susi/webmail/WebMail.java:2274 msgid "Yes, really delete them!" msgstr "Kyllä, poista ne oikeasti!" -#: src/src/i2p/susi/webmail/WebMail.java:2275 +#: src/src/i2p/susi/webmail/WebMail.java:2277 msgid "Delete Selected" msgstr "Poista valitut" -#: src/src/i2p/susi/webmail/WebMail.java:2277 +#: src/src/i2p/susi/webmail/WebMail.java:2279 msgid "Mark All" msgstr "Merkitse kaikki" -#: src/src/i2p/susi/webmail/WebMail.java:2279 +#: src/src/i2p/susi/webmail/WebMail.java:2281 msgid "Clear All" msgstr "Nollaa kaikki" -#: src/src/i2p/susi/webmail/WebMail.java:2304 -#: src/src/i2p/susi/webmail/WebMail.java:2305 +#: src/src/i2p/susi/webmail/WebMail.java:2306 +#: src/src/i2p/susi/webmail/WebMail.java:2307 msgid "First" msgstr "Ensimmäinen" -#: src/src/i2p/susi/webmail/WebMail.java:2304 -#: src/src/i2p/susi/webmail/WebMail.java:2305 -#: src/src/i2p/susi/webmail/WebMail.java:2345 +#: src/src/i2p/susi/webmail/WebMail.java:2306 +#: src/src/i2p/susi/webmail/WebMail.java:2307 +#: src/src/i2p/susi/webmail/WebMail.java:2347 msgid "Previous" msgstr "Edellinen" -#: src/src/i2p/susi/webmail/WebMail.java:2307 +#: src/src/i2p/susi/webmail/WebMail.java:2309 #, java-format msgid "Page {0} of {1}" msgstr "Sivu {0} / {1}" -#: src/src/i2p/susi/webmail/WebMail.java:2310 -#: src/src/i2p/susi/webmail/WebMail.java:2311 +#: src/src/i2p/susi/webmail/WebMail.java:2312 +#: src/src/i2p/susi/webmail/WebMail.java:2313 msgid "Last" msgstr "Viimeinen" -#: src/src/i2p/susi/webmail/WebMail.java:2310 -#: src/src/i2p/susi/webmail/WebMail.java:2311 -#: src/src/i2p/susi/webmail/WebMail.java:2347 +#: src/src/i2p/susi/webmail/WebMail.java:2312 +#: src/src/i2p/susi/webmail/WebMail.java:2313 +#: src/src/i2p/susi/webmail/WebMail.java:2349 msgid "Next" msgstr "Seuraava" -#: src/src/i2p/susi/webmail/WebMail.java:2323 +#: src/src/i2p/susi/webmail/WebMail.java:2325 msgid "Really delete this message?" msgstr "Poistetaanko tämä viesti?" -#: src/src/i2p/susi/webmail/WebMail.java:2323 +#: src/src/i2p/susi/webmail/WebMail.java:2325 msgid "Yes, really delete it!" msgstr "Kyllä, poista se!" -#: src/src/i2p/susi/webmail/WebMail.java:2336 +#: src/src/i2p/susi/webmail/WebMail.java:2338 msgid "Reply" msgstr "Vastaa" -#: src/src/i2p/susi/webmail/WebMail.java:2337 +#: src/src/i2p/susi/webmail/WebMail.java:2339 msgid "Reply All" msgstr "Vastaa kaikille" -#: src/src/i2p/susi/webmail/WebMail.java:2338 +#: src/src/i2p/susi/webmail/WebMail.java:2340 msgid "Forward" msgstr "Lähetä edelleen" -#: src/src/i2p/susi/webmail/WebMail.java:2339 +#: src/src/i2p/susi/webmail/WebMail.java:2341 msgid "Save As" msgstr "Tallenna nimellä" -#: src/src/i2p/susi/webmail/WebMail.java:2341 #: src/src/i2p/susi/webmail/WebMail.java:2343 +#: src/src/i2p/susi/webmail/WebMail.java:2345 msgid "Delete" msgstr "Poista" -#: src/src/i2p/susi/webmail/WebMail.java:2346 +#: src/src/i2p/susi/webmail/WebMail.java:2348 msgid "Back to Folder" msgstr "Takaisin kansioon" -#: src/src/i2p/susi/webmail/WebMail.java:2371 +#: src/src/i2p/susi/webmail/WebMail.java:2373 msgid "Could not fetch mail." msgstr "Postin noutaminen epäonnistui." -#: src/src/i2p/susi/webmail/WebMail.java:2389 +#: src/src/i2p/susi/webmail/WebMail.java:2391 msgid "Folder Page Size" msgstr "Kansiosivukoko" -#: src/src/i2p/susi/webmail/WebMail.java:2392 +#: src/src/i2p/susi/webmail/WebMail.java:2394 msgid "Set" msgstr "Aseta" -#: src/src/i2p/susi/webmail/WebMail.java:2395 +#: src/src/i2p/susi/webmail/WebMail.java:2397 msgid "Advanced Configuration" msgstr "Lisäasetukset" -#: src/src/i2p/susi/webmail/WebMail.java:2406 +#: src/src/i2p/susi/webmail/WebMail.java:2408 msgid "Save Configuration" msgstr "Tallenna asetukset" diff --git a/apps/susimail/src/src/i2p/susi/util/Config.java b/apps/susimail/src/src/i2p/susi/util/Config.java index a84ccede473ab1bde9d2ffcd6d38cbbc44224f46..26171e87f2122078d7c358324a5eb4204b96edc3 100644 --- a/apps/susimail/src/src/i2p/susi/util/Config.java +++ b/apps/susimail/src/src/i2p/susi/util/Config.java @@ -98,7 +98,7 @@ public class Config { try { iv = Config.class.getResourceAsStream("/susimail.properties"); properties.load(iv); - } catch (Exception e) { + } catch (IOException e) { Debug.debug(Debug.ERROR, "Could not open WEB-INF/classes/susimail.properties (possibly in jar), reason: " + e); } finally { if(iv != null) try { iv.close(); } catch(IOException ioe) {} @@ -109,7 +109,7 @@ public class Config { config = new OrderedProperties(); DataHelper.loadProps(config, cfg); } - } catch (Exception e) { + } catch (IOException e) { Debug.debug(Debug.ERROR, "Could not open susimail.config, reason: " + e); } } diff --git a/apps/susimail/src/src/i2p/susi/webmail/Mail.java b/apps/susimail/src/src/i2p/susi/webmail/Mail.java index 8632ac9c419a5e4bb86d86cd6241599d4ce4461e..ed5c3aa145722149882b6f88ddd9b86f2b098b47 100644 --- a/apps/susimail/src/src/i2p/susi/webmail/Mail.java +++ b/apps/susimail/src/src/i2p/susi/webmail/Mail.java @@ -41,7 +41,8 @@ import java.util.Date; import java.util.Locale; import java.util.TimeZone; -import net.i2p.I2PAppContext; +import net.i2p.data.DataHelper; +import net.i2p.util.SystemVersion; /** * data structure to hold a single message, mostly used with folder view and sorting @@ -126,7 +127,7 @@ class Mail { part = new MailPart(rb); } catch (DecodingException de) { Debug.debug(Debug.ERROR, "Decode error: " + de); - } catch (Exception e) { + } catch (RuntimeException e) { Debug.debug(Debug.ERROR, "Parse error: " + e); } } @@ -190,7 +191,7 @@ class Mail { address.indexOf( "\r" ) != -1 ) return false; - String[] tokens = address.split( "[ \t]+" ); + String[] tokens = DataHelper.split(address, "[ \t]+"); int addresses = 0; @@ -208,7 +209,7 @@ class Mail { */ public static String getAddress(String address ) { - String[] tokens = address.split( "[ \t]+" ); + String[] tokens = DataHelper.split(address, "[ \t]+"); for( int i = 0; i < tokens.length; i++ ) { if( tokens[i].matches( "^[^@< \t]+@[^> \t]+$" ) ) @@ -232,7 +233,7 @@ class Mail { public static boolean getRecipientsFromList( ArrayList<String> recipients, String text, boolean ok ) { if( text != null && text.length() > 0 ) { - String[] ccs = text.split( "," ); + String[] ccs = DataHelper.split(text, ","); for( int i = 0; i < ccs.length; i++ ) { String recipient = ccs[i].trim(); if( validateAddress( recipient ) ) { @@ -275,12 +276,9 @@ class Mail { DateFormat localDateFormatter = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT); DateFormat longLocalDateFormatter = DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM); // the router sets the JVM time zone to UTC but saves the original here so we can get it - String systemTimeZone = I2PAppContext.getGlobalContext().getProperty("i2p.systemTimeZone"); - if (systemTimeZone != null) { - TimeZone tz = TimeZone.getTimeZone(systemTimeZone); - localDateFormatter.setTimeZone(tz); - longLocalDateFormatter.setTimeZone(tz); - } + TimeZone tz = SystemVersion.getSystemTimeZone(); + localDateFormatter.setTimeZone(tz); + longLocalDateFormatter.setTimeZone(tz); DateFormat mailDateFormatter = new SimpleDateFormat("EEE, d MMM yyyy HH:mm:ss Z", Locale.ENGLISH ); error = ""; diff --git a/apps/susimail/src/src/i2p/susi/webmail/MailCache.java b/apps/susimail/src/src/i2p/susi/webmail/MailCache.java index 45aa601b83955dc057130d28f501e01c79b659a3..278a4e120087a298a41ac843f9accbb40a55b031 100644 --- a/apps/susimail/src/src/i2p/susi/webmail/MailCache.java +++ b/apps/susimail/src/src/i2p/susi/webmail/MailCache.java @@ -109,6 +109,7 @@ class MailCache { * @param mode CACHE_ONLY to not pull from pop server * @return An e-mail or null */ + @SuppressWarnings({"unchecked", "rawtypes"}) public Mail getMail(String uidl, FetchMode mode) { Mail mail = null, newMail = null; @@ -163,6 +164,7 @@ class MailCache { * @return true if any were fetched * @since 0.9.13 */ + @SuppressWarnings({"unchecked", "rawtypes"}) public boolean getMail(FetchMode mode) { if (mode == FetchMode.CACHE_ONLY) throw new IllegalArgumentException(); diff --git a/apps/susimail/src/src/i2p/susi/webmail/MailPart.java b/apps/susimail/src/src/i2p/susi/webmail/MailPart.java index 0ec32abe9361154ab124710a85815fb291271123..ff348a502a61e565a3e41282de6c705cb5989471 100644 --- a/apps/susimail/src/src/i2p/susi/webmail/MailPart.java +++ b/apps/susimail/src/src/i2p/susi/webmail/MailPart.java @@ -79,7 +79,7 @@ class MailPart { beginBody = bb; ReadBuffer decodedHeaders = EncodingFactory.getEncoding( "HEADERLINE" ).decode( buffer.content, begin, beginBody - begin ); - headerLines = new String( decodedHeaders.content, decodedHeaders.offset, decodedHeaders.length ).split( "\r\n" ); + headerLines = DataHelper.split(new String(decodedHeaders.content, decodedHeaders.offset, decodedHeaders.length), "\r\n"); String boundary = null; String x_encoding = null; diff --git a/apps/susimail/src/src/i2p/susi/webmail/WebMail.java b/apps/susimail/src/src/i2p/susi/webmail/WebMail.java index 5f6975bc510bff9358693b972495915db2ed6d6b..bdcab5e89d9b3857512f37a4f7c5bc09160eac88 100644 --- a/apps/susimail/src/src/i2p/susi/webmail/WebMail.java +++ b/apps/susimail/src/src/i2p/susi/webmail/WebMail.java @@ -288,7 +288,7 @@ public class WebMail extends HttpServlet */ private static class SenderSorter extends SorterBase { - private final Comparator collator = Collator.getInstance(); + private final Comparator<Object> collator = Collator.getInstance(); public SenderSorter( MailCache mailCache ) { @@ -307,7 +307,7 @@ public class WebMail extends HttpServlet * @author susi */ private static class SubjectSorter extends SorterBase { - private final Comparator collator = Collator.getInstance(); + private final Comparator<Object> collator = Collator.getInstance(); public SubjectSorter( MailCache mailCache ) { @@ -614,7 +614,7 @@ public class WebMail extends HttpServlet showBody = false; reason = _t("Charset \\''{0}\\'' not supported.", quoteHTML( mailPart.charset )) + br; } - catch (Exception e1) { + catch (IOException e1) { showBody = false; reason += _t("Part ({0}) not shown, because of {1}", ident, e1.toString()) + br; } @@ -996,7 +996,7 @@ public class WebMail extends HttpServlet PrintWriter pw2 = new PrintWriter( text2 ); showPart( pw2, part, 0, TEXT_ONLY ); pw2.flush(); - String[] lines = text2.toString().split( "\r\n" ); + String[] lines = DataHelper.split(text2.toString(), "\r\n"); for( int i = 0; i < lines.length; i++ ) pw.println( "> " + lines[i] ); pw.flush(); @@ -2299,7 +2299,7 @@ public class WebMail extends HttpServlet /** * first prev next last */ - private static void showPageButtons(PrintWriter out, Folder folder) { + private static void showPageButtons(PrintWriter out, Folder<?> folder) { out.println( "<br>" + ( folder.isFirstPage() ? diff --git a/apps/susimail/src/src/i2p/susi/webmail/encoding/DecodingException.java b/apps/susimail/src/src/i2p/susi/webmail/encoding/DecodingException.java index d0d89dd00f302942c10955bcc4e0791253e21c14..46277d7e5517788e1ae9cdf01e00501f74b60585 100644 --- a/apps/susimail/src/src/i2p/susi/webmail/encoding/DecodingException.java +++ b/apps/susimail/src/src/i2p/susi/webmail/encoding/DecodingException.java @@ -23,10 +23,12 @@ */ package i2p.susi.webmail.encoding; +import java.io.IOException; + /** * @author susi */ -public class DecodingException extends Exception { +public class DecodingException extends IOException { private static final long serialVersionUID = 1L; public DecodingException( String msg ) { diff --git a/apps/susimail/src/src/i2p/susi/webmail/encoding/HeaderLine.java b/apps/susimail/src/src/i2p/susi/webmail/encoding/HeaderLine.java index 4ed370dd2ee3672e0e9a8461dac9aed328a25235..e7db3672dcf8720341db5108ccdc3a5e905dbc5b 100644 --- a/apps/susimail/src/src/i2p/susi/webmail/encoding/HeaderLine.java +++ b/apps/susimail/src/src/i2p/susi/webmail/encoding/HeaderLine.java @@ -233,7 +233,9 @@ public class HeaderLine implements Encoding { length -= distance; lastCharWasQuoted = true; continue; - } catch (Exception e1) { + } catch (IOException e1) { + Debug.debug(Debug.ERROR, e1.toString()); + } catch (RuntimeException e1) { Debug.debug(Debug.ERROR, e1.toString()); } } diff --git a/apps/susimail/src/src/i2p/susi/webmail/smtp/SMTPClient.java b/apps/susimail/src/src/i2p/susi/webmail/smtp/SMTPClient.java index 046dcbef5288142efd9618931de465fc312861cf..fc47577351e5cadf9866c281f7e02acdec9f1e21 100644 --- a/apps/susimail/src/src/i2p/susi/webmail/smtp/SMTPClient.java +++ b/apps/susimail/src/src/i2p/susi/webmail/smtp/SMTPClient.java @@ -210,7 +210,7 @@ public class SMTPClient { try { socket = new Socket( host, port ); - } catch (Exception e) { + } catch (IOException e) { error += _t("Cannot connect") + ": " + e.getMessage() + '\n'; ok = false; } @@ -282,7 +282,7 @@ public class SMTPClient { error += e.getMessage(); } if( !mailSent && lastResponse.length() > 0 ) { - String[] lines = lastResponse.split( "\r" ); + String[] lines = DataHelper.split(lastResponse, "\r"); for( int i = 0; i < lines.length; i++ ) error += lines[i] + '\n'; } diff --git a/apps/systray/java/build.xml b/apps/systray/java/build.xml index 9fccf66fcded6899cdc05bc371001017edeface6..c5eb70731cea16479deb71ca894ac1aea62e0a0c 100644 --- a/apps/systray/java/build.xml +++ b/apps/systray/java/build.xml @@ -5,11 +5,26 @@ <target name="builddep"> <!-- run from top level build.xml to get dependencies built --> </target> + <condition property="depend.available"> + <typefound name="depend" /> + </condition> + <target name="depend" if="depend.available"> + <depend + cache="../../../build" + srcdir="./src:./test/junit" + destdir="./build/obj" > + <!-- Depend on classes instead of jars where available --> + <classpath> + <pathelement location="../../../core/java/build/obj" /> + <pathelement location="lib/systray4j.jar" /> + </classpath> + </depend> + </target> <property name="javac.compilerargs" value="" /> <property name="javac.version" value="1.6" /> - <target name="compile"> + <target name="compile" depends="depend"> <mkdir dir="./build" /> <mkdir dir="./build/obj" /> <javac diff --git a/apps/systray/java/src/net/i2p/apps/systray/ConfigFile.java b/apps/systray/java/src/net/i2p/apps/systray/ConfigFile.java index 642bea630a129b687532e6d129d2f90a23d3d7cf..0389c8dd76c02eba23a4e4f8f7c2b36043bf1527 100644 --- a/apps/systray/java/src/net/i2p/apps/systray/ConfigFile.java +++ b/apps/systray/java/src/net/i2p/apps/systray/ConfigFile.java @@ -62,7 +62,7 @@ public class ConfigFile { try { fileInputStream = new FileInputStream(_configFile); _properties.load(fileInputStream); - } catch (Exception e) { + } catch (IOException e) { rv = false; } finally { if (fileInputStream != null) { @@ -79,7 +79,7 @@ public class ConfigFile { try { fileOutputStream = new FileOutputStream(_configFile); _properties.store(fileOutputStream, null); - } catch (Exception e) { + } catch (IOException e) { rv = false; } finally { if (fileOutputStream != null) { diff --git a/apps/systray/java/src/net/i2p/apps/systray/SysTray.java b/apps/systray/java/src/net/i2p/apps/systray/SysTray.java index 8d030d09171d48309f955332140b7dbc7cba99ce..da7f6c37b4b1c9b73344262566b206374897edc8 100644 --- a/apps/systray/java/src/net/i2p/apps/systray/SysTray.java +++ b/apps/systray/java/src/net/i2p/apps/systray/SysTray.java @@ -11,6 +11,7 @@ package net.i2p.apps.systray; import java.awt.Frame; import java.io.File; +import java.io.IOException; import net.i2p.I2PAppContext; import net.i2p.util.SimpleTimer; @@ -88,14 +89,14 @@ public class SysTray implements SysTrayMenuListener { try { if (urlLauncher.openUrl(url)) return; - } catch (Exception ex) { + } catch (IOException ex) { // Fall through. } } else { try { if (urlLauncher.openUrl(url, _browserString)) return; - } catch (Exception ex) { + } catch (IOException ex) { // Fall through. } } diff --git a/apps/systray/java/src/net/i2p/apps/systray/UrlLauncher.java b/apps/systray/java/src/net/i2p/apps/systray/UrlLauncher.java index 7604169b00fcafcdac878de58593ae92ce4c37a6..aa8f5ef1257ec954209065338d839b037fc1af8b 100644 --- a/apps/systray/java/src/net/i2p/apps/systray/UrlLauncher.java +++ b/apps/systray/java/src/net/i2p/apps/systray/UrlLauncher.java @@ -18,7 +18,8 @@ import java.io.InputStreamReader; import java.net.MalformedURLException; import java.net.Socket; import java.net.SocketAddress; -import java.net.URL; +import java.net.URI; +import java.net.URISyntaxException; import java.util.Locale; import net.i2p.I2PAppContext; @@ -115,18 +116,16 @@ public class UrlLauncher implements ClientApp { * @return success */ private static boolean waitForServer(String urlString) { - URL url; + URI url; try { - url = new URL(urlString); - } catch (MalformedURLException e) { + url = new URI(urlString); + } catch (URISyntaxException e) { return false; } String host = url.getHost(); int port = url.getPort(); if (port <= 0) { - port = url.getDefaultPort(); - if (port <= 0) - return false; + port = "https".equals(url.getScheme()) ? 443 : 80; } SocketAddress sa; try { @@ -150,7 +149,7 @@ public class UrlLauncher implements ClientApp { Thread.sleep(2*1000); } catch (InterruptedException ie) {} return true; - } catch (Exception e) {} + } catch (IOException e) {} if (System.currentTimeMillis() > done) break; try { @@ -172,9 +171,9 @@ public class UrlLauncher implements ClientApp { * @return <code>true</code> if the operation was successful, otherwise * <code>false</code>. * - * @throws Exception + * @throws IOException */ - public boolean openUrl(String url) throws Exception { + public boolean openUrl(String url) throws IOException { waitForServer(url); if (validateUrlFormat(url)) { String cbrowser = _context.getProperty(PROP_BROWSER); @@ -218,7 +217,7 @@ public class UrlLauncher implements ClientApp { // No worries. } foo.delete(); - } catch (Exception e) { + } catch (IOException e) { // Defaults to IE. } finally { if (bufferedReader != null) @@ -247,9 +246,9 @@ public class UrlLauncher implements ClientApp { * @return <code>true</code> if the operation was successful, * otherwise <code>false</code>. * - * @throws Exception + * @throws IOException */ - public boolean openUrl(String url, String browser) throws Exception { + public boolean openUrl(String url, String browser) throws IOException { waitForServer(url); if (validateUrlFormat(url)) { if (_shellCommand.executeSilentAndWaitTimed(browser + " " + url, 5)) @@ -261,8 +260,8 @@ public class UrlLauncher implements ClientApp { private static boolean validateUrlFormat(String urlString) { try { // just to check validity - new URL(urlString); - } catch (MalformedURLException e) { + new URI(urlString); + } catch (URISyntaxException e) { return false; } return true; @@ -290,7 +289,7 @@ public class UrlLauncher implements ClientApp { String url = _args[0]; openUrl(url); changeState(STOPPED); - } catch (Exception e) { + } catch (IOException e) { changeState(CRASHED, e); } } @@ -355,6 +354,6 @@ public class UrlLauncher implements ClientApp { launcher.openUrl(args[0]); else launcher.openUrl("http://127.0.0.1:7657/index.jsp"); - } catch (Exception e) {} + } catch (IOException e) {} } } diff --git a/build.properties b/build.properties index cabe7a5fd800fbdd4626e7b0769af8dd349f3785..2cb15c4cadb5ca8a407f410ded69d0502817c580 100644 --- a/build.properties +++ b/build.properties @@ -11,7 +11,10 @@ # Note: Include the trailing slash! Don't surround the URL in quotes! javasedocs.url=http://docs.oracle.com/javase/6/docs/api/ javaeedocs.url=http://docs.oracle.com/javaee/6/api/ -jettydocs.url=http://download.eclipse.org/jetty/stable-8/apidocs/ +# The following link is dead, perhaps temporarily, +# perhaps not, as they move 7 and 8 to unsupported status. +#jettydocs.url=http://download.eclipse.org/jetty/stable-8/apidocs/ +jettydocs.url=http://download.eclipse.org/jetty/8.1.17.v20150415/apidocs/ jrobindocs.url=http://docs.i2p-projekt.de/jrobin/javadoc/ wrapperdocs.url=http://wrapper.tanukisoftware.com/jdoc/ # these are only for unit test javadocs @@ -43,8 +46,11 @@ javac.version=1.6 #javac.classpath=/PATH/TO/pack200.jar # Optional compiler args +# This one is for subsystems requiring Java 6 # This one keeps gcj a lot quieter #javac.compilerargs=-warn:-unchecked,raw,unused,serial +# This one is for subsystems requiring Java 7 +#javac.compilerargs7= # # Note to packagers, embedders, distributors: diff --git a/build.xml b/build.xml index 21c42371f1859a717b23c171bc7a7d97efdfa83e..1561fdd9da3ad0cda88e482c42e284d9778c544f 100644 --- a/build.xml +++ b/build.xml @@ -868,6 +868,21 @@ </target> <target name="-pre-release"> + <fail message="javac.compilerargs must contain a -bootclasspath option in override.properties"> + <condition> + <not><contains string="${javac.compilerargs}" substring="-bootclasspath"/></not> + </condition> + </fail> + <fail message="build.built-by must be set in override.properties"> + <condition> + <equals arg1="${build.built-by}" arg2="unknown"/> + </condition> + </fail> + <fail message="require.gettext must be true"> + <condition> + <not><equals arg1="${require.gettext}" arg2="true"/></not> + </condition> + </fail> <echo message="================================================================" /> <echo message="Did you update these files?" /> <exec executable="ls" failonerror="true"> @@ -1450,9 +1465,7 @@ </target> <!-- All jetty jars required for update. - We don't need commons-el or commons-logging, they haven't changed. TODO do we need to bother updating jasper? - TODO where is JMX? We don't need it I hope. --> <target name="prepjupdate" depends="prepupdate, buildWEB"> <copy todir="pkg-temp/lib" > @@ -1789,15 +1802,11 @@ <copy file="i2pupdate.zip" tofile="i2pupdate_${release.number}.zip" /> <copy file="i2pinstall_${full.version}.jar" tofile="i2pinstall_${release.number}.jar" /> <copy file="i2pinstall_${full.version}_windows.exe" tofile="i2pinstall_${release.number}_windows.exe" /> + <!-- remove these, we don't build them anymore --> <delete file="i2pupdate.sud" /> <delete file="i2pupdate.su2" /> - <!-- make this a lot easier by putting release.privkey=/path/to/privkey in override.properties --> - - <!-- now build and verify the packed sud from the packed zip --> - <sudsign infile="i2pupdate.zip" outfile="i2pupdate.sud" /> + <!-- make this a lot easier by putting release.privkey.su3=/path/to/su3keystore.ks in override.properties --> - <!-- now build and verify the packed su2 from the packed zip --> - <sudsign infile="i2pupdate200.zip" outfile="i2pupdate.su2" /> <!-- now build and verify the packed su3 from the packed zip --> <su3sign infile="i2pupdate200.zip" sigtype="ROUTER" outfile="i2pupdate.su3" su3.ver="${release.number}" /> <!-- this will use the monotonerc file in the current workspace --> @@ -1835,9 +1844,7 @@ <chmod perm="444" type="file"> <fileset dir="${basedir}"> - <include name="i2pupdate.su2" /> <include name="i2pupdate.su3" /> - <include name="i2pupdate.sud" /> </fileset> </chmod> <echo message="File sizes:" /> @@ -1847,9 +1854,7 @@ <arg value="i2pinstall_${release.number}.jar" /> <arg value="i2psource_${release.number}.tar.bz2" /> <arg value="i2pupdate_${release.number}.zip" /> - <arg value="i2pupdate.su2" /> <arg value="i2pupdate.su3" /> - <arg value="i2pupdate.sud" /> <arg value="i2pinstall_${release.number}_windows.exe.sig" /> <arg value="i2pinstall_${release.number}.jar.sig" /> <arg value="i2psource_${release.number}.tar.bz2.sig" /> @@ -1860,14 +1865,8 @@ <sha256sum file="i2pinstall_${release.number}.jar" /> <sha256sum file="i2psource_${release.number}.tar.bz2" /> <sha256sum file="i2pupdate_${release.number}.zip" /> - <sha256sum file="i2pupdate.su2" /> <sha256sum file="i2pupdate.su3" /> - <sha256sum file="i2pupdate.sud" /> <!-- make torrent files --> - <copy file="i2pupdate.sud" tofile="i2pupdate-${release.number}.sud" /> - <mktorrent file="i2pupdate-${release.number}.sud" /> - <copy file="i2pupdate.su2" tofile="i2pupdate-${release.number}.su2" /> - <mktorrent file="i2pupdate-${release.number}.su2" /> <copy file="i2pupdate.su3" tofile="i2pupdate-${release.number}.su3" /> <mktorrent file="i2pupdate-${release.number}.su3" /> <echo message="Don't forget to mtn tag w: i2p-${release.number}" /> diff --git a/core/java/src/net/i2p/CoreVersion.java b/core/java/src/net/i2p/CoreVersion.java index 2a1175c6e5ac1085671c7356d54e3be11ae25b5c..8d34f10e0c4f62a2414da7d9f9281a6baba60e4f 100644 --- a/core/java/src/net/i2p/CoreVersion.java +++ b/core/java/src/net/i2p/CoreVersion.java @@ -18,7 +18,7 @@ public class CoreVersion { /** deprecated */ public final static String ID = "Monotone"; - public final static String VERSION = "0.9.22"; + public final static String VERSION = "0.9.23"; /** * For Vuze. diff --git a/core/java/src/net/i2p/I2PAppContext.java b/core/java/src/net/i2p/I2PAppContext.java index b59a405860e38cfba0110f5f954bfd53ee9275c1..bae35726049b7725aded3c82035cb1804c6d10a9 100644 --- a/core/java/src/net/i2p/I2PAppContext.java +++ b/core/java/src/net/i2p/I2PAppContext.java @@ -84,6 +84,7 @@ public class I2PAppContext { private RandomSource _random; private KeyGenerator _keyGenerator; protected KeyRing _keyRing; // overridden in RouterContext + @SuppressWarnings("deprecation") private SimpleScheduler _simpleScheduler; private SimpleTimer _simpleTimer; private SimpleTimer2 _simpleTimer2; @@ -532,7 +533,7 @@ public class I2PAppContext { * @return set of Strings containing the names of defined system properties */ @SuppressWarnings({ "unchecked", "rawtypes" }) - public Set<String> getPropertyNames() { + public Set<String> getPropertyNames() { // clone to avoid ConcurrentModificationException Set<String> names = new HashSet<String>((Set<String>) (Set) ((Properties) System.getProperties().clone()).keySet()); // TODO-Java6: s/keySet()/stringPropertyNames()/ if (_overrideProps != null) @@ -940,6 +941,7 @@ public class I2PAppContext { * @since 0.9 to replace static instance in the class * @deprecated in 0.9.20, use simpleTimer2() */ + @SuppressWarnings("deprecation") public SimpleScheduler simpleScheduler() { if (!_simpleSchedulerInitialized) initializeSimpleScheduler(); diff --git a/core/java/src/net/i2p/client/I2PSession.java b/core/java/src/net/i2p/client/I2PSession.java index 458b9a892dea8a5480a4cdaf70bca768f633ca3d..818cb598350ed28d27738f665689b9cb3120549d 100644 --- a/core/java/src/net/i2p/client/I2PSession.java +++ b/core/java/src/net/i2p/client/I2PSession.java @@ -18,6 +18,7 @@ import net.i2p.data.Destination; import net.i2p.data.Hash; import net.i2p.data.PrivateKey; import net.i2p.data.SessionKey; +import net.i2p.data.SessionTag; import net.i2p.data.SigningPrivateKey; /** @@ -98,7 +99,7 @@ public interface I2PSession { * objects that were sent along side the given keyUsed. * @return success */ - public boolean sendMessage(Destination dest, byte[] payload, SessionKey keyUsed, Set tagsSent) throws I2PSessionException; + public boolean sendMessage(Destination dest, byte[] payload, SessionKey keyUsed, Set<SessionTag> tagsSent) throws I2PSessionException; /** * End-to-End Crypto is disabled, tags and keys are ignored. @@ -106,7 +107,7 @@ public interface I2PSession { * @param tagsSent UNUSED, IGNORED. * @return success */ - public boolean sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set tagsSent) throws I2PSessionException; + public boolean sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set<SessionTag> tagsSent) throws I2PSessionException; /** * End-to-End Crypto is disabled, tags and keys are ignored. @@ -116,7 +117,7 @@ public interface I2PSession { * @return success * @since 0.7.1 */ - public boolean sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set tagsSent, long expire) throws I2PSessionException; + public boolean sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set<SessionTag> tagsSent, long expire) throws I2PSessionException; /** * See I2PSessionMuxedImpl for proto/port details. @@ -133,7 +134,7 @@ public interface I2PSession { * @return success * @since 0.7.1 */ - public boolean sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set tagsSent, + public boolean sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set<SessionTag> tagsSent, int proto, int fromPort, int toPort) throws I2PSessionException; /** @@ -152,7 +153,7 @@ public interface I2PSession { * @return success * @since 0.7.1 */ - public boolean sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set tagsSent, long expire, + public boolean sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set<SessionTag> tagsSent, long expire, int proto, int fromPort, int toPort) throws I2PSessionException; /** @@ -171,7 +172,7 @@ public interface I2PSession { * @return success * @since 0.8.4 */ - public boolean sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set tagsSent, long expire, + public boolean sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set<SessionTag> tagsSent, long expire, int proto, int fromPort, int toPort, int flags) throws I2PSessionException; /** diff --git a/core/java/src/net/i2p/client/impl/I2CPMessageProducer.java b/core/java/src/net/i2p/client/impl/I2CPMessageProducer.java index f44b897a3b3d2399269f289250fdd26bdd68c7e2..dd6783f433e32af435d53b6e944a17a9d969967e 100644 --- a/core/java/src/net/i2p/client/impl/I2CPMessageProducer.java +++ b/core/java/src/net/i2p/client/impl/I2CPMessageProducer.java @@ -102,7 +102,7 @@ class I2CPMessageProducer { if (_log.shouldLog(Log.DEBUG)) _log.debug("config signed"); msg.setSessionConfig(cfg); if (_log.shouldLog(Log.DEBUG)) _log.debug("config loaded into message"); - session.sendMessage(msg); + session.sendMessage_unchecked(msg); if (_log.shouldLog(Log.DEBUG)) _log.debug("config message sent"); } @@ -114,7 +114,7 @@ class I2CPMessageProducer { if (session.isClosed()) return; DestroySessionMessage dmsg = new DestroySessionMessage(); dmsg.setSessionId(session.getSessionId()); - session.sendMessage(dmsg); + session.sendMessage_unchecked(dmsg); // use DisconnectMessage only if we fail and drop connection... // todo: update the code to fire off DisconnectMessage on socket error //DisconnectMessage msg = new DisconnectMessage(); @@ -132,7 +132,7 @@ class I2CPMessageProducer { * @param newKey unused - no end-to-end crypto */ public void sendMessage(I2PSessionImpl session, Destination dest, long nonce, byte[] payload, SessionTag tag, - SessionKey key, Set tags, SessionKey newKey, long expires) throws I2PSessionException { + SessionKey key, Set<SessionTag> tags, SessionKey newKey, long expires) throws I2PSessionException { sendMessage(session, dest, nonce, payload, expires, 0); } @@ -371,7 +371,7 @@ class I2CPMessageProducer { return; } msg.setSessionId(sid); - session.sendMessage(msg); + session.sendMessage_unchecked(msg); } /** diff --git a/core/java/src/net/i2p/client/impl/I2PSessionImpl.java b/core/java/src/net/i2p/client/impl/I2PSessionImpl.java index 4307924deab9fca5de59b7c24225ce7aad099c63..13d805619adaf9793303e9beaf68ac0eece91621 100644 --- a/core/java/src/net/i2p/client/impl/I2PSessionImpl.java +++ b/core/java/src/net/i2p/client/impl/I2PSessionImpl.java @@ -209,8 +209,7 @@ public abstract class I2PSessionImpl implements I2PSession, I2CPMessageReader.I2 VersionComparator.comp(routerVersion, MIN_SUBSESSION_VERSION) >= 0); synchronized (_stateLock) { if (_state == State.OPENING) { - _state = State.GOTDATE; - _stateLock.notifyAll(); + changeState(State.GOTDATE); } } } @@ -635,7 +634,7 @@ public abstract class I2PSessionImpl implements I2PSession, I2CPMessageReader.I2 auth.setProperty(PROP_USER, _options.getProperty(PROP_USER)); auth.setProperty(PROP_PW, _options.getProperty(PROP_PW)); } - sendMessage(new GetDateMessage(CoreVersion.VERSION, auth)); + sendMessage_unchecked(new GetDateMessage(CoreVersion.VERSION, auth)); waitForDate(); if (_log.shouldLog(Log.DEBUG)) _log.debug(getPrefix() + "Before producer.connect()"); @@ -737,14 +736,7 @@ public abstract class I2PSessionImpl implements I2PSession, I2CPMessageReader.I2 * Report abuse with regards to the given messageId */ public void reportAbuse(int msgId, int severity) throws I2PSessionException { - synchronized (_stateLock) { - if (_state == State.CLOSED) - throw new I2PSessionException("Already closed"); - if (_state == State.INIT) - throw new I2PSessionException("Not open, must call connect() first"); - if (_state == State.OPENING) // not before GOTDATE - throw new I2PSessionException("Session not open yet"); - } + verifyOpen(); _producer.reportAbuse(this, msgId, severity); } @@ -870,7 +862,7 @@ public abstract class I2PSessionImpl implements I2PSession, I2CPMessageReader.I2 if ((duration > 100) && _log.shouldLog(Log.INFO)) _log.info("Message availability notification for " + msgId.intValue() + " took " + duration + " to " + _sessionListener); - } catch (Exception e) { + } catch (RuntimeException e) { _log.log(Log.CRIT, "Error notifying app of message availability", e); } } else { @@ -1034,6 +1026,39 @@ public abstract class I2PSessionImpl implements I2PSession, I2CPMessageReader.I2 } } + /** + * Throws I2PSessionException if uninitialized, closed or closing. + * Blocks if opening. + * + * @since 0.9.23 + */ + protected void verifyOpen() throws I2PSessionException { + synchronized (_stateLock) { + while (true) { + switch (_state) { + case INIT: + throw new I2PSessionException("Not open, must call connect() first"); + + case OPENING: // fall thru + case GOTDATE: + try { + _stateLock.wait(5*1000); + continue; + } catch (InterruptedException ie) { + throw new I2PSessionException("Interrupted", ie); + } + + case OPEN: + return; + + case CLOSING: // fall thru + case CLOSED: + throw new I2PSessionException("Already closed"); + } + } + } + } + /** * Deliver an I2CP message to the router * As of 0.9.3, may block for several seconds if the write queue to the router is full @@ -1041,12 +1066,19 @@ public abstract class I2PSessionImpl implements I2PSession, I2CPMessageReader.I2 * @throws I2PSessionException if the message is malformed or there is an error writing it out */ void sendMessage(I2CPMessage message) throws I2PSessionException { - synchronized (_stateLock) { - if (_state == State.CLOSED) - throw new I2PSessionException("Already closed"); - if (_state == State.INIT) - throw new I2PSessionException("Not open, must call connect() first"); - } + verifyOpen(); + sendMessage_unchecked(message); + } + + /** + * Deliver an I2CP message to the router. + * Does NOT check state. Call only from connect() or other methods that need to + * send messages when not in OPEN state. + * + * @throws I2PSessionException if the message is malformed or there is an error writing it out + * @since 0.9.23 + */ + void sendMessage_unchecked(I2CPMessage message) throws I2PSessionException { if (_queue != null) { // internal try { @@ -1055,11 +1087,13 @@ public abstract class I2PSessionImpl implements I2PSession, I2CPMessageReader.I2 } catch (InterruptedException ie) { throw new I2PSessionException("Interrupted", ie); } - } else if (_writer == null) { - // race here - throw new I2PSessionException("Already closed or not open"); } else { - _writer.addMessage(message); + ClientWriterRunner writer = _writer; + if (writer == null) { + throw new I2PSessionException("Already closed or not open"); + } else { + writer.addMessage(message); + } } } @@ -1441,11 +1475,11 @@ public abstract class I2PSessionImpl implements I2PSession, I2CPMessageReader.I2 SessionId id = _sessionId; if (id == null) id = new SessionId(65535); - sendMessage(new HostLookupMessage(id, h, nonce, maxWait)); + sendMessage_unchecked(new HostLookupMessage(id, h, nonce, maxWait)); } else { if (_log.shouldLog(Log.INFO)) _log.info("Sending DestLookup for " + h); - sendMessage(new DestLookupMessage(h)); + sendMessage_unchecked(new DestLookupMessage(h)); } try { synchronized (waiter) { @@ -1533,7 +1567,7 @@ public abstract class I2PSessionImpl implements I2PSession, I2CPMessageReader.I2 SessionId id = _sessionId; if (id == null) id = new SessionId(65535); - sendMessage(new HostLookupMessage(id, name, nonce, maxWait)); + sendMessage_unchecked(new HostLookupMessage(id, name, nonce, maxWait)); try { synchronized (waiter) { waiter.wait(maxWait); @@ -1567,7 +1601,7 @@ public abstract class I2PSessionImpl implements I2PSession, I2CPMessageReader.I2 return null; } } - sendMessage(new GetBandwidthLimitsMessage()); + sendMessage_unchecked(new GetBandwidthLimitsMessage()); try { synchronized (_bwReceivedLock) { _bwReceivedLock.wait(5*1000); diff --git a/core/java/src/net/i2p/client/impl/I2PSessionImpl2.java b/core/java/src/net/i2p/client/impl/I2PSessionImpl2.java index 4eddcc30ec85f3dbd91a9387e4244713150caec3..0cf397d796b4224392bcf19d7175e8e005ea60be 100644 --- a/core/java/src/net/i2p/client/impl/I2PSessionImpl2.java +++ b/core/java/src/net/i2p/client/impl/I2PSessionImpl2.java @@ -29,6 +29,7 @@ import net.i2p.client.SendMessageStatusListener; import net.i2p.data.DataHelper; import net.i2p.data.Destination; import net.i2p.data.SessionKey; +import net.i2p.data.SessionTag; import net.i2p.data.i2cp.MessageId; import net.i2p.data.i2cp.MessageStatusMessage; import net.i2p.util.Log; @@ -210,17 +211,17 @@ class I2PSessionImpl2 extends I2PSessionImpl { throw new UnsupportedOperationException("Use MuxedImpl"); } /** @throws UnsupportedOperationException always, use MuxedImpl */ - public boolean sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set tagsSent, + public boolean sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set<SessionTag> tagsSent, int proto, int fromport, int toport) throws I2PSessionException { throw new UnsupportedOperationException("Use MuxedImpl"); } /** @throws UnsupportedOperationException always, use MuxedImpl */ - public boolean sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set tagsSent, long expire, + public boolean sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set<SessionTag> tagsSent, long expire, int proto, int fromport, int toport) throws I2PSessionException { throw new UnsupportedOperationException("Use MuxedImpl"); } /** @throws UnsupportedOperationException always, use MuxedImpl */ - public boolean sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set tagsSent, long expire, + public boolean sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set<SessionTag> tagsSent, long expire, int proto, int fromport, int toport, int flags) throws I2PSessionException { throw new UnsupportedOperationException("Use MuxedImpl"); } @@ -253,7 +254,7 @@ class I2PSessionImpl2 extends I2PSessionImpl { * @param tagsSent unused - no end-to-end crypto */ @Override - public boolean sendMessage(Destination dest, byte[] payload, SessionKey keyUsed, Set tagsSent) throws I2PSessionException { + public boolean sendMessage(Destination dest, byte[] payload, SessionKey keyUsed, Set<SessionTag> tagsSent) throws I2PSessionException { return sendMessage(dest, payload, 0, payload.length, keyUsed, tagsSent, 0); } @@ -261,7 +262,7 @@ class I2PSessionImpl2 extends I2PSessionImpl { * @param keyUsed unused - no end-to-end crypto * @param tagsSent unused - no end-to-end crypto */ - public boolean sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set tagsSent) + public boolean sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set<SessionTag> tagsSent) throws I2PSessionException { return sendMessage(dest, payload, offset, size, keyUsed, tagsSent, 0); } @@ -272,17 +273,10 @@ class I2PSessionImpl2 extends I2PSessionImpl { * @param keyUsed unused - no end-to-end crypto * @param tagsSent unused - no end-to-end crypto */ - public boolean sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set tagsSent, long expires) + public boolean sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set<SessionTag> tagsSent, long expires) throws I2PSessionException { if (_log.shouldLog(Log.DEBUG)) _log.debug("sending message"); - synchronized (_stateLock) { - if (_state == State.CLOSED) - throw new I2PSessionException("Already closed"); - if (_state == State.INIT) - throw new I2PSessionException("Not open, must call connect() first"); - if (_state == State.OPENING || _state == State.GOTDATE) // not before GOTDATE or session - throw new I2PSessionException("Session not open yet"); - } + verifyOpen(); updateActivity(); // Sadly there is no way to send something completely uncompressed in a backward-compatible way, @@ -339,7 +333,7 @@ class I2PSessionImpl2 extends I2PSessionImpl { * @param keyUsed unused - no end-to-end crypto * @param tagsSent unused - no end-to-end crypto */ - protected boolean sendBestEffort(Destination dest, byte payload[], SessionKey keyUsed, Set tagsSent, long expires) + protected boolean sendBestEffort(Destination dest, byte payload[], SessionKey keyUsed, Set<SessionTag> tagsSent, long expires) throws I2PSessionException { return sendBestEffort(dest, payload, expires, 0); } diff --git a/core/java/src/net/i2p/client/impl/I2PSessionMuxedImpl.java b/core/java/src/net/i2p/client/impl/I2PSessionMuxedImpl.java index 46e551e495a5919e19bc0283ff4c8705a04abc75..9b6f1ff0c8bd170bdbde3d8f4bd01c6dc72c51ab 100644 --- a/core/java/src/net/i2p/client/impl/I2PSessionMuxedImpl.java +++ b/core/java/src/net/i2p/client/impl/I2PSessionMuxedImpl.java @@ -19,6 +19,7 @@ import net.i2p.client.SendMessageStatusListener; import net.i2p.data.DataHelper; import net.i2p.data.Destination; import net.i2p.data.SessionKey; +import net.i2p.data.SessionTag; import net.i2p.data.i2cp.MessagePayloadMessage; import net.i2p.util.Log; @@ -163,7 +164,7 @@ class I2PSessionMuxedImpl extends I2PSessionImpl2 { */ @Override public boolean sendMessage(Destination dest, byte[] payload, int offset, int size, - SessionKey keyUsed, Set tagsSent, long expires) + SessionKey keyUsed, Set<SessionTag> tagsSent, long expires) throws I2PSessionException { return sendMessage(dest, payload, offset, size, keyUsed, tagsSent, 0, PROTO_UNSPECIFIED, PORT_UNSPECIFIED, PORT_UNSPECIFIED); } @@ -173,7 +174,7 @@ class I2PSessionMuxedImpl extends I2PSessionImpl2 { * @param tagsSent unused - no end-to-end crypto */ @Override - public boolean sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set tagsSent, + public boolean sendMessage(Destination dest, byte[] payload, int offset, int size, SessionKey keyUsed, Set<SessionTag> tagsSent, int proto, int fromport, int toport) throws I2PSessionException { return sendMessage(dest, payload, offset, size, keyUsed, tagsSent, 0, proto, fromport, toport); } @@ -192,7 +193,7 @@ class I2PSessionMuxedImpl extends I2PSessionImpl2 { */ @Override public boolean sendMessage(Destination dest, byte[] payload, int offset, int size, - SessionKey keyUsed, Set tagsSent, long expires, + SessionKey keyUsed, Set<SessionTag> tagsSent, long expires, int proto, int fromPort, int toPort) throws I2PSessionException { return sendMessage(dest, payload, offset, size, keyUsed, tagsSent, 0, proto, fromPort, toPort, 0); @@ -213,7 +214,7 @@ class I2PSessionMuxedImpl extends I2PSessionImpl2 { */ @Override public boolean sendMessage(Destination dest, byte[] payload, int offset, int size, - SessionKey keyUsed, Set tagsSent, long expires, + SessionKey keyUsed, Set<SessionTag> tagsSent, long expires, int proto, int fromPort, int toPort, int flags) throws I2PSessionException { payload = prepPayload(payload, offset, size, proto, fromPort, toPort); @@ -279,14 +280,7 @@ class I2PSessionMuxedImpl extends I2PSessionImpl2 { * @since 0.9.14 */ private byte[] prepPayload(byte[] payload, int offset, int size, int proto, int fromPort, int toPort) throws I2PSessionException { - synchronized (_stateLock) { - if (_state == State.CLOSED) - throw new I2PSessionException("Already closed"); - if (_state == State.INIT) - throw new I2PSessionException("Not open, must call connect() first"); - if (_state == State.OPENING || _state == State.GOTDATE) // not before GOTDATE or session - throw new I2PSessionException("Session not open yet"); - } + verifyOpen(); updateActivity(); if (shouldCompress(size)) @@ -405,7 +399,7 @@ class I2PSessionMuxedImpl extends I2PSessionImpl2 { try { _demultiplexer.messageAvailable(I2PSessionMuxedImpl.this, msg.id, msg.size, msg.proto, msg.fromPort, msg.toPort); - } catch (Exception e) { + } catch (RuntimeException e) { _log.error("Error notifying app of message availability", e); } } diff --git a/core/java/src/net/i2p/client/impl/I2PSimpleSession.java b/core/java/src/net/i2p/client/impl/I2PSimpleSession.java index dd59ea463c6b43db4c0f915ce0ba58da8be3437c..010121b1c83c3d5e610f85b220b502c36f86660e 100644 --- a/core/java/src/net/i2p/client/impl/I2PSimpleSession.java +++ b/core/java/src/net/i2p/client/impl/I2PSimpleSession.java @@ -122,11 +122,11 @@ public class I2PSimpleSession extends I2PSessionImpl2 { Properties auth = new OrderedProperties(); auth.setProperty(PROP_USER, opts.getProperty(PROP_USER)); auth.setProperty(PROP_PW, opts.getProperty(PROP_PW)); - sendMessage(new GetDateMessage(CoreVersion.VERSION, auth)); + sendMessage_unchecked(new GetDateMessage(CoreVersion.VERSION, auth)); } else { // we must now send a GetDate even in SimpleSession, or we won't know // what version we are talking with and cannot use HostLookup - sendMessage(new GetDateMessage(CoreVersion.VERSION)); + sendMessage_unchecked(new GetDateMessage(CoreVersion.VERSION)); } waitForDate(); } diff --git a/core/java/src/net/i2p/client/impl/SubSession.java b/core/java/src/net/i2p/client/impl/SubSession.java index 51c5f0b1645eb66bdba513c680e79d9de774564d..93a115bff2851c08ae19151761c1b36bba4f9d35 100644 --- a/core/java/src/net/i2p/client/impl/SubSession.java +++ b/core/java/src/net/i2p/client/impl/SubSession.java @@ -100,7 +100,7 @@ class SubSession extends I2PSessionMuxedImpl { public void connect() throws I2PSessionException { synchronized(_stateLock) { if (_state != State.OPEN) { - _state = State.OPENING; + changeState(State.OPENING); } } boolean success = false; @@ -121,7 +121,7 @@ class SubSession extends I2PSessionMuxedImpl { if (_state != State.OPEN) { Thread notifier = new I2PAppThread(_availabilityNotifier, "ClientNotifier " + getPrefix(), true); notifier.start(); - _state = State.OPEN; + changeState(State.OPEN); } } success = true; @@ -161,7 +161,20 @@ class SubSession extends I2PSessionMuxedImpl { message.getType() != CreateSessionMessage.MESSAGE_TYPE && message.getType() != CreateLeaseSetMessage.MESSAGE_TYPE) throw new I2PSessionException("Already closed"); - _primary.sendMessage(message); + _primary.sendMessage_unchecked(message); + } + + /** + * Deliver an I2CP message to the router. + * Does NOT check state. Call only from connect() or other methods that need to + * send messages when not in OPEN state. + * + * @throws I2PSessionException if the message is malformed or there is an error writing it out + * @since 0.9.23 + */ + @Override + void sendMessage_unchecked(I2CPMessage message) throws I2PSessionException { + _primary.sendMessage_unchecked(message); } /** diff --git a/core/java/src/net/i2p/client/naming/BlockfileNamingService.java b/core/java/src/net/i2p/client/naming/BlockfileNamingService.java index ec12eb792d8543bd258cf66e644a33a088057d56..efa8b3e064710a2c5bf0aaf61a558332a32a7b9b 100644 --- a/core/java/src/net/i2p/client/naming/BlockfileNamingService.java +++ b/core/java/src/net/i2p/client/naming/BlockfileNamingService.java @@ -621,11 +621,33 @@ public class BlockfileNamingService extends DummyNamingService { ////////// Start NamingService API /* + * + * Will strip a "www." prefix and retry if lookup fails + * + * @param hostname upper/lower case ok * @param options If non-null and contains the key "list", lookup in * that list only, otherwise all lists */ @Override public Destination lookup(String hostname, Properties lookupOptions, Properties storedOptions) { + Destination rv = lookup2(hostname, lookupOptions, storedOptions); + if (rv == null) { + // if hostname starts with "www.", strip and try again + // but not for www.i2p + hostname = hostname.toLowerCase(Locale.US); + if (hostname.startsWith("www.") && hostname.length() > 7) { + hostname = hostname.substring(4); + rv = lookup2(hostname, lookupOptions, storedOptions); + } + } + return rv; + } + + /* + * @param options If non-null and contains the key "list", lookup in + * that list only, otherwise all lists + */ + private Destination lookup2(String hostname, Properties lookupOptions, Properties storedOptions) { String listname = null; if (lookupOptions != null) listname = lookupOptions.getProperty("list"); diff --git a/core/java/src/net/i2p/client/naming/MetaNamingService.java b/core/java/src/net/i2p/client/naming/MetaNamingService.java index ffae355a57b1c648e69058ab0df46ef168ebd025..5a4ebd275d299763f5dcb39f683944706a3f4a9b 100644 --- a/core/java/src/net/i2p/client/naming/MetaNamingService.java +++ b/core/java/src/net/i2p/client/naming/MetaNamingService.java @@ -41,8 +41,8 @@ public class MetaNamingService extends DummyNamingService { while (tok.hasMoreTokens()) { try { Class<?> cls = Class.forName(tok.nextToken()); - Constructor<?> con = cls.getConstructor(new Class[] { I2PAppContext.class }); - addNamingService((NamingService)con.newInstance(new Object[] { context }), false); + Constructor<?> con = cls.getConstructor(I2PAppContext.class); + addNamingService((NamingService)con.newInstance(), false); } catch (Exception ex) { } } diff --git a/core/java/src/net/i2p/client/naming/NamingService.java b/core/java/src/net/i2p/client/naming/NamingService.java index 5a38c9e7fa1e17726d70351886ec97f7870d4dd0..78e04232d491b537e06676f43c49a97fa15901c4 100644 --- a/core/java/src/net/i2p/client/naming/NamingService.java +++ b/core/java/src/net/i2p/client/naming/NamingService.java @@ -536,8 +536,8 @@ public abstract class NamingService { String impl = context.getProperty(PROP_IMPL, DEFAULT_IMPL); try { Class<?> cls = Class.forName(impl); - Constructor<?> con = cls.getConstructor(new Class[] { I2PAppContext.class }); - instance = (NamingService)con.newInstance(new Object[] { context }); + Constructor<?> con = cls.getConstructor(I2PAppContext.class); + instance = (NamingService)con.newInstance(context); } catch (Exception ex) { Log log = context.logManager().getLog(NamingService.class); // Blockfile may throw RuntimeException but HostsTxt won't diff --git a/core/java/src/net/i2p/client/naming/SingleFileNamingService.java b/core/java/src/net/i2p/client/naming/SingleFileNamingService.java index c331fae01ed25a3a74f4b253918dba6866eff157..38a174b7e727970e6ce0f217846a281d033fbc57 100644 --- a/core/java/src/net/i2p/client/naming/SingleFileNamingService.java +++ b/core/java/src/net/i2p/client/naming/SingleFileNamingService.java @@ -77,6 +77,8 @@ public class SingleFileNamingService extends NamingService { } /** + * Will strip a "www." prefix and retry if lookup fails + * * @param hostname case-sensitive; caller should convert to lower case * @param lookupOptions ignored * @param storedOptions ignored @@ -85,9 +87,11 @@ public class SingleFileNamingService extends NamingService { public Destination lookup(String hostname, Properties lookupOptions, Properties storedOptions) { try { String key = getKey(hostname); + if (key == null && hostname.startsWith("www.") && hostname.length() > 7) + key = getKey(hostname.substring(4)); if (key != null) return lookupBase64(key); - } catch (Exception ioe) { + } catch (IOException ioe) { if (_file.exists()) _log.error("Error loading hosts file " + _file, ioe); else if (_log.shouldLog(Log.WARN)) @@ -119,7 +123,7 @@ public class SingleFileNamingService extends NamingService { return line.substring(0, split); } return null; - } catch (Exception ioe) { + } catch (IOException ioe) { if (_file.exists()) _log.error("Error loading hosts file " + _file, ioe); else if (_log.shouldLog(Log.WARN)) diff --git a/core/java/src/net/i2p/crypto/CertUtil.java b/core/java/src/net/i2p/crypto/CertUtil.java index e0b73cade6f021fb8362109070de4c94dfbeb3e6..fe588fce375d44738e31379f4bf0f7c923dd8ee4 100644 --- a/core/java/src/net/i2p/crypto/CertUtil.java +++ b/core/java/src/net/i2p/crypto/CertUtil.java @@ -1,11 +1,16 @@ package net.i2p.crypto; import java.io.File; +import java.io.FileInputStream; +import java.io.InputStream; import java.io.IOException; import java.io.OutputStream; import java.io.OutputStreamWriter; import java.io.PrintWriter; +import java.security.GeneralSecurityException; +import java.security.PublicKey; import java.security.cert.Certificate; +import java.security.cert.CertificateFactory; import java.security.cert.CertificateEncodingException; import java.security.cert.X509Certificate; import java.util.Locale; @@ -77,12 +82,40 @@ public class CertUtil { * @return value or null if not found */ public static String getSubjectValue(X509Certificate cert, String type) { + X500Principal p = cert.getSubjectX500Principal(); + return getValue(p, type); + } + + /** + * Get a value out of the issuer distinguished name. + * + * Warning - unsupported in Android (no javax.naming), returns null. + * + * @param type e.g. "CN" + * @return value or null if not found + * @since 0.9.24 + */ + public static String getIssuerValue(X509Certificate cert, String type) { + X500Principal p = cert.getIssuerX500Principal(); + return getValue(p, type); + } + + /** + * Get a value out of a X500Principal. + * + * Warning - unsupported in Android (no javax.naming), returns null. + * + * @param type e.g. "CN" + * @return value or null if not found + */ + private static String getValue(X500Principal p, String type) { if (SystemVersion.isAndroid()) { error("Don't call this in Android", new UnsupportedOperationException("I did it")); return null; } + if (p == null) + return null; type = type.toUpperCase(Locale.US); - X500Principal p = cert.getSubjectX500Principal(); String subj = p.getName(); try { LdapName name = new LdapName(subj); @@ -106,4 +139,40 @@ public class CertUtil { Log l = ctx.logManager().getLog(CertUtil.class); l.log(level, msg, t); } + + /** + * Get the Java public key from a X.509 certificate file. + * Throws if the certificate is invalid (e.g. expired). + * + * @return non-null, throws on all errors including certificate invalid + * @since 0.9.24 moved from SU3File private method + */ + public static PublicKey loadKey(File kd) throws IOException, GeneralSecurityException { + return loadCert(kd).getPublicKey(); + } + + /** + * Get the certificate from a X.509 certificate file. + * Throws if the certificate is invalid (e.g. expired). + * + * @return non-null, throws on all errors including certificate invalid + * @since 0.9.24 adapted from SU3File private method + */ + public static X509Certificate loadCert(File kd) throws IOException, GeneralSecurityException { + InputStream fis = null; + try { + fis = new FileInputStream(kd); + CertificateFactory cf = CertificateFactory.getInstance("X.509"); + X509Certificate cert = (X509Certificate)cf.generateCertificate(fis); + cert.checkValidity(); + return cert; + } catch (IllegalArgumentException iae) { + // java 1.8.0_40-b10, openSUSE + // Exception in thread "main" java.lang.IllegalArgumentException: Input byte array has wrong 4-byte ending unit + // at java.util.Base64$Decoder.decode0(Base64.java:704) + throw new GeneralSecurityException("cert error", iae); + } finally { + try { if (fis != null) fis.close(); } catch (IOException foo) {} + } + } } diff --git a/core/java/src/net/i2p/crypto/CryptixAESEngine.java b/core/java/src/net/i2p/crypto/CryptixAESEngine.java index f7429c6d5db5efedec0d92cd2258b7c0a489323c..e5cf7cb92532ad97eef08ca000a969536d580854 100644 --- a/core/java/src/net/i2p/crypto/CryptixAESEngine.java +++ b/core/java/src/net/i2p/crypto/CryptixAESEngine.java @@ -38,34 +38,12 @@ import net.i2p.util.SystemVersion; */ public class CryptixAESEngine extends AESEngine { private final static CryptixRijndael_Algorithm _algo = new CryptixRijndael_Algorithm(); - private final static boolean USE_FAKE_CRYPTO = false; // keys are now cached in the SessionKey objects //private CryptixAESKeyCache _cache; /** see test results below */ private static final int MIN_SYSTEM_AES_LENGTH = 704; - private static final boolean USE_SYSTEM_AES; - static { - boolean systemOK = false; - if (hasAESNI()) { - try { - systemOK = Cipher.getMaxAllowedKeyLength("AES") >= 256; - } catch (GeneralSecurityException gse) { - // a NoSuchAlgorithmException - } catch (NoSuchMethodError nsme) { - // JamVM, gij - try { - Cipher cipher = Cipher.getInstance("AES/CBC/NoPadding"); - SecretKeySpec key = new SecretKeySpec(new byte[32], "AES"); - cipher.init(Cipher.ENCRYPT_MODE, key); - systemOK = true; - } catch (GeneralSecurityException gse) { - } - } - } - USE_SYSTEM_AES = systemOK; - //System.out.println("Using system AES? " + systemOK); - } + private static final boolean USE_SYSTEM_AES = hasAESNI() && CryptoCheck.isUnlimited(); /** * Do we have AES-NI support in the processor and JVM? @@ -124,12 +102,6 @@ public class CryptixAESEngine extends AESEngine { if (length % 16 != 0) throw new IllegalArgumentException("Only lengths mod 16 are supported here"); - if (USE_FAKE_CRYPTO) { - _log.warn("AES Crypto disabled! Using trivial XOR"); - System.arraycopy(payload, payloadIndex, out, outIndex, length); - return; - } - if (USE_SYSTEM_AES && length >= MIN_SYSTEM_AES_LENGTH) { try { SecretKeySpec key = new SecretKeySpec(sessionKey.getData(), "AES"); @@ -177,12 +149,6 @@ public class CryptixAESEngine extends AESEngine { throw new IllegalArgumentException("out is too small (out.length=" + out.length + " outIndex=" + outIndex + " length=" + length); - if (USE_FAKE_CRYPTO) { - _log.warn("AES Crypto disabled! Using trivial XOR"); - System.arraycopy(payload, payloadIndex, out, outIndex, length); - return ; - } - if (USE_SYSTEM_AES && length >= MIN_SYSTEM_AES_LENGTH) { try { SecretKeySpec key = new SecretKeySpec(sessionKey.getData(), "AES"); diff --git a/core/java/src/net/i2p/crypto/CryptoCheck.java b/core/java/src/net/i2p/crypto/CryptoCheck.java new file mode 100644 index 0000000000000000000000000000000000000000..31eac62dcee17fc577ec4a264e771a21f2697958 --- /dev/null +++ b/core/java/src/net/i2p/crypto/CryptoCheck.java @@ -0,0 +1,47 @@ +package net.i2p.crypto; + +import java.security.GeneralSecurityException; +import javax.crypto.Cipher; +import javax.crypto.spec.SecretKeySpec; + +/** + * Moved from CryptixAESEngine and net.i2p.router.tasks.CryptoChecker + * + * @since 0.9.23 + */ +public class CryptoCheck { + + private static final boolean _isUnlimited; + + static { + boolean unlimited = false; + try { + unlimited = Cipher.getMaxAllowedKeyLength("AES") >= 256; + } catch (GeneralSecurityException gse) { + // a NoSuchAlgorithmException + } catch (NoSuchMethodError nsme) { + // JamVM, gij + try { + Cipher cipher = Cipher.getInstance("AES/CBC/NoPadding"); + SecretKeySpec key = new SecretKeySpec(new byte[32], "AES"); + cipher.init(Cipher.ENCRYPT_MODE, key); + unlimited = true; + } catch (GeneralSecurityException gse) { + } + } + _isUnlimited = unlimited; + } + + private CryptoCheck() {} + + /** + * Do we have unlimited crypto? + */ + public static boolean isUnlimited() { + return _isUnlimited; + } + + public static void main(String args[]) { + System.out.println("Unlimited? " + isUnlimited()); + } +} diff --git a/core/java/src/net/i2p/crypto/CryptoConstants.java b/core/java/src/net/i2p/crypto/CryptoConstants.java index 94facd366bb36bac43e4b676f5f7be6474acd842..b9e0327dd385009896a94bf651046dde3348e763 100644 --- a/core/java/src/net/i2p/crypto/CryptoConstants.java +++ b/core/java/src/net/i2p/crypto/CryptoConstants.java @@ -92,8 +92,8 @@ public class CryptoConstants { if (ECConstants.isBCAvailable()) { try { Class<?> cls = Class.forName("org.bouncycastle.jce.spec.ElGamalParameterSpec"); - Constructor<?> con = cls.getConstructor(new Class[] {BigInteger.class, BigInteger.class}); - spec = (AlgorithmParameterSpec)con.newInstance(new Object[] {elgp, elgg}); + Constructor<?> con = cls.getConstructor(BigInteger.class, BigInteger.class); + spec = (AlgorithmParameterSpec)con.newInstance(elgp, elgg); //System.out.println("BC ElG spec loaded"); } catch (Exception e) { //System.out.println("BC ElG spec failed"); diff --git a/core/java/src/net/i2p/crypto/DSAEngine.java b/core/java/src/net/i2p/crypto/DSAEngine.java index d7dfe657a188f88ebb4fd9af5b1fb3f4c83cd08b..76f2004f8b01c1c9ef0777531f0505102d2ea1eb 100644 --- a/core/java/src/net/i2p/crypto/DSAEngine.java +++ b/core/java/src/net/i2p/crypto/DSAEngine.java @@ -257,7 +257,7 @@ public class DSAEngine { _log.warn("Took too long to verify the signature (" + diff + "ms)"); } return ok; - } catch (Exception e) { + } catch (RuntimeException e) { _log.log(Log.CRIT, "Error verifying the signature", e); return false; } diff --git a/core/java/src/net/i2p/crypto/DirKeyRing.java b/core/java/src/net/i2p/crypto/DirKeyRing.java index cc840b36e796d730de755622f0e3a10e198fbf34..899f41847dec24d1d05fa92df2891aa646a52a40 100644 --- a/core/java/src/net/i2p/crypto/DirKeyRing.java +++ b/core/java/src/net/i2p/crypto/DirKeyRing.java @@ -35,6 +35,8 @@ class DirKeyRing implements KeyRing { * and have a CN == keyName. * * CN check unsupported on Android. + * + * @return null if file doesn't exist, throws on all other errors */ public PublicKey getKey(String keyName, String scope, SigType type) throws GeneralSecurityException, IOException { @@ -47,26 +49,15 @@ class DirKeyRing implements KeyRing { File kd = new File(sd, fileName + ".crt"); if (!kd.exists()) return null; - InputStream fis = null; - try { - fis = new FileInputStream(kd); - CertificateFactory cf = CertificateFactory.getInstance("X.509"); - X509Certificate cert = (X509Certificate)cf.generateCertificate(fis); - cert.checkValidity(); - if (!SystemVersion.isAndroid()) { - // getSubjectValue() unsupported on Android. - // Any cert problems will be caught in non-Android testing. - String cn = CertUtil.getSubjectValue(cert, "CN"); - if (!keyName.equals(cn)) - throw new GeneralSecurityException("CN mismatch: " + cn); - } - return cert.getPublicKey(); - } catch (IllegalArgumentException iae) { - // java 1.8.0_40-b10, openSUSE - throw new GeneralSecurityException("Bad cert", iae); - } finally { - try { if (fis != null) fis.close(); } catch (IOException foo) {} + X509Certificate cert = CertUtil.loadCert(kd); + if (!SystemVersion.isAndroid()) { + // getSubjectValue() unsupported on Android. + // Any cert problems will be caught in non-Android testing. + String cn = CertUtil.getSubjectValue(cert, "CN"); + if (!keyName.equals(cn)) + throw new GeneralSecurityException("CN mismatch: " + cn); } + return cert.getPublicKey(); } /** diff --git a/core/java/src/net/i2p/crypto/ECConstants.java b/core/java/src/net/i2p/crypto/ECConstants.java index affe6e4e8b58fe94e42b43d9e78b224148f8cb11..8bca0b0ac04ce46de69afe762eefc0d15d565b8f 100644 --- a/core/java/src/net/i2p/crypto/ECConstants.java +++ b/core/java/src/net/i2p/crypto/ECConstants.java @@ -3,6 +3,7 @@ package net.i2p.crypto; import java.lang.reflect.Constructor; import java.math.BigInteger; import java.security.AlgorithmParameters; +import java.security.GeneralSecurityException; import java.security.Provider; import java.security.Security; import java.security.spec.ECField; @@ -42,8 +43,8 @@ class ECConstants { if (Security.getProvider("BC") == null) { try { Class<?> cls = Class.forName("org.bouncycastle.jce.provider.BouncyCastleProvider"); - Constructor<?> con = cls.getConstructor(new Class[0]); - Provider bc = (Provider)con.newInstance(new Object[0]); + Constructor<?> con = cls.getConstructor(); + Provider bc = (Provider)con.newInstance(); Security.addProvider(bc); log("Added BC provider"); loaded = true; @@ -278,7 +279,7 @@ class ECConstants { AlgorithmParameters ap; try { ap = AlgorithmParameters.getInstance("EC"); - } catch (Exception e) { + } catch (GeneralSecurityException e) { if (BC_AVAILABLE) { log("Named curve " + name + " is not available, trying BC", e); ap = AlgorithmParameters.getInstance("EC", "BC"); @@ -292,7 +293,7 @@ class ECConstants { ECParameterSpec rv = ap.getParameterSpec(ECParameterSpec.class); log("Named curve " + name + " loaded"); return rv; - } catch (Exception e) { + } catch (GeneralSecurityException e) { log("Named curve " + name + " is not available", e); return null; } diff --git a/core/java/src/net/i2p/crypto/ElGamalAESEngine.java b/core/java/src/net/i2p/crypto/ElGamalAESEngine.java index 126a06a36f08a098ac20a37504de49cdd93ba4ed..0fe652bb219305fc889a8b40358fe29d5d32f270 100644 --- a/core/java/src/net/i2p/crypto/ElGamalAESEngine.java +++ b/core/java/src/net/i2p/crypto/ElGamalAESEngine.java @@ -327,12 +327,12 @@ public class ElGamalAESEngine { //ByteArrayInputStream bais = new ByteArrayInputStream(decrypted); int cur = 0; long numTags = DataHelper.fromLong(decrypted, cur, 2); - if ((numTags < 0) || (numTags > MAX_TAGS_RECEIVED)) throw new Exception("Invalid number of session tags"); + if ((numTags < 0) || (numTags > MAX_TAGS_RECEIVED)) throw new IllegalArgumentException("Invalid number of session tags"); if (numTags > 0) tags = new ArrayList<SessionTag>((int)numTags); cur += 2; //_log.debug("# tags: " + numTags); if (numTags * SessionTag.BYTE_LENGTH > decrypted.length - 2) { - throw new Exception("# tags: " + numTags + " is too many for " + (decrypted.length - 2)); + throw new IllegalArgumentException("# tags: " + numTags + " is too many for " + (decrypted.length - 2)); } for (int i = 0; i < numTags; i++) { byte tag[] = new byte[SessionTag.BYTE_LENGTH]; @@ -344,7 +344,7 @@ public class ElGamalAESEngine { cur += 4; //_log.debug("len: " + len); if ((len < 0) || (len > decrypted.length - cur - Hash.HASH_LENGTH - 1)) - throw new Exception("Invalid size of payload (" + len + ", remaining " + (decrypted.length-cur) +")"); + throw new IllegalArgumentException("Invalid size of payload (" + len + ", remaining " + (decrypted.length-cur) +")"); //byte hashval[] = new byte[Hash.HASH_LENGTH]; //System.arraycopy(decrypted, cur, hashval, 0, Hash.HASH_LENGTH); //readHash = new Hash(); @@ -379,8 +379,8 @@ public class ElGamalAESEngine { return unencrData; } - throw new Exception("Hash does not match"); - } catch (Exception e) { + throw new RuntimeException("Hash does not match"); + } catch (RuntimeException e) { if (_log.shouldLog(Log.WARN)) _log.warn("Unable to decrypt AES block", e); return null; } diff --git a/core/java/src/net/i2p/crypto/EncType.java b/core/java/src/net/i2p/crypto/EncType.java index cb9c0ad9632432ae068fe9b0566825c1ecc8a361..fc07d5d5a1a5d06725acea3f719e659ef47d3ec6 100644 --- a/core/java/src/net/i2p/crypto/EncType.java +++ b/core/java/src/net/i2p/crypto/EncType.java @@ -108,7 +108,7 @@ public enum EncType { return true; try { getParams(); - } catch (Exception e) { + } catch (InvalidParameterSpecException e) { return false; } return true; diff --git a/core/java/src/net/i2p/crypto/KeyGenerator.java b/core/java/src/net/i2p/crypto/KeyGenerator.java index 60742c2fb9682731d0ebab6be19ddb9dbb015ed3..efe9bacac46dc6784b9c295b825bdbb9337db9ed 100644 --- a/core/java/src/net/i2p/crypto/KeyGenerator.java +++ b/core/java/src/net/i2p/crypto/KeyGenerator.java @@ -56,11 +56,9 @@ import net.i2p.util.RandomSource; * @author jrandom */ public class KeyGenerator { - //private final Log _log; private final I2PAppContext _context; public KeyGenerator(I2PAppContext context) { - //_log = context.logManager().getLog(KeyGenerator.class); _context = context; } @@ -85,7 +83,6 @@ public class KeyGenerator { /** * PBE the passphrase with the salt. * Warning - SLOW - * Deprecated - Used by Syndie only. */ public SessionKey generateSessionKey(byte salt[], byte passphrase[]) { byte salted[] = new byte[16+passphrase.length]; @@ -122,6 +119,7 @@ public class KeyGenerator { /** * @deprecated use getElGamalExponentSize() which allows override in the properties */ + @Deprecated public static final int PUBKEY_EXPONENT_SIZE = DEFAULT_USE_LONG_EXPONENT ? PUBKEY_EXPONENT_SIZE_FULL : PUBKEY_EXPONENT_SIZE_SHORT; @@ -228,7 +226,7 @@ public class KeyGenerator { } /** - * Generic signature type, supports DSA and ECDSA + * Generic signature type, supports DSA, ECDSA, EdDSA * @since 0.9.9 */ public SimpleDataStructure[] generateSigningKeys(SigType type) throws GeneralSecurityException { @@ -343,7 +341,7 @@ public class KeyGenerator { public static void main(String args[]) { try { main2(args); - } catch (Exception e) { + } catch (RuntimeException e) { e.printStackTrace(); } } @@ -381,7 +379,7 @@ public class KeyGenerator { try { System.out.println("Testing " + type); testSig(type, runs); - } catch (Exception e) { + } catch (GeneralSecurityException e) { System.out.println("error testing " + type); e.printStackTrace(); } diff --git a/core/java/src/net/i2p/crypto/KeyStoreUtil.java b/core/java/src/net/i2p/crypto/KeyStoreUtil.java index 06b73cea81cbc8832269dc4069a2fc72868e1a5e..fe65a7afb057fc8fe625ed0dbaeebbae6fb2d894 100644 --- a/core/java/src/net/i2p/crypto/KeyStoreUtil.java +++ b/core/java/src/net/i2p/crypto/KeyStoreUtil.java @@ -5,13 +5,13 @@ import java.io.FileInputStream; import java.io.InputStream; import java.io.IOException; import java.io.OutputStream; +import java.math.BigInteger; import java.security.GeneralSecurityException; import java.security.KeyStore; import java.security.PrivateKey; import java.security.cert.Certificate; import java.security.cert.CertificateExpiredException; import java.security.cert.CertificateNotYetValidException; -import java.security.cert.CertificateFactory; import java.security.cert.X509Certificate; import java.util.Enumeration; import java.util.Locale; @@ -31,11 +31,46 @@ import net.i2p.util.SystemVersion; */ public class KeyStoreUtil { + public static boolean _blacklistLogged; + public static final String DEFAULT_KEYSTORE_PASSWORD = "changeit"; private static final String DEFAULT_KEY_ALGORITHM = "RSA"; private static final int DEFAULT_KEY_SIZE = 2048; private static final int DEFAULT_KEY_VALID_DAYS = 3652; // 10 years + /** + * No reports of some of these in a Java keystore but just to be safe... + * CNNIC ones are in Ubuntu keystore. + */ + private static final BigInteger[] BLACKLIST_SERIAL = new BigInteger[] { + // CNNIC https://googleonlinesecurity.blogspot.com/2015/03/maintaining-digital-certificate-security.html + new BigInteger("49:33:00:01".replace(":", ""), 16), + // CNNIC EV root https://bugzilla.mozilla.org/show_bug.cgi?id=607208 + new BigInteger("48:9f:00:01".replace(":", ""), 16), + // Superfish http://blog.erratasec.com/2015/02/extracting-superfish-certificate.html + new BigInteger("d2:fc:13:87:a9:44:dc:e7".replace(":", ""), 16), + // eDellRoot https://www.reddit.com/r/technology/comments/3twmfv/dell_ships_laptops_with_rogue_root_ca_exactly/ + new BigInteger("6b:c5:7b:95:18:93:aa:97:4b:62:4a:c0:88:fc:3b:b6".replace(":", ""), 16), + // DSDTestProvider https://blog.hboeck.de/archives/876-Superfish-2.0-Dangerous-Certificate-on-Dell-Laptops-breaks-encrypted-HTTPS-Connections.html + // serial number is actually negative; hex string as reported by certtool below + //new BigInteger("a4:4c:38:47:f8:ee:71:80:43:4d:b1:80:b9:a7:e9:62".replace(":", ""), 16) + new BigInteger("-5b:b3:c7:b8:07:11:8e:7f:bc:b2:4e:7f:46:58:16:9e".replace(":", ""), 16) + }; + + /** + * Corresponding issuer CN for the serial number. + * Must be same number of entries as BLACKLIST_SERIAL. + * See removeBlacklistedCerts() below for alternatives if we want + * to blacklist a cert without an issuer CN. + */ + private static final String[] BLACKLIST_ISSUER_CN = new String[] { + "CNNIC ROOT", + "China Internet Network Information Center EV Certificates Root", + "Superfish, Inc.", + "eDellRoot", + "DSDTestProvider" + }; + /** * Create a new KeyStore object, and load it from ksFile if it is * non-null and it exists. @@ -63,6 +98,8 @@ public class KeyStoreUtil { if (ksFile != null && !exists) { OutputStream fos = null; try { + // must be initted + ks.load(null, DEFAULT_KEYSTORE_PASSWORD.toCharArray()); fos = new SecureFileOutputStream(ksFile); ks.store(fos, pwchars); } finally { @@ -98,7 +135,8 @@ public class KeyStoreUtil { try { ks.load(null, DEFAULT_KEYSTORE_PASSWORD.toCharArray()); success = addCerts(new File(System.getProperty("java.home"), "etc/security/cacerts"), ks) > 0; - } catch (Exception e) {} + } catch (IOException e) { + } catch (GeneralSecurityException e) {} } else { success = loadCerts(new File(System.getProperty("java.home"), "etc/security/cacerts.bks"), ks); } @@ -109,11 +147,14 @@ public class KeyStoreUtil { } } - if (!success) { + if (success) { + removeBlacklistedCerts(ks); + } else { try { // must be initted ks.load(null, DEFAULT_KEYSTORE_PASSWORD.toCharArray()); - } catch (Exception e) {} + } catch (IOException e) { + } catch (GeneralSecurityException e) {} error("All key store loads failed, will only load local certificates", null); } return ks; @@ -140,13 +181,15 @@ public class KeyStoreUtil { try { // not clear if null is allowed for password ks.load(null, DEFAULT_KEYSTORE_PASSWORD.toCharArray()); - } catch (Exception foo) {} + } catch (IOException foo) { + } catch (GeneralSecurityException e) {} return false; } catch (IOException ioe) { error("KeyStore load error, no default keys: " + file.getAbsolutePath(), ioe); try { ks.load(null, DEFAULT_KEYSTORE_PASSWORD.toCharArray()); - } catch (Exception foo) {} + } catch (IOException foo) { + } catch (GeneralSecurityException e) {} return false; } finally { try { if (fis != null) fis.close(); } catch (IOException foo) {} @@ -167,11 +210,66 @@ public class KeyStoreUtil { for(Enumeration<String> e = ks.aliases(); e.hasMoreElements();) { String alias = e.nextElement(); if (ks.isCertificateEntry(alias)) { - info("Found cert " + alias); + //info("Found cert " + alias); count++; } } - } catch (Exception foo) {} + } catch (GeneralSecurityException e) {} + return count; + } + + /** + * Remove all blacklisted X509 Certs in a key store. + * Match by serial number and issuer CN, which should uniquely identify a cert, + * if the CN is present. Should be faster than fingerprints. + * + * @return number successfully removed + * @since 0.9.24 + */ + private static int removeBlacklistedCerts(KeyStore ks) { + // This matches on the CN in the issuer, + // and we can't do that on Android. + // We could just match the whole string, and we will have to + // if we want do it on Android or match a cert that has an issuer without a CN. + // Or, most certs that don't have a CN have an OU, that could be a fallback. + // Or do sha1hash(cert.getEncoded()) but that would be slower. + if (SystemVersion.isAndroid()) + return 0; + int count = 0; + try { + for(Enumeration<String> e = ks.aliases(); e.hasMoreElements();) { + String alias = e.nextElement(); + if (ks.isCertificateEntry(alias)) { + Certificate c = ks.getCertificate(alias); + if (c != null && (c instanceof X509Certificate)) { + X509Certificate xc = (X509Certificate) c; + BigInteger serial = xc.getSerialNumber(); + for (int i = 0; i < BLACKLIST_SERIAL.length; i++) { + // debug: + //String xname = CertUtil.getIssuerValue(xc, "CN"); + //info("Found \"" + xname + "\" s/n: " + serial.toString(16)); + //if (xname == null) + // info("name is null, full issuer: " + xc.getIssuerX500Principal().getName()); + if (BLACKLIST_SERIAL[i].equals(serial)) { + String name = CertUtil.getIssuerValue(xc, "CN"); + if (BLACKLIST_ISSUER_CN[i].equals(name)) { + ks.deleteEntry(alias); + count++; + if (!_blacklistLogged) { + // should this be a logAlways? + warn("Ignoring blacklisted certificate \"" + alias + + "\" issued by: \"" + name + + "\" s/n: " + serial.toString(16), null); + } + } + } + } + } + } + } + } catch (GeneralSecurityException e) {} + if (count > 0) + _blacklistLogged = true; return count; } @@ -198,7 +296,8 @@ public class KeyStoreUtil { String alias = f.getName().toLowerCase(Locale.US); if (alias.endsWith(".crt") || alias.endsWith(".pem") || alias.endsWith(".key") || alias.endsWith(".der") || alias.endsWith(".key") || alias.endsWith(".p7b") || - alias.endsWith(".p7c") || alias.endsWith(".pfx") || alias.endsWith(".p12")) + alias.endsWith(".p7c") || alias.endsWith(".pfx") || alias.endsWith(".p12") || + alias.endsWith(".cer")) alias = alias.substring(0, alias.length() - 4); boolean success = addCert(f, alias, ks); if (success) @@ -217,45 +316,32 @@ public class KeyStoreUtil { * @since 0.8.2, moved from SSLEepGet in 0.9.9 */ public static boolean addCert(File file, String alias, KeyStore ks) { - InputStream fis = null; try { - fis = new FileInputStream(file); - CertificateFactory cf = CertificateFactory.getInstance("X.509"); - X509Certificate cert = (X509Certificate)cf.generateCertificate(fis); + X509Certificate cert = CertUtil.loadCert(file); info("Read X509 Certificate from " + file.getAbsolutePath() + " Issuer: " + cert.getIssuerX500Principal() + + " Serial: " + cert.getSerialNumber().toString(16) + "; Valid From: " + cert.getNotBefore() + " To: " + cert.getNotAfter()); - try { - cert.checkValidity(); - } catch (CertificateExpiredException cee) { - String s = "Rejecting expired X509 Certificate: " + file.getAbsolutePath(); - // Android often has old system certs - if (SystemVersion.isAndroid()) - warn(s, cee); - else - error(s, cee); - return false; - } catch (CertificateNotYetValidException cnyve) { - error("Rejecting X509 Certificate not yet valid: " + file.getAbsolutePath(), cnyve); - return false; - } ks.setCertificateEntry(alias, cert); info("Now trusting X509 Certificate, Issuer: " + cert.getIssuerX500Principal()); + } catch (CertificateExpiredException cee) { + String s = "Rejecting expired X509 Certificate: " + file.getAbsolutePath(); + // Android often has old system certs + if (SystemVersion.isAndroid()) + warn(s, cee); + else + error(s, cee); + return false; + } catch (CertificateNotYetValidException cnyve) { + error("Rejecting X509 Certificate not yet valid: " + file.getAbsolutePath(), cnyve); + return false; } catch (GeneralSecurityException gse) { error("Error reading X509 Certificate: " + file.getAbsolutePath(), gse); return false; } catch (IOException ioe) { error("Error reading X509 Certificate: " + file.getAbsolutePath(), ioe); return false; - } catch (IllegalArgumentException iae) { - // java 1.8.0_40-b10, openSUSE - // Exception in thread "main" java.lang.IllegalArgumentException: Input byte array has wrong 4-byte ending unit - // at java.util.Base64$Decoder.decode0(Base64.java:704) - error("Error reading X509 Certificate: " + file.getAbsolutePath(), iae); - return false; - } finally { - try { if (fis != null) fis.close(); } catch (IOException foo) {} } return true; } @@ -316,7 +402,10 @@ public class KeyStoreUtil { error("Not overwriting key " + alias + ", already exists in " + ks, null); return false; } - } catch (Exception e) { + } catch (IOException e) { + error("Not overwriting key \"" + alias + "\", already exists in " + ks, e); + return false; + } catch (GeneralSecurityException e) { error("Not overwriting key \"" + alias + "\", already exists in " + ks, e); return false; } @@ -354,7 +443,10 @@ public class KeyStoreUtil { success = getPrivateKey(ks, ksPW, alias, keyPW) != null; if (!success) error("Key gen failed to get private key", null); - } catch (Exception e) { + } catch (IOException e) { + error("Key gen failed to get private key", e); + success = false; + } catch (GeneralSecurityException e) { error("Key gen failed to get private key", e); success = false; } @@ -503,9 +595,9 @@ public class KeyStoreUtil { /**** public static void main(String[] args) { + File ksf = (args.length > 0) ? new File(args[0]) : null; try { - if (args.length > 0) { - File ksf = new File(args[0]); + if (ksf != null && !ksf.exists()) { createKeyStore(ksf, DEFAULT_KEYSTORE_PASSWORD); System.out.println("Created empty keystore " + ksf); } else { @@ -514,6 +606,17 @@ public class KeyStoreUtil { System.out.println("Loaded system keystore"); int count = countCerts(ks); System.out.println("Found " + count + " certs"); + if (ksf != null && ksf.isDirectory()) { + count = addCerts(ksf, ks); + System.out.println("Found " + count + " certs in " + ksf); + if (count > 0) { + // rerun blacklist as a test + _blacklistLogged = false; + count = removeBlacklistedCerts(ks); + if (count > 0) + System.out.println("Found " + count + " blacklisted certs in " + ksf); + } + } } else { System.out.println("FAIL"); } diff --git a/core/java/src/net/i2p/crypto/SU3File.java b/core/java/src/net/i2p/crypto/SU3File.java index f8753aee50d3a55454e49c10c35aa0bdaa837be7..3c8154c6eeab3e9f87aed62b0f813e46d9f2e196 100644 --- a/core/java/src/net/i2p/crypto/SU3File.java +++ b/core/java/src/net/i2p/crypto/SU3File.java @@ -15,8 +15,6 @@ import java.security.GeneralSecurityException; import java.security.MessageDigest; import java.security.PrivateKey; import java.security.PublicKey; -import java.security.cert.CertificateFactory; -import java.security.cert.X509Certificate; import java.util.ArrayList; import java.util.Arrays; import java.util.EnumSet; @@ -978,24 +976,12 @@ public class SU3File { * @since 0.9.15 */ private static PublicKey loadKey(File kd) throws IOException { - InputStream fis = null; try { - fis = new FileInputStream(kd); - CertificateFactory cf = CertificateFactory.getInstance("X.509"); - X509Certificate cert = (X509Certificate)cf.generateCertificate(fis); - cert.checkValidity(); - return cert.getPublicKey(); + return CertUtil.loadKey(kd); } catch (GeneralSecurityException gse) { IOException ioe = new IOException("cert error"); ioe.initCause(gse); throw ioe; - } catch (IllegalArgumentException iae) { - // java 1.8.0_40-b10, openSUSE - IOException ioe = new IOException("cert error"); - ioe.initCause(iae); - throw ioe; - } finally { - try { if (fis != null) fis.close(); } catch (IOException foo) {} } } } diff --git a/core/java/src/net/i2p/crypto/SigType.java b/core/java/src/net/i2p/crypto/SigType.java index ca05f8eedca0b3422456e0eda8b28adce43189d6..05dd1906e7760c3e198853abf28175eac85c83c6 100644 --- a/core/java/src/net/i2p/crypto/SigType.java +++ b/core/java/src/net/i2p/crypto/SigType.java @@ -1,5 +1,6 @@ package net.i2p.crypto; +import java.security.GeneralSecurityException; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import java.security.Signature; @@ -11,7 +12,9 @@ import java.util.Map; import net.i2p.crypto.eddsa.spec.EdDSANamedCurveTable; import net.i2p.data.Hash; +import net.i2p.data.SigningPrivateKey; import net.i2p.data.SimpleDataStructure; +import net.i2p.util.SystemVersion; /** * Defines the properties for various signature types @@ -193,11 +196,29 @@ public enum SigType { return true; try { getParams(); - if (getBaseAlgorithm() != SigAlgo.EdDSA) - Signature.getInstance(getAlgorithmName()); + if (getBaseAlgorithm() != SigAlgo.EdDSA) { + Signature jsig = Signature.getInstance(getAlgorithmName()); + if (getBaseAlgorithm() == SigAlgo.EC && SystemVersion.isGentoo() ) { + // Do a full keygen/sign test on Gentoo, because it lies. Keygen works but sigs fail. + // https://bugs.gentoo.org/show_bug.cgi?id=528338 + // http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=2497 + // http://zzz.i2p/topics/1931 + // Be sure nothing in the code paths below calls isAvailable() + // get an I2P keypair + SimpleDataStructure[] keys = KeyGenerator.getInstance().generateSigningKeys(this); + SigningPrivateKey privKey = (SigningPrivateKey) keys[1]; + // convert privkey back to Java key and sign + jsig.initSign(SigUtil.toJavaECKey(privKey)); + // use the pubkey as random data + jsig.update(keys[0].getData()); + jsig.sign(); + } + } getDigestInstance(); getHashInstance(); - } catch (Exception e) { + } catch (GeneralSecurityException e) { + return false; + } catch (RuntimeException e) { return false; } return true; diff --git a/core/java/src/net/i2p/crypto/TrustedUpdate.java b/core/java/src/net/i2p/crypto/TrustedUpdate.java index b365a662af43211a7b6d54a9a6a3d890c4c56f34..5174292a2548355d253deb9e02e7c4d4d48b79ff 100644 --- a/core/java/src/net/i2p/crypto/TrustedUpdate.java +++ b/core/java/src/net/i2p/crypto/TrustedUpdate.java @@ -344,7 +344,11 @@ riCe6OlAEiNpcc6mMyIYYWFICbrDFTrDR3wXqwc/Jkcx6L5VVWoagpSzbo3yGhc= System.out.println("\r\nPrivate key written to: " + privateKeyFile); System.out.println("Public key written to: " + publicKeyFile); System.out.println("\r\nPublic key: " + signingPublicKey.toBase64() + "\r\n"); - } catch (Exception e) { + } catch (IOException e) { + System.err.println("Error writing keys:"); + e.printStackTrace(); + return false; + } catch (DataFormatException e) { System.err.println("Error writing keys:"); e.printStackTrace(); return false; @@ -758,7 +762,7 @@ riCe6OlAEiNpcc6mMyIYYWFICbrDFTrDR3wXqwc/Jkcx6L5VVWoagpSzbo3yGhc= bytesToSignInputStream = new SequenceInputStream(versionHeaderInputStream, fileInputStream); signature = _context.dsa().sign(bytesToSignInputStream, signingPrivateKey); - } catch (Exception e) { + } catch (IOException e) { if (_log.shouldLog(Log.ERROR)) _log.error("Error signing", e); diff --git a/core/java/src/net/i2p/crypto/eddsa/math/GroupElement.java b/core/java/src/net/i2p/crypto/eddsa/math/GroupElement.java index 268005ed771e159cde1fc15fc91b06f18eb01157..ec81b5d408449da9ef91de337f422fb1f234ef3f 100644 --- a/core/java/src/net/i2p/crypto/eddsa/math/GroupElement.java +++ b/core/java/src/net/i2p/crypto/eddsa/math/GroupElement.java @@ -722,7 +722,7 @@ public class GroupElement implements Serializable { if (!this.repr.equals(ge.repr)) { try { ge = ge.toRep(this.repr); - } catch (Exception e) { + } catch (RuntimeException e) { return false; } } diff --git a/core/java/src/net/i2p/data/ByteArray.java b/core/java/src/net/i2p/data/ByteArray.java index 1801b122e7256beb3eb42b8eafe2f97409f5f62c..50670c760d1299d59174ebb9daf34328d1020545 100644 --- a/core/java/src/net/i2p/data/ByteArray.java +++ b/core/java/src/net/i2p/data/ByteArray.java @@ -16,7 +16,7 @@ import java.io.Serializable; * maps, and the like. * */ -public class ByteArray implements Serializable, Comparable { +public class ByteArray implements Serializable, Comparable<ByteArray> { private byte[] _data; private int _valid; private int _offset; @@ -85,9 +85,8 @@ public class ByteArray implements Serializable, Comparable { return (llen == rlen) && DataHelper.eq(lhs, loff, rhs, roff, llen); } - public final int compareTo(Object obj) { - if (obj.getClass() != getClass()) throw new ClassCastException("invalid object: " + obj); - return DataHelper.compareTo(_data, ((ByteArray)obj).getData()); + public final int compareTo(ByteArray ba) { + return DataHelper.compareTo(_data, ba.getData()); } @Override diff --git a/core/java/src/net/i2p/data/Certificate.java b/core/java/src/net/i2p/data/Certificate.java index aa2624b8af8f1637698f42d165c3d2761da862c8..aefc34ce61f1ae5ba836bfedae2eb142f979f359 100644 --- a/core/java/src/net/i2p/data/Certificate.java +++ b/core/java/src/net/i2p/data/Certificate.java @@ -215,7 +215,7 @@ public class Certificate extends DataStructureImpl { throw new DataFormatException("Cert is too small [" + source.length + " off=" + offset + "]"); int cur = offset; - _type = (int)DataHelper.fromLong(source, cur, 1); + _type = source[cur] & 0xff; cur++; int length = (int)DataHelper.fromLong(source, cur, 2); cur += 2; diff --git a/core/java/src/net/i2p/data/DataHelper.java b/core/java/src/net/i2p/data/DataHelper.java index 352529a6e0262fdad7f11d6244a2fef97f34e98b..f2c83a48e403557699852153f4564eb92bf4b096 100644 --- a/core/java/src/net/i2p/data/DataHelper.java +++ b/core/java/src/net/i2p/data/DataHelper.java @@ -37,6 +37,8 @@ import java.util.Iterator; import java.util.Locale; import java.util.Map; import java.util.Properties; +import java.util.concurrent.ConcurrentHashMap; +import java.util.regex.Pattern; import java.util.zip.Deflater; import net.i2p.I2PAppContext; @@ -1615,11 +1617,11 @@ public class DataHelper { * NOTE: formatDuration2() recommended in most cases for readability */ public static String formatSize(long bytes) { - double val = bytes; + float val = bytes; int scale = 0; - while (val >= 1024) { + while (val >= 1024.0f) { scale++; - val /= 1024; + val /= 1024.0f; } DecimalFormat fmt = new DecimalFormat("##0.00"); @@ -1693,7 +1695,7 @@ public class DataHelper { if (unescaped == null) return null; String escaped = unescaped; for (int i = 0; i < escapeChars.length; i++) { - escaped = escaped.replaceAll(escapeChars[i], escapeCodes[i]); + escaped = escaped.replace(escapeChars[i], escapeCodes[i]); } return escaped; } @@ -1708,7 +1710,7 @@ public class DataHelper { if (escaped == null) return null; String unescaped = escaped; for (int i = 0; i < escapeChars.length; i++) { - unescaped = unescaped.replaceAll(escapeCodes[i], escapeChars[i]); + unescaped = unescaped.replace(escapeCodes[i], escapeChars[i]); } return unescaped; } @@ -1888,4 +1890,38 @@ public class DataHelper { } return rv; } + + /** + * Same as s.split(regex) but caches the compiled pattern for speed. + * This saves about 10 microseconds (Bulldozer) on subsequent invocations. + * + * @param s non-null + * @param regex non-null + * @throws java.util.regex.PatternSyntaxException unchecked + * @since 0.9.24 + */ + public static String[] split(String s, String regex) { + return split(s, regex, 0); + } + + private static final ConcurrentHashMap<String, Pattern> patterns = new ConcurrentHashMap<String, Pattern>(); + + /** + * Same as s.split(regex, limit) but caches the compiled pattern for speed. + * This saves about 10 microseconds (Bulldozer) on subsequent invocations. + * + * @param s non-null + * @param regex non-null + * @param limit result threshold + * @throws java.util.regex.PatternSyntaxException unchecked + * @since 0.9.24 + */ + public static String[] split(String s, String regex, int limit) { + Pattern p = patterns.get(regex); + if (p == null) { + p = Pattern.compile(regex); + patterns.putIfAbsent(regex, p); + } + return p.split(s, limit); + } } diff --git a/core/java/src/net/i2p/data/PrivateKeyFile.java b/core/java/src/net/i2p/data/PrivateKeyFile.java index f42d8da15e7502bfbd428782337ef504540c4033..b77fd1350081c4e51a583750bfac3cc4a6573372 100644 --- a/core/java/src/net/i2p/data/PrivateKeyFile.java +++ b/core/java/src/net/i2p/data/PrivateKeyFile.java @@ -9,6 +9,7 @@ import java.io.InputStream; import java.io.IOException; import java.io.OutputStream; import java.security.GeneralSecurityException; +import java.security.NoSuchAlgorithmException; import java.util.Locale; import java.util.Map; import java.util.Properties; @@ -174,7 +175,10 @@ public class PrivateKeyFile { pkf.write(); verifySignature(pkf.getDestination()); } - } catch (Exception e) { + } catch (I2PException e) { + e.printStackTrace(); + System.exit(1); + } catch (IOException e) { e.printStackTrace(); System.exit(1); } @@ -358,7 +362,7 @@ public class PrivateKeyFile { HashCash hc; try { hc = HashCash.mintCash(resource, effort); - } catch (Exception e) { + } catch (NoSuchAlgorithmException e) { return null; } System.out.println("Generation took: " + DataHelper.formatDuration(System.currentTimeMillis() - begin)); @@ -391,7 +395,9 @@ public class PrivateKeyFile { Destination d2; try { d2 = pkf2.getDestination(); - } catch (Exception e) { + } catch (I2PException e) { + return null; + } catch (IOException e) { return null; } if (d2 == null) @@ -500,7 +506,7 @@ public class PrivateKeyFile { long low = Long.MAX_VALUE; try { low = HashCash.estimateTime(hashEffort); - } catch (Exception e) {} + } catch (NoSuchAlgorithmException e) {} // takes a lot longer than the estimate usually... // maybe because the resource string is much longer than used in the estimate? return "It is estimated that generating a HashCash Certificate with value " + hashEffort + diff --git a/core/java/src/net/i2p/data/SDSCache.java b/core/java/src/net/i2p/data/SDSCache.java index ab77680149d7380150d2cbd7dad3e05f1ef4ab70..f38fe6bbfaf43fadb784b81cb50ff387fa456a71 100644 --- a/core/java/src/net/i2p/data/SDSCache.java +++ b/core/java/src/net/i2p/data/SDSCache.java @@ -46,7 +46,6 @@ import net.i2p.util.SystemVersion; public class SDSCache<V extends SimpleDataStructure> { //private static final Log _log = I2PAppContext.getGlobalContext().logManager().getLog(SDSCache.class); - private static final Class[] conArg = new Class[] { byte[].class }; private static final double MIN_FACTOR = 0.20; private static final double MAX_FACTOR = 5.0; private static final double FACTOR; @@ -74,7 +73,7 @@ public class SDSCache<V extends SimpleDataStructure> { _cache = new LHMCache<Integer, WeakReference<V>>(size); _datalen = len; try { - _rvCon = rvClass.getConstructor(conArg); + _rvCon = rvClass.getConstructor(byte[].class); } catch (NoSuchMethodException e) { throw new RuntimeException("SDSCache init error", e); } diff --git a/core/java/src/net/i2p/data/i2cp/I2CPMessageReader.java b/core/java/src/net/i2p/data/i2cp/I2CPMessageReader.java index 4dfbb8501c76193c31f5a0eb54aa95c55ac4a2db..4bfdbc158b79f54e34e3ca9939cae931995069aa 100644 --- a/core/java/src/net/i2p/data/i2cp/I2CPMessageReader.java +++ b/core/java/src/net/i2p/data/i2cp/I2CPMessageReader.java @@ -160,7 +160,7 @@ public class I2CPMessageReader { public void run() { try { run2(); - } catch (Exception e) { + } catch (RuntimeException e) { _log.log(Log.CRIT, "Uncaught I2CP error", e); _listener.readError(I2CPMessageReader.this, e); cancelRunner(); @@ -193,7 +193,7 @@ public class I2CPMessageReader { } catch (OutOfMemoryError oom) { // ooms seen here... maybe log and keep going? throw oom; - } catch (Exception e) { + } catch (RuntimeException e) { _log.log(Log.CRIT, "Unhandled error reading I2CP stream", e); _listener.disconnected(I2CPMessageReader.this); cancelRunner(); diff --git a/core/java/src/net/i2p/kademlia/KBucketSet.java b/core/java/src/net/i2p/kademlia/KBucketSet.java index a2d0610a6f3d67e115fb7e3a424b69eaaf96a37d..0d5daa223ad61da801b80cc4aaead7ae939b52c2 100644 --- a/core/java/src/net/i2p/kademlia/KBucketSet.java +++ b/core/java/src/net/i2p/kademlia/KBucketSet.java @@ -628,6 +628,7 @@ public class KBucketSet<T extends SimpleDataStructure> { * @param data size <= SDS length, else throws IAE * Can be 1 bigger if top byte is zero */ + @SuppressWarnings("unchecked") private T makeKey(byte[] data) { int len = _us.length(); int dlen = data.length; diff --git a/core/java/src/net/i2p/stat/BufferedStatLog.java b/core/java/src/net/i2p/stat/BufferedStatLog.java index 7c9b7b72318a6ac072eaaa7cb04cfcc732f2a9a7..5734e89488efcfe88ec0e2089a1d822af335a556 100644 --- a/core/java/src/net/i2p/stat/BufferedStatLog.java +++ b/core/java/src/net/i2p/stat/BufferedStatLog.java @@ -145,7 +145,7 @@ public class BufferedStatLog implements StatLog { if (_log.shouldLog(Log.DEBUG)) _log.debug("writing " + writeStart +"->"+ writeEnd); writeEvents(writeStart, writeEnd); - } catch (Exception e) { + } catch (RuntimeException e) { _log.error("error writing " + writeStart +"->"+ writeEnd, e); } } diff --git a/core/java/src/net/i2p/stat/Frequency.java b/core/java/src/net/i2p/stat/Frequency.java index 50536fa4fd14089171ced8d5451b659cb1e9542a..721578ce6e1fc3944780f7ef0440dc064c86c767 100644 --- a/core/java/src/net/i2p/stat/Frequency.java +++ b/core/java/src/net/i2p/stat/Frequency.java @@ -150,4 +150,16 @@ public class Frequency { private final static long now() { return System.currentTimeMillis(); } + + /** + * Appends the data of this frequency to the specified StringBuilder + * @param dest to append data to + * @since 0.9.23 + */ + synchronized void store(StringBuilder dest) { + dest.append("avgInterval:").append(_avgInterval).append(','); + dest.append("minAverageInterval").append(_minAverageInterval).append(','); + dest.append("lastEvent").append(_lastEvent).append(","); + dest.append("count").append(_count); + } } diff --git a/core/java/src/net/i2p/stat/FrequencyStat.java b/core/java/src/net/i2p/stat/FrequencyStat.java index d18a469dbd3c921a640cf7e06d3141db968747be..c2c49d6fbe0999c6e5480d5614b5d842f1ef8fcc 100644 --- a/core/java/src/net/i2p/stat/FrequencyStat.java +++ b/core/java/src/net/i2p/stat/FrequencyStat.java @@ -1,5 +1,10 @@ package net.i2p.stat; +import java.io.IOException; +import java.io.OutputStream; + +import net.i2p.data.DataHelper; + /** coordinate an event frequency over various periods */ public class FrequencyStat { /** unique name of the statistic */ @@ -92,5 +97,34 @@ public class FrequencyStat { if ((obj == null) || !(obj instanceof FrequencyStat)) return false; return _statName.equals(((FrequencyStat)obj)._statName); } + + private final static String NL = System.getProperty("line.separator"); + + /** + * Serializes this FrequencyStat to the provided OutputStream + * @param out to write to + * @param prefix to prepend to the stat + * @throws IOException if something goes wrong + * @since 0.9.23 + */ + public void store(OutputStream out, String prefix) throws IOException { + StringBuilder buf = new StringBuilder(1024); + buf.append(NL); + buf.append("################################################################################").append(NL); + buf.append("# Frequency: ").append(_groupName).append(": ").append(_statName).append(NL); + buf.append("# ").append(_description).append(NL); + buf.append("# ").append(NL).append(NL); + out.write(buf.toString().getBytes("UTF-8")); + buf.setLength(0); + for (Frequency r: _frequencies){ + buf.append("#######").append(NL); + buf.append("# Period : ").append(DataHelper.formatDuration(r.getPeriod())).append(" for rate ") + .append(_groupName).append(" - ").append(_statName).append(NL); + buf.append(NL); + r.store(buf); + out.write(buf.toString().getBytes("UTF-8")); + buf.setLength(0); + } + } } diff --git a/core/java/src/net/i2p/stat/Rate.java b/core/java/src/net/i2p/stat/Rate.java index e37f9db9f76337a0d5c35628914bc927cdba2280..edac7d96b6ea2edf2d4a56961eeaaa141105da91 100644 --- a/core/java/src/net/i2p/stat/Rate.java +++ b/core/java/src/net/i2p/stat/Rate.java @@ -14,19 +14,19 @@ import net.i2p.data.DataHelper; */ public class Rate { //private final static Log _log = new Log(Rate.class); - private double _currentTotalValue; + private float _currentTotalValue; // was long, save space private int _currentEventCount; - private long _currentTotalEventTime; - private double _lastTotalValue; + private int _currentTotalEventTime; + private float _lastTotalValue; // was long, save space private int _lastEventCount; - private long _lastTotalEventTime; - private double _extremeTotalValue; + private int _lastTotalEventTime; + private float _extremeTotalValue; // was long, save space private int _extremeEventCount; - private long _extremeTotalEventTime; - private double _lifetimeTotalValue; + private int _extremeTotalEventTime; + private float _lifetimeTotalValue; private long _lifetimeEventCount; private long _lifetimeTotalEventTime; private RateSummaryListener _summaryListener; @@ -227,10 +227,10 @@ public class Rate { // ok ok, lets coalesce // how much were we off by? (so that we can sample down the measured values) - double periodFactor = measuredPeriod / (double)_period; + float periodFactor = measuredPeriod / (float)_period; _lastTotalValue = _currentTotalValue / periodFactor; _lastEventCount = (int) (0.499999 + (_currentEventCount / periodFactor)); - _lastTotalEventTime = (long) (_currentTotalEventTime / periodFactor); + _lastTotalEventTime = (int) (_currentTotalEventTime / periodFactor); _lastCoalesceDate = now; if (_currentEventCount == 0) correctedTotalValue = 0; @@ -244,7 +244,7 @@ public class Rate { _extremeTotalEventTime = _lastTotalEventTime; } - _currentTotalValue = 0.0D; + _currentTotalValue = 0.0f; _currentEventCount = 0; _currentTotalEventTime = 0; } @@ -505,16 +505,16 @@ public class Rate { _period = PersistenceHelper.getInt(props, prefix, ".period"); _creationDate = PersistenceHelper.getLong(props, prefix, ".creationDate"); _lastCoalesceDate = PersistenceHelper.getLong(props, prefix, ".lastCoalesceDate"); - _currentTotalValue = PersistenceHelper.getDouble(props, prefix, ".currentTotalValue"); + _currentTotalValue = (float)PersistenceHelper.getDouble(props, prefix, ".currentTotalValue"); _currentEventCount = PersistenceHelper.getInt(props, prefix, ".currentEventCount"); - _currentTotalEventTime = PersistenceHelper.getLong(props, prefix, ".currentTotalEventTime"); - _lastTotalValue = PersistenceHelper.getDouble(props, prefix, ".lastTotalValue"); + _currentTotalEventTime = (int)PersistenceHelper.getLong(props, prefix, ".currentTotalEventTime"); + _lastTotalValue = (float)PersistenceHelper.getDouble(props, prefix, ".lastTotalValue"); _lastEventCount = PersistenceHelper.getInt(props, prefix, ".lastEventCount"); - _lastTotalEventTime = PersistenceHelper.getLong(props, prefix, ".lastTotalEventTime"); - _extremeTotalValue = PersistenceHelper.getDouble(props, prefix, ".extremeTotalValue"); + _lastTotalEventTime = (int)PersistenceHelper.getLong(props, prefix, ".lastTotalEventTime"); + _extremeTotalValue = (float)PersistenceHelper.getDouble(props, prefix, ".extremeTotalValue"); _extremeEventCount = PersistenceHelper.getInt(props, prefix, ".extremeEventCount"); - _extremeTotalEventTime = PersistenceHelper.getLong(props, prefix, ".extremeTotalEventTime"); - _lifetimeTotalValue = PersistenceHelper.getDouble(props, prefix, ".lifetimeTotalValue"); + _extremeTotalEventTime = (int)PersistenceHelper.getLong(props, prefix, ".extremeTotalEventTime"); + _lifetimeTotalValue = (float)PersistenceHelper.getDouble(props, prefix, ".lifetimeTotalValue"); _lifetimeEventCount = PersistenceHelper.getLong(props, prefix, ".lifetimeEventCount"); _lifetimeTotalEventTime = PersistenceHelper.getLong(props, prefix, ".lifetimeTotalEventTime"); diff --git a/core/java/src/net/i2p/stat/StatManager.java b/core/java/src/net/i2p/stat/StatManager.java index f0f59a1b911675f4a1e78a4acfd8d10f7b3c9ce9..7f6d9859b6aef0ff5a8825c87ebdcff93574e883 100644 --- a/core/java/src/net/i2p/stat/StatManager.java +++ b/core/java/src/net/i2p/stat/StatManager.java @@ -1,5 +1,7 @@ package net.i2p.stat; +import java.io.IOException; +import java.io.OutputStream; import java.text.Collator; import java.util.HashMap; import java.util.HashSet; @@ -247,4 +249,18 @@ public class StatManager { public boolean ignoreStat(String statName) { return _context.isRouterContext() && !_context.getBooleanProperty(PROP_STAT_FULL); } + + /** + * Serializes all Frequencies and Rates to the provided OutputStream + * @param out to write to + * @param prefix to use when serializing + * @throws IOException if something goes wrong + * @since 0.9.23 + */ + public void store(OutputStream out, String prefix) throws IOException { + for (FrequencyStat fs : _frequencyStats.values()) + fs.store(out, prefix); + for (RateStat rs : _rateStats.values()) + rs.store(out,prefix); + } } diff --git a/core/java/src/net/i2p/util/Addresses.java b/core/java/src/net/i2p/util/Addresses.java index b33839b483f31d2275a208096cc99dbb6416f728..e4a78cc37dd80a7c27df4a64114ea4c3c4cedb11 100644 --- a/core/java/src/net/i2p/util/Addresses.java +++ b/core/java/src/net/i2p/util/Addresses.java @@ -231,10 +231,10 @@ public abstract class Addresses { I2PAppContext ctx = I2PAppContext.getCurrentContext(); if (ctx != null && ctx.isRouterContext()) { long maxMemory = SystemVersion.getMaxMemory(); - long min = 128; + long min = 256; long max = 4096; - // 512 nominal for 128 MB - size = (int) Math.max(min, Math.min(max, 1 + (maxMemory / (256*1024)))); + // 1024 nominal for 128 MB + size = (int) Math.max(min, Math.min(max, 1 + (maxMemory / (128*1024)))); } else { size = 32; } diff --git a/core/java/src/net/i2p/util/EepGet.java b/core/java/src/net/i2p/util/EepGet.java index 2c29c09e482ec2726ef7739480c17bae66f6485f..85c34b49b89804c993c8a955168c5c4855465c8d 100644 --- a/core/java/src/net/i2p/util/EepGet.java +++ b/core/java/src/net/i2p/util/EepGet.java @@ -15,7 +15,8 @@ import java.net.InetSocketAddress; import java.net.MalformedURLException; import java.net.Socket; import java.net.UnknownHostException; -import java.net.URL; +import java.net.URI; +import java.net.URISyntaxException; import java.text.DecimalFormat; import java.util.ArrayList; import java.util.Date; @@ -24,6 +25,8 @@ import java.util.HashMap; import java.util.List; import java.util.Locale; import java.util.Map; +import java.util.regex.Matcher; +import java.util.regex.Pattern; import gnu.getopt.Getopt; @@ -270,7 +273,7 @@ public class EepGet { break; } // switch } // while - } catch (Exception e) { + } catch (RuntimeException e) { e.printStackTrace(); error = true; } @@ -312,22 +315,52 @@ public class EepGet { System.exit(1); } + /** + * Parse URL for a viable filename. + * + * @param url a URL giving the location of an online resource + * @return a filename to save the resource as on local filesystem + */ public static String suggestName(String url) { - int last = url.lastIndexOf('/'); - if ((last < 0) || (url.lastIndexOf('#') > last)) - last = url.lastIndexOf('#'); - if ((last < 0) || (url.lastIndexOf('?') > last)) - last = url.lastIndexOf('?'); - if ((last < 0) || (url.lastIndexOf('=') > last)) - last = url.lastIndexOf('='); - - String name = null; - if (last >= 0) - name = sanitize(url.substring(last+1)); - if ( (name != null) && (name.length() > 0) ) - return name; - else - return sanitize(url); + URI nameURL = null; + String name; // suggested name + + try { + nameURL = new URI(url); + } catch (URISyntaxException e) { + System.err.println("Please enter a properly formed URL."); + System.exit(1); + } + + String path = nameURL.getRawPath(); // discard any URI queries + + // if no file specified, eepget scrapes webpage - use domain as name + Pattern slashes = Pattern.compile("/+"); + Matcher matcher = slashes.matcher(path); + // if empty path or just /'s - nameURL lets multiple /'s through + if (path.equals("") || matcher.matches()) { + name = sanitize(nameURL.getAuthority()); + // if path specified + } else { + int last = path.lastIndexOf('/'); + // if last / not at end of string, use following string as filename + if (last != path.length() - 1) { + name = sanitize(path.substring(last + 1)); + // if there's a trailing / group look for previous / as trim point + } else { + int i = 1; + int slash; + while (true) { + slash = path.lastIndexOf('/', last - i); + if (slash != last - i) { + break; + } + i += 1; + } + name = sanitize(path.substring(slash + 1, path.length() - i)); + } + } + return name; } @@ -690,24 +723,31 @@ public class EepGet { if (_redirectLocation != null) { // we also are here after a 407 - //try { + try { if (_redirectLocation.startsWith("http://")) { _actualURL = _redirectLocation; } else { // the Location: field has been required to be an absolute URI at least since // RFC 1945 (HTTP/1.0 1996), so it isn't clear what the point of this is. // This oddly adds a ":" even if no port, but that seems to work. - URL url = new URL(_actualURL); - if (_redirectLocation.startsWith("/")) - _actualURL = "http://" + url.getHost() + ":" + url.getPort() + _redirectLocation; + URI url = new URI(_actualURL); + String host = url.getHost(); + if (host == null) + throw new MalformedURLException("Redirected to invalid URL"); + int port = url.getPort(); + if (port < 0) + port = 80; + if (_redirectLocation.startsWith("/")) + _actualURL = "http://" + host + ":" + port + _redirectLocation; else // this blows up completely on a redirect to https://, for example - _actualURL = "http://" + url.getHost() + ":" + url.getPort() + "/" + _redirectLocation; + _actualURL = "http://" + host+ ":" + port + "/" + _redirectLocation; } - // an MUE is an IOE - //} catch (MalformedURLException mue) { - // throw new IOException("Redirected from an invalid URL"); - //} + } catch (URISyntaxException use) { + IOException ioe = new MalformedURLException("Redirected to invalid URL"); + ioe.initCause(use); + throw ioe; + } AuthState as = _authState; if (_responseCode == 407) { @@ -1099,7 +1139,7 @@ public class EepGet { private int handleStatus(String line) { if (_log.shouldLog(Log.DEBUG)) _log.debug("Status line: [" + line.trim() + "]"); - String[] toks = line.split(" ", 3); + String[] toks = DataHelper.split(line, " ", 3); if (toks.length < 2) { if (_log.shouldLog(Log.WARN)) _log.warn("ERR: status "+ line); @@ -1194,10 +1234,12 @@ public class EepGet { if (_shouldProxy) { _proxy = InternalSocket.getSocket(_proxyHost, _proxyPort); } else { - //try { - URL url = new URL(_actualURL); - if ("http".equals(url.getProtocol())) { + try { + URI url = new URI(_actualURL); + if ("http".equals(url.getScheme())) { String host = url.getHost(); + if (host == null) + throw new MalformedURLException("URL is not supported:" + _actualURL); String hostlc = host.toLowerCase(Locale.US); if (hostlc.endsWith(".i2p")) throw new UnknownHostException("I2P addresses must be proxied"); @@ -1216,10 +1258,11 @@ public class EepGet { } else { throw new MalformedURLException("URL is not supported:" + _actualURL); } - // an MUE is an IOE - //} catch (MalformedURLException mue) { - // throw new IOException("Request URL is invalid"); - //} + } catch (URISyntaxException use) { + IOException ioe = new MalformedURLException("Request URL is invalid"); + ioe.initCause(use); + throw ioe; + } } _proxyIn = _proxy.getInputStream(); if (!(_proxy instanceof InternalSocket)) @@ -1241,13 +1284,20 @@ public class EepGet { boolean post = false; if ( (_postData != null) && (_postData.length() > 0) ) post = true; - URL url = new URL(_actualURL); + URI url; + try { + url = new URI(_actualURL); + } catch (URISyntaxException use) { + IOException ioe = new MalformedURLException("Bad URL"); + ioe.initCause(use); + throw ioe; + } String host = url.getHost(); if (host == null || host.length() <= 0) throw new MalformedURLException("Bad URL, no host"); int port = url.getPort(); - String path = url.getPath(); - String query = url.getQuery(); + String path = url.getRawPath(); + String query = url.getRawQuery(); if (_log.shouldLog(Log.DEBUG)) _log.debug("Requesting " + _actualURL); // RFC 2616 sec 5.1.2 - full URL if proxied, absolute path only if not proxied @@ -1470,7 +1520,7 @@ public class EepGet { String key = null; for (int i = 0; i < data.length; i++) { switch (data[i]) { - case '\"': + case '"': if (isQuoted) { // keys never quoted if (key != null) { diff --git a/core/java/src/net/i2p/util/EepHead.java b/core/java/src/net/i2p/util/EepHead.java index c1ddb62828001a4661c0e877ae10030b84a6328d..c9f375e4584a31f3c6fca76d1b159e88e5dc1909 100644 --- a/core/java/src/net/i2p/util/EepHead.java +++ b/core/java/src/net/i2p/util/EepHead.java @@ -6,7 +6,9 @@ import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; -import java.net.URL; +import java.net.MalformedURLException; +import java.net.URI; +import java.net.URISyntaxException; import gnu.getopt.Getopt; @@ -107,7 +109,7 @@ public class EepHead extends EepGet { break; } // switch } // while - } catch (Exception e) { + } catch (RuntimeException e) { e.printStackTrace(); error = true; } @@ -176,24 +178,31 @@ public class EepHead extends EepGet { // Should we even follow redirects for HEAD? if (_redirectLocation != null) { - //try { + try { if (_redirectLocation.startsWith("http://")) { _actualURL = _redirectLocation; } else { // the Location: field has been required to be an absolute URI at least since // RFC 1945 (HTTP/1.0 1996), so it isn't clear what the point of this is. // This oddly adds a ":" even if no port, but that seems to work. - URL url = new URL(_actualURL); - if (_redirectLocation.startsWith("/")) - _actualURL = "http://" + url.getHost() + ":" + url.getPort() + _redirectLocation; + URI url = new URI(_actualURL); + String host = url.getHost(); + if (host == null) + throw new MalformedURLException("Redirected to invalid URL"); + int port = url.getPort(); + if (port < 0) + port = 80; + if (_redirectLocation.startsWith("/")) + _actualURL = "http://" + host + ":" + port + _redirectLocation; else // this blows up completely on a redirect to https://, for example - _actualURL = "http://" + url.getHost() + ":" + url.getPort() + "/" + _redirectLocation; + _actualURL = "http://" + host+ ":" + port + "/" + _redirectLocation; } - // an MUE is an IOE - //} catch (MalformedURLException mue) { - // throw new IOException("Redirected from an invalid URL"); - //} + } catch (URISyntaxException use) { + IOException ioe = new MalformedURLException("Redirected to invalid URL"); + ioe.initCause(use); + throw ioe; + } AuthState as = _authState; if (_responseCode == 407) { if (!_shouldProxy) @@ -252,11 +261,20 @@ public class EepHead extends EepGet { @Override protected String getRequest() throws IOException { StringBuilder buf = new StringBuilder(512); - URL url = new URL(_actualURL); + URI url; + try { + url = new URI(_actualURL); + } catch (URISyntaxException use) { + IOException ioe = new MalformedURLException("Bad URL"); + ioe.initCause(use); + throw ioe; + } String host = url.getHost(); + if (host == null) + throw new MalformedURLException("Bad URL"); int port = url.getPort(); - String path = url.getPath(); - String query = url.getQuery(); + String path = url.getRawPath(); + String query = url.getRawQuery(); if (_log.shouldLog(Log.DEBUG)) _log.debug("Requesting " + _actualURL); // RFC 2616 sec 5.1.2 - full URL if proxied, absolute path only if not proxied diff --git a/core/java/src/net/i2p/util/FileUtil.java b/core/java/src/net/i2p/util/FileUtil.java index eeca4416feba3bcd2a644d4e41b8de995e795c23..296030818d892924a31b11d5738f755661470e40 100644 --- a/core/java/src/net/i2p/util/FileUtil.java +++ b/core/java/src/net/i2p/util/FileUtil.java @@ -300,9 +300,9 @@ public class FileUtil { if (!_failedOracle) { try { Class<?> p200 = Class.forName("java.util.jar.Pack200", true, ClassLoader.getSystemClassLoader()); - Method newUnpacker = p200.getMethod("newUnpacker", (Class[]) null); + Method newUnpacker = p200.getMethod("newUnpacker"); Object unpacker = newUnpacker.invoke(null,(Object[]) null); - Method unpack = unpacker.getClass().getMethod("unpack", new Class[] {InputStream.class, JarOutputStream.class}); + Method unpack = unpacker.getClass().getMethod("unpack", InputStream.class, JarOutputStream.class); // throws IOException unpack.invoke(unpacker, new Object[] {in, out}); return; @@ -321,9 +321,9 @@ public class FileUtil { if (!_failedApache) { try { Class<?> p200 = Class.forName("org.apache.harmony.unpack200.Archive", true, ClassLoader.getSystemClassLoader()); - Constructor<?> newUnpacker = p200.getConstructor(new Class[] {InputStream.class, JarOutputStream.class}); - Object unpacker = newUnpacker.newInstance(new Object[] {in, out}); - Method unpack = unpacker.getClass().getMethod("unpack", (Class[]) null); + Constructor<?> newUnpacker = p200.getConstructor(InputStream.class, JarOutputStream.class); + Object unpacker = newUnpacker.newInstance(in, out); + Method unpack = unpacker.getClass().getMethod("unpack"); // throws IOException or Pack200Exception unpack.invoke(unpacker, (Object[]) null); return; diff --git a/core/java/src/net/i2p/util/FortunaRandomSource.java b/core/java/src/net/i2p/util/FortunaRandomSource.java index 9688e87648588f6bc01a199a3d339ebb59365450..e386e325c954ad5d311ca815c6471f48246843fe 100644 --- a/core/java/src/net/i2p/util/FortunaRandomSource.java +++ b/core/java/src/net/i2p/util/FortunaRandomSource.java @@ -11,6 +11,7 @@ package net.i2p.util; import gnu.crypto.prng.AsyncFortunaStandalone; +import java.io.IOException; import java.security.SecureRandom; import net.i2p.I2PAppContext; @@ -266,7 +267,7 @@ public class FortunaRandomSource extends RandomSource implements EntropyHarveste synchronized(_fortuna) { _fortuna.addRandomBytes(data, offset, len); } - } catch (Exception e) { + } catch (RuntimeException e) { // AIOOBE seen, root cause unknown, ticket #1576 Log log = _context.logManager().getLog(FortunaRandomSource.class); log.warn("feedEntropy()", e); @@ -290,6 +291,6 @@ public class FortunaRandomSource extends RandomSource implements EntropyHarveste rand.nextBytes(buf); System.out.write(buf); } - } catch (Exception e) { e.printStackTrace(); } + } catch (IOException e) { e.printStackTrace(); } } } diff --git a/core/java/src/net/i2p/util/I2PAppThread.java b/core/java/src/net/i2p/util/I2PAppThread.java index da291d210431c9eb68710deb97f6f48774510b52..ebbe6c06e1a55cf6da2905876f95a95cc78fb846 100644 --- a/core/java/src/net/i2p/util/I2PAppThread.java +++ b/core/java/src/net/i2p/util/I2PAppThread.java @@ -14,10 +14,13 @@ import java.util.Set; import java.util.concurrent.CopyOnWriteArraySet; /** - * Like I2PThread but with per-thread OOM listeners, + * Like {@link I2PThread} but with per-thread OOM listeners, * rather than a static router-wide listener list, * so that an OOM in an app won't call the router listener * to shutdown the whole router. + * + * This is preferred for application use. + * See {@link I2PThread} for features. */ public class I2PAppThread extends I2PThread { @@ -38,9 +41,17 @@ public class I2PAppThread extends I2PThread { public I2PAppThread(Runnable r, String name) { super(r, name); } + public I2PAppThread(Runnable r, String name, boolean isDaemon) { super(r, name, isDaemon); } + + /** + * @since 0.9.23 + */ + public I2PAppThread(ThreadGroup group, Runnable r, String name) { + super(group, r, name); + } @Override protected void fireOOM(OutOfMemoryError oom) { diff --git a/core/java/src/net/i2p/util/I2PSSLSocketFactory.java b/core/java/src/net/i2p/util/I2PSSLSocketFactory.java index 4761ac710174464ef9604bbaf2779e68824f6441..1b8342808a616cd66a4c50e8a8b6231385198a70 100644 --- a/core/java/src/net/i2p/util/I2PSSLSocketFactory.java +++ b/core/java/src/net/i2p/util/I2PSSLSocketFactory.java @@ -83,6 +83,7 @@ import javax.net.ssl.TrustManagerFactory; import net.i2p.I2PAppContext; import net.i2p.crypto.KeyStoreUtil; +import net.i2p.data.DataHelper; import org.apache.http.conn.ssl.DefaultHostnameVerifier; import org.apache.http.conn.util.PublicSuffixList; @@ -204,7 +205,15 @@ public class I2PSSLSocketFactory { "TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA", "TLS_ECDH_RSA_WITH_3DES_EDE_CBC_SHA", "TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA", - "TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA" + "TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA", + // following is disabled because it is weak + // see e.g. https://bugzilla.mozilla.org/show_bug.cgi?id=1107787 + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA" + // ??? "TLS_DHE_DSS_WITH_AES_256_CBC_SHA" + // + // NOTE: + // If you add anything here, please also add to installer/resources/eepsite/jetty-ssl.xml + // })); /** @@ -435,7 +444,7 @@ public class I2PSSLSocketFactory { try { if (line.charAt(0) == '#') continue; - String[] s = line.split(","); + String[] s = DataHelper.split(line, ","); String lc = s[0].toLowerCase(Locale.US); tlds.add(lc); i++; diff --git a/core/java/src/net/i2p/util/I2PThread.java b/core/java/src/net/i2p/util/I2PThread.java index 22611ee3f17e41f29bb6c09b52ac33800f8ef689..196bae7d5a714b8882ccc11feef0496c0a549fc3 100644 --- a/core/java/src/net/i2p/util/I2PThread.java +++ b/core/java/src/net/i2p/util/I2PThread.java @@ -14,76 +14,63 @@ import java.util.Set; import java.util.concurrent.CopyOnWriteArraySet; /** - * In case its useful later... - * (e.g. w/ native programatic thread dumping, etc) - * - * As of 0.9.21, I2PThreads are initialized to NORM_PRIORITY - * (not the priority of the creating thread). + * Preferred over {@link Thread} for all router uses. + * For applications, {@link I2PAppThread} is preferred. + * <p> + * Provides the following features: + * <ul> + * <li>Logging to wrapper log on unexpected termination in {@link #run()}. + * <li>Notification of OOM to registered listener (the router), + * which will cause logging to the wrapper log and a router restart + * <li>Catching and logging "OOM" caused by thread limit in {@link #start()} + * with distinct message, and does not call the OOM listener. + * <li>As of 0.9.21, initialization to NORM_PRIORITY + * (not the priority of the creating thread). + * </ul> */ public class I2PThread extends Thread { - /** - * Non-static to avoid refs to old context in Android. - * Probably should just remove all the logging though. - * Logging removed, too much trouble with extra contexts - */ - //private volatile Log _log; + private static final Set<OOMEventListener> _listeners = new CopyOnWriteArraySet<OOMEventListener>(); - //private String _name; - //private Exception _createdBy; public I2PThread() { super(); setPriority(NORM_PRIORITY); - //if ( (_log == null) || (_log.shouldLog(Log.DEBUG)) ) - // _createdBy = new Exception("Created by"); } public I2PThread(String name) { super(name); setPriority(NORM_PRIORITY); - //if ( (_log == null) || (_log.shouldLog(Log.DEBUG)) ) - // _createdBy = new Exception("Created by"); } public I2PThread(Runnable r) { super(r); setPriority(NORM_PRIORITY); - //if ( (_log == null) || (_log.shouldLog(Log.DEBUG)) ) - // _createdBy = new Exception("Created by"); } public I2PThread(Runnable r, String name) { super(r, name); setPriority(NORM_PRIORITY); - //if ( (_log == null) || (_log.shouldLog(Log.DEBUG)) ) - // _createdBy = new Exception("Created by"); } + public I2PThread(Runnable r, String name, boolean isDaemon) { super(r, name); setDaemon(isDaemon); setPriority(NORM_PRIORITY); - //if ( (_log == null) || (_log.shouldLog(Log.DEBUG)) ) - // _createdBy = new Exception("Created by"); } public I2PThread(ThreadGroup g, Runnable r) { super(g, r); setPriority(NORM_PRIORITY); - //if ( (_log == null) || (_log.shouldLog(Log.DEBUG)) ) - // _createdBy = new Exception("Created by"); } -/**** - private void log(int level, String msg) { log(level, msg, null); } - - private void log(int level, String msg, Throwable t) { - // we cant assume log is created - if (_log == null) _log = new Log(I2PThread.class); - if (_log.shouldLog(level)) - _log.log(level, msg, t); + /** + * @since 0.9.23 + */ + public I2PThread(ThreadGroup group, Runnable r, String name) { + super(group, r, name); + setPriority(NORM_PRIORITY); } -****/ - + /** * Overridden to provide useful info to users on OOM, and to prevent * shutting down the whole JVM for what is most likely not a heap issue. @@ -103,25 +90,18 @@ public class I2PThread extends Thread { System.out.println("Check ulimit -u, /etc/security/limits.conf, or /proc/sys/kernel/threads-max"); } oom.printStackTrace(); + if (!(SystemVersion.isWindows() || SystemVersion.isAndroid())) + throw new RuntimeException("Thread could not be started, " + + "Check ulimit -u, /etc/security/limits.conf, or /proc/sys/kernel/threads-max", oom); throw new RuntimeException("Thread could not be started", oom); } } @Override public void run() { - //_name = Thread.currentThread().getName(); - //log(Log.INFO, "New thread started" + (isDaemon() ? " (daemon): " : ": ") + _name, _createdBy); try { super.run(); } catch (Throwable t) { - /**** - try { - log(Log.CRIT, "Thread terminated unexpectedly: " + getName(), t); - } catch (Throwable woof) { - System.err.println("Died within the OOM itself"); - t.printStackTrace(); - } - ****/ if (t instanceof OutOfMemoryError) { fireOOM((OutOfMemoryError)t); } else { @@ -129,18 +109,8 @@ public class I2PThread extends Thread { t.printStackTrace(); } } - // This creates a new I2PAppContext after it was deleted - // in Router.finalShutdown() via RouterContext.killGlobalContext() - //log(Log.INFO, "Thread finished normally: " + _name); } -/**** - protected void finalize() throws Throwable { - //log(Log.DEBUG, "Thread finalized: " + _name); - super.finalize(); - } -****/ - protected void fireOOM(OutOfMemoryError oom) { for (OOMEventListener listener : _listeners) listener.outOfMemory(oom); diff --git a/core/java/src/net/i2p/util/InternalSocket.java b/core/java/src/net/i2p/util/InternalSocket.java index d2b4cb4580bdbf0f7520e7c028ca6c332c1d084c..6e7d3c8d03c7f35573b4d1b25ddabaa9a72c366b 100644 --- a/core/java/src/net/i2p/util/InternalSocket.java +++ b/core/java/src/net/i2p/util/InternalSocket.java @@ -68,7 +68,7 @@ public class InternalSocket extends Socket { } @Override - public void close() { + public synchronized void close() { try { if (_is != null) { _is.close(); @@ -84,7 +84,7 @@ public class InternalSocket extends Socket { } @Override - public boolean isClosed() { + public synchronized boolean isClosed() { return _is == null || _os == null; } diff --git a/core/java/src/net/i2p/util/LogManager.java b/core/java/src/net/i2p/util/LogManager.java index f2df0a88175657f5f8773f903c558f7e95678c08..a88fc1df9724032bc28283d1f8ab00c4863a944d 100644 --- a/core/java/src/net/i2p/util/LogManager.java +++ b/core/java/src/net/i2p/util/LogManager.java @@ -22,7 +22,6 @@ import java.util.Map; import java.util.Properties; import java.util.Queue; import java.util.Set; -import java.util.TimeZone; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.LinkedBlockingQueue; import java.util.concurrent.atomic.AtomicInteger; @@ -479,9 +478,7 @@ public class LogManager implements Flushable { if (!format.equals("")) fmt.applyPattern(format); // the router sets the JVM time zone to UTC but saves the original here so we can get it - String systemTimeZone = _context.getProperty("i2p.systemTimeZone"); - if (systemTimeZone != null) - fmt.setTimeZone(TimeZone.getTimeZone(systemTimeZone)); + fmt.setTimeZone(SystemVersion.getSystemTimeZone(_context)); _dateFormatPattern = format; _dateFormat = fmt; return true; @@ -763,7 +760,7 @@ public class LogManager implements Flushable { private static final AtomicInteger __id = new AtomicInteger(); - private class ShutdownHook extends Thread { + private class ShutdownHook extends I2PAppThread { private final int _id; public ShutdownHook() { _id = __id.incrementAndGet(); diff --git a/core/java/src/net/i2p/util/LogWriterBase.java b/core/java/src/net/i2p/util/LogWriterBase.java index b9b98e10d4e9723b4545d690fd29cafff0da9628..cc4fb93e6b57af45e5da1a6e0bfb37d43f6c180b 100644 --- a/core/java/src/net/i2p/util/LogWriterBase.java +++ b/core/java/src/net/i2p/util/LogWriterBase.java @@ -75,7 +75,7 @@ abstract class LogWriterBase implements Runnable { if (_write && shouldReadConfig) rereadConfig(); } - } catch (Exception e) { + } catch (RuntimeException e) { System.err.println("Error writing the log: " + e); e.printStackTrace(); } diff --git a/core/java/src/net/i2p/util/NativeBigInteger.java b/core/java/src/net/i2p/util/NativeBigInteger.java index afb380cf921bc234733a570f878990c05dcde365..96129b5ac37599fe24f49c95eabc6e4a774e68cb 100644 --- a/core/java/src/net/i2p/util/NativeBigInteger.java +++ b/core/java/src/net/i2p/util/NativeBigInteger.java @@ -35,6 +35,7 @@ import freenet.support.CPUInformation.UnknownCPUException; import net.i2p.I2PAppContext; import net.i2p.crypto.CryptoConstants; +import net.i2p.data.DataHelper; /** * <p>BigInteger that takes advantage of the jbigi library for the modPow operation, @@ -734,7 +735,7 @@ public class NativeBigInteger extends BigInteger { in = new BufferedReader(new InputStreamReader(new FileInputStream("/proc/cpuinfo"), "ISO-8859-1"), 4096); String line = null; while ( (line = in.readLine()) != null) { - String[] parts = line.split(":", 2); + String[] parts = DataHelper.split(line, ":", 2); if (parts.length < 2) continue; String key = parts[0].trim().toLowerCase(Locale.US); diff --git a/core/java/src/net/i2p/util/PartialEepGet.java b/core/java/src/net/i2p/util/PartialEepGet.java index baab6e0397d2b557e6a76df453d7a9904e070a93..9d853137d5e2f608957370f28ec987d5a67af5fd 100644 --- a/core/java/src/net/i2p/util/PartialEepGet.java +++ b/core/java/src/net/i2p/util/PartialEepGet.java @@ -6,7 +6,8 @@ import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.net.MalformedURLException; -import java.net.URL; +import java.net.URI; +import java.net.URISyntaxException; import java.util.Locale; import gnu.getopt.Getopt; @@ -106,7 +107,7 @@ public class PartialEepGet extends EepGet { break; } // switch } // while - } catch (Exception e) { + } catch (RuntimeException e) { e.printStackTrace(); error = true; } @@ -167,13 +168,20 @@ public class PartialEepGet extends EepGet { @Override protected String getRequest() throws IOException { StringBuilder buf = new StringBuilder(2048); - URL url = new URL(_actualURL); + URI url; + try { + url = new URI(_actualURL); + } catch (URISyntaxException use) { + IOException ioe = new MalformedURLException("Bad URL"); + ioe.initCause(use); + throw ioe; + } String host = url.getHost(); if (host == null || host.length() <= 0) throw new MalformedURLException("Bad URL, no host"); int port = url.getPort(); - String path = url.getPath(); - String query = url.getQuery(); + String path = url.getRawPath(); + String query = url.getRawQuery(); if (_log.shouldLog(Log.DEBUG)) _log.debug("Requesting " + _actualURL); // RFC 2616 sec 5.1.2 - full URL if proxied, absolute path only if not proxied diff --git a/core/java/src/net/i2p/util/PasswordManager.java b/core/java/src/net/i2p/util/PasswordManager.java index 5e51dcb7dfb9bc8d95747f9525bc56d54cae7ca4..5ca812b4e77bf07efd458d8213dc2e311ecef681 100644 --- a/core/java/src/net/i2p/util/PasswordManager.java +++ b/core/java/src/net/i2p/util/PasswordManager.java @@ -99,6 +99,18 @@ public class PasswordManager { String shash = _context.getProperty(pfx + PROP_SHASH); if (shash == null) return false; + return checkHash(shash, pw); + } + + /** + * Check pw against b64 salt+hash, as generated by createHash() + * + * @param shash b64 string + * @param pw plain text non-null, already trimmed + * @return if pw verified + * @since 0.9.24 + */ + public boolean checkHash(String shash, String pw) { byte[] shashBytes = Base64.decode(shash); if (shashBytes == null || shashBytes.length != SHASH_LENGTH) return false; @@ -110,6 +122,23 @@ public class PasswordManager { return DataHelper.eq(hash, pwHash); } + /** + * Create a salt+hash, to be saved and verified later by verifyHash(). + * + * @param pw plain text non-null, already trimmed + * @return salted+hash b64 string + * @since 0.9.24 + */ + public String createHash(String pw) { + byte[] salt = new byte[SALT_LENGTH]; + _context.random().nextBytes(salt); + byte[] pwHash = _context.keyGenerator().generateSessionKey(salt, DataHelper.getUTF8(pw)).getData(); + byte[] shashBytes = new byte[SHASH_LENGTH]; + System.arraycopy(salt, 0, shashBytes, 0, SALT_LENGTH); + System.arraycopy(pwHash, 0, shashBytes, SALT_LENGTH, SessionKey.KEYSIZE_BYTES); + return Base64.encode(shashBytes); + } + /** * Either plain or b64 * diff --git a/core/java/src/net/i2p/util/PortMapper.java b/core/java/src/net/i2p/util/PortMapper.java index d32a4f5a5a1617abc7e3a886e5e41e8cc02c92f2..28127dd0e50112712a8bedf529ddd7ef8de7d06b 100644 --- a/core/java/src/net/i2p/util/PortMapper.java +++ b/core/java/src/net/i2p/util/PortMapper.java @@ -30,6 +30,10 @@ public class PortMapper { public static final String SVC_SMTP = "SMTP"; public static final String SVC_POP = "POP3"; public static final String SVC_SAM = "SAM"; + /** @since 0.9.24 */ + public static final String SVC_SAM_UDP = "SAM-UDP"; + /** @since 0.9.24 */ + public static final String SVC_SAM_SSL = "SAM-SSL"; public static final String SVC_BOB = "BOB"; /** not necessary, already in config? */ public static final String SVC_I2CP = "I2CP"; @@ -111,7 +115,7 @@ public class PortMapper { * @since 0.9.20 */ public void renderStatusHTML(Writer out) throws IOException { - List<String> services = new ArrayList(_dir.keySet()); + List<String> services = new ArrayList<String>(_dir.keySet()); out.write("<h2>Port Mapper</h2><table><tr><th>Service<th>Host<th>Port\n"); Collections.sort(services); for (String s : services) { diff --git a/core/java/src/net/i2p/util/ResettableGZIPInputStream.java b/core/java/src/net/i2p/util/ResettableGZIPInputStream.java index 645bd29f398b278c5af354fc3343dd69cb894b8f..13eecb518eaa7166ae251166bfe7be64d72ba52f 100644 --- a/core/java/src/net/i2p/util/ResettableGZIPInputStream.java +++ b/core/java/src/net/i2p/util/ResettableGZIPInputStream.java @@ -124,7 +124,7 @@ public class ResettableGZIPInputStream extends InflaterInputStream { public long getTotalRead() { try { return inf.getBytesRead(); - } catch (Exception e) { + } catch (RuntimeException e) { return 0; } } @@ -136,7 +136,7 @@ public class ResettableGZIPInputStream extends InflaterInputStream { public long getTotalExpanded() { try { return inf.getBytesWritten(); - } catch (Exception e) { + } catch (RuntimeException e) { // possible NPE in some implementations return 0; } @@ -149,7 +149,7 @@ public class ResettableGZIPInputStream extends InflaterInputStream { public long getRemaining() { try { return inf.getRemaining(); - } catch (Exception e) { + } catch (RuntimeException e) { // possible NPE in some implementations return 0; } @@ -162,7 +162,7 @@ public class ResettableGZIPInputStream extends InflaterInputStream { public boolean getFinished() { try { return inf.finished(); - } catch (Exception e) { + } catch (RuntimeException e) { // possible NPE in some implementations return true; } diff --git a/core/java/src/net/i2p/util/SSLEepGet.java b/core/java/src/net/i2p/util/SSLEepGet.java index 3a6e7ebd9064714e5089eabf22bd74122f351a3c..35905dec210ad057adabeb82169cacbabf5eef97 100644 --- a/core/java/src/net/i2p/util/SSLEepGet.java +++ b/core/java/src/net/i2p/util/SSLEepGet.java @@ -46,7 +46,8 @@ import java.io.PipedInputStream; import java.io.PipedOutputStream; import java.net.InetSocketAddress; import java.net.MalformedURLException; -import java.net.URL; +import java.net.URI; +import java.net.URISyntaxException; import java.security.KeyStore; import java.security.GeneralSecurityException; import java.security.cert.CertificateException; @@ -179,7 +180,7 @@ public class SSLEepGet extends EepGet { break; } // switch } // while - } catch (Exception e) { + } catch (RuntimeException e) { e.printStackTrace(); error = true; } @@ -369,7 +370,7 @@ public class SSLEepGet extends EepGet { System.out.println(" Valid To: " + cert.getNotAfter()); try { cert.checkValidity(); - } catch (Exception e) { + } catch (GeneralSecurityException e) { System.out.println(" WARNING: Certificate is not currently valid, it cannot be used"); } CertUtil.saveCert(cert, new File(name)); @@ -553,12 +554,14 @@ public class SSLEepGet extends EepGet { String req = getRequest(); - //try { - URL url = new URL(_actualURL); - String host = null; - int port = 0; - if ("https".equals(url.getProtocol())) { + String host; + int port; + try { + URI url = new URI(_actualURL); + if ("https".equals(url.getScheme())) { host = url.getHost(); + if (host == null) + throw new MalformedURLException("Bad URL"); if (host.toLowerCase(Locale.US).endsWith(".i2p")) throw new MalformedURLException("I2P addresses unsupported"); port = url.getPort(); @@ -589,10 +592,11 @@ public class SSLEepGet extends EepGet { } else { throw new MalformedURLException("Only https supported: " + _actualURL); } - // an MUE is an IOE - //} catch (MalformedURLException mue) { - // throw new IOException("Request URL is invalid"); - //} + } catch (URISyntaxException use) { + IOException ioe = new MalformedURLException("Redirected to invalid URL"); + ioe.initCause(use); + throw ioe; + } _proxyIn = _proxy.getInputStream(); _proxyOut = _proxy.getOutputStream(); diff --git a/core/java/src/net/i2p/util/ShellCommand.java b/core/java/src/net/i2p/util/ShellCommand.java index 70de62ea85783be2cb0778376e42a77958e6a226..4a5daac552c9660423be42cf2ab6bd603fb62cf4 100644 --- a/core/java/src/net/i2p/util/ShellCommand.java +++ b/core/java/src/net/i2p/util/ShellCommand.java @@ -51,7 +51,7 @@ public class ShellCommand { * * @author hypercubus */ - private class CommandThread extends Thread { + private class CommandThread extends I2PAppThread { private final boolean consumeOutput; private final Object shellCommand; private final Result result; @@ -84,7 +84,7 @@ public class ShellCommand { * * @author hypercubus */ - private static class StreamConsumer extends Thread { + private static class StreamConsumer extends I2PAppThread { private final BufferedReader bufferedReader; public StreamConsumer(InputStream inputStream) { @@ -115,7 +115,7 @@ public class ShellCommand { * * @author hypercubus */ - private static class StreamReader extends Thread { + private static class StreamReader extends I2PAppThread { private final BufferedReader bufferedReader; public StreamReader(InputStream inputStream) { @@ -149,7 +149,7 @@ public class ShellCommand { * * @author hypercubus */ - private static class StreamWriter extends Thread { + private static class StreamWriter extends I2PAppThread { private final BufferedWriter bufferedWriter; public StreamWriter(OutputStream outputStream) { @@ -439,7 +439,7 @@ public class ShellCommand { System.out.println("ShellCommand waiting for \"" + name + '\"'); try { process.waitFor(); - } catch (Exception e) { + } catch (InterruptedException e) { if (DEBUG) { System.out.println("ShellCommand exception waiting for \"" + name + '\"'); e.printStackTrace(); @@ -457,7 +457,7 @@ public class ShellCommand { if (process.exitValue() > 0) return false; } - } catch (Exception e) { + } catch (IOException e) { // probably IOException, file not found from exec() if (DEBUG) { System.out.println("ShellCommand execute exception for \"" + name + '\"'); diff --git a/core/java/src/net/i2p/util/SimpleTimer2.java b/core/java/src/net/i2p/util/SimpleTimer2.java index aff0b61f68e7a79b7f0a2d9923ca1b62af3fae66..f3eb4ee0525a74a7f5c85e8abb101b66c9296268 100644 --- a/core/java/src/net/i2p/util/SimpleTimer2.java +++ b/core/java/src/net/i2p/util/SimpleTimer2.java @@ -118,11 +118,12 @@ public class SimpleTimer2 { // (new Exception("OWCH! DAMN! Wrong ThreadGroup `" + name +"', `" + rv.getName() + "'")).printStackTrace(); // } rv.setDaemon(true); + rv.setPriority(Thread.NORM_PRIORITY + 1); return rv; } } - private ScheduledFuture schedule(TimedEvent t, long timeoutMs) { + private ScheduledFuture<?> schedule(TimedEvent t, long timeoutMs) { return _executor.schedule(t, timeoutMs, TimeUnit.MILLISECONDS); } @@ -248,7 +249,7 @@ public class SimpleTimer2 { private final SimpleTimer2 _pool; private int _fuzz; protected static final int DEFAULT_FUZZ = 3; - private ScheduledFuture _future; // _executor.remove() doesn't work so we have to use this + private ScheduledFuture<?> _future; // _executor.remove() doesn't work so we have to use this // ... and I expect cancelling this way is more efficient /** state of the current event. All access should be under lock. */ @@ -294,7 +295,7 @@ public class SimpleTimer2 { if (timeoutMs <= 0) { // streaming timers do call with timeoutMs == 0 if (timeoutMs < 0 && _log.shouldLog(Log.WARN)) - _log.warn("Timeout <= 0: " + this + " timeout = " + timeoutMs + " state: " + _state); + _log.warn("Sched. timeout < 0: " + this + " timeout = " + timeoutMs + " state: " + _state); timeoutMs = 1; // otherwise we may execute before _future is updated, which is fine // except it triggers 'early execution' warning logging } @@ -336,6 +337,11 @@ public class SimpleTimer2 { * two timeouts, else use the later */ public synchronized void reschedule(long timeoutMs, boolean useEarliestTime) { + if (timeoutMs <= 0) { + if (timeoutMs < 0 && _log.shouldWarn()) + _log.warn("Resched. timeout < 0: " + this + " timeout = " + timeoutMs + " state: " + _state); + timeoutMs = 1; + } final long now = System.currentTimeMillis(); long oldTimeout; boolean scheduled = _state == TimedEventState.SCHEDULED; @@ -348,6 +354,12 @@ public class SimpleTimer2 { if ((oldTimeout - _fuzz > timeoutMs && useEarliestTime) || (oldTimeout + _fuzz < timeoutMs && !useEarliestTime)|| (!scheduled)) { + if (scheduled && oldTimeout <= 5) { + // don't reschedule to avoid race + if (_log.shouldWarn()) + _log.warn("not rescheduling to " + timeoutMs + ", about to execute " + this + " in " + oldTimeout); + return; + } if (scheduled && (now + timeoutMs) < _nextRun) { if (_log.shouldLog(Log.INFO)) _log.info("Re-scheduling: " + this + " timeout = " + timeoutMs + " old timeout was " + oldTimeout + " state: " + _state); @@ -381,10 +393,14 @@ public class SimpleTimer2 { _cancelAfterRun = true; return true; case SCHEDULED: - boolean cancelled = _future.cancel(false); + // There's probably a race here, where it's cancelled after it's running + // The result (if rescheduled) is a dup on the queue, see tickets 1694, 1705 + // Mitigated by close-to-execution check in reschedule() + boolean cancelled = _future.cancel(true); if (cancelled) _state = TimedEventState.CANCELLED; - else {} // log something as this could be serious, we remain RUNNING otherwise + else + _log.error("could not cancel " + this + " to run in " + (_nextRun - System.currentTimeMillis()), new Exception()); return cancelled; } return false; @@ -406,6 +422,10 @@ public class SimpleTimer2 { long before = System.currentTimeMillis(); long delay = 0; synchronized(this) { + if (Thread.currentThread().isInterrupted()) { + _log.warn("I was interrupted in run, state "+_state+" event "+this); + return; + } if (_rescheduleAfterRun) throw new IllegalStateException(this + " rescheduleAfterRun cannot be true here"); @@ -415,13 +435,15 @@ public class SimpleTimer2 { case IDLE: // fall through case RUNNING: throw new IllegalStateException(this + " not possible to be in " + _state); - case SCHEDULED: // proceed, switch to IDLE in case I need to reschedule - _state = TimedEventState.IDLE; + case SCHEDULED: + // proceed, will switch to IDLE to reschedule } // if I was rescheduled by the user, re-submit myself to the executor. - int difference = (int)(_nextRun - before); // careful with long uptimes + long difference = _nextRun - before; // careful with long uptimes if (difference > _fuzz) { + // proceed, switch to IDLE to reschedule + _state = TimedEventState.IDLE; schedule(difference); return; } @@ -436,10 +458,12 @@ public class SimpleTimer2 { else if (_log.shouldLog(Log.WARN)) _log.warn(_pool + " no _future " + this); // This can be an incorrect warning especially after a schedule(0) - if (_log.shouldLog(Log.WARN) && delay > 100) - _log.warn(_pool + " early execution " + delay + ": " + this); - else if (_log.shouldLog(Log.WARN) && delay < -1000) - _log.warn(" late execution " + (0 - delay) + ": " + this + _pool.debug()); + if (_log.shouldWarn()) { + if (delay > 100) + _log.warn(_pool + " early execution " + delay + ": " + this); + else if (delay < -1000) + _log.warn(" late execution " + (0 - delay) + ": " + this + _pool.debug()); + } try { timeReached(); } catch (Throwable t) { diff --git a/core/java/src/net/i2p/util/SystemVersion.java b/core/java/src/net/i2p/util/SystemVersion.java index 6650cf479704f27d54b483ba4c068fe2b6f785bd..47644f427806cf7701487a0ce93e748e41a178b9 100644 --- a/core/java/src/net/i2p/util/SystemVersion.java +++ b/core/java/src/net/i2p/util/SystemVersion.java @@ -5,6 +5,9 @@ package net.i2p.util; */ import java.lang.reflect.Field; +import java.util.TimeZone; + +import net.i2p.I2PAppContext; /** * Methods to find out what system we are running on @@ -18,6 +21,8 @@ public abstract class SystemVersion { private static final boolean _isArm = System.getProperty("os.arch").startsWith("arm"); private static final boolean _isX86 = System.getProperty("os.arch").contains("86") || System.getProperty("os.arch").equals("amd64"); + private static final boolean _isGentoo = System.getProperty("os.version").contains("gentoo") || + System.getProperty("os.version").contains("hardened"); // Funtoo private static final boolean _isAndroid; private static final boolean _isApache; private static final boolean _isGNU; @@ -27,6 +32,7 @@ public abstract class SystemVersion { private static final boolean _oneDotSix; private static final boolean _oneDotSeven; private static final boolean _oneDotEight; + private static final boolean _oneDotNine; private static final int _androidSDK; static { @@ -62,10 +68,12 @@ public abstract class SystemVersion { _oneDotSix = _androidSDK >= 9; _oneDotSeven = _androidSDK >= 19; _oneDotEight = false; + _oneDotNine = false; } else { _oneDotSix = VersionComparator.comp(System.getProperty("java.version"), "1.6") >= 0; _oneDotSeven = _oneDotSix && VersionComparator.comp(System.getProperty("java.version"), "1.7") >= 0; _oneDotEight = _oneDotSeven && VersionComparator.comp(System.getProperty("java.version"), "1.8") >= 0; + _oneDotNine = _oneDotEight && VersionComparator.comp(System.getProperty("java.version"), "1.9") >= 0; } } @@ -95,6 +103,13 @@ public abstract class SystemVersion { return _isGNU; } + /** + * @since 0.9.23 + */ + public static boolean isGentoo() { + return _isGentoo; + } + /** * @since 0.9.8 */ @@ -139,6 +154,15 @@ public abstract class SystemVersion { return _oneDotEight; } + /** + * + * @return true if Java 1.9 or higher, false for Android. + * @since 0.9.23 + */ + public static boolean isJava9() { + return _oneDotNine; + } + /** * This isn't always correct. * http://stackoverflow.com/questions/807263/how-do-i-detect-which-kind-of-jre-is-installed-32bit-vs-64bit @@ -181,4 +205,59 @@ public abstract class SystemVersion { maxMemory = 96*1024*1024l; return maxMemory; } + + /** + * The system's time zone, which is probably different from the + * JVM time zone, because Router changes the JVM default to GMT. + * It saves the old default in the context properties where we can get it. + * Use this to format a time in local time zone with DateFormat.setTimeZone(). + * + * @return non-null + * @since 0.9.24 + */ + public static TimeZone getSystemTimeZone() { + return getSystemTimeZone(I2PAppContext.getGlobalContext()); + } + + /** + * The system's time zone, which is probably different from the + * JVM time zone, because Router changes the JVM default to GMT. + * It saves the old default in the context properties where we can get it. + * Use this to format a time in local time zone with DateFormat.setTimeZone(). + * + * @return non-null + * @since 0.9.24 + */ + public static TimeZone getSystemTimeZone(I2PAppContext ctx) { + String systemTimeZone = ctx.getProperty("i2p.systemTimeZone"); + if (systemTimeZone != null) + return TimeZone.getTimeZone(systemTimeZone); + return TimeZone.getDefault(); + } + + /** + * @since 0.9.24 + */ +/**** + public static void main(String[] args) { + System.out.println("64 bit : " + is64Bit()); + System.out.println("Java 6 : " + isJava6()); + System.out.println("Java 7 : " + isJava7()); + System.out.println("Java 8 : " + isJava8()); + System.out.println("Java 9 : " + isJava9()); + System.out.println("Android : " + isAndroid()); + if (isAndroid()) + System.out.println(" Version: " + getAndroidVersion()); + System.out.println("Apache : " + isApache()); + System.out.println("ARM : " + isARM()); + System.out.println("Mac : " + isMac()); + System.out.println("Gentoo : " + isGentoo()); + System.out.println("GNU : " + isGNU()); + System.out.println("Windows : " + isWindows()); + System.out.println("Wrapper : " + hasWrapper()); + System.out.println("x86 : " + isX86()); + System.out.println("Max mem : " + getMaxMemory()); + + } +****/ } diff --git a/core/java/src/net/i2p/util/Translate.java b/core/java/src/net/i2p/util/Translate.java index 3b5ab1b5350ba82c5bbacb7d6d9828be3b74ea40..e76121c8a2b5cae4a2d401aa3493286e50830755 100644 --- a/core/java/src/net/i2p/util/Translate.java +++ b/core/java/src/net/i2p/util/Translate.java @@ -65,7 +65,7 @@ public abstract class Translate { * The {0} will be replaced by the parameter. * Single quotes must be doubled, i.e. ' -> '' in the string. * @param o parameter, not translated. - * To tranlslate parameter also, use _t("foo {0} bar", _t("baz")) + * To translate parameter also, use _t("foo {0} bar", _t("baz")) * Do not double the single quotes in the parameter. * Use autoboxing to call with ints, longs, floats, etc. */ diff --git a/core/java/src/net/metanotion/io/block/BlockFile.java b/core/java/src/net/metanotion/io/block/BlockFile.java index 01870220489432d4d73ba242392ca9193661e9bd..122f30796e22c9bcbe1252b8482cd35762a7daa5 100644 --- a/core/java/src/net/metanotion/io/block/BlockFile.java +++ b/core/java/src/net/metanotion/io/block/BlockFile.java @@ -147,7 +147,7 @@ public class BlockFile implements Closeable { bf.bfck(true); bf.close(); raif.close(); - } catch (Exception e) { + } catch (IOException e) { e.printStackTrace(); } } diff --git a/debian/apparmor/i2p b/debian/apparmor/i2p index 8e06c9b7c78bcd50ce0fc16dbb8eec6407e0825c..0e33fb9d8496d4ac0202bd84ee0415a5d7062d11 100644 --- a/debian/apparmor/i2p +++ b/debian/apparmor/i2p @@ -1,4 +1,4 @@ -# Last Modified: Thu May 21 18:30:32 2015 +# Last Modified: Sun Dec 06 12:30:32 2015 # vim:syntax=apparmor et ts=4 sw=4 #include <abstractions/base> @@ -61,7 +61,9 @@ owner /{,lib/live/mount/overlay/}tmp/scrypt* rwk, owner /{,lib/live/mount/overlay/}tmp/scrypt*/** rw, owner /{,lib/live/mount/overlay/}tmp/i2p-daemon/ rwm, - owner /{,lib/live/mount/overlay/}tmp/i2p-daemon/** rwklm, + owner /{,lib/live/mount/overlay/}tmp/i2p-daemon/** rwkm, + # /graphs in the router console + owner /{,lib/live/mount/overlay/}tmp/imageio[0-9]*.tmp rwk, # Prevent spamming the logs deny /dev/tty rw, diff --git a/debian/apparmor/system_i2p b/debian/apparmor/system_i2p index c2764b92e3e000f65b6489569f01c0417418afec..2eabd775b2aefb96027e0c7b8340202c606dc462 100644 --- a/debian/apparmor/system_i2p +++ b/debian/apparmor/system_i2p @@ -1,11 +1,11 @@ -# Last Modified: Thu May 21 18:30:32 2015 +# Last Modified: Sun Dec 06 12:30:32 2015 # vim:syntax=apparmor et #include <tunables/global> profile system_i2p flags=(complain) { #include <abstractions/i2p> - owner /{,lib/live/mount/overlay/}var/lib/i2p/** rwkl, + owner /{,lib/live/mount/overlay/}var/lib/i2p/** rwk, owner /{,lib/live/mount/overlay/}var/lib/i2p/i2p-config/eepsite/cgi-bin rix, owner /{,lib/live/mount/overlay/}var/log/i2p/* rw, diff --git a/debian/apparmor/usr.bin.i2prouter b/debian/apparmor/usr.bin.i2prouter index 8150c39e6529bff2b99386e7ab3eb59004010282..9fb11d452ad8d2125dc4deeea190874bbde1478f 100644 --- a/debian/apparmor/usr.bin.i2prouter +++ b/debian/apparmor/usr.bin.i2prouter @@ -1,4 +1,4 @@ -# Last Modified: Thu May 21 18:30:32 2015 +# Last Modified: Sun Dec 06 12:30:32 2015 # vim:syntax=apparmor et ts=8 sw=4 #include <tunables/global> @@ -40,7 +40,7 @@ @{HOME}/.java/fonts/** r, owner @{HOME}/.i2p/ rw, - owner @{HOME}/.i2p/** rwkl, + owner @{HOME}/.i2p/** rwk, owner @{HOME}/.i2p/eepsite/cgi-bin/** rix, # Prevent spamming the logs diff --git a/debian/changelog b/debian/changelog index f0d4d62d908d27b8e79178b5f3a7e8d7363137c4..44d2292f029528a919c3d8ef1282351ed927ccb2 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,57 @@ +i2p (0.9.23-2) unstable; urgency=medium + + * Backport of two fixes from after the release of 0.9.23 + - debian/patches/0005-Console-Fix-escaping-of-plugin-description-on-config.patch + - debian/patches/0006-NetDb-Fix-deadlock-ticket-1722.patch + * AppArmor: + - Remove 'l' from the debian AppArmor profiles + - Allow writing to /tmp/imageio*, needed by graph creation on some systems + + -- Kill Your TV <killyourtv@i2pmail.org> Sun, 06 Dec 2015 14:28:23 +0000 + +i2p (0.9.23-1) unstable; urgency=medium + + * New Upstream Version + - Accelerate transition to Ed25519 + - Fix some bugs soft restarting after a large clock shift (e.g. resume) (but more to do) + - Fix streaming retransmission timers that were dying, and related timer bugs + - Fix streaming connections rejected while tunnel is opening + - Fix rare i2psnark and UPnP deadlocks + - Fix lifetime participating bandwidth display in console + - Increase default outbound exploratory tunnel length to 3 + - Use max of 2 not-failing peers in exploratory tunnels to improve build success + - Add support for hostnames prefixed with "www."; + - Store news feed items separately on disk, show on new /news page, limit display on home page to 2 + - Increase probability of rekeying to EdDSA + - Detect for broken ECDSA support in Gentoo + - Console: Add a Java 6 warning, this is the last release to support Java 6 + - Changes to prepare for Java 9 compatibility + - i2ptunnel: Pass Accept-Encoding header through client and server proxies, to allow end-to-end compression + - i2psnark: Increase piece size, piece count, and file count limits + - i2psnark: Save added and completed times + - i2psnark: Save magnet parameters across restart + - i2psnark: Don't delete .torrent file on errors at startup, rename to .torrent.BAD + - i2psnark: Add recheck, start, stop buttons on details pages + - i2psnark: Add option to disable "smart sort" + - Speed up IP address validation + - Separate streaming blacklists for ECDSA and EdDSA + - Translation updates + - Update GeoIP data (new installs and PPA only) + + -- Kill Your TV <killyourtv@i2pmail.org> Thu, 19 Nov 2015 12:41:36 +0000 + +i2p (0.9.22-1) unstable; urgency=medium + + * New Upstream Version + - Start migration to Ed25519 router info signatures + - Fix i2psnark getting stuck before download complete, and not deleting temp + files + - Fix excluded SSL ciphers in console + - Translation updates + - Update GeoIP data + + -- Kill Your TV <killyourtv@i2pmail.org> Sun, 13 Sep 2015 11:27:16 +0000 + i2p (0.9.21-2) unstable; urgency=medium * Add exception to apparmor rules for scrypt, needed by I2P-Bote diff --git a/debian/control b/debian/control index afac9f505627deec43b2beef8346b7125f80792a..af289f1f52555ac479d8684da20583d8d27700b7 100644 --- a/debian/control +++ b/debian/control @@ -9,7 +9,7 @@ Build-Depends: debhelper (>= 7.0.50~) ,ant (>= 1.8) ,ant-optional ,debconf - ,default-jdk | openjdk-7-jdk | openjdk-6-jdk + ,default-jdk | openjdk-7-jdk ,dh-apparmor ,gettext ,libgmp-dev (>= 2:5.0.5) @@ -72,7 +72,7 @@ Architecture: all Section: net Priority: optional Depends: ${misc:Depends}, ${java:Depends}, ${shlibs:Depends}, - openjdk-8-jre-headless | openjdk-7-jre-headless | openjdk-6-jre-headless | default-jre-headless | java8-runtime-headless | java7-runtime-headless | java6-runtime-headless, libecj-java + openjdk-8-jre-headless | openjdk-7-jre-headless | default-jre-headless | java8-runtime-headless | java7-runtime-headless, libecj-java Replaces: i2p ( << 0.8.6-5) Breaks: i2p (<< 0.8.6-5) Recommends: libjbigi-jni, ttf-dejavu diff --git a/debian/patches/0001-path-substitution.patch b/debian/patches/0001-path-substitution.patch index f7d9c5b28c1bc180bfc1eb0a3151d498ce48db09..9af1e19edcf06d07b2720f75c378ecd1dd5dd803 100644 --- a/debian/patches/0001-path-substitution.patch +++ b/debian/patches/0001-path-substitution.patch @@ -309,11 +309,10 @@ Debian wrapper.config to try to prevent confusion. #******************************************************************** # Wrapper General Properties -@@ -258,30 +239,3 @@ - wrapper.umask=0022 +@@ -259,32 +240,6 @@ wrapper.java.umask=0022 wrapper.logfile.umask=0077 -- + -#******************************************************************** -# Wrapper NT Service Properties -#******************************************************************** @@ -340,6 +339,9 @@ Debian wrapper.config to try to prevent confusion. -# Allow the service to interact with the desktop. -wrapper.ntservice.interactive=false - + # http://wrapper.tanukisoftware.com/doc/english/prop-check-deadlock.html + # requires wrapper 3.5.0 or higher + # interval is seconds --- a/installer/resources/locale/po/messages_de.po +++ b/installer/resources/locale/po/messages_de.po @@ -195,15 +195,15 @@ diff --git a/debian/po/cs.po b/debian/po/cs.po index 22833ff5e80bc83d7ea64de690d18381ecb3ae7e..06b3cac210e3a41fd60d5e3dedab86e6262df4ee 100644 --- a/debian/po/cs.po +++ b/debian/po/cs.po @@ -1,7 +1,7 @@ # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. -# +# # Translators: msgid "" msgstr "" @@ -11,10 +11,10 @@ msgstr "" "PO-Revision-Date: 2015-03-29 14:31+0000\n" "Last-Translator: kytv <killyourtv@i2pmail.org>\n" "Language-Team: Czech (http://www.transifex.com/projects/p/I2P/language/cs/)\n" +"Language: cs\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: cs\n" "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" #. Type: boolean @@ -29,7 +29,9 @@ msgstr "Spustit I2P routr pÅ™i spuÅ¡tÄ›nà poÄÃtaÄe?" msgid "" "The I2P router can be run as a daemon that starts automatically when your " "computer boots up. This is the recommended configuration." -msgstr "I2P routr bude spuÅ¡tÄ›n pÅ™i startu poÄÃtaÄe jako služba na pozadà (démon). Toto je doporuÄené nastavenÃ." +msgstr "" +"I2P routr bude spuÅ¡tÄ›n pÅ™i startu poÄÃtaÄe jako služba na pozadà (démon). " +"Toto je doporuÄené nastavenÃ." #. Type: string #. Description @@ -41,11 +43,16 @@ msgstr "Jméno uživatele I2P démona (daemon user):" #. Description #: ../i2p.templates:3001 msgid "" -"By default I2P is configured to run under the account i2psvc when running as" -" a daemon. To use an **existing** I2P profile you may enter a different " -"account name here. For example, if your previous I2P installation is at " -"/home/user/i2p, you may enter 'user' here." -msgstr "I2P démon je ve výchozÃm stavu nakonfigurován aby běžel pod uživatelským úÄtem i2psvc. Pokud chcete použÃt **existujÃcÃ** I2P profil zadejte pÅ™ihlaÅ¡ovacà jméno (login) jiného uživatelského úÄtu. NapÅ™Ãklad pokud se VaÅ¡e pÅ™edchozà instalace I2P nacházà v adresáři /home/franta/i2p, zadejte sem franta." +"By default I2P is configured to run under the account i2psvc when running as " +"a daemon. To use an **existing** I2P profile you may enter a different " +"account name here. For example, if your previous I2P installation is at /" +"home/user/i2p, you may enter 'user' here." +msgstr "" +"I2P démon je ve výchozÃm stavu nakonfigurován aby běžel pod uživatelským " +"úÄtem i2psvc. Pokud chcete použÃt **existujÃcÃ** I2P profil zadejte " +"pÅ™ihlaÅ¡ovacà jméno (login) jiného uživatelského úÄtu. NapÅ™Ãklad pokud se " +"VaÅ¡e pÅ™edchozà instalace I2P nacházà v adresáři /home/franta/i2p, zadejte " +"sem franta." #. Type: string #. Description @@ -53,7 +60,9 @@ msgstr "I2P démon je ve výchozÃm stavu nakonfigurován aby běžel pod uživa msgid "" "Very important: If a user other than the default of 'i2psvc' is entered " "here, the chosen username *MUST* already exist." -msgstr "Důležité: pokud zadáte jiné jméno uživatele než je výchozà i2psvc, jeho úÄet už musà pÅ™edem existovat." +msgstr "" +"Důležité: pokud zadáte jiné jméno uživatele než je výchozà i2psvc, jeho úÄet " +"už musà pÅ™edem existovat." #. Type: string #. Description @@ -73,7 +82,9 @@ msgstr "StandardnÄ› I2P použije nanejvýš 128MB RAM." msgid "" "High bandwidth routers, as well as routers with a lot of active torrents / " "plugins, may need to have this value increased." -msgstr "Pokud máte velmi rychlé pÅ™ipojenÃ, použÃváte hodnÄ› pluginů a nebo stahujete velké množstvà torrentů, zvyÅ¡te tuto hodnotu." +msgstr "" +"Pokud máte velmi rychlé pÅ™ipojenÃ, použÃváte hodnÄ› pluginů a nebo stahujete " +"velké množstvà torrentů, zvyÅ¡te tuto hodnotu." #. Type: boolean #. Description diff --git a/debian/po/de.po b/debian/po/de.po index 95e1e8c4ea288adcbc6595454cfcb65198e060a1..ebd36be81ddc10800300e7f99b548b98041f5aec 100644 --- a/debian/po/de.po +++ b/debian/po/de.po @@ -1,7 +1,7 @@ # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. -# +# # Translators: # D.A. Loader <>, 2012 # Ettore Atalan <atalanttore@googlemail.com>, 2015 @@ -13,11 +13,12 @@ msgstr "" "POT-Creation-Date: 2015-02-18 22:14+0000\n" "PO-Revision-Date: 2015-03-29 16:34+0000\n" "Last-Translator: Ettore Atalan <atalanttore@googlemail.com>\n" -"Language-Team: German (http://www.transifex.com/projects/p/I2P/language/de/)\n" +"Language-Team: German (http://www.transifex.com/projects/p/I2P/language/" +"de/)\n" +"Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: de\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #. Type: boolean @@ -32,7 +33,9 @@ msgstr "Soll der I2P-Router beim Hochfahren mitgestartet werden?" msgid "" "The I2P router can be run as a daemon that starts automatically when your " "computer boots up. This is the recommended configuration." -msgstr "Der I2P-Router kann als Dämon laufen und beim Hochfahren des Betriebssystems mitgestartet werden. Diese Option wird empfohlen." +msgstr "" +"Der I2P-Router kann als Dämon laufen und beim Hochfahren des Betriebssystems " +"mitgestartet werden. Diese Option wird empfohlen." #. Type: string #. Description @@ -44,11 +47,15 @@ msgstr "Benutzer für den I2P-Dämon" #. Description #: ../i2p.templates:3001 msgid "" -"By default I2P is configured to run under the account i2psvc when running as" -" a daemon. To use an **existing** I2P profile you may enter a different " -"account name here. For example, if your previous I2P installation is at " -"/home/user/i2p, you may enter 'user' here." -msgstr "Standardmäßig ist I2P so eingestellt, dass es im Dämonmodus der unter dem Benutzer i2psvc läuft. Um ein bereits **vorhandenes** I2P-Profil zu benutzen, kannst du hier einen anderen Benutzer angeben. Beispiel: Wenn deine alte I2P-Installation in /home/ich/i2p residiert, gib hier 'ich' ein." +"By default I2P is configured to run under the account i2psvc when running as " +"a daemon. To use an **existing** I2P profile you may enter a different " +"account name here. For example, if your previous I2P installation is at /" +"home/user/i2p, you may enter 'user' here." +msgstr "" +"Standardmäßig ist I2P so eingestellt, dass es im Dämonmodus der unter dem " +"Benutzer i2psvc läuft. Um ein bereits **vorhandenes** I2P-Profil zu " +"benutzen, kannst du hier einen anderen Benutzer angeben. Beispiel: Wenn " +"deine alte I2P-Installation in /home/ich/i2p residiert, gib hier 'ich' ein." #. Type: string #. Description @@ -56,7 +63,9 @@ msgstr "Standardmäßig ist I2P so eingestellt, dass es im Dämonmodus der unter msgid "" "Very important: If a user other than the default of 'i2psvc' is entered " "here, the chosen username *MUST* already exist." -msgstr "Achtung: Wenn etwas anderes als das Standartmäßige 'i2psvc' hier eingetrangen ist, musst du einen Benutzernamen angeben der schon existiert !" +msgstr "" +"Achtung: Wenn etwas anderes als das Standartmäßige 'i2psvc' hier " +"eingetrangen ist, musst du einen Benutzernamen angeben der schon existiert !" #. Type: string #. Description @@ -76,7 +85,9 @@ msgstr "Standartmäßig kann I2P bist zu 128 MB RAM belegen." msgid "" "High bandwidth routers, as well as routers with a lot of active torrents / " "plugins, may need to have this value increased." -msgstr "Router mit hoher Bandbreite, sowie vielen aktiven Torrents oder Plugins, müssen gegebenenfalls diesen Wert erhöhen." +msgstr "" +"Router mit hoher Bandbreite, sowie vielen aktiven Torrents oder Plugins, " +"müssen gegebenenfalls diesen Wert erhöhen." #. Type: boolean #. Description @@ -90,4 +101,6 @@ msgstr "Mit AppArmor beschränkten I2P-Daemon ausführen" msgid "" "With this option enabled I2P will be sandboxed with AppArmor, restricting " "which files and directories may be accessed by I2P." -msgstr "Wenn diese Option aktiviert ist, läuft I2P in einer AppArmor-Sandbox, welche den Zugriff von I2P auf Dateien und Verzeichnisse beschränkt." +msgstr "" +"Wenn diese Option aktiviert ist, läuft I2P in einer AppArmor-Sandbox, welche " +"den Zugriff von I2P auf Dateien und Verzeichnisse beschränkt." diff --git a/debian/po/el.po b/debian/po/el.po index 258f74a5667a477bcc94edf4c2aaeff3d0686c08..3c125cd30b17293051c07e54cdb5d36ffe3e1ead 100644 --- a/debian/po/el.po +++ b/debian/po/el.po @@ -1,7 +1,7 @@ # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. -# +# # Translators: # lixtetrax <lixtetrax@grhack.net>, 2012 msgid "" @@ -12,10 +12,10 @@ msgstr "" "PO-Revision-Date: 2015-03-29 14:31+0000\n" "Last-Translator: kytv <killyourtv@i2pmail.org>\n" "Language-Team: Greek (http://www.transifex.com/projects/p/I2P/language/el/)\n" +"Language: el\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: el\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #. Type: boolean @@ -30,7 +30,9 @@ msgstr "ΈναÏξη λειτουÏγίας του δÏομολογητή I2P κ msgid "" "The I2P router can be run as a daemon that starts automatically when your " "computer boots up. This is the recommended configuration." -msgstr "Ο δÏομολογητής I2P μποÏει να εκκινήσει ως υπηÏεσίας κατά την εκκίνηση του υπολογιστή σας. Αυτή είναι η Ï€Ïοτεινόμενη ÏÏθμιση." +msgstr "" +"Ο δÏομολογητής I2P μποÏει να εκκινήσει ως υπηÏεσίας κατά την εκκίνηση του " +"υπολογιστή σας. Αυτή είναι η Ï€Ïοτεινόμενη ÏÏθμιση." #. Type: string #. Description @@ -42,11 +44,16 @@ msgstr "ΧÏήστης Ι2Ρ υπηÏεσίας:" #. Description #: ../i2p.templates:3001 msgid "" -"By default I2P is configured to run under the account i2psvc when running as" -" a daemon. To use an **existing** I2P profile you may enter a different " -"account name here. For example, if your previous I2P installation is at " -"/home/user/i2p, you may enter 'user' here." -msgstr "Αν Ï„ÏÎχει ως υπηÏεσία, εξ' οÏÎ¹ÏƒÎ¼Î¿Ï Ï„Î¿ Ι2Ρ είναι ÏυθμισμÎνο να Ï„ÏÎχει Ïπο τον λογαÏιασμό χÏήστη 'i2psvc. Για να χÏησιμοποιηθεί Îνα **υπάÏχον** Ï€Ïοφίλ Ι2Ρ, μποÏείτε να εισάγετε Îνα διαφοÏετικό όνομα λογαÏÎ¹Î±ÏƒÎ¼Î¿Ï ÎµÎ´ÏŽ. Για παÏάδειγμα, αν η Ï€ÏοηγοÏμενη εγκατάσταση Ι2Ρ βÏίσκεται στο /home/user/i2p, μποÏείτε να εισάγετε 'user' εδώ." +"By default I2P is configured to run under the account i2psvc when running as " +"a daemon. To use an **existing** I2P profile you may enter a different " +"account name here. For example, if your previous I2P installation is at /" +"home/user/i2p, you may enter 'user' here." +msgstr "" +"Αν Ï„ÏÎχει ως υπηÏεσία, εξ' οÏÎ¹ÏƒÎ¼Î¿Ï Ï„Î¿ Ι2Ρ είναι ÏυθμισμÎνο να Ï„ÏÎχει Ïπο τον " +"λογαÏιασμό χÏήστη 'i2psvc. Για να χÏησιμοποιηθεί Îνα **υπάÏχον** Ï€Ïοφίλ Ι2Ρ, " +"μποÏείτε να εισάγετε Îνα διαφοÏετικό όνομα λογαÏÎ¹Î±ÏƒÎ¼Î¿Ï ÎµÎ´ÏŽ. Για παÏάδειγμα, " +"αν η Ï€ÏοηγοÏμενη εγκατάσταση Ι2Ρ βÏίσκεται στο /home/user/i2p, μποÏείτε να " +"εισάγετε 'user' εδώ." #. Type: string #. Description @@ -54,7 +61,9 @@ msgstr "Αν Ï„ÏÎχει ως υπηÏεσία, εξ' οÏÎ¹ÏƒÎ¼Î¿Ï Ï„Î¿ Ι2Ρ msgid "" "Very important: If a user other than the default of 'i2psvc' is entered " "here, the chosen username *MUST* already exist." -msgstr "Î Î¿Î»Ï ÏƒÎ·Î¼Î±Î½Ï„Î¹ÎºÏŒ: αν οÏιστεί εδώ όνομα χÏήστη Ï€ÎÏαν του εξ' οÏÎ¹ÏƒÎ¼Î¿Ï 'i2psvc', το επιλεγμÎνο όνομα χÏήστη *ΠΡΕΠΕΙ* να υπάÏχει ήδη." +msgstr "" +"Î Î¿Î»Ï ÏƒÎ·Î¼Î±Î½Ï„Î¹ÎºÏŒ: αν οÏιστεί εδώ όνομα χÏήστη Ï€ÎÏαν του εξ' οÏÎ¹ÏƒÎ¼Î¿Ï 'i2psvc', " +"το επιλεγμÎνο όνομα χÏήστη *ΠΡΕΠΕΙ* να υπάÏχει ήδη." #. Type: string #. Description @@ -74,7 +83,9 @@ msgstr "Εξ' οÏισμοÏ, θα επετÏαπεί στο Ι2Ρ να χÏησ msgid "" "High bandwidth routers, as well as routers with a lot of active torrents / " "plugins, may need to have this value increased." -msgstr "ΔÏομολογητÎÏ‚ με υψηλό εÏÏος ζώνης, καθώς και δÏομολογητÎÏ‚ με πολλά ενεÏγά αÏθÏώματα μποÏεί να χÏειαστεί να αυξήσουν αυτή την τιμή." +msgstr "" +"ΔÏομολογητÎÏ‚ με υψηλό εÏÏος ζώνης, καθώς και δÏομολογητÎÏ‚ με πολλά ενεÏγά " +"αÏθÏώματα μποÏεί να χÏειαστεί να αυξήσουν αυτή την τιμή." #. Type: boolean #. Description diff --git a/debian/po/es.po b/debian/po/es.po index 344b3dba1a5d105758b8a15dfa36e4cdb6aee097..599cd69b3ce0764e1de3d9975d3df23ff9beed99 100644 --- a/debian/po/es.po +++ b/debian/po/es.po @@ -1,7 +1,7 @@ # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. -# +# # Translators: # Adolfo Jayme Barrientos, 2013 # mixxy <m1xxy@mail.i2p>, 2011 @@ -14,11 +14,12 @@ msgstr "" "POT-Creation-Date: 2015-02-18 22:14+0000\n" "PO-Revision-Date: 2015-03-29 23:53+0000\n" "Last-Translator: strel\n" -"Language-Team: Spanish (http://www.transifex.com/projects/p/I2P/language/es/)\n" +"Language-Team: Spanish (http://www.transifex.com/projects/p/I2P/language/" +"es/)\n" +"Language: es\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: es\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #. Type: boolean @@ -33,7 +34,9 @@ msgstr "¿Iniciar el enrutador I2P al arrancar?" msgid "" "The I2P router can be run as a daemon that starts automatically when your " "computer boots up. This is the recommended configuration." -msgstr "El enrutador I2P se puede ejecutar como demonio que inicia automaticamente al arrancar el equipo. Esta es la opción recomendada." +msgstr "" +"El enrutador I2P se puede ejecutar como demonio que inicia automaticamente " +"al arrancar el equipo. Esta es la opción recomendada." #. Type: string #. Description @@ -45,11 +48,16 @@ msgstr "Usuario del demonio I2P:" #. Description #: ../i2p.templates:3001 msgid "" -"By default I2P is configured to run under the account i2psvc when running as" -" a daemon. To use an **existing** I2P profile you may enter a different " -"account name here. For example, if your previous I2P installation is at " -"/home/user/i2p, you may enter 'user' here." -msgstr "De forma predeterminada, I2P está configurado para ejecutarse con la cuenta i2psvc si el modo de demonio está activado. Para usar un perfil **ya existente** de I2P, puede especificar aquà un nombre de cuenta diferente. Por ejemplo, si su instalación anterior de I2P está en /home/pepe/i2p, puedes escribir «pepe» aquÃ." +"By default I2P is configured to run under the account i2psvc when running as " +"a daemon. To use an **existing** I2P profile you may enter a different " +"account name here. For example, if your previous I2P installation is at /" +"home/user/i2p, you may enter 'user' here." +msgstr "" +"De forma predeterminada, I2P está configurado para ejecutarse con la cuenta " +"i2psvc si el modo de demonio está activado. Para usar un perfil **ya " +"existente** de I2P, puede especificar aquà un nombre de cuenta diferente. " +"Por ejemplo, si su instalación anterior de I2P está en /home/pepe/i2p, " +"puedes escribir «pepe» aquÃ." #. Type: string #. Description @@ -57,7 +65,9 @@ msgstr "De forma predeterminada, I2P está configurado para ejecutarse con la cu msgid "" "Very important: If a user other than the default of 'i2psvc' is entered " "here, the chosen username *MUST* already exist." -msgstr "Muy importante: Si se introduce un nombre de usuario en este campo distinto a «i2psvc», el nombre elegido *DEBE* existir de antemano." +msgstr "" +"Muy importante: Si se introduce un nombre de usuario en este campo distinto " +"a «i2psvc», el nombre elegido *DEBE* existir de antemano." #. Type: string #. Description @@ -69,7 +79,8 @@ msgstr "La memoria que se puede asignar a I2P:" #. Description #: ../i2p.templates:4001 msgid "By default, I2P will only be allowed to use up to 128MB of RAM." -msgstr "De forma predeterminada, a I2P solo se le permitirá usar hasta 128MB de RAM." +msgstr "" +"De forma predeterminada, a I2P solo se le permitirá usar hasta 128MB de RAM." #. Type: string #. Description @@ -77,7 +88,9 @@ msgstr "De forma predeterminada, a I2P solo se le permitirá usar hasta 128MB de msgid "" "High bandwidth routers, as well as routers with a lot of active torrents / " "plugins, may need to have this value increased." -msgstr "Los enrutadores con ancho de banda alto, además de los enrutadores con muchos torrents/complementos activos, pueden necesitar aumentar este valor." +msgstr "" +"Los enrutadores con ancho de banda alto, además de los enrutadores con " +"muchos torrents/complementos activos, pueden necesitar aumentar este valor." #. Type: boolean #. Description @@ -91,4 +104,6 @@ msgstr "Ejecutar el demonio I2P confinado con AppArmor" msgid "" "With this option enabled I2P will be sandboxed with AppArmor, restricting " "which files and directories may be accessed by I2P." -msgstr "Con esta opción habilitada I2P sera encerrada con AppArmor, restringiendo a qué ficheros y directorios se puede acceder por I2P." +msgstr "" +"Con esta opción habilitada I2P sera encerrada con AppArmor, restringiendo a " +"qué ficheros y directorios se puede acceder por I2P." diff --git a/debian/po/fi.po b/debian/po/fi.po index 9d77961ac1834aff35473073ee706db1e2255829..a9c37db6fdfa019955b0521514eb6bc80683a1d1 100644 --- a/debian/po/fi.po +++ b/debian/po/fi.po @@ -1,28 +1,29 @@ # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. -# +# # Translators: # oselotti, 2014-2015 +# outolumo <outolumo@gmail.com>, 2015 msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: https://trac.i2p2.de/\n" "POT-Creation-Date: 2015-02-18 22:14+0000\n" -"PO-Revision-Date: 2015-03-29 15:00+0000\n" -"Last-Translator: oselotti\n" -"Language-Team: Finnish (http://www.transifex.com/projects/p/I2P/language/fi/)\n" +"PO-Revision-Date: 2015-09-14 21:51+0000\n" +"Last-Translator: outolumo <outolumo@gmail.com>\n" +"Language-Team: Finnish (http://www.transifex.com/otf/I2P/language/fi/)\n" +"Language: fi\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: fi\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #. Type: boolean #. Description #: ../i2p.templates:2001 msgid "Should the I2P router be started at boot?" -msgstr "Tulisiko I2P-reititin käynnistää järjestelmän käynnistyksen yhteydessä?" +msgstr "Käynnistetäänkö I2P-reititin järjestelmää käynnistettäessä?" #. Type: boolean #. Description @@ -30,7 +31,9 @@ msgstr "Tulisiko I2P-reititin käynnistää järjestelmän käynnistyksen yhteyd msgid "" "The I2P router can be run as a daemon that starts automatically when your " "computer boots up. This is the recommended configuration." -msgstr "I2P-reititin voi toimia taustapalveluna, joka käynnistyy automaattisesti tietokoneen käynnistyessä. Tämä on suositeltu asetus." +msgstr "" +"I2P-reititin voi toimia taustapalveluna, joka käynnistetään automaattisesti " +"tietokoneen käynnistyessä. Tämä on suositus." #. Type: string #. Description @@ -42,11 +45,15 @@ msgstr "I2P daemon käyttäjä:" #. Description #: ../i2p.templates:3001 msgid "" -"By default I2P is configured to run under the account i2psvc when running as" -" a daemon. To use an **existing** I2P profile you may enter a different " -"account name here. For example, if your previous I2P installation is at " -"/home/user/i2p, you may enter 'user' here." -msgstr "Oletuksena I2P on säädetty toimimaan taustapalveluna i2psvc-käyttäjällä. Käytettäessä **olemassa olevaa** I2P-profiilia, voidaan eri käyttäjänimi syöttää tähän. Esimerkiksi, jos edellinen I2P-asennus oli /home/user/i2p, voidaan tähän syöttää 'user'." +"By default I2P is configured to run under the account i2psvc when running as " +"a daemon. To use an **existing** I2P profile you may enter a different " +"account name here. For example, if your previous I2P installation is at /" +"home/user/i2p, you may enter 'user' here." +msgstr "" +"Oletuksena I2P on asetettu taustapalveluksi i2psvc-käyttäjänä. Käyttääksesi " +"**jo olemassa olevaa** I2P-profiilia, voit syöttää käyttäjätunnuksen tähän. " +"Esimerkiksi, jos edellinen I2P-asennuksesi on /home/user/i2p, voit syöttää " +"tähän 'user'." #. Type: string #. Description @@ -54,19 +61,21 @@ msgstr "Oletuksena I2P on säädetty toimimaan taustapalveluna i2psvc-käyttäj msgid "" "Very important: If a user other than the default of 'i2psvc' is entered " "here, the chosen username *MUST* already exist." -msgstr "Erittäin tärkeää: jos joku muu käyttäjä kuin oletusarvo 'i2psvc' syötetään tähän, käyttäjän *TÄYTYY* olla ennestään olemassa." +msgstr "" +"Erittäin tärkeää: jos muutat oletuskäyttäjää 'i2psvc', ilmoittamasi " +"käyttäjän *TÄYTYY* olla jo ennestään olemassa." #. Type: string #. Description #: ../i2p.templates:4001 msgid "Memory that can be allocated to I2P:" -msgstr "Muisti, joka voidaan varata I2P:n käyttöön:" +msgstr "Kuinka paljon muistia I2P saa käyttää:" #. Type: string #. Description #: ../i2p.templates:4001 msgid "By default, I2P will only be allowed to use up to 128MB of RAM." -msgstr "Oletuksena I2P voi käyttää maksimissaan vain 128MB RAM-muistia." +msgstr "Oletuksena I2P voi käyttää korkeintaan 128MB RAM-muistia." #. Type: string #. Description @@ -74,7 +83,9 @@ msgstr "Oletuksena I2P voi käyttää maksimissaan vain 128MB RAM-muistia." msgid "" "High bandwidth routers, as well as routers with a lot of active torrents / " "plugins, may need to have this value increased." -msgstr "Suurikaistaiset reitittimet, sekä reitittimet, joilla on paljon aktiivisia torrenteja / lisäosia, saattavat tarvita tämän arvon korotettuna." +msgstr "" +"Laajakaistaiset reitittimet, sekä koneet, joilla on paljon aktiivisia " +"torrenteja / lisäosia, saattavat tarvita enemmän muistia." #. Type: boolean #. Description @@ -88,4 +99,6 @@ msgstr "Suorita I2P-daemon AppArmorin kanssa" msgid "" "With this option enabled I2P will be sandboxed with AppArmor, restricting " "which files and directories may be accessed by I2P." -msgstr "Jos tämä asetus on päällä, I2P hiekkalaatikoidaan AppArmorilla, rajoittaen tiedostot ja hakemistot, jotka ovat I2P:n saatavissa." +msgstr "" +"Jos tämä asetus on päällä, I2P koteiloidaan AppArmorilla, mikä kansioita ja " +"tiedostoja, joihin I2P pääsee käsiksi." diff --git a/debian/po/fr.po b/debian/po/fr.po index 7519012b336d83d4353be13df52f6fe3e9a13554..6ffd9a22111df64e163a71d271d3d03c39eafd55 100644 --- a/debian/po/fr.po +++ b/debian/po/fr.po @@ -1,23 +1,24 @@ # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. -# +# # Translators: # Boxoa590, 2012 # Boxoa590, 2012 +# syl_, 2015 # Towinet, 2013,2015 msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: https://trac.i2p2.de/\n" "POT-Creation-Date: 2015-02-18 22:14+0000\n" -"PO-Revision-Date: 2015-04-09 16:53+0000\n" -"Last-Translator: Towinet\n" -"Language-Team: French (http://www.transifex.com/projects/p/I2P/language/fr/)\n" +"PO-Revision-Date: 2015-10-31 23:04+0000\n" +"Last-Translator: syl_\n" +"Language-Team: French (http://www.transifex.com/otf/I2P/language/fr/)\n" +"Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: fr\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" #. Type: boolean @@ -32,7 +33,9 @@ msgstr "Le routeur I2P devrait-il être démarré au boot ?" msgid "" "The I2P router can be run as a daemon that starts automatically when your " "computer boots up. This is the recommended configuration." -msgstr "Ce routeur I2P peut être lancé comme un service qui se lance automatiquement quand l'ordinateur démarre. Ceci est la configuration recommandée." +msgstr "" +"Ce routeur I2P peut être lancé comme un service qui se lance automatiquement " +"quand l'ordinateur démarre. Ceci est la configuration recommandée." #. Type: string #. Description @@ -44,11 +47,16 @@ msgstr "Utilisateur du service I2P :" #. Description #: ../i2p.templates:3001 msgid "" -"By default I2P is configured to run under the account i2psvc when running as" -" a daemon. To use an **existing** I2P profile you may enter a different " -"account name here. For example, if your previous I2P installation is at " -"/home/user/i2p, you may enter 'user' here." -msgstr "D'origine I2P est configuré pour fonctionner sous le compte i2psvc quand il fonctionne comme service. Pour utiliser un profil **existant** vous pouvez entrer ici un nom de compte différent. Par exemple, si votre précédente installation est dans /home/user/i2p, vous pouvez entrer 'user' ici." +"By default I2P is configured to run under the account i2psvc when running as " +"a daemon. To use an **existing** I2P profile you may enter a different " +"account name here. For example, if your previous I2P installation is at /" +"home/user/i2p, you may enter 'user' here." +msgstr "" +"Par défaut I2P est configuré pour fonctionner sous le compte i2psvc quand il " +"fonctionne comme service. Pour utiliser un profil I2P **existant** vous " +"pouvez entrer ici un nom de compte différent. Par exemple, si votre " +"précédente installation est dans /home/user/i2p, vous pouvez entrer 'user' " +"ici." #. Type: string #. Description @@ -56,19 +64,22 @@ msgstr "D'origine I2P est configuré pour fonctionner sous le compte i2psvc quan msgid "" "Very important: If a user other than the default of 'i2psvc' is entered " "here, the chosen username *MUST* already exist." -msgstr "Très important : si un utilisateur autre que celui par défaut de 'i2psvc' est entré ici, l'utilisateur choisi *DOIT* déjà exister." +msgstr "" +"Très important : si un utilisateur autre que celui par défaut de 'i2psvc' " +"est entré ici, l'utilisateur choisi *DOIT* déjà exister." #. Type: string #. Description #: ../i2p.templates:4001 msgid "Memory that can be allocated to I2P:" -msgstr "Mémoire qui peut être allouée à I2P:" +msgstr "Mémoire qui peut être allouée à I2P :" #. Type: string #. Description #: ../i2p.templates:4001 msgid "By default, I2P will only be allowed to use up to 128MB of RAM." -msgstr "D'origine, I2P va sera seulement autorisé à utiliser jusqu'à 128 Mo de RAM." +msgstr "" +"Par défaut, I2P sera seulement autorisé à utiliser jusqu'à 128 Mo de RAM." #. Type: string #. Description @@ -76,7 +87,9 @@ msgstr "D'origine, I2P va sera seulement autorisé à utiliser jusqu'à 128 Mo d msgid "" "High bandwidth routers, as well as routers with a lot of active torrents / " "plugins, may need to have this value increased." -msgstr "Les routeurs haut débit, ainsi que les routeurs avec beaucoup de torrents / plugins actifs, pourrait nécessiter d'avoir cette valeur augmentée." +msgstr "" +"Les routeurs haut débit, ainsi que les routeurs avec beaucoup de torrents / " +"plugins actifs, pourraient nécessiter d'avoir cette valeur augmentée." #. Type: boolean #. Description @@ -90,4 +103,7 @@ msgstr "Exécuter le démon I2P confiné avec AppArmor" msgid "" "With this option enabled I2P will be sandboxed with AppArmor, restricting " "which files and directories may be accessed by I2P." -msgstr "Avec cette option activée I2P sera exécuté dans un bac à sable (sandbox) grâce à AppArmor, mais ceci limitera les fichiers et les répertoires auxquels I2P pourra avoir accès." +msgstr "" +"Avec cette option activée I2P sera exécuté dans un bac à sable (sandbox) " +"grâce à AppArmor, mais ceci limitera les fichiers et les répertoires " +"auxquels I2P pourra avoir accès." diff --git a/debian/po/hu.po b/debian/po/hu.po index 2d0e183c5b9896119fbff1d3dd95cb3cae9bac1a..a6b411214b31834f243f1a17f687dde4d4ef9f68 100644 --- a/debian/po/hu.po +++ b/debian/po/hu.po @@ -1,7 +1,7 @@ # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. -# +# # Translators: # benewfy <benewfy@gmail.com>, 2015 msgid "" @@ -11,11 +11,12 @@ msgstr "" "POT-Creation-Date: 2015-02-18 22:14+0000\n" "PO-Revision-Date: 2015-06-29 12:34+0000\n" "Last-Translator: benewfy <benewfy@gmail.com>\n" -"Language-Team: Hungarian (http://www.transifex.com/projects/p/I2P/language/hu/)\n" +"Language-Team: Hungarian (http://www.transifex.com/projects/p/I2P/language/" +"hu/)\n" +"Language: hu\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: hu\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #. Type: boolean @@ -30,7 +31,9 @@ msgstr "Az I2P router elinduljon a rendszer betöltésekor?" msgid "" "The I2P router can be run as a daemon that starts automatically when your " "computer boots up. This is the recommended configuration." -msgstr "Az I2P router képes háttérszolgáltatásként futni, mely automatikusan elindul a számÃtógép indÃtásakor. Ez a javasolt beállÃtás." +msgstr "" +"Az I2P router képes háttérszolgáltatásként futni, mely automatikusan elindul " +"a számÃtógép indÃtásakor. Ez a javasolt beállÃtás." #. Type: string #. Description @@ -42,11 +45,15 @@ msgstr "Az I2P háttérszolgáltatás felhasználója:" #. Description #: ../i2p.templates:3001 msgid "" -"By default I2P is configured to run under the account i2psvc when running as" -" a daemon. To use an **existing** I2P profile you may enter a different " -"account name here. For example, if your previous I2P installation is at " -"/home/user/i2p, you may enter 'user' here." -msgstr "Alapértelmezésben az I2P arra van beállÃtva, hogy az i2psvc fiók alatt fusson, mint háttérszolgáltatás. **LétezÅ‘** I2P profil használatához Ãrj egy másik fióknevet ide. Például, ha az elÅ‘zÅ‘leg installált I2P-d a /home/felhasznalo/i2p alatt található, ide a következÅ‘t Ãrhatod: 'felhasznalo'." +"By default I2P is configured to run under the account i2psvc when running as " +"a daemon. To use an **existing** I2P profile you may enter a different " +"account name here. For example, if your previous I2P installation is at /" +"home/user/i2p, you may enter 'user' here." +msgstr "" +"Alapértelmezésben az I2P arra van beállÃtva, hogy az i2psvc fiók alatt " +"fusson, mint háttérszolgáltatás. **LétezÅ‘** I2P profil használatához Ãrj egy " +"másik fióknevet ide. Például, ha az elÅ‘zÅ‘leg installált I2P-d a /home/" +"felhasznalo/i2p alatt található, ide a következÅ‘t Ãrhatod: 'felhasznalo'." #. Type: string #. Description @@ -54,7 +61,9 @@ msgstr "Alapértelmezésben az I2P arra van beállÃtva, hogy az i2psvc fiók al msgid "" "Very important: If a user other than the default of 'i2psvc' is entered " "here, the chosen username *MUST* already exist." -msgstr "Nagyon fontos: Ha az alapértelmezett 'i2psvc' helyett más felhasználó kerül megadásra, a választott felhasználónévnek már léteznie *KELL*." +msgstr "" +"Nagyon fontos: Ha az alapértelmezett 'i2psvc' helyett más felhasználó kerül " +"megadásra, a választott felhasználónévnek már léteznie *KELL*." #. Type: string #. Description @@ -74,7 +83,10 @@ msgstr "Alapeseten az I2P számára csak maximum 128MB memória engedélyezett." msgid "" "High bandwidth routers, as well as routers with a lot of active torrents / " "plugins, may need to have this value increased." -msgstr "Lehetséges, hogy nagy szávszélességű routerek, úgyis mint sok aktÃv torrenttel vagy kiegészÃtÅ‘vel rendelkezÅ‘ routerek számára ezt az értéket növelni szükséges." +msgstr "" +"Lehetséges, hogy nagy szávszélességű routerek, úgyis mint sok aktÃv " +"torrenttel vagy kiegészÃtÅ‘vel rendelkezÅ‘ routerek számára ezt az értéket " +"növelni szükséges." #. Type: boolean #. Description @@ -88,4 +100,6 @@ msgstr "I2P kiszolgáló futtatása korlátozva az AppArmor-ral" msgid "" "With this option enabled I2P will be sandboxed with AppArmor, restricting " "which files and directories may be accessed by I2P." -msgstr "Ezzel az opcióval engedélyezed, hogy az I2P sandboxolva legyen az AppArmor-ral, korlátozva, hogy melyik fájlokat és könyvtárakat érheti el az I2P." +msgstr "" +"Ezzel az opcióval engedélyezed, hogy az I2P sandboxolva legyen az AppArmor-" +"ral, korlátozva, hogy melyik fájlokat és könyvtárakat érheti el az I2P." diff --git a/debian/po/id.po b/debian/po/id.po index cf65db986f396991489f3252d2f54b0f05324edf..8a0cecbde0af0f2f7ada669d16ada1e3b8fe26cf 100644 --- a/debian/po/id.po +++ b/debian/po/id.po @@ -1,7 +1,7 @@ # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. -# +# # Translators: # Khairul Agasta <khairuldroids@gmail.com>, 2014-2015 msgid "" @@ -11,11 +11,12 @@ msgstr "" "POT-Creation-Date: 2015-02-18 22:14+0000\n" "PO-Revision-Date: 2015-06-02 04:22+0000\n" "Last-Translator: Khairul Agasta <khairuldroids@gmail.com>\n" -"Language-Team: Indonesian (http://www.transifex.com/projects/p/I2P/language/id/)\n" +"Language-Team: Indonesian (http://www.transifex.com/projects/p/I2P/language/" +"id/)\n" +"Language: id\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: id\n" "Plural-Forms: nplurals=1; plural=0;\n" #. Type: boolean @@ -30,7 +31,9 @@ msgstr "Apakah router I2P perlu memulai saat boot?" msgid "" "The I2P router can be run as a daemon that starts automatically when your " "computer boots up. This is the recommended configuration." -msgstr "Router I2P dapat dijalankan sebagai daemon yang memulai secara otomatis ketika komputer anda booting. Ini adalah konfigurasi yang direkomendasikan." +msgstr "" +"Router I2P dapat dijalankan sebagai daemon yang memulai secara otomatis " +"ketika komputer anda booting. Ini adalah konfigurasi yang direkomendasikan." #. Type: string #. Description @@ -42,11 +45,16 @@ msgstr "I2P pengguna daemon:" #. Description #: ../i2p.templates:3001 msgid "" -"By default I2P is configured to run under the account i2psvc when running as" -" a daemon. To use an **existing** I2P profile you may enter a different " -"account name here. For example, if your previous I2P installation is at " -"/home/user/i2p, you may enter 'user' here." -msgstr "Dengan default, I2P dikonfigurasikan untuk berjalan dibawah akun i2psvc ketika menjalankan sebagai daemon. Untuk menggunakan profil I2P **yang ada** Anda perlu memasukkan nama akun berbeda disini. Sebagai contoh, jika sebelumnya Anda memasang I2P pada /home/user/i2p, maka Anda harus memasukkan 'user' disini." +"By default I2P is configured to run under the account i2psvc when running as " +"a daemon. To use an **existing** I2P profile you may enter a different " +"account name here. For example, if your previous I2P installation is at /" +"home/user/i2p, you may enter 'user' here." +msgstr "" +"Dengan default, I2P dikonfigurasikan untuk berjalan dibawah akun i2psvc " +"ketika menjalankan sebagai daemon. Untuk menggunakan profil I2P **yang ada** " +"Anda perlu memasukkan nama akun berbeda disini. Sebagai contoh, jika " +"sebelumnya Anda memasang I2P pada /home/user/i2p, maka Anda harus memasukkan " +"'user' disini." #. Type: string #. Description @@ -54,7 +62,9 @@ msgstr "Dengan default, I2P dikonfigurasikan untuk berjalan dibawah akun i2psvc msgid "" "Very important: If a user other than the default of 'i2psvc' is entered " "here, the chosen username *MUST* already exist." -msgstr "Sangat penting: Jika pengguna selain default 'i2psvc' dimasukkan disini, nama pengguna yang dipilih *HARUS* yang sudah ada." +msgstr "" +"Sangat penting: Jika pengguna selain default 'i2psvc' dimasukkan disini, " +"nama pengguna yang dipilih *HARUS* yang sudah ada." #. Type: string #. Description @@ -74,7 +84,9 @@ msgstr "Dengan default, I2P hanya akan diizinkan menggunakan RAM hingga 128MB." msgid "" "High bandwidth routers, as well as routers with a lot of active torrents / " "plugins, may need to have this value increased." -msgstr "Router bandwidth tinggi, seperti halnya router dengan banyak torrent / pengaya yang aktif, Anda mungkin perlu menambahkan value ini." +msgstr "" +"Router bandwidth tinggi, seperti halnya router dengan banyak torrent / " +"pengaya yang aktif, Anda mungkin perlu menambahkan value ini." #. Type: boolean #. Description @@ -88,4 +100,6 @@ msgstr "Jalankan daemon I2P yang dibatasi dengan AppArmor" msgid "" "With this option enabled I2P will be sandboxed with AppArmor, restricting " "which files and directories may be accessed by I2P." -msgstr "Dengan mengaktifkan opsi ini I2P akan di sandboxkan dengan AppArmor, membatasi file dan direktori mana yang dapat diakses oleh I2P." +msgstr "" +"Dengan mengaktifkan opsi ini I2P akan di sandboxkan dengan AppArmor, " +"membatasi file dan direktori mana yang dapat diakses oleh I2P." diff --git a/debian/po/it.po b/debian/po/it.po index eafce94a2301dfd7186b07fc0a7c5dbf0c8917b4..3b0cf840fb0359eadf149bd67e4811a34fa9f2de 100644 --- a/debian/po/it.po +++ b/debian/po/it.po @@ -1,7 +1,7 @@ # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. -# +# # Translators: # Leelium <bovas85@gmail.com>, 2012 # Sparta83 <dlditalydownload@gmail.com>, 2012 @@ -12,11 +12,12 @@ msgstr "" "POT-Creation-Date: 2015-02-18 22:14+0000\n" "PO-Revision-Date: 2015-03-29 14:31+0000\n" "Last-Translator: kytv <killyourtv@i2pmail.org>\n" -"Language-Team: Italian (http://www.transifex.com/projects/p/I2P/language/it/)\n" +"Language-Team: Italian (http://www.transifex.com/projects/p/I2P/language/" +"it/)\n" +"Language: it\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: it\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #. Type: boolean @@ -31,7 +32,9 @@ msgstr "Avviare il router I2P all'avvio?" msgid "" "The I2P router can be run as a daemon that starts automatically when your " "computer boots up. This is the recommended configuration." -msgstr "Il router I2P può essere eseguito come daemon che si avvia al boot del computer. Questa è la configurazione raccomandata." +msgstr "" +"Il router I2P può essere eseguito come daemon che si avvia al boot del " +"computer. Questa è la configurazione raccomandata." #. Type: string #. Description @@ -43,11 +46,16 @@ msgstr "Utente I2P Daemon: " #. Description #: ../i2p.templates:3001 msgid "" -"By default I2P is configured to run under the account i2psvc when running as" -" a daemon. To use an **existing** I2P profile you may enter a different " -"account name here. For example, if your previous I2P installation is at " -"/home/user/i2p, you may enter 'user' here." -msgstr "Di Default I2P è configurato in modo da essere eseguito sotto l'account i2psvc quando eseguito come daemon. Per usare un profilo I2P **esistente** puoi accedere con un diverso account qui. Per esempio, se la tua precedente installazione di I2P si trova in /casa/utente/i2p, dovresti inserire \"utente\" qui." +"By default I2P is configured to run under the account i2psvc when running as " +"a daemon. To use an **existing** I2P profile you may enter a different " +"account name here. For example, if your previous I2P installation is at /" +"home/user/i2p, you may enter 'user' here." +msgstr "" +"Di Default I2P è configurato in modo da essere eseguito sotto l'account " +"i2psvc quando eseguito come daemon. Per usare un profilo I2P **esistente** " +"puoi accedere con un diverso account qui. Per esempio, se la tua precedente " +"installazione di I2P si trova in /casa/utente/i2p, dovresti inserire \"utente" +"\" qui." #. Type: string #. Description @@ -55,7 +63,9 @@ msgstr "Di Default I2P è configurato in modo da essere eseguito sotto l'account msgid "" "Very important: If a user other than the default of 'i2psvc' is entered " "here, the chosen username *MUST* already exist." -msgstr "Molto Importante: Se qui è inserito un nome utente diverso da quello base di \"i2psvc\", l'username scelto *DEVE* essere stato già inserito in precedenza." +msgstr "" +"Molto Importante: Se qui è inserito un nome utente diverso da quello base di " +"\"i2psvc\", l'username scelto *DEVE* essere stato già inserito in precedenza." #. Type: string #. Description @@ -75,7 +85,9 @@ msgstr "Di base I2P è abilitato ad usare fino a 128MB di RAM. " msgid "" "High bandwidth routers, as well as routers with a lot of active torrents / " "plugins, may need to have this value increased." -msgstr "Router con connessioni veloci, così come i router con molti torrent/plugin attivi, potrebbero necessitare l'aumento di questo valore." +msgstr "" +"Router con connessioni veloci, così come i router con molti torrent/plugin " +"attivi, potrebbero necessitare l'aumento di questo valore." #. Type: boolean #. Description diff --git a/debian/po/ja.po b/debian/po/ja.po index 95ec1889cefb91035cd652f351fae65902a2a0e7..fa715268bc0c7eb7349d00cfc6d52195a1220852 100644 --- a/debian/po/ja.po +++ b/debian/po/ja.po @@ -1,7 +1,7 @@ # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. -# +# # Translators: # a1678991 <nfgantanku@yahoo.co.jp>, 2015 # ã‚¿ã‚«ãƒã‚· <gomidori@live.jp>, 2014 @@ -12,11 +12,12 @@ msgstr "" "POT-Creation-Date: 2015-02-18 22:14+0000\n" "PO-Revision-Date: 2015-04-01 09:06+0000\n" "Last-Translator: a1678991 <nfgantanku@yahoo.co.jp>\n" -"Language-Team: Japanese (http://www.transifex.com/projects/p/I2P/language/ja/)\n" +"Language-Team: Japanese (http://www.transifex.com/projects/p/I2P/language/" +"ja/)\n" +"Language: ja\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: ja\n" "Plural-Forms: nplurals=1; plural=0;\n" #. Type: boolean @@ -31,7 +32,9 @@ msgstr "I2P ルーターをブート時ã«èµ·å‹•ã—ã¾ã™ã‹ï¼Ÿ" msgid "" "The I2P router can be run as a daemon that starts automatically when your " "computer boots up. This is the recommended configuration." -msgstr "I2P ã¯ã€ã‚³ãƒ³ãƒ”ューターã®ãƒ–ート時ã«è‡ªå‹•çš„ã«é–‹å§‹ã™ã‚‹ãƒ‡ãƒ¼ãƒ¢ãƒ³ã¨ã—ã¦èµ·å‹•ã§ãã¾ã™ã€‚ã“ã‚Œã¯æŽ¨å¥¨ã®è¨å®šã§ã™ã€‚" +msgstr "" +"I2P ã¯ã€ã‚³ãƒ³ãƒ”ューターã®ãƒ–ート時ã«è‡ªå‹•çš„ã«é–‹å§‹ã™ã‚‹ãƒ‡ãƒ¼ãƒ¢ãƒ³ã¨ã—ã¦èµ·å‹•ã§ãã¾" +"ã™ã€‚ã“ã‚Œã¯æŽ¨å¥¨ã®è¨å®šã§ã™ã€‚" #. Type: string #. Description @@ -43,11 +46,15 @@ msgstr "I2P デーモンユーザー:" #. Description #: ../i2p.templates:3001 msgid "" -"By default I2P is configured to run under the account i2psvc when running as" -" a daemon. To use an **existing** I2P profile you may enter a different " -"account name here. For example, if your previous I2P installation is at " -"/home/user/i2p, you may enter 'user' here." -msgstr "デフォルトã§ã¯ã€ I2P ã¯ãƒ‡ãƒ¼ãƒ¢ãƒ³ã¨ã—ã¦èµ·å‹•時ã€ã‚¢ã‚«ã‚¦ãƒ³ãƒˆ i2psvc ã§èµ·å‹•ã™ã‚‹ã‚ˆã†è¨å®šã•れã¦ã„ã¾ã™ã€‚**æ—¢å˜ã®** I2P プãƒãƒ•ァイルを使用ã™ã‚‹ã«ã¯ã€ã“ã“ã«ç•°ãªã‚‹ã‚¢ã‚«ã‚¦ãƒ³ãƒˆåを入力ã—ã¦ãã ã•ã„。例ãˆã°ã€ä»¥å‰ã® I2P インストール㌠/home/user/i2p ã§ã‚れã°ã€ã“ã“ã« 'user' ã¨å…¥åŠ›ã—ã¦ãã ã•ã„。" +"By default I2P is configured to run under the account i2psvc when running as " +"a daemon. To use an **existing** I2P profile you may enter a different " +"account name here. For example, if your previous I2P installation is at /" +"home/user/i2p, you may enter 'user' here." +msgstr "" +"デフォルトã§ã¯ã€ I2P ã¯ãƒ‡ãƒ¼ãƒ¢ãƒ³ã¨ã—ã¦èµ·å‹•時ã€ã‚¢ã‚«ã‚¦ãƒ³ãƒˆ i2psvc ã§èµ·å‹•ã™ã‚‹ã‚ˆã†" +"è¨å®šã•れã¦ã„ã¾ã™ã€‚**æ—¢å˜ã®** I2P プãƒãƒ•ァイルを使用ã™ã‚‹ã«ã¯ã€ã“ã“ã«ç•°ãªã‚‹ã‚¢ã‚«" +"ウントåを入力ã—ã¦ãã ã•ã„。例ãˆã°ã€ä»¥å‰ã® I2P インストール㌠/home/user/i2p " +"ã§ã‚れã°ã€ã“ã“ã« 'user' ã¨å…¥åŠ›ã—ã¦ãã ã•ã„。" #. Type: string #. Description @@ -55,7 +62,9 @@ msgstr "デフォルトã§ã¯ã€ I2P ã¯ãƒ‡ãƒ¼ãƒ¢ãƒ³ã¨ã—ã¦èµ·å‹•時ã€ã‚¢ã‚« msgid "" "Very important: If a user other than the default of 'i2psvc' is entered " "here, the chosen username *MUST* already exist." -msgstr "éžå¸¸ã«é‡è¦: 'i2psvc' ã®ãƒ‡ãƒ•ォルト以外ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒã“ã“ã§å…¥åŠ›ã•れるãªã‚‰ã€é¸æŠžã•れるユーザーåã¯æ—¢å˜ã®ã‚‚ã®ã§ãªã‘れã°*ãªã‚Šã¾ã›ã‚“*。" +msgstr "" +"éžå¸¸ã«é‡è¦: 'i2psvc' ã®ãƒ‡ãƒ•ォルト以外ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒã“ã“ã§å…¥åŠ›ã•れるãªã‚‰ã€é¸æŠžã•" +"れるユーザーåã¯æ—¢å˜ã®ã‚‚ã®ã§ãªã‘れã°*ãªã‚Šã¾ã›ã‚“*。" #. Type: string #. Description @@ -67,7 +76,8 @@ msgstr "I2P ã«å‰²ã‚Šå½“ã¦ã‚‰ã‚Œã†ã‚‹ãƒ¡ãƒ¢ãƒª:" #. Description #: ../i2p.templates:4001 msgid "By default, I2P will only be allowed to use up to 128MB of RAM." -msgstr "デフォルトã§ã¯ã€ I2P ã¯æœ€å¤§ 128MB メモリã¾ã§ã—ã‹ä½¿ç”¨ã‚’許å¯ã•れã¦ã„ã¾ã›ã‚“。" +msgstr "" +"デフォルトã§ã¯ã€ I2P ã¯æœ€å¤§ 128MB メモリã¾ã§ã—ã‹ä½¿ç”¨ã‚’許å¯ã•れã¦ã„ã¾ã›ã‚“。" #. Type: string #. Description @@ -75,7 +85,9 @@ msgstr "デフォルトã§ã¯ã€ I2P ã¯æœ€å¤§ 128MB メモリã¾ã§ã—ã‹ä½¿ç”¨ msgid "" "High bandwidth routers, as well as routers with a lot of active torrents / " "plugins, may need to have this value increased." -msgstr "高ã„帯域幅ã®ãƒ«ãƒ¼ã‚¿ãƒ¼ã€ã¾ãŸãŸãã•ã‚“ã®ã‚¢ã‚¯ãƒ†ã‚£ãƒ–㪠torrent / プラグインãŒã‚るルーターもã€ã“ã®å€¤ã‚’増やã™å¿…è¦ãŒã‚ã‚‹å ´åˆãŒã‚りã¾ã™ã€‚" +msgstr "" +"高ã„帯域幅ã®ãƒ«ãƒ¼ã‚¿ãƒ¼ã€ã¾ãŸãŸãã•ã‚“ã®ã‚¢ã‚¯ãƒ†ã‚£ãƒ–㪠torrent / プラグインãŒã‚ã‚‹" +"ルーターもã€ã“ã®å€¤ã‚’増やã™å¿…è¦ãŒã‚ã‚‹å ´åˆãŒã‚りã¾ã™ã€‚" #. Type: boolean #. Description diff --git a/debian/po/ko.po b/debian/po/ko.po index 809a362d8f3e852e3c4572d1168e22397a02d625..40fca7504e4d23157b3d0a37c0f9f8e2b0cc8ca8 100644 --- a/debian/po/ko.po +++ b/debian/po/ko.po @@ -1,7 +1,7 @@ # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. -# +# # Translators: # Choi Yeon-Ung <kqwe1859@gmail.com>, 2014-2015 msgid "" @@ -11,11 +11,12 @@ msgstr "" "POT-Creation-Date: 2015-02-18 22:14+0000\n" "PO-Revision-Date: 2015-05-15 16:18+0000\n" "Last-Translator: Choi Yeon-Ung <kqwe1859@gmail.com>\n" -"Language-Team: Korean (http://www.transifex.com/projects/p/I2P/language/ko/)\n" +"Language-Team: Korean (http://www.transifex.com/projects/p/I2P/language/" +"ko/)\n" +"Language: ko\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: ko\n" "Plural-Forms: nplurals=1; plural=0;\n" #. Type: boolean @@ -30,7 +31,9 @@ msgstr "I2P ë¼ìš°í„°ê°€ 부팅시 시작ë˜ê²Œ í• ê¹Œìš”?" msgid "" "The I2P router can be run as a daemon that starts automatically when your " "computer boots up. This is the recommended configuration." -msgstr "I2P ë¼ìš°í„°ëŠ” 컴퓨터 부팅시 ìžë™ì 으로 ë°ëª¬ìœ¼ë¡œ 실행ë 수 있습니다. ì„¤ì •ì´ ê¶Œìž¥ë©ë‹ˆë‹¤." +msgstr "" +"I2P ë¼ìš°í„°ëŠ” 컴퓨터 부팅시 ìžë™ì 으로 ë°ëª¬ìœ¼ë¡œ 실행ë 수 있습니다. ì„¤ì •ì´ ê¶Œ" +"장ë©ë‹ˆë‹¤." #. Type: string #. Description @@ -42,11 +45,14 @@ msgstr "I2P ë°ëª¬ ìœ ì €:" #. Description #: ../i2p.templates:3001 msgid "" -"By default I2P is configured to run under the account i2psvc when running as" -" a daemon. To use an **existing** I2P profile you may enter a different " -"account name here. For example, if your previous I2P installation is at " -"/home/user/i2p, you may enter 'user' here." -msgstr "기본ì 으로 I2P는 ë°ëª¬ìœ¼ë¡œ 실행시 i2psvc ê³„ì •ìœ¼ë¡œ 시작ë©ë‹ˆë‹¤. **기존** I2P 프로필 ì ìš©ì„ ìœ„í•´ì„ ë‹¤ë¥¸ ê³„ì •ì˜ ì´ë¦„ì„ ì 어야 합니다. 예를 들어, 기존 I2P 설치가 /home/user/i2pì— ë˜ì—ˆë‹¤ë©´, ì—¬ê¸°ì— 'user'를 ìž…ë ¥í•˜ì„¸ìš”." +"By default I2P is configured to run under the account i2psvc when running as " +"a daemon. To use an **existing** I2P profile you may enter a different " +"account name here. For example, if your previous I2P installation is at /" +"home/user/i2p, you may enter 'user' here." +msgstr "" +"기본ì 으로 I2P는 ë°ëª¬ìœ¼ë¡œ 실행시 i2psvc ê³„ì •ìœ¼ë¡œ 시작ë©ë‹ˆë‹¤. **기존** I2P 프" +"로필 ì ìš©ì„ ìœ„í•´ì„ ë‹¤ë¥¸ ê³„ì •ì˜ ì´ë¦„ì„ ì 어야 합니다. 예를 들어, 기존 I2P 설치" +"ê°€ /home/user/i2pì— ë˜ì—ˆë‹¤ë©´, ì—¬ê¸°ì— 'user'를 ìž…ë ¥í•˜ì„¸ìš”." #. Type: string #. Description @@ -54,7 +60,9 @@ msgstr "기본ì 으로 I2P는 ë°ëª¬ìœ¼ë¡œ 실행시 i2psvc ê³„ì •ìœ¼ë¡œ 시작 msgid "" "Very important: If a user other than the default of 'i2psvc' is entered " "here, the chosen username *MUST* already exist." -msgstr "중요: ê¸°ë³¸ê°’ì¸ 'i2psvc' ëŒ€ì‹ ë‹¤ë¥¸ ìœ ì €ë¥¼ ì´ìš©ì‹œì—, ê²°ì •ëœ ìœ ì €ëŠ” *반드시* ì´ë¯¸ 존재해야 합니다." +msgstr "" +"중요: ê¸°ë³¸ê°’ì¸ 'i2psvc' ëŒ€ì‹ ë‹¤ë¥¸ ìœ ì €ë¥¼ ì´ìš©ì‹œì—, ê²°ì •ëœ ìœ ì €ëŠ” *반드시* ì´" +"미 존재해야 합니다." #. Type: string #. Description @@ -74,7 +82,9 @@ msgstr "기본ì 으로, I2P는 128MBì˜ ëž¨ìœ¼ë¡œ ë™ìž‘합니다." msgid "" "High bandwidth routers, as well as routers with a lot of active torrents / " "plugins, may need to have this value increased." -msgstr "ë†’ì€ ëŒ€ì—íì˜ ë¼ìš°í„°, ë˜ëŠ” í™œì„±í™”ëœ torrent / 플러그ì¸ì„ ë§Žì´ ì‚¬ìš©í•˜ëŠ” ë¼ìš°í„°ì˜ 경우, ì´ ê°’ì„ ì¦ê°€ì‹œì¼œì•¼ í• ìˆ˜ 있습니다." +msgstr "" +"ë†’ì€ ëŒ€ì—íì˜ ë¼ìš°í„°, ë˜ëŠ” í™œì„±í™”ëœ torrent / 플러그ì¸ì„ ë§Žì´ ì‚¬ìš©í•˜ëŠ” ë¼ìš°í„°" +"ì˜ ê²½ìš°, ì´ ê°’ì„ ì¦ê°€ì‹œì¼œì•¼ í• ìˆ˜ 있습니다." #. Type: boolean #. Description @@ -88,4 +98,6 @@ msgstr "I2P ë°ëª¬ì€ AppArmor 안ì—서 실행" msgid "" "With this option enabled I2P will be sandboxed with AppArmor, restricting " "which files and directories may be accessed by I2P." -msgstr "ì´ ì˜µì…˜ì„ í™œì„±í™” 시 I2P는 AppArmorì— ì˜í•´ 샌드박싱ë˜ê³ , I2Pê°€ ì–´ë–¤ 파ì¼ê³¼ í´ë”를 ì ‘ê·¼í• ì§€ ì œí•œë©ë‹ˆë‹¤." +msgstr "" +"ì´ ì˜µì…˜ì„ í™œì„±í™” 시 I2P는 AppArmorì— ì˜í•´ 샌드박싱ë˜ê³ , I2Pê°€ ì–´ë–¤ 파ì¼ê³¼ í´" +"ë”를 ì ‘ê·¼í• ì§€ ì œí•œë©ë‹ˆë‹¤." diff --git a/debian/po/nl.po b/debian/po/nl.po index 5cbfbf4c6984b5949b17bf4f25752ae9adcb3402..c28d2030a3fe5135ef0db77504ed3d1241b376c1 100644 --- a/debian/po/nl.po +++ b/debian/po/nl.po @@ -1,7 +1,7 @@ # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. -# +# # Translators: # Nathan Follens, 2015 msgid "" @@ -12,10 +12,10 @@ msgstr "" "PO-Revision-Date: 2015-03-29 14:31+0000\n" "Last-Translator: kytv <killyourtv@i2pmail.org>\n" "Language-Team: Dutch (http://www.transifex.com/projects/p/I2P/language/nl/)\n" +"Language: nl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: nl\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #. Type: boolean @@ -30,7 +30,9 @@ msgstr "Moet de I2P-router worden gestart bij het opstarten?" msgid "" "The I2P router can be run as a daemon that starts automatically when your " "computer boots up. This is the recommended configuration." -msgstr "De I2P-router kan als een daemon draaien die automatisch start wanneer je computer opstart. Dit is de aanbevolen configuratie." +msgstr "" +"De I2P-router kan als een daemon draaien die automatisch start wanneer je " +"computer opstart. Dit is de aanbevolen configuratie." #. Type: string #. Description @@ -42,11 +44,15 @@ msgstr "I2P-daemon gebruiker:" #. Description #: ../i2p.templates:3001 msgid "" -"By default I2P is configured to run under the account i2psvc when running as" -" a daemon. To use an **existing** I2P profile you may enter a different " -"account name here. For example, if your previous I2P installation is at " -"/home/user/i2p, you may enter 'user' here." -msgstr "Standaard is I2P ingesteld om onder de account i2psvc te draaien wanneer het draait als daemon. Om een **bestaand** I2P-profiel te gebruiken kan je hier een andere accountnaam ingeven. Bijvoorbeeld, als je vorige I2P-installatie zich bevond in /home/user/i2p, kan je hier 'user' ingeven." +"By default I2P is configured to run under the account i2psvc when running as " +"a daemon. To use an **existing** I2P profile you may enter a different " +"account name here. For example, if your previous I2P installation is at /" +"home/user/i2p, you may enter 'user' here." +msgstr "" +"Standaard is I2P ingesteld om onder de account i2psvc te draaien wanneer het " +"draait als daemon. Om een **bestaand** I2P-profiel te gebruiken kan je hier " +"een andere accountnaam ingeven. Bijvoorbeeld, als je vorige I2P-installatie " +"zich bevond in /home/user/i2p, kan je hier 'user' ingeven." #. Type: string #. Description @@ -54,7 +60,9 @@ msgstr "Standaard is I2P ingesteld om onder de account i2psvc te draaien wanneer msgid "" "Very important: If a user other than the default of 'i2psvc' is entered " "here, the chosen username *MUST* already exist." -msgstr "Zeer belangrijk: als hier een gebruiker anders dan 'i2psvc' wordt ingegeven, *MOET* de gekozen gebruikersnaam reeds bestaan." +msgstr "" +"Zeer belangrijk: als hier een gebruiker anders dan 'i2psvc' wordt ingegeven, " +"*MOET* de gekozen gebruikersnaam reeds bestaan." #. Type: string #. Description @@ -74,7 +82,9 @@ msgstr "Standaard is I2P toegestaan maximum 128MB van het RAM te gebruiken." msgid "" "High bandwidth routers, as well as routers with a lot of active torrents / " "plugins, may need to have this value increased." -msgstr "Voor hoge bandbreedte-routers, evenals routers met veel actieve torrents / plugins, is het mogelijk dat deze waarde verhoogd moet worden." +msgstr "" +"Voor hoge bandbreedte-routers, evenals routers met veel actieve torrents / " +"plugins, is het mogelijk dat deze waarde verhoogd moet worden." #. Type: boolean #. Description diff --git a/debian/po/pl.po b/debian/po/pl.po index 08cac081dbf3dc6dce5a30acdc9e189654f1fe62..57ae539e71c32f96c2190e6f41bd7848553e17e6 100644 --- a/debian/po/pl.po +++ b/debian/po/pl.po @@ -1,7 +1,7 @@ # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. -# +# # Translators: # PolishAnon <b790979@klzlk.com>, 2011, 2012 # seb, 2015 @@ -12,12 +12,14 @@ msgstr "" "POT-Creation-Date: 2015-02-18 22:14+0000\n" "PO-Revision-Date: 2015-06-09 20:57+0000\n" "Last-Translator: seb\n" -"Language-Team: Polish (http://www.transifex.com/projects/p/I2P/language/pl/)\n" +"Language-Team: Polish (http://www.transifex.com/projects/p/I2P/language/" +"pl/)\n" +"Language: pl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: pl\n" -"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" +"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " +"|| n%100>=20) ? 1 : 2);\n" #. Type: boolean #. Description @@ -31,7 +33,9 @@ msgstr "Czy router I2P powinien być uruchamiany podczas startu systemu?" msgid "" "The I2P router can be run as a daemon that starts automatically when your " "computer boots up. This is the recommended configuration." -msgstr "Router I2P może być uruchamiany jako demon, który uruchamia siÄ™ automatycznie po starcie komputera. Jest to zalecana konfiguracja." +msgstr "" +"Router I2P może być uruchamiany jako demon, który uruchamia siÄ™ " +"automatycznie po starcie komputera. Jest to zalecana konfiguracja." #. Type: string #. Description @@ -43,11 +47,15 @@ msgstr "Użytkownik demona I2P:" #. Description #: ../i2p.templates:3001 msgid "" -"By default I2P is configured to run under the account i2psvc when running as" -" a daemon. To use an **existing** I2P profile you may enter a different " -"account name here. For example, if your previous I2P installation is at " -"/home/user/i2p, you may enter 'user' here." -msgstr "DomyÅ›lnie I2P jest skonfigurowany do pracy pod kontem i2psvc gdy dziaÅ‚a jako demon. Aby korzystać z **istniejÄ…cego** profilu I2P można wprowadzić tu innÄ… nazwÄ™ konta. Na przykÅ‚ad, jeÅ›li poprzednia instalacja I2P jest w /home/user/i2p, można wpisać tutaj 'user'." +"By default I2P is configured to run under the account i2psvc when running as " +"a daemon. To use an **existing** I2P profile you may enter a different " +"account name here. For example, if your previous I2P installation is at /" +"home/user/i2p, you may enter 'user' here." +msgstr "" +"DomyÅ›lnie I2P jest skonfigurowany do pracy pod kontem i2psvc gdy dziaÅ‚a " +"jako demon. Aby korzystać z **istniejÄ…cego** profilu I2P można wprowadzić tu " +"innÄ… nazwÄ™ konta. Na przykÅ‚ad, jeÅ›li poprzednia instalacja I2P jest w /home/" +"user/i2p, można wpisać tutaj 'user'." #. Type: string #. Description @@ -55,7 +63,9 @@ msgstr "DomyÅ›lnie I2P jest skonfigurowany do pracy pod kontem i2psvc gdy dzia msgid "" "Very important: If a user other than the default of 'i2psvc' is entered " "here, the chosen username *MUST* already exist." -msgstr "Bardzo ważne: Jeżeli użytkownik inni niż domyÅ›lny 'i2psvc' jest tutaj wprowadzony, wybrane imiÄ™ *MUSI* już istniec." +msgstr "" +"Bardzo ważne: Jeżeli użytkownik inni niż domyÅ›lny 'i2psvc' jest tutaj " +"wprowadzony, wybrane imiÄ™ *MUSI* już istniec." #. Type: string #. Description @@ -75,7 +85,9 @@ msgstr "DomyÅ›lnie, I2P może użyc tylko 128MB RAMu." msgid "" "High bandwidth routers, as well as routers with a lot of active torrents / " "plugins, may need to have this value increased." -msgstr "Rutery z wysoka przepustowoÅ›cia oraz rutery z wieloma aktywnymi torrentami/wtyczkami mogÄ… wymagać zwiÄ™kszenia tej wartoÅ›ci." +msgstr "" +"Rutery z wysoka przepustowoÅ›cia oraz rutery z wieloma aktywnymi torrentami/" +"wtyczkami mogÄ… wymagać zwiÄ™kszenia tej wartoÅ›ci." #. Type: boolean #. Description @@ -89,4 +101,6 @@ msgstr "Uruchom I2P deamon ograniczony przez AppArmor" msgid "" "With this option enabled I2P will be sandboxed with AppArmor, restricting " "which files and directories may be accessed by I2P." -msgstr "Z tÄ… opcjÄ… I2P bÄ™dzie w sandboxie z AppArmor, broniÄ…c plików i folderów do których I2P mogÅ‚oby mieć dostÄ™p." +msgstr "" +"Z tÄ… opcjÄ… I2P bÄ™dzie w sandboxie z AppArmor, broniÄ…c plików i folderów do " +"których I2P mogÅ‚oby mieć dostÄ™p." diff --git a/debian/po/pt.po b/debian/po/pt.po index c45a76ca69bd4812cf47a10b855ded9922f0d87c..ed7363a356d6761ecd134dd28b2693fbd6df827e 100644 --- a/debian/po/pt.po +++ b/debian/po/pt.po @@ -1,7 +1,7 @@ # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. -# +# # Translators: # wtfisthis <low_fps11@yahoo.com>, 2015 # wtfisthis <low_fps11@yahoo.com>, 2013 @@ -13,11 +13,12 @@ msgstr "" "POT-Creation-Date: 2015-02-18 22:14+0000\n" "PO-Revision-Date: 2015-03-31 20:53+0000\n" "Last-Translator: wtfisthis <low_fps11@yahoo.com>\n" -"Language-Team: Portuguese (http://www.transifex.com/projects/p/I2P/language/pt/)\n" +"Language-Team: Portuguese (http://www.transifex.com/projects/p/I2P/language/" +"pt/)\n" +"Language: pt\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: pt\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #. Type: boolean @@ -32,7 +33,9 @@ msgstr "Devera o i2p router ser iniciado no arranque " msgid "" "The I2P router can be run as a daemon that starts automatically when your " "computer boots up. This is the recommended configuration." -msgstr "O i2p router pode correr como serviso que inicaiara quando o computudor iniciar. Esta é a configuração recomendada" +msgstr "" +"O i2p router pode correr como serviso que inicaiara quando o computudor " +"iniciar. Esta é a configuração recomendada" #. Type: string #. Description @@ -44,11 +47,15 @@ msgstr "Utilizador do serviço I2P:" #. Description #: ../i2p.templates:3001 msgid "" -"By default I2P is configured to run under the account i2psvc when running as" -" a daemon. To use an **existing** I2P profile you may enter a different " -"account name here. For example, if your previous I2P installation is at " -"/home/user/i2p, you may enter 'user' here." -msgstr "Por padrão o I2P é configurado para executar como usuário i2psvc no modo Serviço. Para usar um perfil I2P **existente** você pode digitar um nome de usuário diferente aqui. Por exemplo, se a sua instalação antiga está em /home/user/i2p, você pode digitar 'user'." +"By default I2P is configured to run under the account i2psvc when running as " +"a daemon. To use an **existing** I2P profile you may enter a different " +"account name here. For example, if your previous I2P installation is at /" +"home/user/i2p, you may enter 'user' here." +msgstr "" +"Por padrão o I2P é configurado para executar como usuário i2psvc no modo " +"Serviço. Para usar um perfil I2P **existente** você pode digitar um nome de " +"usuário diferente aqui. Por exemplo, se a sua instalação antiga está em /" +"home/user/i2p, você pode digitar 'user'." #. Type: string #. Description @@ -56,7 +63,9 @@ msgstr "Por padrão o I2P é configurado para executar como usuário i2psvc no m msgid "" "Very important: If a user other than the default of 'i2psvc' is entered " "here, the chosen username *MUST* already exist." -msgstr "Muito importante: Se um usuário diferente de 'i2psvc' for digitado aqui, este usuário PRECISA existir." +msgstr "" +"Muito importante: Se um usuário diferente de 'i2psvc' for digitado aqui, " +"este usuário PRECISA existir." #. Type: string #. Description @@ -76,7 +85,9 @@ msgstr "Por defeito o I2P apenas vai ser autorizado a usar até 128MB de RAM." msgid "" "High bandwidth routers, as well as routers with a lot of active torrents / " "plugins, may need to have this value increased." -msgstr "Roteadores I2P com internet rápida, e também com muitos torrents e plugins ativos, podem precisar aumentar este valor." +msgstr "" +"Roteadores I2P com internet rápida, e também com muitos torrents e plugins " +"ativos, podem precisar aumentar este valor." #. Type: boolean #. Description @@ -90,4 +101,6 @@ msgstr "Correr daemon I2p confinado com o AppArmor" msgid "" "With this option enabled I2P will be sandboxed with AppArmor, restricting " "which files and directories may be accessed by I2P." -msgstr "Com esta opção ativada o I2P Vai correr em sandbox com AppArmor, retingindo que ficheiros e diretórios são acessÃveis pelo I2P " +msgstr "" +"Com esta opção ativada o I2P Vai correr em sandbox com AppArmor, retingindo " +"que ficheiros e diretórios são acessÃveis pelo I2P " diff --git a/debian/po/pt_BR.po b/debian/po/pt_BR.po index 4898209fd6e1f8eaf564111b300c124a3771a6d1..c08795f8811115852e54c7d54ccc440b15ee885f 100644 --- a/debian/po/pt_BR.po +++ b/debian/po/pt_BR.po @@ -1,7 +1,7 @@ # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. -# +# # Translators: # blueboy, 2014-2015 # Victor Maximiliano <VicBrd09@mail2tor.com>, 2014 @@ -12,11 +12,12 @@ msgstr "" "POT-Creation-Date: 2015-02-18 22:14+0000\n" "PO-Revision-Date: 2015-06-10 17:27+0000\n" "Last-Translator: blueboy\n" -"Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/I2P/language/pt_BR/)\n" +"Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/I2P/" +"language/pt_BR/)\n" +"Language: pt_BR\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: pt_BR\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" #. Type: boolean @@ -31,7 +32,9 @@ msgstr "O roteador I2P deve inicializar junto com o sistema?" msgid "" "The I2P router can be run as a daemon that starts automatically when your " "computer boots up. This is the recommended configuration." -msgstr "O roteador I2P pode rodar como um daemon que inicia automaticamente quando o sistema carrega. Esse é a configuração recomendada." +msgstr "" +"O roteador I2P pode rodar como um daemon que inicia automaticamente quando o " +"sistema carrega. Esse é a configuração recomendada." #. Type: string #. Description @@ -43,11 +46,15 @@ msgstr "Usuário daemon I2P:" #. Description #: ../i2p.templates:3001 msgid "" -"By default I2P is configured to run under the account i2psvc when running as" -" a daemon. To use an **existing** I2P profile you may enter a different " -"account name here. For example, if your previous I2P installation is at " -"/home/user/i2p, you may enter 'user' here." -msgstr "Por padrão o I2P é configurado para funcionar sobre a conta i2psvc quando funcionando como um daemon. Para usar uma conta I2P **existente** você deve digitar um nome de conta diferente aqui. Por exemplo, se a sua instalação anterior do I2P estava em /home/user/i2p, você deve digitar 'user' aqui." +"By default I2P is configured to run under the account i2psvc when running as " +"a daemon. To use an **existing** I2P profile you may enter a different " +"account name here. For example, if your previous I2P installation is at /" +"home/user/i2p, you may enter 'user' here." +msgstr "" +"Por padrão o I2P é configurado para funcionar sobre a conta i2psvc quando " +"funcionando como um daemon. Para usar uma conta I2P **existente** você deve " +"digitar um nome de conta diferente aqui. Por exemplo, se a sua instalação " +"anterior do I2P estava em /home/user/i2p, você deve digitar 'user' aqui." #. Type: string #. Description @@ -55,7 +62,9 @@ msgstr "Por padrão o I2P é configurado para funcionar sobre a conta i2psvc qua msgid "" "Very important: If a user other than the default of 'i2psvc' is entered " "here, the chosen username *MUST* already exist." -msgstr "Muito importante: Se um outro usuário além do padrão \"i2psvc\" é colocado aqui, o nome de usuário escolhido já deve existir." +msgstr "" +"Muito importante: Se um outro usuário além do padrão \"i2psvc\" é colocado " +"aqui, o nome de usuário escolhido já deve existir." #. Type: string #. Description @@ -67,7 +76,8 @@ msgstr "Memória que pode ser alocada para o roteador I2P:" #. Description #: ../i2p.templates:4001 msgid "By default, I2P will only be allowed to use up to 128MB of RAM." -msgstr "Por omissão, será permitido ao roteador I2P usar apenas até 128 MB de RAM." +msgstr "" +"Por omissão, será permitido ao roteador I2P usar apenas até 128 MB de RAM." #. Type: string #. Description @@ -75,7 +85,9 @@ msgstr "Por omissão, será permitido ao roteador I2P usar apenas até 128 MB de msgid "" "High bandwidth routers, as well as routers with a lot of active torrents / " "plugins, may need to have this value increased." -msgstr "Roteadores de alta velocidade, assim como roteadores com uma porção de torrents / extensões ativas, talvez precisem ter esse valor aumentado." +msgstr "" +"Roteadores de alta velocidade, assim como roteadores com uma porção de " +"torrents / extensões ativas, talvez precisem ter esse valor aumentado." #. Type: boolean #. Description @@ -89,4 +101,6 @@ msgstr "Confinar a execução do daemon I2P com AppArmor" msgid "" "With this option enabled I2P will be sandboxed with AppArmor, restricting " "which files and directories may be accessed by I2P." -msgstr "Com essa opção selecionada, o roteador I2P funcionará confinado pelo AppArmor, sendo restritos os arquivos e diretórios passÃveis de acesso." +msgstr "" +"Com essa opção selecionada, o roteador I2P funcionará confinado pelo " +"AppArmor, sendo restritos os arquivos e diretórios passÃveis de acesso." diff --git a/debian/po/ro.po b/debian/po/ro.po index d7db4c15406d3321191deb628c36084ac8aa6efa..dd9e5b4f9ad9e79acfac300d0462b1a6b048fb91 100644 --- a/debian/po/ro.po +++ b/debian/po/ro.po @@ -1,7 +1,7 @@ # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. -# +# # Translators: msgid "" msgstr "" @@ -10,12 +10,14 @@ msgstr "" "POT-Creation-Date: 2015-02-18 22:14+0000\n" "PO-Revision-Date: 2015-03-29 14:31+0000\n" "Last-Translator: kytv <killyourtv@i2pmail.org>\n" -"Language-Team: Romanian (http://www.transifex.com/projects/p/I2P/language/ro/)\n" +"Language-Team: Romanian (http://www.transifex.com/projects/p/I2P/language/" +"ro/)\n" +"Language: ro\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: ro\n" -"Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n" +"Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?" +"2:1));\n" #. Type: boolean #. Description @@ -29,7 +31,9 @@ msgstr "Router-ul I2P trebuie sa fie pornit la încărcarea? " msgid "" "The I2P router can be run as a daemon that starts automatically when your " "computer boots up. This is the recommended configuration." -msgstr "Router-ul I2P poate fi rulat ca un demon care porneÈ™te automat atunci când calculatorul se porneste. Aceasta este configuraÈ›ia recomandată." +msgstr "" +"Router-ul I2P poate fi rulat ca un demon care porneÈ™te automat atunci când " +"calculatorul se porneste. Aceasta este configuraÈ›ia recomandată." #. Type: string #. Description @@ -41,11 +45,16 @@ msgstr "I2P daemon utilizator:" #. Description #: ../i2p.templates:3001 msgid "" -"By default I2P is configured to run under the account i2psvc when running as" -" a daemon. To use an **existing** I2P profile you may enter a different " -"account name here. For example, if your previous I2P installation is at " -"/home/user/i2p, you may enter 'user' here." -msgstr "ÃŽn mod implicit I2P este configurat pentru a rula sub contul i2psvc atunci când se rulează ca un demon. Pentru a utiliza o ** profil I2P existent** s-ar putea introduce aici un nume de cont diferit. De exemplu, în cazul în care instalarea I2P anterioara este de la / home/user/i2p, s-ar putea introduce \"user\" aici." +"By default I2P is configured to run under the account i2psvc when running as " +"a daemon. To use an **existing** I2P profile you may enter a different " +"account name here. For example, if your previous I2P installation is at /" +"home/user/i2p, you may enter 'user' here." +msgstr "" +"ÃŽn mod implicit I2P este configurat pentru a rula sub contul i2psvc atunci " +"când se rulează ca un demon. Pentru a utiliza o ** profil I2P existent** s-" +"ar putea introduce aici un nume de cont diferit. De exemplu, în cazul în " +"care instalarea I2P anterioara este de la / home/user/i2p, s-ar putea " +"introduce \"user\" aici." #. Type: string #. Description @@ -53,7 +62,10 @@ msgstr "ÃŽn mod implicit I2P este configurat pentru a rula sub contul i2psvc at msgid "" "Very important: If a user other than the default of 'i2psvc' is entered " "here, the chosen username *MUST* already exist." -msgstr "FOARTE IMPORTANT: Dacă o altă persoană decât cea de utilizator implicit \"i2psvc\" este introdus aici, numele de utilizator *TREBUIE* sa exista deja." +msgstr "" +"FOARTE IMPORTANT: Dacă o altă persoană decât cea de utilizator implicit " +"\"i2psvc\" este introdus aici, numele de utilizator *TREBUIE* sa exista " +"deja." #. Type: string #. Description @@ -65,7 +77,9 @@ msgstr "Memorie care poate fi alocata la I2P:" #. Description #: ../i2p.templates:4001 msgid "By default, I2P will only be allowed to use up to 128MB of RAM." -msgstr "ÃŽn mod implicit, I2P li se va permite să utilizeze numai până la 128MB de RAM." +msgstr "" +"ÃŽn mod implicit, I2P li se va permite să utilizeze numai până la 128MB de " +"RAM." #. Type: string #. Description @@ -73,7 +87,9 @@ msgstr "ÃŽn mod implicit, I2P li se va permite să utilizeze numai până la 128 msgid "" "High bandwidth routers, as well as routers with a lot of active torrents / " "plugins, may need to have this value increased." -msgstr "Routere în bandă largă, precum È™i routere, cu o mulÈ›ime de torente/plugin-uri active, ar putea avea nevoie pentru a avea această valoare marita." +msgstr "" +"Routere în bandă largă, precum È™i routere, cu o mulÈ›ime de torente/plugin-" +"uri active, ar putea avea nevoie pentru a avea această valoare marita." #. Type: boolean #. Description diff --git a/debian/po/ru.po b/debian/po/ru.po index 712e15ae054238611ff6ff46473c5204fe7aa05f..74275493be573bc4917f0dec38f141e6d3d1dec3 100644 --- a/debian/po/ru.po +++ b/debian/po/ru.po @@ -1,7 +1,7 @@ # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. -# +# # Translators: # Hidden Z <hiddenz@mail.i2p>, 2011 # Maxym Mykhalchuk, 2015 @@ -13,12 +13,15 @@ msgstr "" "POT-Creation-Date: 2015-02-18 22:14+0000\n" "PO-Revision-Date: 2015-05-15 12:40+0000\n" "Last-Translator: Maxym Mykhalchuk\n" -"Language-Team: Russian (Russia) (http://www.transifex.com/projects/p/I2P/language/ru_RU/)\n" +"Language-Team: Russian (Russia) (http://www.transifex.com/projects/p/I2P/" +"language/ru_RU/)\n" +"Language: ru_RU\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: ru_RU\n" -"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n" +"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" +"%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n" +"%100>=11 && n%100<=14)? 2 : 3);\n" #. Type: boolean #. Description @@ -32,7 +35,9 @@ msgstr "Должен ли I2P-роутер запуÑкатьÑÑ Ð²Ð¾ врем msgid "" "The I2P router can be run as a daemon that starts automatically when your " "computer boots up. This is the recommended configuration." -msgstr "I2P-роутер может работать в качеÑтве демона, который запуÑкаетÑÑ Ð°Ð²Ñ‚Ð¾Ð¼Ð°Ñ‚Ð¸Ñ‡ÐµÑки во Ð²Ñ€ÐµÐ¼Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ¸ компьютера. Ðто Ñ€ÐµÐºÐ¾Ð¼ÐµÐ½Ð´ÑƒÐµÐ¼Ð°Ñ ÐºÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ñ." +msgstr "" +"I2P-роутер может работать в качеÑтве демона, который запуÑкаетÑÑ " +"автоматичеÑки во Ð²Ñ€ÐµÐ¼Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ¸ компьютера. Ðто Ñ€ÐµÐºÐ¾Ð¼ÐµÐ½Ð´ÑƒÐµÐ¼Ð°Ñ ÐºÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ñ." #. Type: string #. Description @@ -44,11 +49,15 @@ msgstr "ПÑевдопользователь Ð´Ð»Ñ I2P-демона:" #. Description #: ../i2p.templates:3001 msgid "" -"By default I2P is configured to run under the account i2psvc when running as" -" a daemon. To use an **existing** I2P profile you may enter a different " -"account name here. For example, if your previous I2P installation is at " -"/home/user/i2p, you may enter 'user' here." -msgstr "При работе в качеÑтве демона, I2P по умолчанию иÑпользует аккаунт i2psvc Ð´Ð»Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ñ‹. Ð”Ð»Ñ Ð¸ÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ **ÑущеÑтвующего** Ð¿Ñ€Ð¾Ñ„Ð¸Ð»Ñ I2P вы можете ввеÑти здеÑÑŒ другое Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ. Ðапример, еÑли ваша Ð¿Ñ€ÐµÐ´Ñ‹Ð´ÑƒÑ‰Ð°Ñ ÑƒÑтановка I2P находитÑÑ Ð² /home/user/i2p, вы можете ввеÑти здеÑÑŒ 'user'." +"By default I2P is configured to run under the account i2psvc when running as " +"a daemon. To use an **existing** I2P profile you may enter a different " +"account name here. For example, if your previous I2P installation is at /" +"home/user/i2p, you may enter 'user' here." +msgstr "" +"При работе в качеÑтве демона, I2P по умолчанию иÑпользует аккаунт i2psvc Ð´Ð»Ñ " +"работы. Ð”Ð»Ñ Ð¸ÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ **ÑущеÑтвующего** Ð¿Ñ€Ð¾Ñ„Ð¸Ð»Ñ I2P вы можете ввеÑти " +"здеÑÑŒ другое Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ. Ðапример, еÑли ваша Ð¿Ñ€ÐµÐ´Ñ‹Ð´ÑƒÑ‰Ð°Ñ ÑƒÑтановка I2P " +"находитÑÑ Ð² /home/user/i2p, вы можете ввеÑти здеÑÑŒ 'user'." #. Type: string #. Description @@ -56,7 +65,9 @@ msgstr "При работе в качеÑтве демона, I2P по умол msgid "" "Very important: If a user other than the default of 'i2psvc' is entered " "here, the chosen username *MUST* already exist." -msgstr "Важно: еÑли здеÑÑŒ введено Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ, отличное от имени Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¿Ð¾ умолчанию 'i2psvc', оно уже *ДОЛЖÐО* ÑущеÑтвовать." +msgstr "" +"Важно: еÑли здеÑÑŒ введено Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ, отличное от имени Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ " +"по умолчанию 'i2psvc', оно уже *ДОЛЖÐО* ÑущеÑтвовать." #. Type: string #. Description @@ -68,7 +79,8 @@ msgstr "Обьем памÑти, который может быть выделе #. Description #: ../i2p.templates:4001 msgid "By default, I2P will only be allowed to use up to 128MB of RAM." -msgstr "По умолчанию, I2P будет разрешено иÑпользовать до 128 МБ оперативной памÑти." +msgstr "" +"По умолчанию, I2P будет разрешено иÑпользовать до 128 МБ оперативной памÑти." #. Type: string #. Description @@ -76,7 +88,10 @@ msgstr "По умолчанию, I2P будет разрешено иÑполь msgid "" "High bandwidth routers, as well as routers with a lot of active torrents / " "plugins, may need to have this value increased." -msgstr "Ð”Ð»Ñ Ñ€Ð¾ÑƒÑ‚ÐµÑ€Ð¾Ð² Ñ Ð²Ñ‹Ñокой пропуÑкнй ÑпоÑобноÑтью, а также Ð´Ð»Ñ Ñ€Ð¾ÑƒÑ‚ÐµÑ€Ð¾Ð² Ñ Ð±Ð¾Ð»ÑŒÑˆÐ¸Ð¼ количеÑтвом активных торрентов/плагинов, возможно, потребуетÑÑ ÑƒÐ²ÐµÐ»Ð¸Ñ‡Ð¸Ñ‚ÑŒ Ñто значение." +msgstr "" +"Ð”Ð»Ñ Ñ€Ð¾ÑƒÑ‚ÐµÑ€Ð¾Ð² Ñ Ð²Ñ‹Ñокой пропуÑкнй ÑпоÑобноÑтью, а также Ð´Ð»Ñ Ñ€Ð¾ÑƒÑ‚ÐµÑ€Ð¾Ð² Ñ " +"большим количеÑтвом активных торрентов/плагинов, возможно, потребуетÑÑ " +"увеличить Ñто значение." #. Type: boolean #. Description @@ -90,4 +105,6 @@ msgstr "ВыполнÑть I2P-демон в ограниченной Ñреде msgid "" "With this option enabled I2P will be sandboxed with AppArmor, restricting " "which files and directories may be accessed by I2P." -msgstr "ЕÑли включить Ñту опцию, то I2P будет выполнÑтьÑÑ Ð² пеÑочнице AppArmor, ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ Ð¾Ð³Ñ€Ð°Ð½Ð¸Ñ‡Ð¸Ñ‚ доÑтуп I2P к файлам и каталогам вашего компьютера." +msgstr "" +"ЕÑли включить Ñту опцию, то I2P будет выполнÑтьÑÑ Ð² пеÑочнице AppArmor, " +"ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ Ð¾Ð³Ñ€Ð°Ð½Ð¸Ñ‡Ð¸Ñ‚ доÑтуп I2P к файлам и каталогам вашего компьютера." diff --git a/debian/po/sk.po b/debian/po/sk.po index d105bbb5133694979cd610fc51cd78a4d8c510e3..67347e68f134176dec44302abe6ff9ddb88feaeb 100644 --- a/debian/po/sk.po +++ b/debian/po/sk.po @@ -1,22 +1,23 @@ # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. -# +# # Translators: # Jakub Srna <jaksrn@gmail.com>, 2014 +# ondysk, 2015 # Roman 'Kaktuxista' Benji <romanbeno273@gmail.com>, 2014 msgid "" msgstr "" "Project-Id-Version: I2P\n" "Report-Msgid-Bugs-To: https://trac.i2p2.de/\n" "POT-Creation-Date: 2015-02-18 22:14+0000\n" -"PO-Revision-Date: 2015-03-29 14:31+0000\n" -"Last-Translator: kytv <killyourtv@i2pmail.org>\n" -"Language-Team: Slovak (http://www.transifex.com/projects/p/I2P/language/sk/)\n" +"PO-Revision-Date: 2015-10-21 05:56+0000\n" +"Last-Translator: ondysk\n" +"Language-Team: Slovak (http://www.transifex.com/otf/I2P/language/sk/)\n" +"Language: sk\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: sk\n" "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" #. Type: boolean @@ -31,7 +32,9 @@ msgstr "Mal by sa I2P router spustiÅ¥ pri boote?" msgid "" "The I2P router can be run as a daemon that starts automatically when your " "computer boots up. This is the recommended configuration." -msgstr "I2P router sa dá spustiÅ¥ ako daemon pri boote vášho poÄÃtaÄa. Táto konfigurácia je odporúÄaná." +msgstr "" +"I2P router sa dá spustiÅ¥ ako daemon pri boote vášho poÄÃtaÄa. Táto " +"konfigurácia je odporúÄaná." #. Type: string #. Description @@ -43,11 +46,15 @@ msgstr "I2P daemon užÃvateľ:" #. Description #: ../i2p.templates:3001 msgid "" -"By default I2P is configured to run under the account i2psvc when running as" -" a daemon. To use an **existing** I2P profile you may enter a different " -"account name here. For example, if your previous I2P installation is at " -"/home/user/i2p, you may enter 'user' here." -msgstr "I2P je predvolene nastavený tak, aby v Äase, keÄ je spustený ako daemon, bol pod úÄom i2psvc. Pre použitie **existujúceho** I2P profilu môžete zadaÅ¥ iný názov úÄtu. NaprÃklad, ak sa vaÅ¡a predchádzajúca inÅ¡talácia I2P nachádza v /home/user/i2p, môžete sem zadaÅ¥ 'user'." +"By default I2P is configured to run under the account i2psvc when running as " +"a daemon. To use an **existing** I2P profile you may enter a different " +"account name here. For example, if your previous I2P installation is at /" +"home/user/i2p, you may enter 'user' here." +msgstr "" +"I2P je predvolene nastavený tak, aby v Äase, keÄ je spustený ako daemon, bol " +"pod úÄom i2psvc. Pre použitie **existujúceho** I2P profilu môžete zadaÅ¥ iný " +"názov úÄtu. NaprÃklad, ak sa vaÅ¡a predchádzajúca inÅ¡talácia I2P nachádza v /" +"home/user/i2p, môžete sem zadaÅ¥ 'user'." #. Type: string #. Description @@ -55,7 +62,9 @@ msgstr "I2P je predvolene nastavený tak, aby v Äase, keÄ je spustený ako dae msgid "" "Very important: If a user other than the default of 'i2psvc' is entered " "here, the chosen username *MUST* already exist." -msgstr "Veľmi dôležité: Ak užÃvateľ, ktorý je sem zadaný, je iný ako predvolený 'i2psvc', zvolené užÃvateľské meno *MUSÃ* už existovaÅ¥. " +msgstr "" +"Veľmi dôležité: Ak užÃvateľ, ktorý je sem zadaný, je iný ako predvolený " +"'i2psvc', zvolené užÃvateľské meno *MUSÃ* už existovaÅ¥. " #. Type: string #. Description @@ -75,13 +84,15 @@ msgstr "Predvolene bude môcÅ¥ I2P použiÅ¥ najviac 128MB RAM." msgid "" "High bandwidth routers, as well as routers with a lot of active torrents / " "plugins, may need to have this value increased." -msgstr "Routre s vysokou Å¡Ãrkou pásma, rovnako aj routre s veľa aktÃvnymi torrentmi / pluginmi, môžu potrebovaÅ¥ zvýšenie tejto hodnoty." +msgstr "" +"Routre s vysokou Å¡Ãrkou pásma, rovnako aj routre s veľa aktÃvnymi " +"torrentmi / pluginmi, môžu potrebovaÅ¥ zvýšenie tejto hodnoty." #. Type: boolean #. Description #: ../i2p.templates:5001 msgid "Run I2P daemon confined with AppArmor" -msgstr "" +msgstr "SpustiÅ¥ I2P daemon s obmedzenÃm pomocou AppArmor" #. Type: boolean #. Description @@ -90,3 +101,5 @@ msgid "" "With this option enabled I2P will be sandboxed with AppArmor, restricting " "which files and directories may be accessed by I2P." msgstr "" +"PovolenÃm tejto možnosti I2P bude v bežaÅ¥ v sandboxe pomocou AppArmor, ktorý " +"vymedzà súbory a prieÄinky, ku ktorým môže I2P pristupovaÅ¥." diff --git a/debian/po/sq.po b/debian/po/sq.po index 91ab0a454792c931e8a7390b15a824565b65e1da..2ba14265ab0b4bb98e3f49405bd93504483925c0 100644 --- a/debian/po/sq.po +++ b/debian/po/sq.po @@ -1,7 +1,7 @@ # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. -# +# # Translators: # Shpetim <shpetim@privacysolutions.no>, 2014 msgid "" @@ -11,11 +11,12 @@ msgstr "" "POT-Creation-Date: 2015-02-18 22:14+0000\n" "PO-Revision-Date: 2015-03-29 14:31+0000\n" "Last-Translator: kytv <killyourtv@i2pmail.org>\n" -"Language-Team: Albanian (http://www.transifex.com/projects/p/I2P/language/sq/)\n" +"Language-Team: Albanian (http://www.transifex.com/projects/p/I2P/language/" +"sq/)\n" +"Language: sq\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: sq\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #. Type: boolean @@ -30,7 +31,9 @@ msgstr "Duhet router'i i I2P'së të startojë në boot? " msgid "" "The I2P router can be run as a daemon that starts automatically when your " "computer boots up. This is the recommended configuration." -msgstr "Router'i i I2P'së mund të punojë edhe si një daemon, që starton automatikisht kur kompjuteri boot'et. Ky është konfikurimi rekomandues. " +msgstr "" +"Router'i i I2P'së mund të punojë edhe si një daemon, që starton " +"automatikisht kur kompjuteri boot'et. Ky është konfikurimi rekomandues. " #. Type: string #. Description @@ -42,11 +45,16 @@ msgstr "I2P përdorues i daemon'it:" #. Description #: ../i2p.templates:3001 msgid "" -"By default I2P is configured to run under the account i2psvc when running as" -" a daemon. To use an **existing** I2P profile you may enter a different " -"account name here. For example, if your previous I2P installation is at " -"/home/user/i2p, you may enter 'user' here." -msgstr "Zakonisht I2P është konfiguruar të punojë ndër llogarinë i2psvc kur është duke punuar si një deamon. Për të përdorur një profil **ekzistues** të I2P'së mund ta shtypni një emër tjetër llogarie këtu. Për shembull, nëse instalimi i kaluar është në shtëpi/përdorues/i2p, mund të hyni si \"përdorues\" këtu. " +"By default I2P is configured to run under the account i2psvc when running as " +"a daemon. To use an **existing** I2P profile you may enter a different " +"account name here. For example, if your previous I2P installation is at /" +"home/user/i2p, you may enter 'user' here." +msgstr "" +"Zakonisht I2P është konfiguruar të punojë ndër llogarinë i2psvc kur është " +"duke punuar si një deamon. Për të përdorur një profil **ekzistues** të " +"I2P'së mund ta shtypni një emër tjetër llogarie këtu. Për shembull, nëse " +"instalimi i kaluar është në shtëpi/përdorues/i2p, mund të hyni si \"përdorues" +"\" këtu. " #. Type: string #. Description @@ -54,7 +62,9 @@ msgstr "Zakonisht I2P është konfiguruar të punojë ndër llogarinë i2psvc ku msgid "" "Very important: If a user other than the default of 'i2psvc' is entered " "here, the chosen username *MUST* already exist." -msgstr "Shumë e rëndësishme: Nëse një përdorues përveq default'i i 'i2psvc' është entruar këtu, emri i zgjedhur *DUHET* tashmë të ekzistojë. " +msgstr "" +"Shumë e rëndësishme: Nëse një përdorues përveq default'i i 'i2psvc' është " +"entruar këtu, emri i zgjedhur *DUHET* tashmë të ekzistojë. " #. Type: string #. Description @@ -66,7 +76,8 @@ msgstr "Kujtesat që mund të ndahen te I2P:" #. Description #: ../i2p.templates:4001 msgid "By default, I2P will only be allowed to use up to 128MB of RAM." -msgstr "Normalisht, I2P do ti lejohet të përdorë vetëm deri në 128Mb të RAM'it." +msgstr "" +"Normalisht, I2P do ti lejohet të përdorë vetëm deri në 128Mb të RAM'it." #. Type: string #. Description diff --git a/debian/po/sv.po b/debian/po/sv.po index fbd85e504bcd711973fbbd3e11b43a3f84ac17ae..1bd0b62f34e960c6f0a7cf8f1175707a2010b244 100644 --- a/debian/po/sv.po +++ b/debian/po/sv.po @@ -1,7 +1,7 @@ # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. -# +# # Translators: # cacapo <handelsehorisont@gmail.com>, 2015 # hottuna <i2p@robertfoss.se>, 2013 @@ -13,11 +13,12 @@ msgstr "" "POT-Creation-Date: 2015-02-18 22:14+0000\n" "PO-Revision-Date: 2015-04-24 21:35+0000\n" "Last-Translator: cacapo <handelsehorisont@gmail.com>\n" -"Language-Team: Swedish (Sweden) (http://www.transifex.com/projects/p/I2P/language/sv_SE/)\n" +"Language-Team: Swedish (Sweden) (http://www.transifex.com/projects/p/I2P/" +"language/sv_SE/)\n" +"Language: sv_SE\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: sv_SE\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #. Type: boolean @@ -32,7 +33,9 @@ msgstr "Ska I2P routern startas vid systemstart?" msgid "" "The I2P router can be run as a daemon that starts automatically when your " "computer boots up. This is the recommended configuration." -msgstr "I2P routern kan köras som en tjänst (daemon) som automatiskt startas när datorn startas. Detta rekommenderas. " +msgstr "" +"I2P routern kan köras som en tjänst (daemon) som automatiskt startas när " +"datorn startas. Detta rekommenderas. " #. Type: string #. Description @@ -44,11 +47,15 @@ msgstr "Användare för I2P tjänsten:" #. Description #: ../i2p.templates:3001 msgid "" -"By default I2P is configured to run under the account i2psvc when running as" -" a daemon. To use an **existing** I2P profile you may enter a different " -"account name here. For example, if your previous I2P installation is at " -"/home/user/i2p, you may enter 'user' here." -msgstr "Som standard är I2P inställt för att köras under användaren i2psvc när det körs som tjänst. För att använda ett **existerande** I2P profil, ange en annan användare här. Exempelvis, om din tidigare I2P installation är /home/user/i2p sÃ¥ ange 'user' här." +"By default I2P is configured to run under the account i2psvc when running as " +"a daemon. To use an **existing** I2P profile you may enter a different " +"account name here. For example, if your previous I2P installation is at /" +"home/user/i2p, you may enter 'user' here." +msgstr "" +"Som standard är I2P inställt för att köras under användaren i2psvc när det " +"körs som tjänst. För att använda ett **existerande** I2P profil, ange en " +"annan användare här. Exempelvis, om din tidigare I2P installation är /home/" +"user/i2p sÃ¥ ange 'user' här." #. Type: string #. Description @@ -56,7 +63,9 @@ msgstr "Som standard är I2P inställt för att köras under användaren i2psvc msgid "" "Very important: If a user other than the default of 'i2psvc' is entered " "here, the chosen username *MUST* already exist." -msgstr "OBS! Viktigt: Om en annan användare än standard 'i2psvc' skrivs in här. *MÃ…STE* det användarnamnet redan existera." +msgstr "" +"OBS! Viktigt: Om en annan användare än standard 'i2psvc' skrivs in här. " +"*MÃ…STE* det användarnamnet redan existera." #. Type: string #. Description @@ -76,7 +85,9 @@ msgstr "Som standard kommer I2P bara att använda up till 128MB RAM." msgid "" "High bandwidth routers, as well as routers with a lot of active torrents / " "plugins, may need to have this value increased." -msgstr "För routrar med hög bandbredd eller routrar med hög aktivitet kan detta behöva ökas" +msgstr "" +"För routrar med hög bandbredd eller routrar med hög aktivitet kan detta " +"behöva ökas" #. Type: boolean #. Description @@ -90,4 +101,6 @@ msgstr "Kör I2Pdaemon begränsad av AppArmor" msgid "" "With this option enabled I2P will be sandboxed with AppArmor, restricting " "which files and directories may be accessed by I2P." -msgstr "Med det här valet aktiverat kommer I2P att köras i sandlÃ¥da med AppArmor, som begränsar vilka filer och mappar som kan kommas Ã¥t av I2P." +msgstr "" +"Med det här valet aktiverat kommer I2P att köras i sandlÃ¥da med AppArmor, " +"som begränsar vilka filer och mappar som kan kommas Ã¥t av I2P." diff --git a/debian/po/tr.po b/debian/po/tr.po index 21cbe2e4e5fee85730f58f2c19720fbace346c0c..6978829554290491439f4515943b88f740a8fdca 100644 --- a/debian/po/tr.po +++ b/debian/po/tr.po @@ -1,7 +1,7 @@ # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. -# +# # Translators: # Kaya Zeren <kayazeren@gmail.com>, 2013 msgid "" @@ -11,11 +11,12 @@ msgstr "" "POT-Creation-Date: 2015-02-18 22:14+0000\n" "PO-Revision-Date: 2015-03-29 14:31+0000\n" "Last-Translator: kytv <killyourtv@i2pmail.org>\n" -"Language-Team: Turkish (Turkey) (http://www.transifex.com/projects/p/I2P/language/tr_TR/)\n" +"Language-Team: Turkish (Turkey) (http://www.transifex.com/projects/p/I2P/" +"language/tr_TR/)\n" +"Language: tr_TR\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: tr_TR\n" "Plural-Forms: nplurals=1; plural=0;\n" #. Type: boolean @@ -30,7 +31,9 @@ msgstr "I2P yönelticisi açılışta baÅŸlatılsın" msgid "" "The I2P router can be run as a daemon that starts automatically when your " "computer boots up. This is the recommended configuration." -msgstr "I2P yönelticisi sistem baÅŸlatılırken artalan hizmeti olarak çalıştırılır. Bu ayarı kullanmanız önerilir." +msgstr "" +"I2P yönelticisi sistem baÅŸlatılırken artalan hizmeti olarak çalıştırılır. Bu " +"ayarı kullanmanız önerilir." #. Type: string #. Description @@ -42,11 +45,15 @@ msgstr "I2P artalan hizmeti kullanıcısı:" #. Description #: ../i2p.templates:3001 msgid "" -"By default I2P is configured to run under the account i2psvc when running as" -" a daemon. To use an **existing** I2P profile you may enter a different " -"account name here. For example, if your previous I2P installation is at " -"/home/user/i2p, you may enter 'user' here." -msgstr "I2P artalan hizmeti olarak kullanıldığında varsayılan olarak i2psvc hesabı altında çalışır. **Varolan** bir I2P profili kullanmak için buraya farklı bir hesap adı yazabilirsiniz. ÖrneÄŸin, mnceki I2P kurulumunuz /home/user/i2p klasörü altındaysa buraya 'user' yazabilirsiniz." +"By default I2P is configured to run under the account i2psvc when running as " +"a daemon. To use an **existing** I2P profile you may enter a different " +"account name here. For example, if your previous I2P installation is at /" +"home/user/i2p, you may enter 'user' here." +msgstr "" +"I2P artalan hizmeti olarak kullanıldığında varsayılan olarak i2psvc hesabı " +"altında çalışır. **Varolan** bir I2P profili kullanmak için buraya farklı " +"bir hesap adı yazabilirsiniz. ÖrneÄŸin, mnceki I2P kurulumunuz /home/user/i2p " +"klasörü altındaysa buraya 'user' yazabilirsiniz." #. Type: string #. Description @@ -54,7 +61,9 @@ msgstr "I2P artalan hizmeti olarak kullanıldığında varsayılan olarak i2psvc msgid "" "Very important: If a user other than the default of 'i2psvc' is entered " "here, the chosen username *MUST* already exist." -msgstr "Çok önemli: Buraya varsayılan 'i2psvc' kullanıcısından baÅŸka bir deÄŸer yazılırsa, bu kullanıcı *MUHAKKAK* varolmalıdır." +msgstr "" +"Çok önemli: Buraya varsayılan 'i2psvc' kullanıcısından baÅŸka bir deÄŸer " +"yazılırsa, bu kullanıcı *MUHAKKAK* varolmalıdır." #. Type: string #. Description @@ -74,7 +83,9 @@ msgstr "I2P varsayılan olarak yalnız 128MB RAM bellek kullanır." msgid "" "High bandwidth routers, as well as routers with a lot of active torrents / " "plugins, may need to have this value increased." -msgstr "Torrent ve uygulama ekleri kullandığından yüksek bant geniÅŸliÄŸine gerek duyan yönelticiler için bu deÄŸerin arttırılması gerekebilir." +msgstr "" +"Torrent ve uygulama ekleri kullandığından yüksek bant geniÅŸliÄŸine gerek " +"duyan yönelticiler için bu deÄŸerin arttırılması gerekebilir." #. Type: boolean #. Description diff --git a/debian/po/uk.po b/debian/po/uk.po index 6a6047999990f92df49887ddf1061bf7dc9a0c50..d1cea50ce522d5c8e84d9d5ff9936ac8409b526d 100644 --- a/debian/po/uk.po +++ b/debian/po/uk.po @@ -1,7 +1,7 @@ # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. -# +# # Translators: # Denis Blank <gribua@gmail.com>, 2011 # LinuxChata, 2014 @@ -14,12 +14,14 @@ msgstr "" "POT-Creation-Date: 2015-02-18 22:14+0000\n" "PO-Revision-Date: 2015-04-08 20:08+0000\n" "Last-Translator: madjong <madjong@i2pmail.org>\n" -"Language-Team: Ukrainian (Ukraine) (http://www.transifex.com/projects/p/I2P/language/uk_UA/)\n" +"Language-Team: Ukrainian (Ukraine) (http://www.transifex.com/projects/p/I2P/" +"language/uk_UA/)\n" +"Language: uk_UA\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: uk_UA\n" -"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" +"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" #. Type: boolean #. Description @@ -33,7 +35,9 @@ msgstr "Чи повинен I2P роутер запуÑкатиÑÑŒ при за msgid "" "The I2P router can be run as a daemon that starts automatically when your " "computer boots up. This is the recommended configuration." -msgstr "I2P роутер може працювати в ÑкоÑті демона, Ñкий запуÑкаєтьÑÑ Ð°Ð²Ñ‚Ð¾Ð¼Ð°Ñ‚Ð¸Ñ‡Ð½Ð¾ під Ñ‡Ð°Ñ Ð·Ð°Ð¿ÑƒÑку комп'ютера. Це рекомендована наÑтройка." +msgstr "" +"I2P роутер може працювати в ÑкоÑті демона, Ñкий запуÑкаєтьÑÑ Ð°Ð²Ñ‚Ð¾Ð¼Ð°Ñ‚Ð¸Ñ‡Ð½Ð¾ під " +"Ñ‡Ð°Ñ Ð·Ð°Ð¿ÑƒÑку комп'ютера. Це рекомендована наÑтройка." #. Type: string #. Description @@ -45,11 +49,15 @@ msgstr "ПÑевдокориÑтувач Ð´Ð»Ñ I2P-демона:" #. Description #: ../i2p.templates:3001 msgid "" -"By default I2P is configured to run under the account i2psvc when running as" -" a daemon. To use an **existing** I2P profile you may enter a different " -"account name here. For example, if your previous I2P installation is at " -"/home/user/i2p, you may enter 'user' here." -msgstr "При роботі в ÑкоÑті демона, I2P за замовчуваннÑм викориÑтовує аккаунт i2psvc Ð´Ð»Ñ Ñ€Ð¾Ð±Ð¾Ñ‚Ð¸. Ð”Ð»Ñ Ð²Ð¸ÐºÐ¾Ñ€Ð¸ÑÑ‚Ð¾Ð²ÑƒÐ²Ð°Ð½Ð½Ñ **Ñ–Ñнуючого** профілю I2P ви можете ввеÑти тут ім'Ñ Ñ–Ð½ÑˆÐ¾Ð³Ð¾ кориÑтувача. Ð”Ð»Ñ Ð¿Ñ€Ð¸ÐºÐ»Ð°Ð´Ñƒ, Ñкщо ваша Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð½Ñ Ñ–Ð½ÑталÑÑ†Ñ–Ñ I2p знаходитьÑÑ Ð² /home/user/i2p, ви можете ввеÑти тут 'user'." +"By default I2P is configured to run under the account i2psvc when running as " +"a daemon. To use an **existing** I2P profile you may enter a different " +"account name here. For example, if your previous I2P installation is at /" +"home/user/i2p, you may enter 'user' here." +msgstr "" +"При роботі в ÑкоÑті демона, I2P за замовчуваннÑм викориÑтовує аккаунт i2psvc " +"Ð´Ð»Ñ Ñ€Ð¾Ð±Ð¾Ñ‚Ð¸. Ð”Ð»Ñ Ð²Ð¸ÐºÐ¾Ñ€Ð¸ÑÑ‚Ð¾Ð²ÑƒÐ²Ð°Ð½Ð½Ñ **Ñ–Ñнуючого** профілю I2P ви можете ввеÑти " +"тут ім'Ñ Ñ–Ð½ÑˆÐ¾Ð³Ð¾ кориÑтувача. Ð”Ð»Ñ Ð¿Ñ€Ð¸ÐºÐ»Ð°Ð´Ñƒ, Ñкщо ваша Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð½Ñ Ñ–Ð½ÑталÑÑ†Ñ–Ñ " +"I2p знаходитьÑÑ Ð² /home/user/i2p, ви можете ввеÑти тут 'user'." #. Type: string #. Description @@ -57,7 +65,9 @@ msgstr "При роботі в ÑкоÑті демона, I2P за замовч msgid "" "Very important: If a user other than the default of 'i2psvc' is entered " "here, the chosen username *MUST* already exist." -msgstr "Дуже важливо: Ñкщо кориÑтувач відмінний від Ñтандартний 'i2psvc' введений тут, обраний нікнейм *ПОВИÐЕÐ* вже Ñ–Ñнувати." +msgstr "" +"Дуже важливо: Ñкщо кориÑтувач відмінний від Ñтандартний 'i2psvc' введений " +"тут, обраний нікнейм *ПОВИÐЕÐ* вже Ñ–Ñнувати." #. Type: string #. Description @@ -69,7 +79,8 @@ msgstr "Пам'Ñть Ñка може бути виділена Ð´Ð»Ñ I2P:" #. Description #: ../i2p.templates:4001 msgid "By default, I2P will only be allowed to use up to 128MB of RAM." -msgstr "За замовчуваннÑм, I2P буде викориÑтовувати до 128 МБ оперативної пам'Ñті." +msgstr "" +"За замовчуваннÑм, I2P буде викориÑтовувати до 128 МБ оперативної пам'Ñті." #. Type: string #. Description @@ -77,7 +88,10 @@ msgstr "За замовчуваннÑм, I2P буде викориÑтовува msgid "" "High bandwidth routers, as well as routers with a lot of active torrents / " "plugins, may need to have this value increased." -msgstr "Роутери з виÑокою швидкіÑтю передачі інформації, так Ñамо Ñк роутери з великою кількіÑтю активних торрентів / плагінів, можуть потребувати Ð·Ð±Ñ–Ð»ÑŒÑˆÐµÐ½Ð½Ñ Ñ†ÑŒÐ¾Ð³Ð¾ значеннÑ." +msgstr "" +"Роутери з виÑокою швидкіÑтю передачі інформації, так Ñамо Ñк роутери з " +"великою кількіÑтю активних торрентів / плагінів, можуть потребувати " +"Ð·Ð±Ñ–Ð»ÑŒÑˆÐµÐ½Ð½Ñ Ñ†ÑŒÐ¾Ð³Ð¾ значеннÑ." #. Type: boolean #. Description @@ -91,4 +105,6 @@ msgstr "ЗапуÑтити демон I2P, обмежений AppArmor" msgid "" "With this option enabled I2P will be sandboxed with AppArmor, restricting " "which files and directories may be accessed by I2P." -msgstr "При активації цієї опції I2P працюватиме в піÑочниці AppArmor, доÑтуп до файлів Ñ– директорій Ð´Ð»Ñ I2P буде обмежено" +msgstr "" +"При активації цієї опції I2P працюватиме в піÑочниці AppArmor, доÑтуп до " +"файлів Ñ– директорій Ð´Ð»Ñ I2P буде обмежено" diff --git a/debian/po/zh.po b/debian/po/zh.po index 9d249283723019db62cdd3fc077957887b759472..523f56bf5b90150b48a670a621d301ffa98e9693 100644 --- a/debian/po/zh.po +++ b/debian/po/zh.po @@ -1,7 +1,7 @@ # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. -# +# # Translators: # walking <waling@mail.i2p>, 2013 # YF <yfdyh000@gmail.com>, 2015 @@ -12,11 +12,12 @@ msgstr "" "POT-Creation-Date: 2015-02-18 22:14+0000\n" "PO-Revision-Date: 2015-06-07 16:29+0000\n" "Last-Translator: YF <yfdyh000@gmail.com>\n" -"Language-Team: Chinese (China) (http://www.transifex.com/projects/p/I2P/language/zh_CN/)\n" +"Language-Team: Chinese (China) (http://www.transifex.com/projects/p/I2P/" +"language/zh_CN/)\n" +"Language: zh_CN\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: zh_CN\n" "Plural-Forms: nplurals=1; plural=0;\n" #. Type: boolean @@ -43,11 +44,13 @@ msgstr "è¿è¡ŒI2PæœåŠ¡çš„è´¦æˆ·ï¼š" #. Description #: ../i2p.templates:3001 msgid "" -"By default I2P is configured to run under the account i2psvc when running as" -" a daemon. To use an **existing** I2P profile you may enter a different " -"account name here. For example, if your previous I2P installation is at " -"/home/user/i2p, you may enter 'user' here." -msgstr "I2PåŽå°æœåŠ¡é»˜è®¤ä»¥ i2psvc 账户è¿è¡Œã€‚è¦ä½¿ç”¨*已有*çš„I2Pé…置文件,您å¯ä»¥è¾“å…¥ä¸åŒçš„账户å。例如,如果您之å‰çš„I2P安装在 /home/user/i2p,æ¤å¤„å¯è¾“å…¥ 'user'。" +"By default I2P is configured to run under the account i2psvc when running as " +"a daemon. To use an **existing** I2P profile you may enter a different " +"account name here. For example, if your previous I2P installation is at /" +"home/user/i2p, you may enter 'user' here." +msgstr "" +"I2PåŽå°æœåŠ¡é»˜è®¤ä»¥ i2psvc 账户è¿è¡Œã€‚è¦ä½¿ç”¨*已有*çš„I2Pé…置文件,您å¯ä»¥è¾“å…¥ä¸åŒ" +"的账户å。例如,如果您之å‰çš„I2P安装在 /home/user/i2p,æ¤å¤„å¯è¾“å…¥ 'user'。" #. Type: string #. Description diff --git a/history.txt b/history.txt index bd4cde9e3babd3af1009d50147cf76c1875287e5..13f44d8527afc94357b53b6a8e3bc5f2962bbbe8 100644 --- a/history.txt +++ b/history.txt @@ -1,3 +1,205 @@ +2015-12-06 zzz + * Console: Don't force profile creation when loading floodfill tab + * Installer: Add wrapper deadlock detection to default wrapper.config + * NetDb: Stub out a "family" indicator (ticket #1510) + * Profiles: More changes to reduce memory usage + * Startup: Increase rekey probability + * Sybil tool: Tweaks and enhancements + +2015-12-04 zzz + * Console: Fix NPE on /profiles + * Profiles: + - Fix first heard about to be earliest, undeprecate + - Fixup first heard about at profile readin + - Persist good/bad lookup/store DBHistory stats added in 0.7.8 + - Remove unused DBHistory methods and fields to save memory + - Change bonus longs to ints to save memory + - Extend profile expiration time from 3 days to 15 + - Consolidate getLong() + - Synch fixes + * Sybil tool: Tweaks and enhancements + +2015-12-03 zzz + * Console: Add experimental Sybil analysis tool + * NetDb: Fix deadlock (ticket #1722) + +2015-12-01 zzz + * i2psnark: + - Consolidate default tunnel length definition + - Increase max peers and uploaders per torrent + - Increase default max total uploaders + - Increase max peers sent and returned in DHT +* SAM: + - Don't map keys to upper case in parser, corrupts I2CP options + - Register SSL and UDP ports with PortMapper +* SSU: Allow IP and port in relay request if it matches the source +* Transport: Interrupt DH refiller thread when pool is empty, + to speed refilling and reduce pumper stalls + +2015-11-30 zzz + * SAM: + - Timeout for first command after HELLO + - Send error message if no NAME key in LOOKUP + - Destination caching enhancements + - Client: Add SSL forward support, handle header line in forwarded stream + +2015-11-29 zzz + * i2ptunnel: + - Change preferred sig type to Ed + - Set permissions on backup tunnel keys file + +2015-11-28 zzz + * i2psnark: + - Fix NPE caused by URL-to-URI conversion in -2 (ticket #1715) + - Increase max pieces to 32K + - BEP 21 support (upload_only) + * SAM: + - Fix parser to allow spaces in quoted values (tickets #1325, #1488) + - Handle UTF-8 in ReadLine (ticket #1488) + - 3.2 complete (ticket #1574) + +2015-11-27 zzz + * SAM: + - Use DataHelper to load/store sam.keys + - Move sam.keys to config dir (ticket #677) + +2015-11-27 zzz +Prop from i2p.i2p.zzz.sam: + * PasswordManager: new methods for use by SAM + * SAM: + - Use getopt for SAM args processing + - Change default host from 0.0.0.0 to 127.0.0.1 + - Add SSL support with -s option (ticket #1106) + - Add -c configfile option, default sam.config + - Add protocol and port notification (ticket #1323) + - Add authorization options in HELLO (ticket #1106) + - Add AUTH commands: ENABLE, DISABLE, ADD, REMOVE + - Add PING, PONG commands (tickets #1572, #1573) + - Add QUIT, STOP, EXIT commands + - Add SSL option for STREAM FORWARD + - Move DatagramServer from SAMv3Handler to its own file + - Make DatagramServer a Handler, register with bridge + - Use ReadLine with timeout for SAMHandlerFactory + - Support parallel STREAM ACCEPTs + - Add HEADER option for RAW forwarding + - Better exception handling + - Extensive enhancements to Java client for testing + - Bump version to 3.2 (ticket #1574) + * Streaming: Fix recognition of PoisonPacket in ConnectionHandler + +2015-11-22 zzz +Prop from i2p.i2p.zzz.test2: + * Build: + - More release checks + - Add systray dependency tracking to build + - Remove commons-logging classes from commons-logging.jar (ticket #1679) + * Lint: + - Replace URL with URI where possible + - Don't use DataHelper.fromLong() for 1-byte reads, for efficiency + - Don't catch Exception, catch RuntimeException or checked exception. + * i2psnark: + - Minor details page reformatting + - Add skipped length on details page + * NewsManager: Make it a ClientApp, not a RouterApp + * Profiles: Don't allow creation of our own profile + * Router: Revert JobTiming being a clock shift listener, not needed + * SSU: + - Support extended options + - Add support for requesting a relay tag via + Session Request extended options (ticket #1465) + * Tunnels: + - Locking fixes + - Don't set stats in our own profile + - Minor optimizations + * Utils: + - Centralize time zone code in DataHelper + - Add caching string split() + +2015-11-21 zzz + * Console: Fix escaping of plugin description on /configclients (ticket #1711) + +* 2015-11-19 0.9.23 released + +2015-11-19 str4d + * build.xml: Stop building SUD and SU2 update files in "ant release" (ticket #1709) + +2015-11-15 kytv + * Updates to geoip.txt and geoipv6.dat.gz based on Maxmind GeoLite Country + database from 2015-11-03. + * Translation updates + +2015-11-13 zab + * Interrupt() when cancelling scheduled tasks (tickets #1694, #1705) + +2015-11-13 zzz + * Console: Fix lifetime participating bandwidth display (ticket #1706) + +2015-11-12 zzz + * Console /configclients: + = Fix filtering and escaping + - Fix autostart setting on new client, was inverted + +2015-11-11 zzz + * i2psnark: + - Change log level to hide socket closed error at tunnel shutdown (ticket #1687) + - Increase max pieces + * Timers: State fix 4th try (tickets #1694, #1705) + +2015-11-05 zzz + * I2CP: Fix additional connections getting rejected during tunnel open (tickets #1650, #1698) + * Streaming: Split blacklist into one for EC and one for Ed + +2015-11-04 zzz + * Threads: More conversions to I2PAppThread + * Timers: Improve OutboundMessageRegistry locking (ticket #1694) + +2015-11-02 z3r0fox + * EepGet: Fix command line filename selection (ticket #1616) + +2015-11-01 zzz + * Utils: Double IP lookup cache size (ticket #1700) + +2015-10-31 zzz + * Convert remaining Threads to I2PThread or I2PAppThread + * UPnP: Fix deadlock in callbacks (ticket #1699) + +2015-10-30 zzz + * Router: Fix cascading I2CP error (ticket #1692) + +2015-10-21 zzz + * i2psnark: More consistency and torrent links in messages + * Router: Increase timer thread priority + +2015-10-17 zzz + * Crypto: + - Consolidate duplicate unlimited strength crypto check code + - Disable TLS_DHE_DSS_WITH_AES_128_CBC_SHA + +2015-10-16 zzz + * Console: Add Java 6 warning to summary bar + * i2psnark: + - Fix deadlock (ticket #1432) + - Add "smart sort" option, set sort based on language (tickets #637, #1303) + - Don't balloon files on ARM (ticket #1684) + +2015-10-14 zzz + * Update: + - Require Java 7 to download dev builds (ticket #1669) + - Fix persistence of the available dev version + +2015-10-13 zzz + * Startup: Delete our old RI from netDB when rekeying + +2015-10-11 zzz + * Crypto: Test for broken Gentoo ECDSA support + +2015-10-10 zzz + * i2psnark: Increase max piece size to 16 MB, max files to 999, + close files faster based on file count (tickets #1626, #1671) + * JobQueue: Only adjust timing for negative clock shifts + * NamingServices: Add support for lookups prefixed with "www." + * Startup: Increase rekey probability + 2015-10-08 zzz * SimpleTimer2: Additional fix for uncaught IllegalStateException affecting streaming timers (ticket #1672) @@ -30,6 +232,9 @@ 2015-09-25 dg * Rename _() for translation to _t() for Java 9 compatibility (ticket #1456) +2015-09-24 zzz + - Rename bad .torrent files instead of deleting them + 2015-09-20 dg * /configreseed: Add 'Reset URL list' button for revert to default hosts (ticket #1554, thanks dzirtt@gmail.com) diff --git a/installer/install.xml b/installer/install.xml index f7cdcfbbd8bd0136a5ba0dd92d8e5502be6d3f9c..3a54086185f35c9912430760cfb57a7369ebc650 100644 --- a/installer/install.xml +++ b/installer/install.xml @@ -4,12 +4,12 @@ <info> <appname>i2p</appname> - <appversion>0.9.22</appversion> + <appversion>0.9.23</appversion> <authors> <author name="I2P" email="https://geti2p.net/"/> </authors> <url>https://geti2p.net/</url> - <javaversion>1.6</javaversion> + <javaversion>1.7</javaversion> <!-- use pack200 compression, saves about 33% see http://java.sun.com/j2se/1.5.0/docs/guide/deployment/deployment-guide/pack200.html diff --git a/installer/java/src/net/i2p/installer/Exec.java b/installer/java/src/net/i2p/installer/Exec.java index b8488ceff2704c25ff5c64a62da42262c8671c54..de7419202b7784239a3caf6244b7005b44a18dc2 100644 --- a/installer/java/src/net/i2p/installer/Exec.java +++ b/installer/java/src/net/i2p/installer/Exec.java @@ -1,6 +1,7 @@ package net.i2p.installer; import java.io.File; +import java.io.IOException; /** * <p>This class can be used by the installer to execute shell commands.</p> @@ -20,8 +21,9 @@ public class Exec { // http://cephas.net/blog/2004/03/23/external_applications_javas_runtimeexec.html try { proc.exitValue(); } catch (Throwable t) { } Runtime.getRuntime().halt(0); - - } catch (Exception e) { + } catch (IOException e) { + e.printStackTrace(); + } catch (RuntimeException e) { e.printStackTrace(); } } diff --git a/installer/resources/certificates/reseed/matt_at_drollette.com.crt b/installer/resources/certificates/reseed/matt_at_drollette.com.crt deleted file mode 100644 index e490a152a92f0bbed6569c82c1f1eee8382cae27..0000000000000000000000000000000000000000 --- a/installer/resources/certificates/reseed/matt_at_drollette.com.crt +++ /dev/null @@ -1,32 +0,0 @@ ------BEGIN CERTIFICATE----- -MIIFgzCCA2ugAwIBAgIEB52rdjANBgkqhkiG9w0BAQ0FADByMQswCQYDVQQGEwJY -WDELMAkGA1UECBMCWFgxCzAJBgNVBAcTAlhYMR4wHAYDVQQKExVJMlAgQW5vbnlt -b3VzIE5ldHdvcmsxDDAKBgNVBAsTA0kyUDEbMBkGA1UEAwwSbWF0dEBkcm9sbGV0 -dGUuY29tMB4XDTE0MDcyMTEzMjYxM1oXDTI0MDcyMDEzMjYxM1owcjELMAkGA1UE -BhMCWFgxCzAJBgNVBAgTAlhYMQswCQYDVQQHEwJYWDEeMBwGA1UEChMVSTJQIEFu -b255bW91cyBOZXR3b3JrMQwwCgYDVQQLEwNJMlAxGzAZBgNVBAMMEm1hdHRAZHJv -bGxldHRlLmNvbTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAL5M9wKT -csNLg4EA3fW7LleTQdrm3stPnoUvFmsNZHGgsKt1Nc1qCNis3kr2QEY+4Z398U7r -7xGEQFa7D/9SPHf6n1uVXc9DIcmwBtEB0FPB1XPFp2h00ZXIv24yiLN3GQT1woAM -yEbBWsUgn8K/iMBeA5dU2vPwAbGO/0ibD62frgGdYqU2EeiJ/U6vBmKxvC+q2noL -gnyfQJEJANXgf+Cw/gBaS6yn5ZsYcenLNenID2TQKQ6Q/NxYrDYRdWdId29iwldt -dmNSmASv8C7g9d/isZkpmtYNkE4J4m0W9wKziOoyvLSMo8ec67QmCKaPaYKTHTjx -aUuja02+mnlV4DSdZo6nPkSdokRY0+5e6q7+dIPefu8ealGEAE5oedEfl5iM5Fnz -phTR+ePodBK3sB+bMi1NMppbWugpFpdqs1hg2KNKSSG8C4/eTqf2nnlDiVvvFANc -imt6tk0pZcKqveRiDSgI8mTzTcrNgVClsCLoInY5Vab7onZjY9bGijPQ2i1P6+qu -5G6LiLFW7xFq2BcX1DnTztcJ8Yu9NYHhR21J6u7Dr8YHntes3mnth1F0BX3FVA1s -9SaE9/pNhdqap9owpEhNoE1Ke3LorVLL8jyQsqgRHx8VdhWdi9Ao0mzzeI9HYX0j -nZ7uXK5DqGG74K6eWoS9jZSDJLj3IBkIr3B/AgMBAAGjITAfMB0GA1UdDgQWBBTK -YjH+9Jv82Zqi86r95/1sXUCOnDANBgkqhkiG9w0BAQ0FAAOCAgEAsDyl3dS/5pR1 -iDN0zE70HN1Sjv55c5um6N39rgz8JSObbAMihhpjRXPR6yl0PdfVcswdCuEaaykp -ppPNY5ObqZIdqI92XOaOhSA3AkZwZffbwaoXFYiawq1aQG1HP7oxXzWwbnbPOxgz -6ThNP5DJan53Mk8TAhxoJkEJxVlMwIiC+QEgqDNYrP8oNOR2J1EXgzsHheEKObyP -xTwRYFqZU/7BQlFeB0LG1LIy9zXAHlb/XIor10w6ChPDW7DiDwGq3zDJw1d8eiUn -RoPRmFjTqn+3rGaEkk+vUFHoWo7cLCEIC3+P9wlY4Kel+ldXMmuJ+BZ1glFXeO3L -VO85n7iVIyBbwo7RLtNaBvrRQIEG3ld5UOKklLlWwhrX/FXksEhdFvmuF9sbiYNr -cg81sbwZlX7Gi7VicXkykFFXwRRr3UblDtfeevouxk4nMVzcDsmzGeAZKQBvcxHa -Pzc70YwnVRqTc87c0bEwPoxK1Vb26+DILyDjKb/AkTw/rwj6vcJZP2ad+hpiz5Ka -nlbY2cI3JJb0TQiDiOIk+xFqC5oHUTSEmfqA6sA5o/RqdwDpkfpgI5mCwhYzDSLD -jfS+263ylhanl7oz0sM+GtH63owVbYJAFT2EozT9siTIErvJESL4Z80yUQG63d/7 -fss8T6gOo19esb/KEMZGZE4pAApakWM= ------END CERTIFICATE----- diff --git a/installer/resources/certificates/ssl/netdb.rows.io.crt b/installer/resources/certificates/ssl/netdb.rows.io.crt deleted file mode 100644 index 5d99233cf546cf0428c4d12cf625ed6a1a031a49..0000000000000000000000000000000000000000 --- a/installer/resources/certificates/ssl/netdb.rows.io.crt +++ /dev/null @@ -1,33 +0,0 @@ ------BEGIN CERTIFICATE----- -MIIFszCCA52gAwIBAgIRALWZzF745GPT8GVUcZ0RMg0wCwYJKoZIhvcNAQELMG0x -CzAJBgNVBAYTAlhYMR4wHAYDVQQKExVJMlAgQW5vbnltb3VzIE5ldHdvcmsxDDAK -BgNVBAsTA0kyUDELMAkGA1UEBxMCWFgxCzAJBgNVBAkTAlhYMRYwFAYDVQQDEw1u -ZXRkYi5yb3dzLmlvMB4XDTE0MTIyMDE2NDIwNVoXDTE2MTIxOTE2NDIwNVowbTEL -MAkGA1UEBhMCWFgxHjAcBgNVBAoTFUkyUCBBbm9ueW1vdXMgTmV0d29yazEMMAoG -A1UECxMDSTJQMQswCQYDVQQHEwJYWDELMAkGA1UECRMCWFgxFjAUBgNVBAMTDW5l -dGRiLnJvd3MuaW8wggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCTZyJF -Im9pnc7OO5DfQy4SuotUztO5BJX7xniTqD4fKLQQXzZFeT4XHrkDste8TsTzUfxt -CWDEBH3af5cpnwWMT28rlRw2DlPr+LnAgt7VjFXdhFZr1N5VfNlTI1K3OiZ/DRlB -92CoTypyx4ebNfLtZfh+TPLOdg5UqROpHIrybsUj2IaG3IpGHJK8FuH79b/X5oVI -FlDZJs5QsJEARzq2QMJd6fnNqkCBSSjNpeL7TtDar9EKa6+O7s351kH8MVFNSogB -F0Hqu8LYaRC1L1JCz5lsOYKepp3MMIOdDOhy+FTd8NuNZXYkUTdTNI4dB6w4Z6o+ -xlnHEPpezIAAlPXLiupvlEi0om69/TMS+pLDBLAOlCZ2YaXS18UrSbmYYlekg40J -nEeALt8ZdsU/is7Q6SJZ3UltFIPCuMD+ixvaIvakkhNiqEWPxdg0XxAK1ZJYFup+ -2aVtPLQIzWePkG/VbdA5cxQKNtRwOgvCoKIE29nUbxuq2PCmMhLAfXHeieSzP5c7 -Q8A23qX94hwCIePj1YA9uNtStjECfVS1wjyXV4M1tTFUdSJv4aVtFjtya7PY+6SG -Srz11SqBWSqyJ/C14Su0QY/HquglzMRnkJ49Scwb+79hl7kPslO1iIgPLE5S2fIW -ZwJ/4AgGb6BZT8XPEYYANEA5y7KGanYNo8KdYwIDAQABo1IwUDAOBgNVHQ8BAf8E -BAMCAKQwEwYDVR0lBAwwCgYIKwYBBQUHAwEwDwYDVR0TAQH/BAUwAwEB/zAYBgNV -HREEETAPgg1uZXRkYi5yb3dzLmlvMAsGCSqGSIb3DQEBCwOCAgEAMjQSHPR/p9If -mJA1y489D1NB2CxfwO+CgAIs9HA7OsdneQBZTldMgBHoQGifkpD1uSl8DHoZqnJ8 -wo5YWcT1rYkP+V1jGfZj92VvfQL0/R4G4hWdQwYY0CcXN8ixS36UDQVSFKb4zvNG -j9iIN57WToEmxp5noHguKrpViwhXCMCpAXr3ZIv/Fd+QACNEXuvdZgbtwfOTPLKh -ZlkUPgVHiQopeQnZhZCT3aLZ5lndrUtWlQYiGN/OolVyRie+ysuxjRR4L5brt4Rz -hrwFBswbQZlgxJ3Nod9/wEdEJWP4+X69ggzOkBB+PgpOFpuDlJxNTcPA/WFIlsm0 -CzCv/o8Vg+MMWFPMwEZrk6UQXXACr1AEF+MUnZq3o5JaLvHoUcikewbZPcTCNvDp -nqT1RN9vq/MGdlRfPJkF028IXPz7T9DXXPXhJvv+FAfnOkREeUYpzBIftyYf92ol -l63z0FooVUTKWYPvFFgl5ShNnINTMVXPCZp8j7myLGSLOAFFwiaL1OtvftgxXfzC -B7Qj42SNhFUrHmO9fH3H2ptm/iW/Xe5eqgeb6MVGQ/eQJpdp0AvpDa50/AYNt1Iq -CcMKmBgzUezrIN24XXW/LZwazlc7I8e5RzgbEgXEDBZu21TApTKlmOqEYle8294W -fWThMdwk1kTrWxLooiVrS5A1hXqADqE= ------END CERTIFICATE----- diff --git a/installer/resources/checklist.md b/installer/resources/checklist.md new file mode 100644 index 0000000000000000000000000000000000000000..3a36f232af4e848846eb886eba62cf1d645419dd --- /dev/null +++ b/installer/resources/checklist.md @@ -0,0 +1,207 @@ +# Release checklist + +## One week before + +- Make announcement on Transifex with checkin deadline + + +## A day or two before + +1. Write the release announcement and push to Transifex: + + - Checkout i2p.newsxml branch + - See README for setup + - `./create_new_entry.sh` + - Entry href should be the in-net link to the release blog post + - `tx push -s` + - `mtn ci` + +2. Write the draft blog post and push to Transifex: + + - Checkout i2p.www branch + - Write draft release announcement - see i2p2www/blog/README for instructions + - Top content should be the same as the news entry + - `tx push -s` + - `mtn ci` + +3. Make announcement on Transifex asking for news translation + + +## On release day + +### Preparation + +1. Ensure all translation updates are imported from Transifex + +2. Sync with mtn.i2p2.i2p + +3. Start with a clean checkout: + + ``` + mtn -d i2p.mtn co --branch=i2p.i2p /path/to/releasedir + ``` + + - You may build with Java 7 or higher, but ensure you have the Java 6 JRE installed for the bootclasspath + +4. Create override.properties with (adjust as necessary): + + ``` + release.privkey.su3=/path/to/su3keystore.ks + release.gpg.keyid=0xnnnnnnnn + release.signer.su3=xxx@mail.i2p + build.built-by=xxx + javac.compilerargs=-bootclasspath /usr/lib/jvm/java-6-openjdk-amd64/jre/lib/rt.jar:/usr/lib/jvm/java-6-openjdk-amd64/jre/lib/jce.jar + ``` + +5. Copy latest trust list _MTN/monotonerc from website or some other workspace + +6. Change revision in: + - `history.txt` + - `installer/install.xml` + - `core/java/src/net/i2p/CoreVersion.java` + - `router/java/src/net/i2p/router/RouterVersion.java` + - (change to BUILD = 0 and EXTRA = "") + +7. `mtn ci` + +8. Review the complete diff from the last release: + + ``` + mtn diff -r t:i2p-0.9.(xx-1) > out.diff + vi out.diff + ``` + +9. Verify that no untrusted revisions were inadvertently blessed by a trusted party: + + ``` + mtn log --brief --no-graph --to t:i2p-0.9.(xx-1) | cut -d ' ' -f 2 | sort | uniq -c + ``` + +### Build and test + +1. `ant release` + + > NOTE: These tasks are now automated by `ant release` + > + > Build and tag: + > + > ant pkg + > + > Create signed update files with: + > + > export I2P=~/i2p + > java -cp $I2P/lib/i2p.jar net.i2p.crypto.TrustedUpdate sign i2pupdate.zip i2pupdate.sud /path/to/private.key 0.x.xx + > java -cp $I2P/lib/i2p.jar net.i2p.crypto.TrustedUpdate sign i2pupdate200.zip i2pupdate.su2 /path/to/private.key 0.x.xx + > + > Verify signed update files with: + > + > java -cp $I2P/lib/i2p.jar net.i2p.crypto.TrustedUpdate showversion i2pupdate.sud + > java -cp $I2P/lib/i2p.jar net.i2p.crypto.TrustedUpdate verifysig i2pupdate.sud + > + > Make the source tarball: + > + > Start with a clean checkout mtn -d i2p.mtn co --branch=i2p.i2p i2p-0.x.xx + > Double-check trust list + > tar cjf i2psource-0.x.xx.tar.bz2 --exclude i2p-0.x.xx/_MTN i2p-0.x.xx + > mv i2p-0.x.xx.tar.bz2 i2p.i2p + > + > Rename some files: + > + > mv i2pinstall.exe i2pinstall-0.x.xx.exe + > mv i2pupdate.zip i2pupdate-0.x.xx.zip + > + > Generate hashes: + > + > sha256sum i2p*0.x.xx.* + > sha256sum i2pupdate.sud + > sha256sum i2pupdate.su2 + > + > Generate PGP signatures: + > + > gpg -b i2pinstall-0.x xx.exe + > gpg -b i2psource-0.x.xx.tar.bz2 + > gpg -b i2pupdate-0.x.xx.zip + > gpg -b i2pupdate.sud + > gpg -b i2pupdate.su2 + > + > (end of tasks automated by 'ant release') + +2. Now test: + - Save the output about checksums, sizes, and torrents to a file + (traditionally `shasums.txt`) + - (edit timestamps to UTC if you care) + - Copy all the release files somewhere, make sure you have the same ones as last release + - Verify sha256sums for release files + - Check file sizes vs. previous release, shouldn't be smaller + - If the update includes GeoIP, it will be about 1MB bigger + - Unzip or list files from `i2pupdate.zip`, see if it looks right + - For either windows or linux installer: (probably should do both the first time) + - Rename any existing config dir (e.g. mv .i2p .i2p-save) + - Run installer, install to temp dir + - Look in temp dir, see if all the files are there + - Unplug ethernet / turn off wifi so RI doesn't leak + - `i2prouter start` + - Verify release number in console + - Verify welcome news + - Click through all the app, status, eepsite, and config pages, see if they look right + - Click through each of the translations, see if /console looks right + - Look for errors in /log (other than can't reseed errors) + - Look in config dir, see if all the files are there + - Shutdown + - Delete config dir + - Move saved config dir back + - Reconnect ethernet / turn wifi back on + - Load torrents in i2psnark on your production router, verify infohashes + +3. If all goes well, tag and sync the release: + + ``` + mtn tag h: i2p-0.x.xx + mtn cert t:i2p-0.x.xx branch i2p.i2p.release + mtn sync (with e.g. mtn.killyourtv.i2p) + ``` + +### Distribute updates + +1. Update news with new version: + - Add magnet links, change release dates and release number in to old-format + news.xml, and distribute to news hosts + - In the i2p.newsxml branch, edit magnet links, release dates and release + number in data/releases.json, and check in + +2. Add update torrents to tracker2.postman.i2p and start seeding (su2 and su3) + +3. Notify the following people: + - All in-network update hosts + - PPA maintainer + - news.xml maintainer + - backup news.xml maintainer + - website files maintainer + +4. Update Trac: + - Add milestone and version dates + - Increment milestone and version defaults + +5. Wait for a few update hosts to be ready + +6. Tell news hosts to flip the switch + +### Notify release + +1. Wait for files to be updated on download server + +2. Website files to change: + - Sync with mtn.i2p-projekt.i2p + - `i2p2www/static/hosts.txt` if it changed (copy from i2p.i2p mtn branch) + - `i2p2www/__init__.py` (release number) + - `i2p2www/pages/downloads/list.html` (release signer) + - `i2p2www/pages/downloads/macros` (checksums) + - `i2p2www/static/news/news.xml` + - Sync with mtn.i2p-projekt.i2p + +3. Wait for debian packages to be ready + +4. Announce on: + - #i2p, #i2p-dev (also on Freenode side) + - forum.i2p + - Twitter diff --git a/installer/resources/checklist.txt b/installer/resources/checklist.txt deleted file mode 100644 index 4533e363ba60bd85793e0c607d6dc30efe340634..0000000000000000000000000000000000000000 --- a/installer/resources/checklist.txt +++ /dev/null @@ -1,114 +0,0 @@ -Release checklist ------------------ - -One week before: - Make announcement on Transifex with checkin deadline - - -A day or two before: -Write the release announcement and push to Transifex: - Checkout i2p.newsxml branch - See README for setup - ./create_new_entry.sh - tx push -s - mtn ci - Make announcement on Transifex asking for news translation - - -Ensure all translation updates are imported from Transifex -Sync with mtn.i2p2.i2p -Start with a clean checkout mtn -d i2p.mtn co --branch=i2p.i2p -Copy over override.properties to set build.built-by -Double-check trust list - -Change revision in: - history.txt - installer/install.xml - core/java/src/net/i2p/CoreVersion.java - router/java/src/net/i2p/router/RouterVersion.java - (change to BUILD = 0 and EXTRA = "") - -Review the complete diff from the last release: - mtn diff -r t:i2p-0.9.(xx-1) > out.diff - vi out.diff - -Verify that no untrusted revisions were inadvertently -blessed by a trusted party: - mtn log --brief --no-graph --to t:i2p-0.9.(xx-1) | cut -d ' ' -f 2 | sort | uniq -c - -========================================= -NOTE: These tasks are now automated by 'ant release' - -Build and tag: - ant pkg - mtn ci - mtn tag h: i2p-0.x.xx - mtn cert t:i2p-0.x.xx branch i2p.i2p.release - Sync with mtn.i2p2.i2p - -Create signed update files with: - export I2P=~/i2p - java -cp $I2P/lib/i2p.jar net.i2p.crypto.TrustedUpdate sign i2pupdate.zip i2pupdate.sud /path/to/private.key 0.x.xx - java -cp $I2P/lib/i2p.jar net.i2p.crypto.TrustedUpdate sign i2pupdate200.zip i2pupdate.su2 /path/to/private.key 0.x.xx - -Verify signed update files with: - java -cp $I2P/lib/i2p.jar net.i2p.crypto.TrustedUpdate showversion i2pupdate.sud - java -cp $I2P/lib/i2p.jar net.i2p.crypto.TrustedUpdate verifysig i2pupdate.sud - -Make the source tarball: - Start with a clean checkout mtn -d i2p.mtn co --branch=i2p.i2p i2p-0.x.xx - Double-check trust list - tar cjf i2psource-0.x.xx.tar.bz2 --exclude i2p-0.x.xx/_MTN i2p-0.x.xx - mv i2p-0.x.xx.tar.bz2 i2p.i2p - -Rename some files: - mv i2pinstall.exe i2pinstall-0.x.xx.exe - mv i2pupdate.zip i2pupdate-0.x.xx.zip - -Generate hashes: - sha256sum i2p*0.x.xx.* - sha256sum i2pupdate.sud - sha256sum i2pupdate.su2 - -Generate PGP signatures: - gpg -b i2pinstall-0.x xx.exe - gpg -b i2psource-0.x.xx.tar.bz2 - gpg -b i2pupdate-0.x.xx.zip - gpg -b i2pupdate.sud - gpg -b i2pupdate.su2 - -(end of tasks automated by 'ant release') -========================================= - -Add magnet links, change release dates and release number in to old-format news.xml, -and distribute to news hosts -In the i2p.newsxml branch, edit magnet links, release dates and release number in data/releases.json, and check in - -Seed update torrents (su2 and su3) - -Notify the following people: - All in-network update hosts - PPA maintainer - news.xml maintainer - backup news.xml maintainer - -Website files to change: - Sync with mtn.i2p-projekt.i2p - hosts.txt if it changed (copy from i2p.i2p mtn branch) - i2p2www/__init__.py (release number) - i2p2www/pages/downloads/list.html (checksums) - i2p2www/static/news/news.xml - New release announcement - see i2p2www/blog/README for instructions - Sync with mtn.i2p-projekt.i2p - -Announce on: - #i2p, #i2p-dev (also on freenode side) - forum.i2p - twitter - freshmeat.net - launchpad.net - alt.privacy.anon-server - -Update Trac: - Add milestone and version dates - Increment milestone and version defaults diff --git a/installer/resources/eepsite/jetty-ssl.xml b/installer/resources/eepsite/jetty-ssl.xml index 7562828cc29035685ab6a1cea769f82ef6af0790..b14ca0976e117b3f6086783e8f2c442879023d9f 100644 --- a/installer/resources/eepsite/jetty-ssl.xml +++ b/installer/resources/eepsite/jetty-ssl.xml @@ -248,6 +248,8 @@ <Item>TLS_ECDH_RSA_WITH_3DES_EDE_CBC_SHA</Item> <Item>TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA</Item> <Item>TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA</Item> + <Item>TLS_DHE_DSS_WITH_AES_128_CBC_SHA</Item> + <!-- Please keep this list in sync with the one in I2PSSLSocketFactory --> </Array> </Set> </New> diff --git a/installer/resources/geoip.txt b/installer/resources/geoip.txt index e2d1037c6918cb5bb3b813a5739be1e97e63a27d..f01d533eeb38126708f026014b5ca7e7d3bf66f2 100644 --- a/installer/resources/geoip.txt +++ b/installer/resources/geoip.txt @@ -1,5 +1,5 @@ # Last updated based on Maxmind GeoLite Country -# dated 2015-09-02 +# dated 2015-11-03 # Script borrowed from Tor # # wget http://geolite.maxmind.com/download/geoip/database/GeoIPCountryCSV.zip @@ -76,7 +76,7 @@ 29949952,30015487,KR 30015488,30408703,CN 30408704,33554431,KR -33554432,33554432,RU +33554432,33554432,SG 33554433,34603007,FR 34603008,34604543,EU 34604544,34605055,DE @@ -169,7 +169,11 @@ 36700160,36962303,AE 36962304,37224447,IL 37486592,37748735,RU -37748736,38273023,SE +37748736,38064639,SE +38064640,38064895,DK +38064896,38134783,SE +38134784,38135039,DK +38135040,38273023,SE 38273024,38797311,KZ 38797312,39059455,PT 39059456,39321599,GR @@ -196,15 +200,11 @@ 49807360,50331647,SE 50331648,68305407,US 68305408,68305919,MX -68305920,68965375,US -68965376,68965631,CA -68965632,68973055,US -68973056,68973311,CA -68973312,68980223,US +68305920,68980223,US 68980224,68980479,CA -68980480,71020543,US -71020544,71020799,CA -71020800,71670208,US +68980480,70620927,US +70620928,70621183,CA +70621184,71670208,US 71670209,71670209,NL 71670210,83886080,US 83886081,83951615,SY @@ -603,8 +603,7 @@ 86507520,86573055,ES 86573056,86638591,SA 86638592,86671359,RU -86671360,86673151,JE -86673152,86673407,GB +86671360,86673407,JE 86673408,86675455,DE 86675456,86677503,IT 86677504,86687743,FR @@ -621,7 +620,9 @@ 86767616,86769663,IT 86769664,86773759,RU 86773760,86777855,GB -86777856,86779903,AZ +86777856,86778879,AZ +86778880,86779135,RU +86779136,86779903,AZ 86779904,86786047,RU 86786048,86788095,NO 86788096,86790143,NL @@ -687,8 +688,7 @@ 87568384,87570431,GB 87570432,87572479,ES 87572480,87588863,MD -87588864,87589887,IR -87589888,87590143,GB +87588864,87590143,IR 87590144,87590399,US 87590400,87590911,GB 87590912,87592959,RU @@ -709,7 +709,21 @@ 87638016,87640063,UA 87640064,87642111,RS 87642112,87646207,GB -87646208,87654399,FR +87646208,87646463,FR +87646464,87646975,RE +87646976,87647487,FR +87647488,87647743,RE +87647744,87647999,FR +87648000,87648511,RE +87648512,87648767,FR +87648768,87649535,RE +87649536,87650559,FR +87650560,87650815,RE +87650816,87651327,FR +87651328,87651583,RE +87651584,87652607,FR +87652608,87652863,RE +87652864,87654399,FR 87654400,87670783,PL 87670784,87672831,DE 87672832,87674879,CH @@ -752,15 +766,17 @@ 87951018,87951059,A1 87951060,87951060,GB 87951061,87952383,A1 -87952384,87954687,GB -87954688,87954823,A1 +87952384,87954431,GB +87954432,87954823,A1 87954824,87954824,GB 87954825,87955455,A1 87955456,87957503,GB 87957504,87965695,A1 87965696,87967743,DE 87967744,87969791,IT -87969792,87973887,IM +87969792,87972863,IM +87972864,87973375,GI +87973376,87973887,IM 87973888,87982079,DE 87982080,88014847,RU 88014848,88016895,LY @@ -852,7 +868,9 @@ 90578944,90583039,IR 90583040,90587135,CZ 90587136,90589183,PL -90589184,90591231,FR +90589184,90590207,FR +90590208,90590463,GP +90590464,90591231,FR 90591232,90595327,GB 90595328,90603519,PS 90603520,90605567,ES @@ -1047,7 +1065,9 @@ 92739200,92739215,DE 92739216,92740447,FR 92740448,92740455,IT -92740456,92740915,FR +92740456,92740611,FR +92740612,92740615,CZ +92740616,92740915,FR 92740916,92740923,DE 92740924,92741203,FR 92741204,92741207,IT @@ -1189,7 +1209,9 @@ 93425664,93426687,GI 93426688,93427085,DE 93427086,93427086,A2 -93427087,93427711,DE +93427087,93427199,DE +93427200,93427455,US +93427456,93427711,DE 93427712,93429759,NO 93429760,93431807,RU 93431808,93433855,ES @@ -1365,7 +1387,9 @@ 95393536,95393663,DE 95393664,95393791,QA 95393792,95394047,GB -95394048,95395327,AU +95394048,95394175,AU +95394176,95394303,DE +95394304,95395327,AU 95395328,95395455,GB 95395456,95395583,DE 95395584,95395839,GB @@ -1425,7 +1449,9 @@ 95410560,95410943,GB 95410944,95411199,DE 95411200,95411215,NL -95411216,95420173,DE +95411216,95416831,DE +95416832,95417087,GB +95417088,95420173,DE 95420174,95420174,US 95420175,95420415,DE 95420416,95551487,TR @@ -1624,7 +1650,9 @@ 96779520,96779523,NL 96779524,96779839,FR 96779840,96779903,NL -96779904,96782199,FR +96779904,96780355,FR +96780356,96780359,BE +96780360,96782199,FR 96782200,96782207,CZ 96782208,96782911,FR 96782912,96782915,LT @@ -1723,15 +1751,21 @@ 98959616,98959679,US 98959680,98960639,DE 98960640,98960799,US -98960800,98992383,DE +98960800,98961407,DE +98961408,98961919,FR +98961920,98992383,DE 98992384,98992423,US 98992424,98992431,DE 98992432,98992639,US 98992640,98993151,DE 98993152,98993175,US -98993176,98998527,DE +98993176,98997759,DE +98997760,98998271,FR +98998272,98998527,DE 98998528,98998783,GB -98998784,99024895,DE +98998784,98999551,DE +98999552,99000319,GB +99000320,99024895,DE 99024896,99025167,GB 99025168,99025279,DE 99025280,99025407,US @@ -1779,7 +1813,11 @@ 99044616,99044863,DE 99044864,99045119,GB 99045120,99045375,NL -99045376,99090431,DE +99045376,99049471,DE +99049472,99049983,GB +99049984,99053055,DE +99053056,99053567,GB +99053568,99090431,DE 99090432,99614719,IR 99614720,99876863,SE 99876864,100139007,SA @@ -1806,9 +1844,11 @@ 100329472,100331519,RU 100331520,100335615,TR 100335616,100401151,KZ -100532224,100548872,RO -100548873,100548873,TR -100548874,100559255,RO +100532224,100548863,RO +100548864,100548875,TR +100548876,100548876,RO +100548877,100549119,TR +100549120,100559255,RO 100559256,100559263,EG 100559264,100559551,RO 100559552,100559615,GB @@ -1818,9 +1858,7 @@ 100559936,100560127,RO 100560128,100560383,US 100560384,100560895,RO -100560896,100560959,GB -100560960,100561023,RO -100561024,100561151,GB +100560896,100561151,GB 100561152,100561599,RO 100561600,100561663,US 100561664,100564799,RO @@ -1874,8 +1912,10 @@ 135607040,135607295,CA 135607296,135776255,US 135776256,135776511,GU -135776512,135792639,US -135792640,135794687,CA +135776512,135791359,US +135791360,135791615,CA +135791616,135792383,US +135792384,135794687,CA 135794688,135926271,US 135926272,135926783,VI 135926784,135945727,US @@ -1895,55 +1935,49 @@ 139954243,152305663,US 152305664,152338431,GB 152338432,167772159,US -184549376,201725951,US -201725952,201726207,CA -201726208,201897983,US +184549376,201897983,US 201897984,201898239,PR -201898240,202182143,US -202182144,202182399,GB -202182400,202385407,US +201898240,202385407,US 202385408,202385919,PR 202385920,202706431,US 202706432,202706943,PR -202706944,202935551,US -202935552,202935807,PR -202935808,203272959,US +202706944,203272959,US 203272960,203273215,GB 203273216,203658975,US 203658976,203658991,VI -203658992,204047359,US -204047360,204047615,VI -204047616,204047871,US +203658992,203659007,US +203659008,203659263,VI +203659264,204047871,US 204047872,204047999,PR 204048000,204048031,US 204048032,204048047,PR -204048048,210875647,US -210875648,210875903,MX -210875904,211597311,US -211597312,211597567,VI -211597568,211597719,US +204048048,205884415,US +205884416,205884671,MX +205884672,206010367,US +206010368,206010623,MX +206010624,211597719,US 211597720,211597727,VI 211597728,212787199,US 212787200,212788223,PR 212788224,212791831,US 212791832,212791839,VI -212791840,213799167,US -213799168,213799423,CA -213799424,214617343,US -214617344,214617599,CA -214617600,214698239,US +212791840,212794623,US +212794624,212794879,PR +212794880,214698239,US 214698240,214698255,VI 214698256,214698303,US 214698304,214698311,VI -214698312,214786303,US -214786304,214786559,PR -214786560,217689599,US -217689600,217689855,PR -217689856,217709055,US -217709056,217709311,PR -217709312,219187465,US +214698312,214779135,US +214779136,214779263,PR +214779264,214783487,US +214783488,214783743,PR +214783744,214786047,US +214786048,214786431,PR +214786432,219187465,US 219187466,219187467,EU -219187468,219512063,US +219187468,219249919,US +219249920,219250175,GB +219250176,219512063,US 219512064,219512319,GB 219512320,234881023,US 234881024,234883071,CN @@ -1975,7 +2009,9 @@ 235929600,236978175,CN 236978176,241172479,KR 241172480,241434623,IN -241434624,241500159,SG +241434624,241469039,SG +241469040,241469047,MY +241469048,241500159,SG 241500160,241565695,JP 241565696,241598463,IN 241598464,241599487,CN @@ -2051,7 +2087,9 @@ 265023488,265027583,GB 265027584,265060351,US 265060352,265093119,FR -265093120,265525503,US +265093120,265523711,US +265523712,265523967,AU +265523968,265525503,US 265525504,265525759,AP 265525760,265529599,US 265529600,265529855,AP @@ -2063,9 +2101,7 @@ 266070272,266070527,AU 266070528,266598655,US 266598656,266598911,BR -266598912,288130047,US -288130048,288131071,CA -288131072,288153599,US +266598912,288153599,US 288153600,288157695,CA 288157696,288167423,US 288167424,288167935,CA @@ -2080,15 +2116,16 @@ 288198144,288198655,CL 288198656,288199679,US 288199680,288200703,CO -288200704,288212991,US +288200704,288205422,US +288205423,288205423,CO +288205424,288205424,BR +288205425,288205425,MX +288205426,288205426,CL +288205427,288212991,US 288212992,288215039,CA 288215040,288223231,US 288223232,288227327,CA -288227328,289416703,US -289416704,289416959,IE -289416960,289642495,US -289642496,289642751,GB -289642752,289652735,US +288227328,289652735,US 289652736,289653759,NL 289653760,289654271,DE 289654272,289655807,US @@ -2102,7 +2139,9 @@ 289667072,289669119,GB 289669120,289783807,US 289783808,289783935,GB -289783936,289796095,US +289783936,289791999,US +289792000,289794047,AE +289794048,289796095,US 289796096,289798143,TR 289798144,289948927,US 289948928,289949055,AT @@ -2150,7 +2189,9 @@ 290270208,290271231,PT 290271232,290277375,US 290277376,290279423,GB -290279424,290295295,US +290279424,290280447,US +290280448,290280703,GB +290280704,290295295,US 290295296,290295807,IN 290295808,290299903,US 290299904,290300927,LU @@ -2168,7 +2209,9 @@ 290377728,290379775,GB 290379776,290423807,US 290423808,290424831,SE -290424832,344260607,US +290424832,344195839,US +344195840,344196095,CA +344196096,344260607,US 344260608,344260863,GB 344260864,344261119,EU 344261120,344261778,US @@ -2177,7 +2220,11 @@ 344262656,344262911,GB 344262912,344268817,US 344268818,344268818,EU -344268819,344592895,US +344268819,344270860,US +344270861,344270861,GB +344270862,344588799,US +344588800,344589055,GB +344589056,344592895,US 344592896,344592945,GB 344592946,344592946,EU 344592947,344593151,GB @@ -2185,9 +2232,9 @@ 344662784,344663039,MY 344663040,344670719,US 344670720,344671231,IN -344671232,344711679,US -344711680,344711935,AU -344711936,344712447,US +344671232,344674815,US +344674816,344675071,IN +344675072,344712447,US 344712448,344712703,AU 344712704,344880127,US 344880128,344880383,EU @@ -2489,7 +2536,8 @@ 389937920,389938175,NL 389938176,389938687,US 389938688,389940223,NL -389940224,389941503,US +389940224,389941247,US +389941248,389941503,AU 389941504,389941759,NL 389941760,389942271,US 389942272,389942783,NL @@ -2505,7 +2553,9 @@ 389967872,389977087,NL 389977088,389977599,US 389977600,389978111,NL -389978112,389988351,US +389978112,389979135,US +389979136,389979391,AU +389979392,389988351,US 389988352,389992447,NL 389992448,389999871,US 389999872,390000127,NL @@ -2588,9 +2638,12 @@ 391086080,391110655,US 391110656,391110911,IL 391110912,391111167,GB -391111168,391111935,NL -391111936,391112063,AU -391112064,391113471,NL +391111168,391111679,NL +391111680,391111935,US +391111936,391112191,AU +391112192,391112447,NL +391112448,391112703,US +391112704,391113471,NL 391113472,391113983,US 391113984,391114751,NL 391114752,391116543,US @@ -2603,7 +2656,9 @@ 391938048,391946239,CA 391946240,391961711,US 391961712,391961719,RO -391961720,392257535,US +391961720,392250367,US +392250368,392250623,HK +392250624,392257535,US 392257536,392261631,BR 392261632,392390538,US 392390539,392390539,HK @@ -2624,7 +2679,9 @@ 392515584,392523775,JP 392523776,392548351,US 392548352,392556543,AU -392556544,392659871,US +392556544,392579345,US +392579346,392579346,JP +392579347,392659871,US 392659872,392659903,NL 392659904,392765439,US 392765440,392765695,GB @@ -2632,6 +2689,9 @@ 394264576,394264831,CA 394270720,394271231,NL 394296320,394296831,NL +395313152,395313407,US +396361728,396361983,US +397410304,397410559,CA 398458880,398500351,US 398500352,398500863,NL 398500864,398617599,US @@ -2684,7 +2744,9 @@ 399147008,399159295,NL 399159296,399331327,US 399331328,399339519,NL -399339520,399353855,US +399339520,399340543,US +399340544,399341055,AU +399341056,399353855,US 399353856,399354879,NL 399354880,399355391,US 399355392,399355903,NL @@ -2835,7 +2897,8 @@ 402128896,402169855,CA 402169856,402223103,US 402223104,402227199,CA -402227200,402231295,US +402227200,402227455,PR +402227456,402231295,US 402235392,402239301,US 402239302,402239302,CA 402239303,402239473,US @@ -2898,7 +2961,11 @@ 406216704,406241279,US 406241280,406257663,PR 406257664,406274047,US -406274048,406290431,PR +406274048,406284031,PR +406284032,406284287,US +406284288,406284543,PR +406284544,406284799,US +406284800,406290431,PR 406290432,406298623,US 406298624,406306815,PR 406306816,406323199,CA @@ -3030,14 +3097,12 @@ 452986880,452987903,SG 452987904,452988927,VN 452988928,452989183,US -452989184,452989695,JP -452989696,452990463,US -452990464,452990975,JP -452990976,452991487,US -452991488,452991999,JP -452992000,452992255,US -452992256,452992767,JP -452992768,452993023,US +452989184,452989439,JP +452989440,452990719,US +452990720,452991231,JP +452991232,452991487,US +452991488,452992255,JP +452992256,452993023,US 452993024,452997119,JP 452997120,453001215,IN 453001216,453009407,AU @@ -3047,7 +3112,9 @@ 453246976,453509119,IN 453509120,455081983,CN 455081984,455213055,AU -455213056,455245823,NP +455213056,455215359,NP +455215360,455215615,RU +455215616,455245823,NP 455245824,455258111,JP 455258112,455262207,SG 455262208,455270399,JP @@ -3059,7 +3126,6 @@ 456130560,456261631,IN 456261632,456262655,PH 456262656,456263679,IN -456263680,456264703,NP 456264704,456265727,JP 456265728,456269823,ID 456269824,456271871,HK @@ -3088,6 +3154,7 @@ 459292672,459293695,NZ 459293696,459297791,JP 459297792,459298815,IN +459299840,459300863,PK 459300864,459309055,SG 459309056,459325439,KR 459325440,459333631,AU @@ -3326,7 +3393,8 @@ 520492032,520493055,GB 520493056,520493311,BE 520493312,520493567,GB -520493568,520493823,AE +520493568,520493695,DE +520493696,520493823,PT 520493824,520494079,FI 520494080,520494335,IT 520494336,520494591,CZ @@ -3355,7 +3423,8 @@ 520501248,520501503,LU 520501504,520501759,NO 520501760,520502271,GB -520502272,520502783,IT +520502272,520502527,IE +520502528,520502783,IT 520502784,520503295,GB 520503296,520505343,PL 520505344,520507391,GB @@ -3449,7 +3518,9 @@ 521056256,521057279,LT 521057280,521058303,MD 521058304,521060351,IT -521060352,521074687,RO +521060352,521064063,RO +521064064,521064191,ES +521064192,521074687,RO 521074688,521074943,EG 521074944,521075199,RO 521075200,521075327,FR @@ -3797,10 +3868,8 @@ 529827840,529828863,CZ 529828864,529829887,RU 529829888,529830911,CZ -529830912,529839103,RU -529839104,529840127,CZ -529840128,529841151,RU -529841152,529842175,UA +529830912,529838079,RU +529838080,529842175,UA 529842176,529843199,IN 529843200,529844223,RU 529844224,529845247,CZ @@ -4047,7 +4116,9 @@ 532381696,532414463,NL 532414464,532676607,IT 532676608,532692991,GE -532692992,532701183,CZ +532692992,532701153,CZ +532701154,532701154,SK +532701155,532701183,CZ 532701184,532703231,GB 532703232,532705279,RU 532705280,532709375,NL @@ -4122,7 +4193,9 @@ 533682176,533684223,ES 533684224,533692415,IT 533692416,533725183,RU -533725184,533807103,SE +533725184,533734393,SE +533734394,533734394,DK +533734395,533807103,SE 533807104,533811199,LT 533811200,533815295,DE 533815296,533815296,TR @@ -4147,7 +4220,9 @@ 533859648,533859663,AT 533859664,533860351,TR 533862400,533864447,GB -533864448,533889023,TR +533864448,533886719,TR +533886720,533886975,JP +533886976,533889023,TR 533889024,533891071,GB 533891072,533893119,RU 533893120,533895167,ES @@ -4167,10 +4242,17 @@ 533968896,533970943,ES 533970944,533987327,SE 533987328,534118399,DE -534118400,534151167,KW -534151168,534163455,DE +534118400,534141695,KW +534141696,534141759,US +534141760,534141823,KW +534141824,534141951,US +534141952,534151167,KW +534151168,534158591,DE +534158592,534158847,NL +534158848,534163455,DE 534163456,534167551,ES -534167552,534183935,DE +534167552,534181887,DE +534181888,534183935,IR 534183936,534249471,AE 534249472,534253567,GB 534253568,534257663,FR @@ -4309,9 +4391,7 @@ 540733440,540737535,NL 540737536,540737757,BZ 540737758,540737758,BR -540737759,540753919,BZ -540753920,540754175,US -540754176,540803071,BZ +540737759,540803071,BZ 540803072,540811263,US 540811264,540814084,SG 540814085,540814086,TH @@ -4357,11 +4437,15 @@ 543872768,543873023,NL 543873024,544436771,US 544436772,544436775,CA -544436776,545858303,US -545858304,545858559,PR -545858560,586975999,US +544436776,548441343,US +548441344,548441599,PR +548441600,586972927,US +586972928,586973183,CA +586973184,586975999,US 586976000,586976255,AP -586976256,587006719,US +586976256,586978047,US +586978048,586978303,BN +586978304,587006719,US 587006720,587006975,GB 587006976,603979775,US 603979776,603980799,CN @@ -4459,7 +4543,9 @@ 621408256,621410303,RU 621410304,621412351,IR 621412352,621428735,NL -621428736,621430783,DE +621428736,621429759,IR +621429760,621430527,DE +621430528,621430783,GB 621430784,621432831,ES 621432832,621436927,IT 621436928,621445119,DE @@ -4490,7 +4576,9 @@ 621939712,621940479,RU 621940480,621942527,GB 621942528,621969407,RU -621971456,621973503,GB +621971456,621971711,GB +621971712,621973247,IM +621973248,621973503,GB 621973504,621975551,IE 621975552,621977599,RU 621977600,621981695,FR @@ -4722,7 +4810,9 @@ 624653312,624653823,GB 624653824,624656975,FR 624656976,624656979,PT -624656980,624657607,FR +624656980,624657543,FR +624657544,624657547,ES +624657548,624657607,FR 624657608,624657615,BE 624657616,624657711,FR 624657712,624657715,ES @@ -4750,7 +4840,9 @@ 624661788,624661788,RO 624661789,624661955,FR 624661956,624661959,PL -624661960,624663951,FR +624661960,624663863,FR +624663864,624663867,DE +624663868,624663951,FR 624663952,624663955,ES 624663956,624664527,FR 624664528,624664531,ES @@ -4876,7 +4968,9 @@ 624686668,624686671,ES 624686672,624686711,FR 624686712,624686715,ES -624686716,624687343,FR +624686716,624686783,FR +624686784,624686815,ES +624686816,624687343,FR 624687344,624687346,CZ 624687347,624687347,ES 624687348,624687827,FR @@ -4946,7 +5040,12 @@ 625506304,625508351,PL 625508352,625512447,AZ 625512448,625514495,DE -625514496,625516543,GB +625514496,625515007,GG +625515008,625515519,GB +625515520,625515775,GG +625515776,625516031,GB +625516032,625516287,GG +625516288,625516543,GB 625516544,625518591,BE 625518592,625518847,NL 625518848,625519103,US @@ -5077,9 +5176,7 @@ 628847616,628848639,GB 628848640,628850687,DE 628850688,628851455,SE -628851456,628851711,NO -628851712,628852223,SE -628852224,628852479,NO +628851456,628852479,NO 628852480,628867071,SE 628867072,628869119,IR 628869120,628871167,PL @@ -5189,7 +5286,9 @@ 630495232,630497279,DE 630497280,630499327,NL 630499328,630501375,LV -630501376,630509567,NL +630501376,630503679,NL +630503680,630504447,IT +630504448,630509567,NL 630509568,630511615,TR 630511616,630513663,GB 630513664,630515711,IT @@ -5253,12 +5352,16 @@ 630998272,630998783,MD 630998784,630999039,RO 630999040,630999295,CN -630999296,631001087,RO +630999296,630999551,RO +630999552,630999679,GB +630999680,631001087,RO 631001088,631005183,MD 631005184,631006207,IT 631006208,631007231,MD 631007232,631007487,KR -631007488,631009279,RO +631007488,631007743,RO +631007744,631007871,GB +631007872,631009279,RO 631009280,631017471,IR 631017472,631018495,MD 631018496,631019519,IT @@ -5268,12 +5371,16 @@ 631024896,631025151,GB 631025152,631027711,RO 631027712,631027967,KR -631027968,631029759,RO +631027968,631028223,RO +631028224,631028351,GB +631028352,631029759,RO 631029760,631033855,SE 631033856,631034879,IT 631034880,631035903,RO 631035904,631036159,JP -631036160,631039999,RO +631036160,631036415,RO +631036416,631036543,GB +631036544,631039999,RO 631040000,631043071,MD 631043072,631043839,RO 631043840,631045119,MD @@ -5362,7 +5469,9 @@ 634075136,634077183,NL 634077184,634093567,BA 634093568,634109951,GB -634109952,634111999,IE +634109952,634110975,IE +634110976,634111231,GB +634111232,634111999,IE 634112000,634114047,RU 634114048,634116095,SE 634116096,634118143,NL @@ -5551,7 +5660,11 @@ 636952576,636956671,NL 636956672,636958719,IT 636958720,636960767,PL -636960768,636967167,DE +636960768,636965631,DE +636965632,636965887,BE +636965888,636966655,DE +636966656,636966911,IT +636966912,636967167,DE 636967168,636967935,FR 636967936,636968191,DE 636968192,636968447,ES @@ -5617,25 +5730,55 @@ 637403136,637534207,IR 637534208,641738239,US 641738240,641738495,CA -641738496,641763071,US -641763072,641763583,CA -641763584,641765375,US +641738496,641761535,US +641761536,641761791,CA +641761792,641763071,US +641763072,641763839,CA +641763840,641765375,US 641765376,641765887,CA -641765888,641769727,US -641769728,641769983,CA -641769984,641771519,US +641765888,641766911,US +641766912,641767167,CA +641767168,641771519,US 641771520,641772543,CA 641772544,641773055,US -641773056,641773311,CA -641773312,641829057,US +641773056,641773567,CA +641773568,641775615,US +641775616,641775871,CA +641775872,641776639,US +641776640,641777407,CA +641777408,641777663,US +641777664,641777919,CA +641777920,641779199,US +641779200,641779327,CA +641779328,641828351,US +641828352,641828607,MX +641828608,641829057,US 641829058,641829058,MX -641829059,642093055,US -642093056,642093311,CA -642093312,642093823,US -642093824,642094591,CA -642094592,642113535,US +641829059,641829119,US +641829120,641829375,MX +641829376,641830143,US +641830144,641830399,MX +641830400,642089215,US +642089216,642089471,CA +642089472,642092543,US +642092544,642092799,CA +642092800,642093311,US +642093312,642093823,CA +642093824,642094079,US +642094080,642094591,CA +642094592,642097919,US +642097920,642098175,CA +642098176,642113535,US 642113536,642115583,AU -642115584,642793471,US +642115584,642387967,US +642387968,642388223,CA +642388224,642390015,US +642390016,642390527,CA +642390528,642391039,US +642391040,642391295,CA +642391296,642395135,US +642395136,642395391,CA +642395392,642793471,US 642793472,642793983,CA 642793984,643219519,US 643219520,643219523,CA @@ -5643,55 +5786,107 @@ 643219527,643219527,CA 643219528,643295231,US 643295232,643295487,PR -643295488,643295743,US -643295744,643295999,PR -643296000,643296767,US +643295488,643296767,US 643296768,643297023,PR 643297024,643302911,US -643302912,643303167,CA -643303168,643317759,US +643302912,643303039,CA +643303040,643303167,US +643303168,643303423,CA +643303424,643317759,US 643317760,643318015,CA 643318016,643318271,US -643318272,643318527,CA -643318528,643318847,US -643318848,643318911,CA -643318912,643346431,US +643318272,643319039,CA +643319040,643346431,US 643346432,643346943,CA 643346944,644055039,US -644055040,644055295,CA -644055296,644057087,US -644057088,644057343,CA -644057344,644058623,US -644058624,644058879,CA -644058880,644060989,US -644060990,644060990,CA -644060991,644066303,US -644066304,644066559,CA -644066560,644323391,US -644323392,644323407,CA -644323408,644389375,US -644389376,644390655,CA -644390656,644403199,US +644055040,644055807,CA +644055808,644056063,US +644056064,644056319,CA +644056320,644056575,US +644056576,644056831,CA +644056832,644057087,US +644057088,644057599,CA +644057600,644058367,US +644058368,644058879,CA +644058880,644059135,US +644059136,644059391,CA +644059392,644060927,US +644060928,644061183,CA +644061184,644063231,US +644063232,644063743,CA +644063744,644063999,US +644064000,644064767,CA +644064768,644065055,US +644065056,644065279,CA +644065280,644066303,US +644066304,644066815,CA +644066816,644067071,US +644067072,644067327,CA +644067328,644067583,US +644067584,644067839,CA +644067840,644069631,US +644069632,644069887,CA +644069888,644070143,US +644070144,644070399,CA +644070400,644070655,US +644070656,644071167,CA +644071168,644084479,US +644084480,644084735,GU +644084736,644236031,US +644236032,644236287,CA +644236288,644239615,US +644239616,644239871,CA +644239872,644247551,US +644247552,644247807,CA +644247808,644248831,US +644248832,644249087,CA +644249088,644268543,US +644268544,644268569,CA +644268570,644268570,US +644268571,644268613,CA +644268614,644268614,US +644268615,644268799,CA +644268800,644323327,US +644323328,644323583,CA +644323584,644324095,US +644324096,644324351,CA +644324352,644389375,US +644389376,644389631,CA +644389632,644389887,US +644389888,644390911,CA +644390912,644399103,US +644399104,644399359,CA +644399360,644403199,US 644403200,644403711,CA -644403712,644414207,US +644403712,644413439,US +644413440,644413695,MX +644413696,644414207,US 644414208,644414463,CA 644414464,644422911,US 644422912,644423423,JP -644423424,644569343,US -644569344,644569599,PR -644569600,644570111,US -644570112,644570367,PR -644570368,644628735,US +644423424,644524607,US +644524608,644524671,CA +644524672,644569087,US +644569088,644569599,PR +644569600,644569855,US +644569856,644570367,PR +644570368,644570879,US +644570880,644571135,PR +644571136,644628735,US 644628736,644628991,CA -644628992,644629759,US -644629760,644630015,CA -644630016,644634367,US +644628992,644630271,US +644630272,644630527,CA +644630528,644631039,US +644631040,644631295,CA +644631296,644634367,US 644634368,644634623,CA -644634624,644718847,US -644718848,644719103,CA -644719104,644760831,US -644760832,644761087,CA -644761088,644761343,US +644634624,644718591,US +644718592,644718911,CA +644718912,644759551,US +644759552,644759807,CA +644759808,644760575,US +644760576,644760831,CA +644760832,644761343,US 644761344,644761599,CA 644761600,644762879,US 644762880,644763135,CA @@ -5699,53 +5894,87 @@ 644763904,644764159,CA 644764160,644765439,US 644765440,644765695,CA -644765696,644767743,US -644767744,644768767,CA -644768768,644835071,US -644835072,644835327,CA +644765696,644767878,US +644767879,644767879,CA +644767880,644768511,US +644768512,644768767,CA +644768768,644775679,US +644775680,644775935,CA +644775936,644834047,US +644834048,644834303,CA +644834304,644834815,US +644834816,644835327,CA 644835328,644838655,US 644838656,644839423,CA -644839424,644898815,US +644839424,644840447,US +644840448,644840703,CA +644840704,644875007,US +644875008,644875263,CA +644875264,644894975,US +644894976,644895231,CA +644895232,644897023,US +644897024,644897279,CA +644897280,644897791,US +644897792,644898047,CA +644898048,644898815,US 644898816,644899071,CA 644899072,644899839,US 644899840,644900095,CA 644900096,644901631,US 644901632,644901887,CA -644901888,644904959,US +644901888,644903167,US +644903168,644903679,CA +644903680,644904959,US 644904960,644905215,CA -644905216,644981759,US -644981760,644982015,CA -644982016,644987135,US +644905216,644906239,US +644906240,644906495,CA +644906496,644987135,US 644987136,644987391,CA -644987392,645185535,US +644987392,644987647,US +644987648,644987903,CA +644987904,645185535,US 645185536,645185791,CA -645185792,645187327,US -645187328,645187583,CA +645185792,645186559,US +645186560,645186815,CA +645186816,645187071,US +645187072,645187583,CA 645187584,645221375,US 645221376,645222399,CA 645222400,645223423,US 645223424,645223679,CA 645223680,645225471,US 645225472,645225727,CA -645225728,645229055,US -645229056,645229311,CA -645229312,645484543,US -645484544,645484799,CA -645484800,645540351,US +645225728,645229311,US +645229312,645229823,CA +645229824,645483263,US +645483264,645483519,CA +645483520,645484543,US +645484544,645485055,CA +645485056,645526527,US +645526528,645526783,CA +645526784,645527295,US +645527296,645527551,CA +645527552,645528319,US +645528320,645528575,CA +645528576,645529343,US +645529344,645529599,CA +645529600,645540351,US 645540352,645540607,CA -645540608,645576703,US +645540608,645547007,US +645547008,645547519,CA +645547520,645576703,US 645576704,645576997,CA 645576998,645576998,US 645576999,645577215,CA 645577216,645612031,US -645612032,645612287,MX -645612288,645644351,US +645612032,645612543,MX +645612544,645644351,US 645644352,645644415,MX 645644416,645644927,US 645644928,645645055,MX -645645056,645646591,US -645646592,645646847,MX -645646848,645704447,US +645645056,645647103,US +645647104,645647359,MX +645647360,645704447,US 645704448,645704703,MX 645704704,645705215,US 645705216,645705471,MX @@ -5754,16 +5983,22 @@ 645710336,645737983,US 645737984,645738239,PR 645738240,645873663,US -645873664,645874431,CA -645874432,645875967,US -645875968,645876735,CA +645873664,645873919,CA +645873920,645874175,US +645874176,645874431,CA +645874432,645876479,US +645876480,645876735,CA 645876736,645984255,US 645984256,645988351,CA 645988352,645989450,US 645989451,645989451,CA 645989452,646160383,US 646160384,646164479,CA -646164480,654311423,US +646164480,646711807,US +646711808,646712319,CA +646712320,646734847,US +646734848,646735103,CA +646735104,654311423,US 654311424,654311679,CN 654311680,654311935,AU 654311936,654376959,CN @@ -5773,9 +6008,7 @@ 654835712,655359999,TW 655360000,656408575,KR 656408576,658505727,PK -658505728,660602879,CN -660602880,660602880,HK -660602881,661454847,CN +658505728,661454847,CN 661454848,661487615,HK 661487616,661520383,SG 661520384,661651455,JP @@ -5786,11 +6019,17 @@ 671113216,671113471,EU 671113472,675807231,US 675807232,675938303,SG -675938304,679313407,US +675938304,678517576,US +678517577,678517577,IE +678517578,679313407,US 679313408,679346175,SG 679346176,679362559,US 679362560,679378943,SG -679378944,687618147,US +679378944,679453668,US +679453669,679453669,IE +679453670,679455449,US +679455450,679455450,IE +679455451,687618147,US 687618148,687618151,EU 687618152,687865855,US 687865856,689963007,ZA @@ -5807,7 +6046,21 @@ 691650560,691666943,GH 691666944,691732479,NG 691732480,691798015,TZ -691798016,691863551,ZM +691798016,691814399,ZM +691814400,691814655,ZW +691814656,691815167,ZM +691815168,691815423,ZW +691815424,691816191,ZM +691816192,691816703,ZW +691816704,691816959,ZM +691816960,691817215,ZW +691817216,691819007,ZM +691819008,691819263,ZW +691819264,691820799,ZM +691820800,691821311,ZW +691821312,691821567,ZM +691821568,691821823,ZW +691821824,691863551,ZM 691863552,691929087,ZA 691994624,692011007,ZM 692011008,692027391,ZA @@ -5837,7 +6090,11 @@ 692626688,692626943,AO 692626944,692627455,KE 692627456,692633599,A2 -692633600,692641791,MU +692633600,692635903,MU +692635904,692636159,KE +692636160,692639743,MU +692639744,692639999,KE +692640000,692641791,MU 692641792,692649983,GA 692649984,692658175,NG 692658176,692666367,ZA @@ -6107,7 +6364,9 @@ 696974336,696975359,LU 696975360,696991743,GH 696991744,697008127,NG -697008128,697040895,KE +697008128,697015295,KE +697015296,697015551,US +697015552,697040895,KE 697040896,697303039,MA 697303040,697827327,ZA 697827328,697958399,EG @@ -6179,6 +6438,7 @@ 700407808,700408831,GH 700408832,700409855,CM 700409856,700410879,LR +700411392,700411647,NG 700412928,700413951,ZM 700413952,700414975,SC 700414976,700432383,ZA @@ -6218,7 +6478,9 @@ 700866560,700866815,NG 700866816,700867327,MU 700867328,700867583,NG -700867584,700895231,MU +700867584,700893439,MU +700893440,700893951,NG +700893952,700895231,MU 700895232,700899327,NG 700899328,700907519,MU 700907520,700973055,EG @@ -6252,7 +6514,9 @@ 701308928,701317119,AO 701317120,701325311,CM 701325312,701333503,EG -701333504,701341695,NA +701333504,701338111,NA +701338112,701338367,ZM +701338368,701341695,NA 701341696,701349887,NG 701349888,701358079,MA 701358080,701366271,SL @@ -6375,8 +6639,8 @@ 702341120,702342259,MU 702342260,702342263,KE 702342264,702344199,MU -702344200,702344971,KE -702344972,702349311,MU +702344200,702345215,KE +702345216,702349311,MU 702349312,702353407,ZA 702353408,702357503,DZ 702357504,702365695,TZ @@ -6511,7 +6775,9 @@ 703759360,703760383,ZA 703760384,703761407,GH 703761408,703762431,RW -703762432,703764479,ZA +703762432,703764095,MU +703764096,703764223,ZA +703764224,703764479,MU 703764480,703766527,LY 703766528,703770623,ZA 703770624,703774719,BJ @@ -6892,7 +7158,6 @@ 736608256,736609279,NZ 736609280,736610303,HK 736610304,736611327,AU -736611328,736612351,JP 736612352,736613375,NP 736613376,736615423,IN 736615424,736616447,JP @@ -6916,8 +7181,8 @@ 737113088,737115135,CN 737115136,737118207,IN 737118208,737119231,AU -737119232,737119999,NL -737120000,737121279,IN +737119232,737120255,NL +737120256,737121279,IN 737121280,737122303,VN 737122304,737123327,IN 737123328,737126399,HK @@ -6997,7 +7262,6 @@ 737267712,737276927,CN 737276928,737277951,IN 737277952,737279999,CN -737280000,737281023,HK 737281024,737282047,SG 737282048,737288191,CN 737288192,737289215,HK @@ -7185,8 +7449,7 @@ 737635328,737637375,CN 737637376,737638399,AU 737638400,737639423,PK -737639424,737640447,NZ -737640448,737641471,AU +737639424,737641471,AU 737641472,737642495,HK 737642496,737645567,IN 737645568,737647615,CN @@ -7466,7 +7729,6 @@ 738137088,738138111,BD 738138112,738138367,US 738138368,738139135,NZ -738139136,738140159,SG 738140160,738141183,AU 738141184,738142207,HK 738142208,738143231,JP @@ -7497,7 +7759,6 @@ 738168832,738169855,CN 738169856,738170879,TO 738170880,738171903,SG -738171904,738172927,HK 738172928,738173951,NZ 738173952,738174975,IN 738174976,738175999,CN @@ -7518,12 +7779,21 @@ 738195456,738197503,KR 738197504,747175935,US 747175936,747241471,NL -747241472,757071871,US +747241472,755105791,US +755105792,755179519,CA +755179520,755236863,US +756023296,757071871,US 757071872,757088255,NL 757088256,757090303,US 757090304,757104639,NL 757104640,757106687,US -757106688,757133311,NL +757106688,757121535,NL +757121536,757121791,US +757121792,757122047,NL +757122048,757122303,US +757122304,757125631,NL +757125632,757126655,US +757126656,757133311,NL 757133312,757135359,AU 757135360,757137407,JP 757137408,757186559,US @@ -7551,7 +7821,9 @@ 757716736,757716991,NZ 757716992,757721599,US 757721600,757721855,PH -757721856,757729279,US +757721856,757727231,US +757727232,757727743,VI +757727744,757729279,US 757729280,757731327,CA 757731328,757733375,US 757733376,757734399,CA @@ -7573,7 +7845,7 @@ 757763072,757763327,US 757763328,757763583,PA 757763584,757763839,MN -757763840,757764095,US +757763840,757764095,VA 757764096,757764351,ZW 757764352,757765375,US 757765376,757765631,SD @@ -7585,7 +7857,9 @@ 757767168,757767423,CC 757767424,757767935,US 757767936,757768191,MU -757768192,757769215,US +757768192,757768447,US +757768448,757768703,AD +757768704,757769215,US 757769216,757769471,SL 757769472,757769727,US 757769728,757769983,NZ @@ -7603,7 +7877,9 @@ 757773056,757773311,MR 757773312,757774335,US 757774336,757774591,LR -757774592,757776639,US +757774592,757774847,US +757774848,757775103,MC +757775104,757776639,US 757776640,757776767,GQ 757776768,757777919,US 757777920,757778047,LS @@ -7611,15 +7887,24 @@ 757779200,757779327,CV 757779328,757780479,US 757780480,757780607,CF -757780608,757781759,US +757780608,757780991,US +757780992,757781247,SM +757781248,757781503,US +757781504,757781759,TO 757781760,757781887,GW 757781888,757783039,US 757783040,757783167,GM -757783168,757784319,US +757783168,757783551,US +757783552,757783807,TV +757783808,757784319,US 757784320,757784447,KM -757784448,757785599,US +757784448,757784831,US +757784832,757785087,CG +757785088,757785599,US 757785600,757785727,ST -757785728,757786879,US +757785728,757786111,US +757786112,757786367,AR +757786368,757786879,US 757786880,757787007,SO 757787008,757788159,US 757788160,757788287,LK @@ -7630,17 +7915,32 @@ 757791232,757858303,US 757858304,757956607,CA 757956608,757956863,HK -757956864,757957631,US +757956864,757957119,DE +757957120,757957631,US 757957632,757957887,JP -757957888,757958399,US +757957888,757958143,GB +757958144,757958399,US 757958400,757958655,DE 757958656,757959679,US 757959680,757959935,IT -757959936,757961471,US +757959936,757960191,GB +757960192,757961471,US 757961472,757961727,HK -757961728,757965311,US +757961728,757962239,US +757962240,757962495,GB +757962496,757964031,US +757964032,757964287,GB +757964288,757965311,US 757965312,757965567,IN -757965568,758682111,US +757965568,757967103,US +757967104,757967359,FR +757967360,757968127,US +757968128,757968383,FR +757968384,757969151,US +757969152,757969407,FR +757969408,757971199,US +757971200,757971455,FR +757971456,758682111,US 758682112,758682367,PH 758682368,758683647,US 758683648,758683903,HK @@ -7660,7 +7960,11 @@ 758796288,758804479,CA 758804480,758824959,US 758824960,758841343,CA -758841344,758874367,US +758841344,758847487,US +758847488,758847743,NL +758847744,758847999,US +758848000,758848255,CA +758848256,758874367,US 758874368,758874623,AM 758874624,758875391,US 758875392,758875647,AO @@ -7804,7 +8108,7 @@ 759234560,759235583,SG 759235584,759236607,NZ 759236608,759237631,IN -759237632,759238655,NZ +759237632,759238655,AU 759693312,759726079,US 759726080,759791615,CA 759791616,759824639,US @@ -7861,9 +8165,7 @@ 760127488,760152063,CA 760152064,760217599,US 761266176,761790463,EG -762314752,762315775,IN -762315776,762316799,JP -762316800,762320895,IN +762314752,762320895,IN 762320896,762321919,HK 762321920,762323967,IN 762323968,762324991,SG @@ -7921,7 +8223,9 @@ 762407936,762408959,CN 762408960,762409983,HK 762409984,762411007,JP -762411008,762412031,IN +762411008,762411263,IN +762411264,762411519,HK +762411520,762412031,IN 762412032,762413055,PK 762413056,762414079,HK 762414080,762415103,JP @@ -8229,7 +8533,10 @@ 762885120,762887167,HK 762887168,762888191,IN 762888192,762890239,JP -762890240,762891263,AU +762890240,762890495,KR +762890496,762890751,TW +762890752,762891007,HK +762891008,762891263,MY 762891264,762893311,HK 762893312,762894335,IN 762894336,762895359,HK @@ -8303,7 +8610,8 @@ 763061248,763062271,MY 763062272,763063295,AU 763063296,763064319,IN -763064320,763066367,HK +763064320,763065343,HK +763065344,763066367,TR 763066368,763067391,CN 763067392,763068415,MY 763068416,763071487,CN @@ -8393,8 +8701,8 @@ 763226112,763227135,KR 763227136,763228159,VN 763228160,763229183,JP -763229184,763229439,NZ -763229440,763230207,IN +763229184,763229695,NZ +763229696,763230207,IN 763230208,763231231,PH 763231232,763232255,IN 763232256,763234303,HK @@ -8410,6 +8718,78 @@ 763248640,763250687,IN 763250688,763251711,AU 763251712,763252735,HK +763252736,763253759,ID +763253760,763254783,JP +763254784,763255807,MY +763255808,763257855,VN +763257856,763258879,CN +763258880,763259903,IN +763259904,763263999,CN +763264000,763265023,AU +763265024,763266047,NZ +763266048,763267071,ID +763267072,763268095,IN +763268096,763269119,BN +763269120,763270143,IN +763270144,763271167,KR +763271168,763272191,ID +763272192,763273215,JP +763273216,763274239,IN +763274240,763275263,SG +763275264,763278335,IN +763278336,763279359,HK +763279360,763280383,ID +763280384,763281407,IN +763281408,763282431,AU +763282432,763285503,IN +763285504,763286527,SG +763286528,763287551,CN +763287552,763288575,HK +763288576,763289599,CN +763289600,763290623,TH +763290624,763291647,HK +763291648,763293695,IN +763293696,763294719,HK +763294720,763297023,IN +763297024,763297279,AF +763297280,763297791,IN +763297792,763298815,HK +763298816,763299839,MY +763299840,763301887,CN +763301888,763304959,IN +763304960,763305983,JP +763305984,763307007,SG +763307008,763308031,CN +763308032,763310079,IN +763310080,763311103,BD +763311104,763321343,IN +763321344,763322367,HK +763322368,763323391,CN +763323392,763326463,IN +763326464,763327487,US +763327488,763328511,CN +763328512,763329535,IN +763329536,763331583,CN +763331584,763332607,ID +763332608,763333631,IN +763333632,763334655,AU +763334656,763336703,CN +763336704,763337727,KH +763337728,763338751,CN +763338752,763339775,HK +763339776,763340799,PH +763340800,763341823,SG +763341824,763342847,AU +763342848,763343871,HK +763343872,763344895,AU +763344896,763345919,HK +763345920,763350015,IN +763350016,763351039,HK +763351040,763353087,IN +763353088,763354111,CN +763354112,763360255,IN +763360256,763362303,BD +763362304,763363327,VN 767557632,768606207,ZA 768606208,768868351,GH 768868352,769130495,ZM @@ -8427,7 +8807,9 @@ 772285184,772285439,UZ 772285440,772285695,RU 772285696,772285951,GR -772285952,772296703,RU +772285952,772286719,RU +772286720,772286975,LB +772286976,772296703,RU 772296704,772300799,UA 772300800,772341759,RU 772341760,772407295,NO @@ -8495,7 +8877,9 @@ 772917248,772919295,RU 772919296,772923391,GB 772923392,772925439,AT -772925440,772927487,GB +772925440,772926975,GB +772926976,772927231,ZW +772927232,772927487,GB 772927488,772929535,UA 772929536,772931583,RU 772931584,772933631,UA @@ -8557,9 +8941,13 @@ 773048320,773050367,LV 773050368,773052415,IE 773052416,773054463,NL -773054464,773055871,AL +773054464,773055231,AL +773055232,773055487,RS +773055488,773055871,AL 773055872,773055999,RS -773056000,773056511,AL +773056000,773056007,AL +773056008,773056009,RS +773056010,773056511,AL 773056512,773058559,IT 773058560,773060607,BE 773060608,773062655,DK @@ -8578,7 +8966,15 @@ 773111808,773115903,TJ 773115904,773119999,PS 773120000,773124095,GB -773124096,773132287,DE +773124096,773125247,CH +773125248,773125375,GB +773125376,773125503,CH +773125504,773125567,GB +773125568,773125855,CH +773125856,773125887,RU +773125888,773126143,FR +773126144,773128191,CH +773128192,773132287,DE 773132288,773134335,IT 773134336,773135359,CH 773135360,773136383,IT @@ -8765,15 +9161,19 @@ 773828608,773830655,HU 773830656,773832703,NO 773832704,773834751,FR -773834752,773836799,GB +773834752,773835007,GB +773835008,773835263,IM +773835264,773835775,GB +773835776,773836031,IM +773836032,773836543,GB +773836544,773836799,IM 773836800,773838847,FR 773838848,773840895,DE 773840896,773842943,GB 773842944,773844991,EU 773844992,773845759,GB 773845760,773846015,JE -773846016,773846271,GB -773846272,773846527,GG +773846016,773846527,GG 773846528,773847039,GB 773847040,773849087,IT 773849088,773857279,IR @@ -8788,7 +9188,9 @@ 773931008,773934591,DE 773934592,773935352,FR 773935353,773935353,US -773935354,773937663,FR +773935354,773935728,FR +773935729,773935729,GB +773935730,773937663,FR 773937664,773937664,DE 773937665,773937673,FR 773937674,773937674,IE @@ -8801,9 +9203,13 @@ 773963776,773971967,ME 773971968,773980159,UA 773980160,773988351,GB -773988352,774000823,ES +773988352,773997823,ES +773997824,773998079,NL +773998080,774000639,ES +774000640,774000823,NL 774000824,774000824,GB -774000825,774001663,ES +774000825,774000895,NL +774000896,774001663,ES 774001664,774002687,NL 774002688,774002815,ES 774002816,774002842,NL @@ -8831,155 +9237,7 @@ 774135808,774143999,IR 774144000,774152191,KZ 774152192,774160383,BA -774160384,774160415,VA -774160416,774160448,LI -774160449,774160458,IM -774160459,774160468,CA -774160469,774160480,MX -774160481,774160514,IS -774160515,774160547,MX -774160548,774160580,AE -774160581,774160612,MX -774160613,774160639,AT -774160640,774160671,GI -774160672,774160702,CY -774160703,774160735,CH -774160736,774160768,GR -774160769,774160801,IL -774160802,774160802,GB -774160803,774160832,BG -774160833,774160864,NO -774160865,774160869,BR -774160870,774160873,CA -774160874,774160895,CR -774160896,774160927,PA -774160928,774160935,MW -774160936,774160946,BS -774160947,774160956,KY -774160957,774160966,JM -774160967,774160976,PR -774160977,774160986,VG -774160987,774160996,CO -774160997,774161006,GT -774161007,774161016,CN -774161017,774161026,EG -774161027,774161036,FJ -774161037,774161046,IN -774161047,774161056,MH -774161057,774161066,JP -774161067,774161076,MX -774161077,774161086,NZ -774161087,774161096,MY -774161097,774161106,PE -774161107,774161116,PH -774161117,774161126,SA -774161127,774161136,SC -774161137,774161146,SG -774161147,774161149,BY -774161150,774161151,GB -774161152,774161162,AQ -774161163,774161172,KR -774161173,774161182,TH -774161183,774161192,QA -774161193,774161202,VI -774161203,774161212,BM -774161213,774161222,BB -774161223,774161232,AW -774161233,774161242,BZ -774161243,774161252,MC -774161253,774161262,GB -774161263,774161272,TR -774161273,774161282,MT -774161283,774161292,SE -774161293,774161302,HK -774161303,774161312,GB -774161313,774161322,IE -774161323,774161332,PK -774161333,774161337,KW -774161338,774161342,JO -774161343,774161347,OM -774161348,774161352,ID -774161353,774161357,TW -774161358,774161362,AI -774161363,774161367,KN -774161368,774161372,GD -774161373,774161377,DO -774161378,774161382,PY -774161383,774161387,EE -774161388,774161392,LU -774161393,774161397,SK -774161398,774161402,GB -774161403,774161405,LC -774161406,774161408,GB -774161409,774161418,US -774161419,774161428,GL -774161429,774161438,HU -774161439,774161448,MK -774161449,774161458,PS -774161459,774161468,UZ -774161469,774161478,MS -774161479,774161488,US -774161489,774161498,MN -774161499,774161518,US -774161519,774161528,TW -774161529,774161538,DO -774161539,774161548,PY -774161549,774161558,EE -774161559,774161566,BR -774161567,774161568,SK -774161569,774161578,LC -774161579,774161588,VE -774161589,774161598,TC -774161599,774161618,US -774161619,774161628,GB -774161629,774161638,PA -774161639,774161648,RU -774161649,774161658,HK -774161659,774161664,GB -774161665,774161674,US -774161675,774161675,CL -774161676,774161684,GB -774161685,774161694,GR -774161695,774161704,AG -774161705,774161714,AM -774161715,774161724,GB -774161725,774161734,RO -774161735,774161744,UA -774161745,774161754,AU -774161755,774161764,PG -774161765,774161774,ZA -774161775,774161784,SN -774161785,774161794,MA -774161795,774161804,BH -774161805,774161814,US -774161815,774161824,TV -774161825,774161834,US -774161835,774161844,SB -774161845,774161854,VU -774161855,774161864,MX -774161865,774161865,AR -774161866,774161869,GB -774161870,774161874,ES -774161875,774161899,GB -774161900,774161904,FR -774161905,774162060,GB -774162061,774162065,US -774162066,774162125,GB -774162126,774162130,MO -774162131,774162246,GB -774162247,774162256,US -774162257,774162336,GB -774162337,774162346,AZ -774162347,774162366,US -774162367,774162376,MX -774162377,774162386,GB -774162387,774162387,ZW -774162388,774162395,DE -774162396,774162396,ZW -774162397,774162406,SZ -774162407,774162416,SD -774162417,774162426,BF -774162427,774162431,GB +774160384,774162431,GB 774162432,774162432,A1 774162433,774162442,GB 774162443,774162452,BA @@ -9156,7 +9414,7 @@ 774864896,774881279,CZ 774881280,774963199,RU 774963200,774995967,GE -774995968,775028735,RO +774995968,775028735,SA 775028736,775061503,PT 775061504,775094271,RU 775094272,775127039,RO @@ -9217,7 +9475,9 @@ 778475520,778475775,CH 778475776,778476031,RO 778476032,778476287,MD -778476288,778480639,RO +778476288,778477567,RO +778477568,778477695,NL +778477696,778480639,RO 778480640,778480895,MD 778480896,778481663,RO 778481664,778481919,MD @@ -9322,7 +9582,9 @@ 778691620,778691623,IT 778691624,778691711,FR 778691712,778691727,GB -778691728,778692499,FR +778691728,778692143,FR +778692144,778692159,DE +778692160,778692499,FR 778692500,778692503,ES 778692504,778692519,FR 778692520,778692527,NL @@ -9673,19 +9935,7 @@ 784039936,784072703,PL 784072704,784105471,RU 784105472,784138239,HR -784138240,784155487,DE -784155488,784155491,NL -784155492,784155495,BE -784155496,784155503,AT -784155504,784155511,GB -784155512,784155519,CZ -784155520,784155615,DE -784155616,784155619,NL -784155620,784155623,BE -784155624,784155631,AT -784155632,784155639,GB -784155640,784155640,CZ -784155641,784169215,DE +784138240,784169215,DE 784169216,784169231,AL 784169232,784169247,BG 784169248,784169263,CZ @@ -9717,7 +9967,11 @@ 785842176,785907711,PL 785907712,785973247,BY 785973248,786038783,MK -786038784,786104319,FR +786038784,786085119,FR +786085120,786085233,US +786085234,786085234,FR +786085235,786085375,US +786085376,786104319,FR 786104320,786169855,UA 786169856,786235391,AT 786235392,786300927,TR @@ -9729,9 +9983,11 @@ 786567168,786569215,CZ 786569216,786571263,NO 786571264,786575359,ES -786575360,786576098,GB +786575360,786575871,GB +786575872,786576098,NO 786576099,786576099,SE -786576100,786577407,GB +786576100,786576127,NO +786576128,786577407,GB 786577408,786579455,NL 786579456,786581503,RU 786581504,786583551,GB @@ -9931,9 +10187,11 @@ 787185664,787187711,GG 787187712,787189759,IT 787189760,787191807,CH -787191808,787192063,EU +787191808,787192063,GB 787192064,787192319,FR -787192320,787192575,DE +787192320,787192383,EU +787192384,787192447,DE +787192448,787192575,EU 787192576,787192831,SE 787192832,787193087,EU 787193088,787193343,FI @@ -10010,7 +10268,10 @@ 787750912,787755007,GB 787755008,787759103,NL 787759104,787767295,PS -787767296,787775487,NL +787767296,787768319,IT +787768320,787771135,NL +787771136,787771391,IT +787771392,787775487,NL 787775488,787808255,DE 787808256,787841023,IR 787841024,787843071,RU @@ -10066,7 +10327,9 @@ 788234240,788242431,SA 788242432,788250623,IR 788250624,788258815,KG -788258816,788267007,DE +788258816,788261375,DE +788261376,788261631,GB +788261632,788267007,DE 788267008,788271103,SE 788271104,788275199,DE 788275200,788279295,AL @@ -10123,7 +10386,10 @@ 788455424,788457471,FR 788457472,788459519,IT 788459520,788461567,RU -788461568,788465663,GB +788461568,788462335,JE +788462336,788462591,GB +788462592,788463103,JE +788463104,788465663,GB 788465664,788467711,CZ 788467712,788469759,NO 788469760,788471807,NL @@ -10220,8 +10486,7 @@ 830475264,830476287,AU 830476288,830480383,JP 830480384,830488575,SG -830488576,830492671,HK -830492672,830496767,TW +830488576,830496767,HK 830496768,830498815,JP 830498816,830499839,GU 830499840,830500863,IN @@ -10337,9 +10602,7 @@ 840278016,840282111,CA 840282112,840294399,US 840294400,840298495,CA -840298496,840537087,US -840537088,840537343,AS -840537344,840836121,US +840298496,840836121,US 840836122,840836124,BZ 840836125,840838428,US 840838429,840838429,UA @@ -10359,9 +10622,7 @@ 843055104,843644927,CA 843644928,844890111,US 844890112,844988415,CA -844988416,845089407,US -845089408,845089535,PR -845089536,845283327,US +844988416,845283327,US 845283328,845545471,CA 845545472,846442495,US 846442496,846446591,CA @@ -10396,26 +10657,65 @@ 872288872,872288875,DE 872288876,872290111,FR 872290112,872290143,ES -872290144,872415231,FR +872290144,872300031,FR +872300032,872300063,ES +872300064,872306183,FR +872306184,872306191,GB +872306192,872316797,FR +872316798,872316798,PT +872316799,872327807,FR +872327808,872327811,FI +872327812,872327815,IE +872327816,872327831,FR +872327832,872327835,IT +872327836,872330279,FR +872330280,872330283,GB +872330284,872342335,FR +872342336,872342367,ES +872342368,872415231,FR 872415232,873463807,US 873463808,873725951,IE 873725952,874250239,US 874250240,874381311,DE -874381312,876609535,US -876609536,876675071,AU -876675072,876871679,US +874381312,874512383,IE +874512384,875560959,US +875560960,875823103,IE +875823104,876478463,US +876478464,876740607,AU +876740608,876871679,US 876871680,877002751,JP 877002752,877264895,US 877264896,877330431,SG 877330432,877395967,US -877395968,877428735,SG -877428736,878649855,US +877395968,877527039,SG +877527040,878454527,US +878454528,878454783,BR +878454784,878456831,IE +878456832,878457855,US +878457856,878458879,AU +878458880,878459903,SG +878459904,878460927,JP +878460928,878461951,BR +878461952,878462975,DE +878462976,878463999,BR +878464000,878576895,US +878576896,878577151,IE +878577152,878577663,US +878577664,878577919,BR +878577920,878578175,JP +878578176,878578687,US +878578688,878578943,SG +878578944,878579199,AU +878579200,878649855,US 878649856,878650111,JP 878650112,878650367,SG 878650368,878651391,AU 878651392,878655487,US 878655488,878656511,JP -878656512,878702591,US +878656512,878657023,IE +878657024,878695423,US +878695424,878696447,SG +878696448,878702591,US 878702592,878702847,BR 878702848,878703103,AU 878703104,878703359,SG @@ -10441,7 +10741,9 @@ 882843752,882843753,EU 882843754,882851942,US 882851943,882851943,EU -882851944,889192447,US +882851944,884998143,US +884998144,885129215,JP +885129216,889192447,US 889192448,897238054,DE 897238055,897238055,EU 897238056,905969663,DE @@ -10500,8 +10802,8 @@ 921165824,921167871,JP 921167872,921169919,US 921169920,921170943,SG -921170944,921172991,US -921172992,921173247,AU +921170944,921171967,US +921171968,921173247,AU 921173248,921173503,BR 921173504,921174015,US 921174016,921305087,BR @@ -10698,11 +11000,18 @@ 961716224,961720319,CF 961720320,961724415,TD 961724416,961740799,ZA -961740800,961806335,BE +961740800,961781759,BE +961781760,961785855,LS +961785856,961806335,BE 961806336,961810431,MR -961810432,961826815,BE +961810432,961818623,BE +961818624,961822719,MZ +961822720,961826815,NA 961826816,961830911,NE -961830912,961892351,BE +961830912,961835007,NG +961835008,961867775,BE +961867776,961871871,TZ +961871872,961892351,BE 961892352,961896447,ZW 961896448,961900543,NG 961900544,961937407,BE @@ -10712,9 +11021,9 @@ 961950720,961953791,FI 961953792,961961983,DK 961961984,961970175,NO -961970176,961971455,BE +961970176,961971455,SE 961971456,961971711,EU -961971712,962002943,BE +961971712,962002943,SE 962002944,962035711,RU 962035712,962039807,EE 962039808,962043903,LV @@ -10725,7 +11034,9 @@ 962084864,962088959,GE 962088960,962097151,BE 962097152,962101247,IL -962101248,962134015,BE +962101248,962117631,BE +962117632,962121727,QA +962121728,962134015,BE 962134016,962138111,AE 962138112,962203647,BE 962203648,962207999,AT @@ -10747,11 +11058,11 @@ 962281472,962285567,DO 962285568,962359295,BE 962359296,962363391,IN -962363392,962364416,BE -962364417,962364417,ID -962364418,962392063,BE +962363392,962367487,ID +962367488,962392063,BE 962392064,962396159,PK -962396160,962408447,BE +962396160,962400255,PH +962400256,962408447,BE 962408448,962412543,TH 962412544,962416639,UZ 962416640,962461695,BE @@ -10819,6 +11130,19 @@ 978485248,978501631,TH 978501632,978518015,HK 978518016,978583551,CN +978583552,978584575,VN +978584576,978585599,HK +978585600,978587647,IN +978587648,978588671,MY +978588672,978590719,IN +978590720,978591743,PK +978591744,978592767,BD +978592768,978593791,NZ +978593792,978594815,MY +978594816,978595839,KR +978595840,978596863,NZ +978596864,978597887,HK +978597888,978599935,IN 978599936,978640895,AU 978640896,978644991,NZ 978644992,978714623,JP @@ -10918,6 +11242,46 @@ 999866368,999873941,HK 999873942,999873943,AP 999873944,999882751,HK +999882752,999883775,IN +999883776,999884799,CN +999884800,999885823,AU +999885824,999886847,IN +999886848,999887871,BD +999887872,999888895,NZ +999888896,999889407,ID +999889408,999889919,MY +999889920,999890943,BD +999890944,999891967,CN +999891968,999892991,IN +999892992,999895039,JP +999895040,999898111,HK +999898112,999902207,CN +999902208,999903231,SG +999903232,999904255,ID +999904256,999905279,MN +999905280,999906303,MM +999906304,999907327,CN +999907328,999908351,IN +999908352,999909375,BD +999909376,999910399,SG +999910400,999911423,MM +999911424,999912447,MN +999912448,999913471,CN +999913472,999914495,IN +999914496,999915519,AF +999915520,999916543,ID +999916544,999917567,TL +999917568,999918591,CN +999918592,999919615,JP +999919616,999921663,HK +999921664,999923711,CN +999923712,999924735,HK +999924736,999932927,CN +999932928,999933951,HK +999933952,999934975,BD +999934976,999935999,JP +999936000,999937023,TH +999937024,999948287,VN 999948288,1000013823,AU 1000013824,1000079359,CN 1000079360,1000341503,JP @@ -10966,9 +11330,11 @@ 1023238144,1023246335,ID 1023246336,1023279103,CN 1023279104,1023311871,IN -1023311872,1023317503,US -1023317504,1023317759,IN -1023317760,1023328255,US +1023311872,1023315711,US +1023315712,1023315967,AU +1023315968,1023317503,US +1023317504,1023318015,IN +1023318016,1023328255,US 1023328256,1023344639,JP 1023344640,1023410175,CN 1023410176,1023672319,IN @@ -11002,7 +11368,9 @@ 1023979520,1023983615,AU 1023983616,1023991551,SG 1023991552,1023991807,AP -1023991808,1023999999,SG +1023991808,1023996927,SG +1023996928,1023997183,AU +1023997184,1023999999,SG 1024000000,1024032767,PH 1024032768,1024065535,AU 1024065536,1024131071,HK @@ -11020,19 +11388,23 @@ 1024352256,1024360447,AU 1024360448,1024361167,JP 1024361168,1024361183,HK -1024361184,1024364063,JP +1024361184,1024363519,JP +1024363520,1024363775,AU +1024363776,1024364063,JP 1024364064,1024364079,AU 1024364080,1024365055,JP 1024365056,1024365311,AP -1024365312,1024365567,JP -1024365568,1024365823,SG -1024365824,1024371199,JP +1024365312,1024365727,JP +1024365728,1024365759,SG +1024365760,1024371199,JP 1024371200,1024371455,PH 1024371456,1024372543,JP 1024372544,1024372639,HK 1024372640,1024373263,JP 1024373264,1024373279,HK -1024373280,1024376831,JP +1024373280,1024375551,JP +1024375552,1024375807,AU +1024375808,1024376831,JP 1024376832,1024378879,PH 1024393216,1024458751,HK 1024458752,1024491519,SG @@ -11056,7 +11428,9 @@ 1025297920,1025298175,NZ 1025298176,1025298943,AU 1025298944,1025299199,AE -1025299200,1025300223,AU +1025299200,1025299455,AU +1025299456,1025299711,CN +1025299712,1025300223,AU 1025300224,1025300479,SA 1025300480,1025300735,AE 1025300736,1025301247,US @@ -11107,9 +11481,7 @@ 1031798784,1035993087,CN 1035993088,1037415679,JP 1037415680,1037415935,AP -1037415936,1037416447,JP -1037416448,1037416703,US -1037416704,1037565951,JP +1037415936,1037565951,JP 1037565952,1038614527,TW 1038614528,1039007743,CN 1039007744,1039138815,HK @@ -11173,11 +11545,17 @@ 1041235968,1041244159,UA 1041244160,1041268735,RU 1041268736,1041301503,NO -1041301504,1041336319,IE +1041301504,1041310975,IE +1041310976,1041311231,GB +1041311232,1041336319,IE 1041336320,1041336575,EU -1041336576,1041367039,IE +1041336576,1041338879,IE +1041338880,1041339135,GB +1041339136,1041367039,IE 1041367040,1041498111,IT -1041498112,1041563647,SE +1041498112,1041523967,SE +1041523968,1041524223,DK +1041524224,1041563647,SE 1041563648,1041596415,PL 1041596416,1041629183,NL 1041629184,1041638655,ES @@ -11325,7 +11703,9 @@ 1044589056,1044589311,DE 1044589312,1044592895,GB 1044592896,1044593151,DE -1044593152,1044636671,GB +1044593152,1044625631,GB +1044625632,1044625647,RS +1044625648,1044636671,GB 1044636672,1044637695,DE 1044637696,1044638463,GB 1044638464,1044638719,DE @@ -11371,7 +11751,9 @@ 1044931232,1044931239,BE 1044931240,1044933499,GB 1044933500,1044933503,BE -1044933504,1044935439,GB +1044933504,1044933887,GB +1044933888,1044934143,BE +1044934144,1044935439,GB 1044935440,1044935455,BE 1044935456,1044935663,GB 1044935664,1044935671,BE @@ -11402,7 +11784,9 @@ 1045018788,1045018799,ES 1045018800,1045020671,GB 1045020672,1045037055,NO -1045037056,1045118975,GR +1045037056,1045038271,GR +1045038272,1045038335,AU +1045038336,1045118975,GR 1045118976,1045119231,US 1045119232,1045135359,GR 1045135360,1045152603,DE @@ -11444,9 +11828,9 @@ 1045708800,1045716991,LB 1045716992,1045725183,RU 1045725184,1045733375,CZ -1045733376,1045745420,GB -1045745421,1045745421,SE -1045745422,1045748319,GB +1045733376,1045745407,GB +1045745408,1045745663,SE +1045745664,1045748319,GB 1045748320,1045748351,SE 1045748352,1045749759,GB 1045749760,1045753855,SI @@ -11500,7 +11884,9 @@ 1046485904,1046485911,DE 1046485912,1046487289,GB 1046487290,1046487290,DE -1046487291,1046489087,GB +1046487291,1046488319,GB +1046488320,1046488575,DE +1046488576,1046489087,GB 1046489088,1046489218,DE 1046489219,1046489219,GB 1046489220,1046489311,DE @@ -11578,13 +11964,17 @@ 1046529024,1046530047,DE 1046530048,1046530973,GB 1046530974,1046530974,DE -1046530975,1046531839,GB +1046530975,1046531071,GB +1046531072,1046531327,DE +1046531328,1046531839,GB 1046531840,1046532095,DE 1046532096,1046533375,GB 1046533376,1046533383,DE 1046533384,1046533537,GB 1046533538,1046533538,DE -1046533539,1046535295,GB +1046533539,1046533887,GB +1046533888,1046534143,DE +1046534144,1046535295,GB 1046535296,1046535311,DE 1046535312,1046535439,GB 1046535440,1046535447,DE @@ -11605,7 +11995,9 @@ 1046757376,1046765567,IT 1046765568,1046773759,ES 1046773760,1046781951,FR -1046781952,1046798335,GB +1046781952,1046790143,GB +1046790144,1046792191,CN +1046792192,1046798335,GB 1046798336,1046806527,HU 1046806528,1046814719,IT 1046814720,1046822911,SE @@ -11613,7 +12005,9 @@ 1046839296,1046847487,BA 1046847488,1046855679,ES 1046855680,1046872063,NO -1046872064,1046904831,EU +1046872064,1046898943,EU +1046898944,1046899199,GB +1046899200,1046904831,EU 1046904832,1046908927,IR 1046908928,1046910975,SE 1046910976,1046913023,IT @@ -11723,7 +12117,9 @@ 1048246272,1048248319,NO 1048248320,1048313855,IT 1048313856,1048510463,GB -1048510464,1048575999,SE +1048510464,1048536319,SE +1048536320,1048536575,FI +1048536576,1048575999,SE 1048576000,1048584191,DE 1048584192,1048592383,IL 1048592384,1048600575,IT @@ -11764,9 +12160,9 @@ 1049009152,1049016319,EU 1049016320,1049018367,DE 1049018368,1049018623,EU -1049018624,1049021439,DE -1049021440,1049021695,GB -1049021696,1049022463,DE +1049018624,1049020671,DE +1049020672,1049020927,GB +1049020928,1049022463,DE 1049022464,1049026815,EU 1049026816,1049029375,DE 1049029376,1049030655,EU @@ -11852,7 +12248,9 @@ 1050471032,1050471039,DE 1050471040,1050471167,GB 1050471168,1050627327,DE -1050627328,1050627583,EU +1050627328,1050627401,EU +1050627402,1050627402,DE +1050627403,1050627583,EU 1050627584,1050673151,DE 1050673152,1050804223,FR 1050804224,1050869759,MK @@ -12039,7 +12437,9 @@ 1052494592,1052498431,EU 1052498432,1052498463,RO 1052498464,1052508159,EU -1052508160,1052641930,GB +1052508160,1052596479,GB +1052596480,1052596735,NL +1052596736,1052641930,GB 1052641931,1052641931,EU 1052641932,1052704767,GB 1052704768,1052712959,NL @@ -12085,7 +12485,9 @@ 1053312872,1053312887,DK 1053312888,1053312911,EU 1053312912,1053312927,DK -1053312928,1053318911,EU +1053312928,1053313279,EU +1053313280,1053313535,GB +1053313536,1053318911,EU 1053318912,1053318943,FI 1053318944,1053320223,EU 1053320224,1053320239,DE @@ -12109,7 +12511,9 @@ 1053349376,1053349631,NL 1053349632,1053349951,EU 1053349952,1053349967,IE -1053349968,1053353407,EU +1053349968,1053352959,EU +1053352960,1053353215,IE +1053353216,1053353407,EU 1053353408,1053353423,GB 1053353424,1053353983,EU 1053353984,1053354239,IL @@ -12289,8 +12693,8 @@ 1053900800,1053917183,NO 1053917184,1053925375,UZ 1053925376,1053927159,SE -1053927160,1053927167,FI -1053927168,1053933567,SE +1053927160,1053927199,FI +1053927200,1053933567,SE 1053933568,1053949951,CZ 1053949952,1053968188,FR 1053968189,1053968189,PT @@ -12323,7 +12727,13 @@ 1054351360,1054359551,UA 1054359552,1054367743,RO 1054367744,1054375935,FI -1054375936,1054384127,GB +1054375936,1054381567,GB +1054381568,1054381571,CA +1054381572,1054381572,SG +1054381573,1054381587,CA +1054381588,1054381588,HK +1054381589,1054381823,CA +1054381824,1054384127,GB 1054384128,1054400511,DE 1054400512,1054408703,GB 1054408704,1054416895,FR @@ -12499,7 +12909,9 @@ 1062597376,1062597631,PR 1062597632,1062871551,US 1062871552,1062872063,PR -1062872064,1063057432,US +1062872064,1063052351,US +1063052352,1063052367,CA +1063052368,1063057432,US 1063057433,1063057433,CA 1063057434,1063305727,US 1063305728,1063305983,CA @@ -12541,8 +12953,8 @@ 1064222208,1064445183,US 1064445184,1064445439,PK 1064445440,1065372927,US -1065372928,1065373055,PR -1065373056,1065519247,US +1065372928,1065373183,PR +1065373184,1065519247,US 1065519248,1065519263,IN 1065519264,1065519303,US 1065519304,1065519311,IN @@ -12571,7 +12983,12 @@ 1066315776,1066352639,US 1066352640,1066355711,JM 1066355712,1066355967,BB -1066355968,1066369023,JM +1066355968,1066356479,JM +1066356480,1066356735,VG +1066356736,1066358271,JM +1066358272,1066358495,VG +1066358496,1066358527,AG +1066358528,1066369023,JM 1066369024,1066830303,US 1066830304,1066830311,SG 1066830312,1066831183,US @@ -12614,9 +13031,7 @@ 1068123136,1068123647,BB 1068123648,1068175871,US 1068175872,1068176383,YE -1068176384,1068179455,US -1068179456,1068179711,PR -1068179712,1068199935,US +1068176384,1068199935,US 1068199936,1068204031,CA 1068204032,1068230655,US 1068230656,1068230911,CO @@ -12644,11 +13059,7 @@ 1071106560,1071106815,NL 1071106816,1071144959,US 1071144960,1071153151,LB -1071153152,1071157247,US -1071157248,1071157503,SG -1071157504,1071159295,US -1071159296,1071159551,SG -1071159552,1071170815,US +1071153152,1071170815,US 1071170816,1071171071,PH 1071171072,1071206911,US 1071206912,1071207167,HK @@ -12709,7 +13120,8 @@ 1072924672,1072925183,US 1072925184,1072925695,GB 1072925696,1072926207,CA -1072926208,1072926719,US +1072926208,1072926463,US +1072926464,1072926719,CA 1072926720,1072926975,PH 1072926976,1072927487,CA 1072927488,1072928511,US @@ -12758,7 +13170,9 @@ 1073028608,1073029119,GD 1073029120,1073031423,US 1073031424,1073031935,CW -1073031936,1073035263,US +1073031936,1073034751,US +1073034752,1073035007,BB +1073035008,1073035263,US 1073035264,1073036032,GD 1073036033,1073036543,US 1073036544,1073037055,MX @@ -12780,9 +13194,7 @@ 1073373184,1073381375,CA 1073381376,1073381631,US 1073381632,1073381887,EU -1073381888,1073438207,US -1073438208,1073438463,A2 -1073438464,1073454591,US +1073381888,1073454591,US 1073454592,1073454847,KY 1073454848,1074020351,US 1074020352,1074028543,CA @@ -12916,8 +13328,8 @@ 1075429376,1075478527,US 1075478528,1075494911,CA 1075494912,1075558399,US -1075558400,1075558655,VI -1075558656,1075576831,US +1075558400,1075558911,VI +1075558912,1075576831,US 1075576832,1075576895,GB 1075576896,1075576896,SE 1075576897,1075577087,GB @@ -12926,12 +13338,12 @@ 1075579904,1075580415,NO 1075580416,1075580671,GB 1075580672,1075580927,NO -1075580928,1075581695,NL -1075581696,1075582463,NO +1075580928,1075581951,NL +1075581952,1075582463,NO 1075582464,1075582719,NL 1075582720,1075583231,NO -1075583232,1075584255,NL -1075584256,1075584767,NO +1075583232,1075584511,NL +1075584512,1075584767,NO 1075584768,1075585023,NL 1075585024,1075609599,US 1075609600,1075613695,TT @@ -13055,14 +13467,14 @@ 1076393728,1076394239,US 1076394240,1076396031,CA 1076396032,1076404223,US -1076404224,1076406271,A2 -1076406272,1076406527,US -1076406528,1076408063,A2 +1076404224,1076408063,A2 1076408064,1076408319,US 1076408320,1076412415,CA -1076412416,1076422192,US +1076412416,1076422143,US +1076422144,1076422192,GB 1076422193,1076422193,EU -1076422194,1076424703,US +1076422194,1076422399,GB +1076422400,1076424703,US 1076424704,1076428799,CA 1076428800,1076543487,US 1076543488,1076559871,CA @@ -13071,7 +13483,9 @@ 1076756480,1076772863,CA 1076772864,1076850687,US 1076850688,1076850943,CA -1076850944,1076880383,US +1076850944,1076851199,US +1076851200,1076851455,CA +1076851456,1076880383,US 1076880384,1076880639,CH 1076880640,1076880895,GB 1076880896,1077055487,US @@ -13095,7 +13509,11 @@ 1077865984,1077866239,CA 1077866240,1077963775,US 1077963776,1077964031,JP -1077964032,1077977087,US +1077964032,1077967103,US +1077967104,1077967359,CA +1077967360,1077967615,US +1077967616,1077967871,GB +1077967872,1077977087,US 1077977088,1077985279,CA 1077985280,1077993471,US 1077993472,1078001663,CA @@ -13183,7 +13601,9 @@ 1078738944,1078739455,VE 1078739456,1078739967,US 1078739968,1078743039,PE -1078743040,1078746111,CO +1078743040,1078743551,CO +1078743552,1078743807,US +1078743808,1078746111,CO 1078746112,1078747135,PE 1078747136,1078749183,CL 1078749184,1078751231,PE @@ -13266,7 +13686,9 @@ 1079426048,1079427327,US 1079427328,1079427583,CA 1079427584,1079428095,PW -1079428096,1079431679,US +1079428096,1079429295,US +1079429296,1079429311,FR +1079429312,1079431679,US 1079431680,1079432191,ZM 1079432192,1079432959,US 1079432960,1079433215,CA @@ -13304,7 +13726,13 @@ 1080498665,1080498665,EU 1080498666,1080501503,US 1080501504,1080501759,EU -1080501760,1080569343,US +1080501760,1080512511,US +1080512512,1080512767,GB +1080512768,1080514559,US +1080514560,1080514815,GB +1080514816,1080568831,US +1080568832,1080569087,JP +1080569088,1080569343,US 1080569344,1080569599,JP 1080569600,1080581887,US 1080581888,1080582143,AP @@ -13401,15 +13829,14 @@ 1082138624,1082140671,A2 1082140672,1082314751,US 1082314752,1082318847,CA -1082318848,1082351361,US -1082351362,1082351362,SA -1082351363,1082419455,US +1082318848,1082419455,US 1082419456,1082419711,A2 1082419712,1082683391,US 1082683392,1082687487,CA 1082687488,1082753023,US 1082753024,1082785791,CA -1082785792,1082791167,US +1082785792,1082790911,US +1082790912,1082791167,AU 1082791168,1082791423,IN 1082791424,1082945535,US 1082945536,1082949631,CA @@ -13463,7 +13890,9 @@ 1087016960,1087021055,CA 1087021056,1087385855,US 1087385856,1087386111,EU -1087386112,1087405407,US +1087386112,1087399167,US +1087399168,1087399423,GB +1087399424,1087405407,US 1087405408,1087405423,MX 1087405424,1087413895,US 1087413896,1087413903,DE @@ -13471,17 +13900,19 @@ 1087419136,1087419391,GB 1087419392,1087419903,US 1087419904,1087420159,CA -1087420160,1087440895,US +1087420160,1087430191,US +1087430192,1087430195,FR +1087430196,1087440895,US 1087440896,1087442943,PR 1087442944,1087444223,US 1087444224,1087444479,GB -1087444480,1087465727,US -1087465728,1087465983,AU -1087465984,1087466883,US +1087444480,1087466883,US 1087466884,1087466887,GB 1087466888,1087496703,US 1087496704,1087496959,CA -1087496960,1087501567,US +1087496960,1087501471,US +1087501472,1087501479,GB +1087501480,1087501567,US 1087501568,1087501695,HK 1087501696,1087508161,US 1087508162,1087508162,JP @@ -13489,33 +13920,51 @@ 1087514624,1087516671,BB 1087516672,1087593983,US 1087593984,1087594239,MX -1087594240,1087608319,US +1087594240,1087596031,US +1087596032,1087596287,DE +1087596288,1087608319,US 1087608320,1087608575,GB 1087608576,1087626111,US 1087626112,1087626239,VI -1087626240,1087686655,US +1087626240,1087655167,US +1087655168,1087655295,VE +1087655296,1087686655,US 1087686656,1087686911,PR -1087686912,1087714335,US +1087686912,1087708671,US +1087708672,1087708927,AU +1087708928,1087714335,US 1087714336,1087714367,NL 1087714368,1087715327,US 1087715328,1087717375,PA -1087717376,1087726015,US +1087717376,1087721215,US +1087721216,1087721471,MX +1087721472,1087726015,US 1087726016,1087726047,FR -1087726048,1087758335,US +1087726048,1087735743,US +1087735744,1087735807,CA +1087735808,1087758335,US 1087758336,1087766527,PR -1087766528,1087798943,US +1087766528,1087783423,US +1087783424,1087783679,ZA +1087783680,1087798943,US 1087798944,1087798975,CA 1087798976,1087799295,US -1087799296,1087799372,DE +1087799296,1087799372,BE 1087799373,1087799374,US -1087799375,1087799551,DE -1087799552,1087837183,US -1087837184,1087837439,BR -1087837440,1087839231,US -1087839232,1087839359,GB -1087839360,1087862783,US +1087799375,1087799551,BE +1087799552,1087804159,US +1087804160,1087804415,GB +1087804416,1087837359,US +1087837360,1087837367,BR +1087837368,1087837695,US +1087837696,1087837951,BR +1087837952,1087839231,US +1087839232,1087839487,GB +1087839488,1087862783,US 1087862784,1087864831,PA -1087864832,1087883263,US +1087864832,1087873023,US +1087873024,1087873535,CA +1087873536,1087883263,US 1087883264,1087883519,AR 1087883520,1087918511,US 1087918512,1087918519,PR @@ -13678,8 +14127,8 @@ 1093127168,1093128447,US 1093128448,1093129215,CA 1093129216,1093130751,US -1093130752,1093131007,CA -1093131008,1093132543,US +1093130752,1093131263,CA +1093131264,1093132543,US 1093132544,1093133055,CA 1093133056,1093135359,US 1093135360,1093135615,CA @@ -13764,13 +14213,7 @@ 1097947208,1097947215,US 1097947216,1097947327,VI 1097947328,1097947391,US -1097947392,1097947991,VI -1097947992,1097947999,US -1097948000,1097948015,VI -1097948016,1097948031,US -1097948032,1097948327,VI -1097948328,1097948335,US -1097948336,1097949183,VI +1097947392,1097949183,VI 1097949184,1097951231,US 1097951232,1097953279,VI 1097953280,1098070271,US @@ -13811,7 +14254,9 @@ 1101475840,1101479935,CO 1101479936,1101484031,US 1101484032,1101488127,CO -1101488128,1101542399,US +1101488128,1101521407,US +1101521408,1101521663,AS +1101521664,1101542399,US 1101542400,1101542911,CO 1101542912,1101574655,US 1101574656,1101575167,EC @@ -13999,7 +14444,9 @@ 1110448640,1110448895,CA 1110448896,1110449151,US 1110449152,1110449663,CA -1110449664,1110450431,US +1110449664,1110449919,US +1110449920,1110450175,CA +1110450176,1110450431,US 1110450432,1110450943,CA 1110450944,1110451455,US 1110451456,1110451711,CA @@ -14018,22 +14465,16 @@ 1110474240,1110540287,US 1110540288,1110573055,CA 1110573056,1110587391,PR -1110587392,1110589439,US -1110589440,1110590207,PR -1110590208,1110590719,US -1110590720,1110590975,PR -1110590976,1110591743,US -1110591744,1110592255,PR -1110592256,1110592511,US -1110592512,1110593023,PR -1110593024,1110593791,US -1110593792,1110594047,PR -1110594048,1110594303,US -1110594304,1110594559,PR -1110594560,1110595776,US +1110587392,1110587647,US +1110587648,1110588159,PR +1110588160,1110592767,US +1110592768,1110593023,PR +1110593024,1110594815,US +1110594816,1110595071,PR +1110595072,1110595776,US 1110595777,1110598655,PR -1110598656,1110598911,US -1110598912,1110638591,PR +1110598656,1110599167,US +1110599168,1110638591,PR 1110638592,1110654463,US 1110654464,1110654719,HT 1110654720,1110663167,US @@ -14064,7 +14505,9 @@ 1112432640,1112440831,CA 1112440832,1112530943,US 1112530944,1112539135,CA -1112539136,1112870911,US +1112539136,1112869887,US +1112869888,1112870143,CA +1112870400,1112870911,US 1112871936,1112873983,US 1112873984,1112875007,CA 1112875008,1112875519,US @@ -14076,7 +14519,9 @@ 1112907784,1112931327,US 1112931328,1112931839,CA 1112931840,1112932095,US -1112932352,1113591807,US +1112932352,1113501695,US +1113501696,1113501951,VI +1113501952,1113591807,US 1113591808,1113595903,CA 1113595904,1113596415,CL 1113596416,1113596927,GT @@ -14105,7 +14550,9 @@ 1113854208,1113854463,CA 1113854464,1113854975,US 1113854976,1113855487,CA -1113855488,1113997311,US +1113855488,1113984643,US +1113984644,1113984645,DE +1113984646,1113997311,US 1113997312,1114005503,CA 1114005504,1114054655,US 1114054656,1114062847,CA @@ -14120,9 +14567,11 @@ 1114512128,1114513407,US 1114513408,1114513471,SA 1114513472,1114513555,US -1114513556,1114513663,SA -1114513664,1114514175,US -1114514176,1114515455,SA +1114513556,1114513559,SA +1114513560,1114513567,US +1114513568,1114513663,SA +1114513664,1114514431,US +1114514432,1114515455,SA 1114515456,1114515463,US 1114515464,1114515471,CA 1114515472,1114517503,US @@ -14182,7 +14631,9 @@ 1116024064,1116024319,PG 1116024320,1116027135,US 1116027136,1116027903,A2 -1116027904,1116168191,US +1116027904,1116033023,US +1116033024,1116037119,HK +1116037120,1116168191,US 1116168192,1116176383,CA 1116176384,1116897279,US 1116897280,1116905471,CA @@ -14361,9 +14812,15 @@ 1119571968,1119576063,CA 1119576064,1119580159,US 1119580160,1119584255,CA -1119584256,1120149503,US +1119584256,1119611903,US +1119611904,1119612159,BR +1119612160,1119612671,US +1119612672,1119612927,AU +1119617024,1120149503,US 1120149504,1120153599,CA -1120153600,1120274943,US +1120153600,1120159487,US +1120159488,1120159743,GB +1120159744,1120274943,US 1120274944,1120274991,CA 1120274992,1120282367,US 1120282368,1120282623,SY @@ -14381,9 +14838,7 @@ 1120307968,1120308223,PH 1120308224,1120310015,US 1120310016,1120310783,PH -1120310784,1120312063,US -1120312064,1120312319,PH -1120312320,1120312575,US +1120310784,1120312575,US 1120312576,1120312831,PH 1120312832,1120315391,US 1120315392,1120317439,SG @@ -14483,11 +14938,7 @@ 1120743424,1120743679,KN 1120743680,1120744447,US 1120744448,1120744703,KN -1120744704,1120826367,US -1120826368,1120826370,CA -1120826371,1120826371,US -1120826372,1120826623,CA -1120826624,1120854015,US +1120744704,1120854015,US 1120854016,1120862207,CA 1120862208,1120874751,US 1120874752,1120875007,A2 @@ -14547,9 +14998,9 @@ 1122476032,1122480127,PR 1122480128,1122497327,US 1122497328,1122497343,BR -1122497344,1122498815,US -1122498816,1122499071,PR -1122499072,1122533375,US +1122497344,1122499071,US +1122499072,1122499327,PR +1122499328,1122533375,US 1122533376,1122535423,GB 1122535424,1122538495,KR 1122538496,1122635775,US @@ -14560,13 +15011,16 @@ 1123180544,1123184639,CA 1123184640,1123336191,US 1123336192,1123352575,CA -1123352576,1123534847,US +1123352576,1123394559,US +1123394560,1123394815,CA +1123394816,1123534847,US 1123534848,1123536895,AW 1123536896,1123589631,US 1123589632,1123589887,DE 1123589888,1123590143,US 1123590144,1123598335,VI -1123598336,1123635455,US +1123598336,1123598591,CA +1123598592,1123635455,US 1123635456,1123635639,EU 1123635640,1123635640,RU 1123635641,1123635660,EU @@ -14624,11 +15078,15 @@ 1125117184,1125117439,MA 1125117440,1125120255,US 1125120256,1125120511,MA -1125120512,1125156304,US +1125120512,1125147624,US +1125147625,1125147625,GB +1125147626,1125156304,US 1125156305,1125156305,DE 1125156306,1125237919,US 1125237920,1125237923,GB -1125237924,1125474303,US +1125237924,1125251327,US +1125251328,1125251583,VE +1125251584,1125474303,US 1125474304,1125478399,CA 1125478400,1125481215,US 1125481216,1125481727,CA @@ -14659,7 +15117,9 @@ 1126931456,1126931711,A1 1126931712,1126948863,US 1126948864,1126952959,CA -1126952960,1127677951,US +1126952960,1127147263,US +1127147264,1127147519,CA +1127147520,1127677951,US 1127677952,1127694335,CA 1127694336,1127923711,US 1127923712,1127931903,CA @@ -14669,9 +15129,13 @@ 1128641536,1128792063,CA 1128792064,1128817407,US 1128817408,1128817663,NL -1128817664,1130537471,US +1128817664,1130535935,US +1130535936,1130536191,FR +1130536192,1130537471,US 1130537472,1130537983,GU -1130537984,1133461247,US +1130537984,1130538751,US +1130538752,1130539007,GU +1130539008,1133461247,US 1133461248,1133461503,CA 1133461504,1133785351,US 1133785352,1133785359,IE @@ -14702,14 +15166,8 @@ 1137369728,1137369759,CA 1137369760,1137369855,US 1137369856,1137370111,CA -1137370112,1137376271,US -1137376272,1137376287,CA -1137376288,1137376351,US -1137376352,1137376367,CA -1137376368,1137376415,US -1137376416,1137376447,CA -1137376448,1137376463,US -1137376464,1137376543,CA +1137370112,1137376255,US +1137376256,1137376543,CA 1137376544,1137376575,US 1137376576,1137376591,CA 1137376592,1137376623,US @@ -14730,7 +15188,9 @@ 1137639424,1137680959,US 1137680960,1137680975,UA 1137680976,1137704959,US -1137704960,1137712383,CA +1137704960,1137706239,CA +1137706240,1137706495,US +1137706496,1137712383,CA 1137712384,1137712639,US 1137712640,1137713151,CA 1137713152,1137758207,US @@ -14780,10 +15240,12 @@ 1138196480,1138204671,CA 1138204672,1138212863,US 1138212864,1138216959,CA -1138216960,1138374143,US -1138374144,1138374399,AS -1138374400,1138374911,US -1138374912,1138375679,AS +1138216960,1138373887,US +1138373888,1138374143,AS +1138374144,1138374399,US +1138374400,1138374911,AS +1138374912,1138375423,US +1138375424,1138375679,AS 1138375680,1138419711,US 1138419712,1138419967,DE 1138419968,1138499583,US @@ -14806,7 +15268,9 @@ 1138774016,1138778111,CA 1138778112,1138780671,US 1138780672,1138780679,CA -1138780680,1138786303,US +1138780680,1138781183,US +1138781184,1138781439,CA +1138781440,1138786303,US 1138786304,1138819071,PR 1138819072,1138851839,CA 1138851840,1138917375,US @@ -14816,21 +15280,23 @@ 1138950144,1139146751,US 1139146752,1139154943,GT 1139154944,1139167231,JM -1139167232,1139167743,US -1139167744,1139168767,PR +1139167232,1139167487,US +1139167488,1139168767,PR 1139168768,1139169279,US -1139169280,1139170047,PR -1139170048,1139171071,US -1139171072,1139171327,PR -1139171328,1139179519,US +1139169280,1139169791,PR +1139169792,1139170815,US +1139170816,1139171071,PR +1139171072,1139179519,US 1139179520,1139195903,CA 1139195904,1139216383,US 1139216384,1139220479,CA 1139220480,1139265535,US 1139265536,1139269631,CA -1139269632,1143422591,US -1143422592,1143422719,VI -1143422720,1145188351,US +1139269632,1145099519,US +1145099520,1145099697,SA +1145099698,1145099699,US +1145099700,1145099775,SA +1145099776,1145188351,US 1145188352,1145192447,CA 1145192448,1145242111,US 1145242112,1145242367,NO @@ -14869,7 +15335,9 @@ 1151889408,1151897599,CA 1151897600,1152073727,US 1152073728,1152077823,CA -1152077824,1152114687,US +1152077824,1152085152,US +1152085153,1152085168,KN +1152085169,1152114687,US 1152114688,1152117759,CA 1152117760,1152117952,IL 1152117953,1152117953,CA @@ -14924,7 +15392,9 @@ 1158296064,1158316031,US 1158316032,1158318847,CA 1158318848,1158319103,A1 -1158319104,1158324223,CA +1158319104,1158322242,CA +1158322243,1158322243,US +1158322244,1158324223,CA 1158324224,1158340607,US 1158340608,1158344703,CA 1158344704,1158348799,US @@ -14933,8 +15403,7 @@ 1158422528,1158423551,CA 1158423552,1158427647,US 1158427648,1158428159,CA -1158428160,1158428415,US -1158428672,1158440959,US +1158428160,1158440959,US 1158440960,1158441215,CA 1158441216,1158441471,US 1158441472,1158441983,CA @@ -14949,15 +15418,7 @@ 1158799360,1158807551,CA 1158807552,1158995967,US 1158995968,1159004159,CA -1159004160,1159102719,US -1159102720,1159102975,A1 -1159102976,1159112703,US -1159112704,1159112959,A1 -1159112960,1159117055,US -1159117056,1159117311,A1 -1159117312,1159117567,US -1159117568,1159117823,A1 -1159117824,1159213055,US +1159004160,1159213055,US 1159213056,1159217151,CA 1159217152,1159249919,US 1159249920,1159254015,PR @@ -15013,15 +15474,17 @@ 1159525376,1159526399,CA 1159526400,1159527935,US 1159527936,1159528191,CA -1159528192,1159668479,US +1159528192,1159560207,US +1159560208,1159560215,MO +1159560216,1159668479,US 1159668480,1159668735,CA -1159668736,1159672319,US -1159672320,1159672831,A1 -1159672832,1159694591,US +1159668736,1159694591,US 1159694592,1159694847,CA 1159694848,1159700479,US 1159700480,1159725055,CA -1159725056,1160011775,US +1159725056,1159767039,US +1159767040,1159767295,CA +1159767296,1160011775,US 1160011776,1160019967,CA 1160019968,1160364031,US 1160364032,1160368127,CA @@ -15122,7 +15585,13 @@ 1161430912,1161430943,CA 1161430944,1161430975,US 1161430976,1161431039,CA -1161431040,1161433087,A2 +1161431040,1161431295,US +1161431296,1161431359,CA +1161431360,1161432063,US +1161432064,1161432126,CA +1161432127,1161432319,US +1161432320,1161432575,IN +1161432576,1161433087,US 1161433088,1161437183,CA 1161437184,1161453567,US 1161453568,1161457663,CA @@ -15222,7 +15691,9 @@ 1162840064,1162853375,US 1162853376,1162854399,PR 1162854400,1162858495,JM -1162858496,1162870783,US +1162858496,1162862591,US +1162862592,1162862847,PR +1162862848,1162870783,US 1162870784,1162871295,BB 1162871296,1162879999,LC 1162880000,1162882559,DM @@ -15289,7 +15760,9 @@ 1163543296,1163543551,CA 1163543552,1163544831,US 1163544832,1163545087,CA -1163545088,1163546015,US +1163545088,1163545343,US +1163545344,1163545599,CA +1163545600,1163546015,US 1163546016,1163546031,CA 1163546032,1163546623,US 1163546624,1163546879,CA @@ -15339,7 +15812,9 @@ 1163571200,1163571967,CA 1163571968,1163572223,US 1163572224,1163572479,CA -1163572480,1163575039,US +1163572480,1163572991,US +1163572992,1163573247,CA +1163573248,1163575039,US 1163575040,1163575295,IN 1163575296,1163576575,CA 1163576576,1163579903,US @@ -15377,7 +15852,11 @@ 1168393520,1168393543,US 1168393544,1168393567,CA 1168393568,1168393663,US -1168393664,1168393983,CA +1168393664,1168393791,CA +1168393792,1168393935,US +1168393936,1168393943,CA +1168393944,1168393951,US +1168393952,1168393983,CA 1168393984,1168394143,US 1168394144,1168394151,CA 1168394152,1168394279,US @@ -15548,12 +16027,14 @@ 1176925008,1176925015,NG 1176925016,1176928255,CA 1176928256,1177000703,US -1177000704,1177000711,CA -1177000712,1177000719,US -1177000720,1177000735,CA +1177000704,1177000735,CA 1177000736,1177000751,US 1177000752,1177000759,CA -1177000760,1177022975,US +1177000760,1177000791,US +1177000792,1177000799,CA +1177000800,1177000807,US +1177000808,1177000959,CA +1177000960,1177022975,US 1177022976,1177023231,GB 1177023232,1177030655,US 1177030656,1177033727,AG @@ -15568,9 +16049,7 @@ 1177164896,1177165055,US 1177165056,1177165311,CA 1177165312,1177354239,US -1177354240,1177403391,PR -1177403392,1177403647,US -1177403648,1177419775,PR +1177354240,1177419775,PR 1177419776,1177550847,US 1177550848,1178075135,CA 1178075136,1178599423,US @@ -15653,7 +16132,9 @@ 1208936296,1208936299,HK 1208936300,1208936311,US 1208936312,1208936313,ID -1208936314,1208954879,US +1208936314,1208936319,US +1208936320,1208936447,IN +1208936448,1208954879,US 1208954880,1208958975,CA 1208958976,1208975359,US 1208975360,1208983551,CA @@ -15696,14 +16177,16 @@ 1209864192,1209867263,US 1209867264,1209867519,CA 1209867520,1209917439,US -1209917440,1209918367,CA -1209918368,1209918399,US -1209918400,1209925631,CA +1209917440,1209925631,CA 1209925632,1210254935,US 1210254936,1210254943,CA -1210254944,1210259967,US +1210254944,1210256127,US +1210256128,1210256383,CA +1210256384,1210259967,US 1210259968,1210260223,CA -1210260224,1210420223,US +1210260224,1210316799,US +1210316800,1210317823,ID +1210317824,1210420223,US 1210420224,1210420479,IT 1210420480,1210421503,US 1210421504,1210421551,CA @@ -15711,7 +16194,9 @@ 1210449920,1210580991,CA 1210580992,1210925055,US 1210925056,1210941439,CA -1210941440,1211033087,US +1210941440,1211032271,US +1211032272,1211032287,DO +1211032288,1211033087,US 1211033088,1211033599,CO 1211033600,1211035711,US 1211035712,1211035775,CA @@ -15769,12 +16254,12 @@ 1211613184,1216872447,US 1216872448,1217396735,CA 1217396736,1218697215,US -1218697216,1218697471,IN -1218697472,1218987263,US +1218697216,1218697727,IN +1218697728,1218698239,US +1218698240,1218698495,IN +1218698496,1218987263,US 1218987264,1218987519,CA -1218987520,1219123967,US -1219123968,1219124223,CA -1219124224,1219256319,US +1218987520,1219256319,US 1219256320,1219264511,CA 1219264512,1219272703,US 1219272704,1219276799,CA @@ -15818,29 +16303,28 @@ 1224471569,1224473599,NL 1224473600,1224474623,US 1224474624,1224475647,GT -1224475648,1224476671,US +1224475648,1224475903,PR +1224475904,1224476671,US 1224476672,1224476927,SX -1224476928,1224476976,US -1224476977,1224476977,SX +1224476928,1224476975,US +1224476976,1224476977,SX 1224476978,1224477183,US -1224477184,1224478719,SX +1224477184,1224477439,SX +1224477440,1224477695,US +1224477696,1224478719,SX 1224478720,1224480767,US 1224480768,1224484863,JM 1224484864,1224493055,GT 1224493056,1224497151,US 1224497152,1224501247,GT -1224501248,1224503551,JM -1224503552,1224503807,BS -1224503808,1224523520,JM -1224523521,1224523775,US +1224501248,1224523519,JM +1224523520,1224523775,US 1224523776,1224525568,JM 1224525569,1224525823,US -1224525824,1224527616,JM -1224527617,1224527871,US -1224527872,1224529664,JM -1224529665,1224529919,US -1224529920,1224539904,JM -1224539905,1241743359,US +1224525824,1224539904,JM +1224539905,1238547071,US +1238547072,1238547199,PR +1238547200,1241743359,US 1241743360,1241759743,CA 1241759744,1242300415,US 1242300416,1242562559,CA @@ -15856,7 +16340,9 @@ 1245144576,1245144831,CH 1245144832,1245183999,US 1245184000,1245446143,CA -1245446144,1246890431,US +1245446144,1245450186,US +1245450187,1245450187,GU +1245450188,1246890431,US 1246890432,1246890463,CA 1246890464,1246890464,A1 1246890465,1246890495,CA @@ -15872,13 +16358,11 @@ 1246937088,1246945279,CA 1246945280,1247027199,US 1247027200,1247035391,A2 -1247035392,1247073791,US +1247035392,1247073023,US +1247073024,1247073279,CA +1247073280,1247073791,US 1247073792,1247074303,A2 -1247074304,1247119439,US -1247119440,1247119447,KW -1247119448,1247119967,US -1247119968,1247119975,KW -1247119976,1248864255,US +1247074304,1248864255,US 1248864256,1248866303,CA 1248866304,1248885759,US 1248885760,1248886783,CA @@ -15932,7 +16416,9 @@ 1249107968,1249130495,US 1249130496,1249131519,JM 1249131520,1249139711,US -1249139712,1249140735,MF +1249139712,1249140268,MF +1249140269,1249140269,FR +1249140270,1249140735,MF 1249140736,1249142015,US 1249142016,1249142271,GB 1249142272,1249146879,US @@ -16032,20 +16518,26 @@ 1249716736,1249717759,US 1249717760,1249718015,FI 1249718016,1249718271,NL -1249718272,1249720351,US +1249718272,1249720339,US +1249720340,1249720343,AU +1249720344,1249720351,US 1249720352,1249720367,JP -1249720368,1249720511,US +1249720368,1249720383,SG +1249720384,1249720511,US 1249720512,1249720527,IN -1249720528,1249720575,US +1249720528,1249720543,AU +1249720544,1249720575,US 1249720576,1249720591,FR 1249720592,1249720599,GB -1249720600,1249720607,IT +1249720600,1249720607,DE 1249720608,1249720663,GB 1249720664,1249720671,SE 1249720672,1249720711,GB 1249720712,1249720719,NL 1249720720,1249720831,GB -1249720832,1249721343,US +1249720832,1249721119,US +1249721120,1249721135,CA +1249721136,1249721343,US 1249721344,1249721351,AT 1249721352,1249721359,BE 1249721360,1249721367,CH @@ -16123,7 +16615,9 @@ 1249852160,1249886207,US 1249886208,1249902591,CA 1249902592,1254490111,US -1254490112,1254555647,CA +1254490112,1254532095,CA +1254532096,1254532223,RU +1254532224,1254555647,CA 1254555648,1254621183,US 1254621184,1254629375,CA 1254629376,1254978751,US @@ -16172,8 +16666,8 @@ 1256079360,1256087551,KY 1256087552,1264717823,US 1264717824,1264718079,CA -1264718080,1264718719,US -1264718720,1264718847,CA +1264718080,1264718591,US +1264718592,1264718847,CA 1264718848,1264719103,US 1264719104,1264719871,CA 1264719872,1264746527,US @@ -16318,7 +16812,9 @@ 1294893056,1294925823,RS 1294925824,1294958591,DE 1294958592,1294991359,UA -1294991360,1295047679,CZ +1294991360,1295024639,CZ +1295024640,1295024895,SK +1295024896,1295047679,CZ 1295047680,1295048191,SK 1295048192,1295056895,CZ 1295056896,1295122431,GR @@ -16334,17 +16830,11 @@ 1296105472,1296171007,PL 1296171008,1296203775,DK 1296203776,1296236543,RU -1296236544,1296236671,FR -1296236672,1296236799,US -1296236800,1296237439,FR +1296236544,1296237439,FR 1296237440,1296237567,IT 1296237568,1296237823,FR -1296237824,1296237824,GB -1296237825,1296237825,FR -1296237826,1296237826,GB -1296237827,1296237878,FR -1296237879,1296237879,GB -1296237880,1296238591,FR +1296237824,1296238079,GB +1296238080,1296238591,FR 1296238592,1296239103,NL 1296239104,1296239231,FR 1296239232,1296239359,NL @@ -16368,14 +16858,17 @@ 1296249024,1296249087,GB 1296249088,1296249279,FR 1296249280,1296249343,DE -1296249344,1296250367,FR +1296249344,1296249599,FR +1296249600,1296249615,GB +1296249616,1296250367,FR 1296250368,1296250399,CZ 1296250400,1296250431,DE 1296250432,1296250463,PL 1296250464,1296250495,RO 1296250496,1296250527,FR 1296250528,1296250559,DK -1296250560,1296250847,FR +1296250560,1296250623,FR +1296250624,1296250847,BE 1296250848,1296250879,GB 1296250880,1296251199,FR 1296251200,1296251231,NL @@ -16418,7 +16911,9 @@ 1296264264,1296264271,GB 1296264272,1296264287,FR 1296264288,1296264303,US -1296264304,1296269055,FR +1296264304,1296266239,FR +1296266240,1296266495,US +1296266496,1296269055,FR 1296269056,1296269311,US 1296269312,1296302079,BY 1296302080,1296334847,GB @@ -16521,7 +17016,9 @@ 1296732160,1296734207,IT 1296734208,1296736255,FR 1296736256,1296738303,NO -1296738304,1296740351,CH +1296738304,1296738815,CH +1296738816,1296739327,FI +1296739328,1296740351,CH 1296740352,1296744447,RU 1296744448,1296746495,GB 1296748544,1296750591,FR @@ -16602,9 +17099,13 @@ 1297182464,1297182719,RO 1297182720,1297184767,ES 1297184768,1297185279,BZ -1297185280,1297190143,RO +1297185280,1297185791,RO +1297185792,1297185919,NL +1297185920,1297190143,RO 1297190144,1297190399,ES -1297190400,1297196799,RO +1297190400,1297195007,RO +1297195008,1297195135,NL +1297195136,1297196799,RO 1297196800,1297197055,CN 1297197056,1297203199,RO 1297203200,1297211391,IR @@ -16748,9 +17249,13 @@ 1298956288,1298972671,GB 1298972672,1298989055,RU 1298989056,1299005439,UA -1299005440,1299010047,NL +1299005440,1299009023,NL +1299009024,1299009279,BE +1299009280,1299010047,NL 1299010048,1299010815,BE -1299010816,1299013631,NL +1299010816,1299013119,NL +1299013120,1299013375,BE +1299013376,1299013631,NL 1299013632,1299015679,BE 1299015680,1299017727,NL 1299017728,1299019775,BE @@ -16775,7 +17280,9 @@ 1299709952,1299972095,UA 1299972096,1300234239,IL 1300234240,1302331391,FR -1302331392,1303379967,NL +1302331392,1303154431,NL +1303154432,1303154687,RO +1303154688,1303379967,NL 1303379968,1304428543,DE 1304428544,1305477119,FR 1305477120,1305739263,ES @@ -16943,12 +17450,8 @@ 1307742208,1307746303,HU 1307746304,1307750399,UA 1307750400,1307754495,IT -1307754496,1307757287,GB -1307757288,1307757291,FR -1307757292,1307757292,GB -1307757293,1307757293,FR -1307757294,1307757295,GB -1307757296,1307757311,FR +1307754496,1307757055,GB +1307757056,1307757311,FR 1307757312,1307758591,GB 1307758592,1307762687,SM 1307762688,1307766783,PL @@ -17189,9 +17692,7 @@ 1311301632,1311303679,TR 1311303680,1311307775,GB 1311307776,1311309823,IS -1311309824,1311311103,GB -1311311104,1311311359,GG -1311311360,1311311871,GB +1311309824,1311311871,GB 1311311872,1311315967,CZ 1311315968,1311317247,PL 1311317248,1311317503,A2 @@ -17223,8 +17724,14 @@ 1311375360,1311506431,DE 1311506432,1311637503,CZ 1311637504,1312292863,DE -1312292864,1312817151,LT -1312817152,1313865727,SE +1312292864,1312304383,LT +1312304384,1312304639,GB +1312304640,1312564479,LT +1312564480,1312564735,RU +1312564736,1312817151,LT +1312817152,1313191295,SE +1313191296,1313191423,DK +1313191424,1313865727,SE 1313865728,1313931263,CZ 1313931264,1313996799,RU 1313996800,1314062335,SE @@ -17262,7 +17769,13 @@ 1315741696,1315745791,LB 1315745792,1315749887,CZ 1315749888,1315753983,RU -1315758080,1315762175,FR +1315758080,1315758335,FR +1315758336,1315758591,RE +1315758592,1315758847,FR +1315758848,1315759103,RE +1315759104,1315759615,FR +1315759616,1315759871,RE +1315759872,1315762175,FR 1315762176,1315766271,BG 1315766272,1315769087,NL 1315769088,1315769343,EU @@ -17335,7 +17848,9 @@ 1317371904,1317404671,PL 1317404672,1317437439,IT 1317437440,1317470207,HR -1317470208,1317502975,TR +1317470208,1317473535,TR +1317473536,1317473791,GB +1317473792,1317502975,TR 1317502976,1317535743,IE 1317535744,1317552127,GB 1317552128,1317568511,ES @@ -17347,7 +17862,9 @@ 1317627904,1317629951,RU 1317629952,1317636095,GB 1317636096,1317637119,IE -1317637120,1317642239,GB +1317637120,1317640959,GB +1317640960,1317641215,IE +1317641216,1317642239,GB 1317642240,1317642495,IE 1317642496,1317643316,GB 1317643317,1317643317,IE @@ -17361,7 +17878,9 @@ 1317650432,1317666815,PT 1317666816,1317679727,A2 1317679728,1317679735,CM -1317679736,1317683199,A2 +1317679736,1317681919,A2 +1317681920,1317682175,NG +1317682176,1317683199,A2 1317683200,1317699583,DE 1317699584,1317715967,RU 1317715968,1317732351,SA @@ -17449,7 +17968,8 @@ 1319002112,1319010303,IE 1319010304,1319018495,CY 1319018496,1319026687,IR -1319026688,1319034879,RU +1319026688,1319026943,RU +1319026944,1319034879,UA 1319034880,1319035903,NO 1319035904,1319036927,DK 1319036928,1319038975,SE @@ -17515,7 +18035,9 @@ 1331902464,1331904511,MK 1331904512,1331908607,GB 1331908608,1331910655,DE -1331912704,1331914751,DE +1331912704,1331912959,DE +1331912960,1331913215,GB +1331913216,1331914751,DE 1331914752,1331916799,RU 1331916800,1331918847,IT 1331918848,1331920895,BE @@ -17548,7 +18070,14 @@ 1332412416,1332477951,GR 1332477952,1332609023,ES 1332609024,1332613119,PL -1332613120,1332617215,UA +1332613120,1332614783,UA +1332614784,1332614911,KZ +1332614912,1332616191,UA +1332616192,1332616319,GB +1332616320,1332616447,US +1332616448,1332616959,UA +1332616960,1332617087,RU +1332617088,1332617215,CA 1332617216,1332621311,CZ 1332625408,1332629503,RU 1332629504,1332633599,DE @@ -17617,13 +18146,9 @@ 1334345728,1334378495,RU 1334378496,1334411263,IT 1334411264,1334444031,RU -1334444032,1334487295,SE -1334487296,1334487551,DK -1334487552,1334503935,SE +1334444032,1334503935,SE 1334503936,1334504191,DK -1334504192,1334508543,SE -1334508544,1334508799,DK -1334508800,1334509567,SE +1334504192,1334509567,SE 1334509568,1334542335,PL 1334542336,1334575103,RU 1334575104,1334579199,UA @@ -17641,7 +18166,10 @@ 1334620160,1334624255,DE 1334624256,1334625535,GB 1334625536,1334625791,AP -1334625792,1334628351,GB +1334625792,1334626047,AU +1334626048,1334627071,GB +1334627072,1334627327,AU +1334627328,1334628351,GB 1334628352,1334632447,IE 1334632448,1334636543,KZ 1334636544,1334640639,RU @@ -17819,50 +18347,60 @@ 1342628208,1342628223,IE 1342628224,1342701567,GB 1342701568,1342750719,RE -1342750720,1342751487,FR -1342751488,1342751743,YT -1342751744,1342752255,FR -1342752256,1342752511,YT -1342752512,1342759423,FR -1342759424,1342759679,RE -1342759680,1342759935,FR -1342759936,1342760447,RE -1342760448,1342761727,FR -1342761728,1342761983,RE -1342761984,1342762239,FR -1342762240,1342762495,YT -1342762496,1342762751,RE -1342762752,1342763775,FR -1342763776,1342764287,YT -1342764288,1342765567,FR -1342765568,1342765823,RE -1342765824,1342988287,FR +1342750720,1342751487,YT +1342751488,1342751743,FR +1342751744,1342752511,YT +1342752512,1342752767,FR +1342752768,1342753023,YT +1342753024,1342753535,FR +1342753536,1342754047,YT +1342754048,1342754303,FR +1342754304,1342754559,YT +1342754560,1342754815,FR +1342754816,1342756095,YT +1342756096,1342758911,FR +1342758912,1342759423,YT +1342759424,1342759935,FR +1342759936,1342760447,YT +1342760448,1342760703,FR +1342760704,1342761727,YT +1342761728,1342761983,FR +1342761984,1342763007,YT +1342763008,1342763263,FR +1342763264,1342764543,YT +1342764544,1342988287,FR 1342988288,1342989055,US -1342989056,1342996735,FR -1342996736,1342996991,GF -1342996992,1342997503,FR -1342997504,1342997759,GF -1342997760,1342999551,FR -1342999552,1343000063,GF -1343000064,1343000319,FR -1343000320,1343000575,GF -1343000576,1343001343,FR -1343001344,1343001599,GF -1343001600,1343002623,FR -1343002624,1343002879,GF -1343002880,1343003647,FR -1343003648,1343003903,GF -1343003904,1343004159,FR -1343004160,1343004671,GF -1343004672,1343004927,FR -1343004928,1343005439,GF -1343005440,1343007231,FR -1343007232,1343007487,GF -1343007488,1343009023,FR -1343009024,1343009791,GF -1343009792,1343012095,FR -1343012096,1343012607,GF -1343012608,1343017983,FR +1342989056,1342996479,FR +1342996480,1342997759,GF +1342997760,1342998015,FR +1342998016,1342998783,GF +1342998784,1342999039,FR +1342999040,1342999807,GF +1342999808,1343000063,FR +1343000064,1343000575,GF +1343000576,1343000831,FR +1343000832,1343001087,GF +1343001088,1343001599,FR +1343001600,1343001855,GF +1343001856,1343002367,FR +1343002368,1343003391,GF +1343003392,1343004159,FR +1343004160,1343004415,GF +1343004416,1343004671,FR +1343004672,1343005951,GF +1343005952,1343006207,FR +1343006208,1343006975,GF +1343006976,1343007743,FR +1343007744,1343007999,GF +1343008000,1343008255,FR +1343008256,1343009791,GF +1343009792,1343010303,FR +1343010304,1343010815,GF +1343010816,1343011071,FR +1343011072,1343011327,GF +1343011328,1343011583,FR +1343011584,1343012863,GF +1343012864,1343017983,FR 1343017984,1343018495,RE 1343018496,1343025151,FR 1343025152,1343025663,RE @@ -17973,7 +18511,9 @@ 1346740224,1346744319,FI 1346744320,1346748415,RU 1346748416,1346752511,DE -1346752512,1346756607,FR +1346752512,1346753791,FR +1346753792,1346754303,RE +1346754304,1346756607,FR 1346756608,1346760703,SE 1346760704,1346764799,IR 1346764800,1346768895,DK @@ -18072,7 +18612,11 @@ 1347186688,1347190783,GB 1347190784,1347194879,RU 1347194880,1347198975,SE -1347198976,1347203071,QA +1347198976,1347200561,QA +1347200562,1347200562,US +1347200563,1347200767,QA +1347200768,1347201023,US +1347201024,1347203071,QA 1347203072,1347207167,RU 1347207168,1347215359,GB 1347215360,1347223551,RU @@ -18373,7 +18917,9 @@ 1347481600,1347485695,AT 1347485696,1347493887,DE 1347493888,1347502079,LV -1347502080,1347505159,ES +1347502080,1347503103,ES +1347503104,1347503359,KR +1347503360,1347505159,ES 1347505160,1347505167,GB 1347505168,1347505215,ES 1347505216,1347505247,GB @@ -18602,7 +19148,9 @@ 1348411392,1348415487,RU 1348415488,1348419583,GB 1348419584,1348427775,HU -1348427776,1348435967,CZ +1348427776,1348429823,CZ +1348429824,1348430079,AU +1348430080,1348435967,CZ 1348435968,1348440063,FI 1348440064,1348444159,DE 1348444160,1348448255,NL @@ -18620,7 +19168,9 @@ 1349124096,1349255167,GR 1349255168,1349451775,AT 1349451776,1349517311,IE -1349517312,1349763071,NL +1349517312,1349554687,NL +1349554688,1349554943,NO +1349554944,1349763071,NL 1349763072,1349771263,RU 1349771264,1349779455,NL 1349779456,1349910527,IT @@ -18660,7 +19210,9 @@ 1353271776,1353271807,AT 1353271808,1353272079,GB 1353272080,1353272095,ES -1353272096,1353275247,GB +1353272096,1353273407,GB +1353273408,1353273423,BE +1353273424,1353275247,GB 1353275248,1353275255,ES 1353275256,1353277439,GB 1353277440,1353279487,CH @@ -18672,17 +19224,23 @@ 1353286368,1353286399,EU 1353286400,1353287959,GB 1353287960,1353287967,IE -1353287968,1353298783,GB +1353287968,1353288191,GB +1353288192,1353288447,IE +1353288448,1353289215,GB +1353289216,1353289471,IE +1353289472,1353298783,GB 1353298784,1353298815,SE 1353298816,1353298895,GB 1353298896,1353298911,SE 1353298912,1353298943,GB 1353298944,1353299455,SE -1353299456,1353300079,GB +1353299456,1353300063,GB +1353300064,1353300071,SE +1353300072,1353300079,GB 1353300080,1353300095,SE -1353300096,1353306695,GB -1353306696,1353306703,BE -1353306704,1353308159,GB +1353300096,1353306623,GB +1353306624,1353306879,BE +1353306880,1353308159,GB 1353308160,1353309183,FR 1353309184,1353312447,GB 1353312448,1353312479,CH @@ -18745,9 +19303,11 @@ 1357316096,1357317119,EU 1357317120,1357317375,GB 1357317376,1357317631,A2 -1357317632,1357318159,EU -1357318160,1357318191,GB -1357318192,1357318399,EU +1357317632,1357318151,EU +1357318152,1357318159,GR +1357318160,1357318207,GB +1357318208,1357318215,IT +1357318216,1357318399,EU 1357318400,1357318655,FR 1357318656,1357318911,EU 1357318912,1357319167,DE @@ -18763,10 +19323,13 @@ 1357323520,1357323775,GB 1357323776,1357323791,FI 1357323792,1357324287,EU -1357324288,1357325311,GB +1357324288,1357324295,RU +1357324296,1357325311,GB 1357325312,1357326335,EU 1357326336,1357326337,ES -1357326338,1357327359,EU +1357326338,1357326847,EU +1357326848,1357327103,GB +1357327104,1357327359,EU 1357327360,1357327615,FR 1357327616,1357328383,EU 1357328384,1357328671,GB @@ -18779,8 +19342,8 @@ 1357331200,1357335807,EU 1357335808,1357336063,IT 1357336064,1357337599,EU -1357337600,1357337631,NL -1357337632,1357340671,EU +1357337600,1357337635,NL +1357337636,1357340671,EU 1357340672,1357341695,GB 1357341696,1357342975,EU 1357342976,1357343231,GB @@ -18800,35 +19363,42 @@ 1357347456,1357347583,FR 1357347584,1357347615,EU 1357347616,1357347659,FR -1357347660,1357347839,EU +1357347660,1357347663,EU +1357347664,1357347671,FR +1357347672,1357347679,EU +1357347680,1357347711,FR +1357347712,1357347839,EU 1357347840,1357348095,PL 1357348096,1357348383,EU 1357348384,1357348415,ES 1357348416,1357348479,EU 1357348480,1357348607,ES 1357348608,1357350399,EU -1357350400,1357350607,GB -1357350608,1357350655,EU +1357350400,1357350623,GB +1357350624,1357350655,EU 1357350656,1357350783,GB 1357350784,1357351167,EU 1357351168,1357351423,PL -1357351424,1357360063,EU -1357360064,1357360127,GB -1357360128,1357361151,EU +1357351424,1357355519,EU +1357355520,1357355775,FR +1357355776,1357360063,EU +1357360064,1357360383,GB +1357360384,1357361151,EU 1357361152,1357363199,GB 1357363200,1357364223,QA 1357364224,1357365247,ES -1357365248,1357366879,EU -1357366880,1357366911,GB -1357366912,1357366959,EU +1357365248,1357366783,EU +1357366784,1357366959,NL 1357366960,1357366967,BE -1357366968,1357366975,EU +1357366968,1357366975,NL 1357366976,1357367039,GB 1357367040,1357368351,EU 1357368352,1357368383,NL 1357368384,1357368575,EU 1357368576,1357368831,NL -1357368832,1357372415,EU +1357368832,1357371391,EU +1357371392,1357371647,GB +1357371648,1357372415,EU 1357372416,1357372927,GB 1357372928,1357373467,EU 1357373468,1357373471,GB @@ -18839,12 +19409,10 @@ 1357373540,1357373543,PT 1357373544,1357373555,GB 1357373556,1357373567,EU -1357373568,1357373695,GB -1357373696,1357373951,EU -1357373952,1357375135,GB +1357373568,1357375135,GB 1357375136,1357377535,EU -1357377536,1357377671,FR -1357377672,1357377695,EU +1357377536,1357377679,FR +1357377680,1357377695,EU 1357377696,1357378559,FR 1357378560,1357381631,EU 1357381632,1357414399,NO @@ -18887,7 +19455,9 @@ 1357879296,1357879423,DE 1357879424,1357879935,EU 1357879936,1357880063,GB -1357880064,1357884159,EU +1357880064,1357883647,EU +1357883648,1357883903,SE +1357883904,1357884159,EU 1357884160,1357884415,GB 1357884416,1357885119,EU 1357885120,1357885183,DE @@ -18965,9 +19535,7 @@ 1357979648,1357983743,KZ 1357983744,1357984103,GB 1357984104,1357984119,IT -1357984120,1357984367,GB -1357984368,1357984375,IT -1357984376,1357984527,GB +1357984120,1357984527,GB 1357984528,1357984535,IT 1357984536,1357984543,GB 1357984544,1357984551,IT @@ -19017,7 +19585,12 @@ 1358147584,1358151679,GB 1358151680,1358155775,DE 1358155776,1358159871,CH -1358163968,1358168063,FR +1358163968,1358164479,FR +1358164480,1358164735,MQ +1358164736,1358164991,FR +1358164992,1358165247,MQ +1358165248,1358167807,FR +1358167808,1358168063,GP 1358168064,1358172159,GB 1358172160,1358176255,CY 1358176256,1358180351,RU @@ -19138,7 +19711,9 @@ 1358670976,1358670991,PT 1358670992,1358671001,GB 1358671002,1358671002,PT -1358671003,1358671935,GB +1358671003,1358671359,GB +1358671360,1358671615,PT +1358671616,1358671935,GB 1358671936,1358671943,PT 1358671944,1358675967,GB 1358675968,1358676991,SE @@ -19246,7 +19821,8 @@ 1359119232,1359119359,DE 1359119360,1359120383,NL 1359120384,1359121407,DK -1359121408,1359134719,DE +1359121408,1359122431,ES +1359122432,1359134719,DE 1359134720,1359151103,CZ 1359151104,1359167487,DE 1359167488,1359172095,GB @@ -19269,7 +19845,9 @@ 1359413248,1359429631,DE 1359429632,1359446015,LT 1359446016,1359462399,DK -1359462400,1359470591,DE +1359462400,1359467007,DE +1359467008,1359467263,US +1359467264,1359470591,DE 1359470592,1359478783,CH 1359478784,1359511551,TR 1359511552,1359544319,SE @@ -19580,7 +20158,9 @@ 1364526592,1364528639,GB 1364528640,1364529663,NL 1364529664,1364530175,GB -1364530176,1364541439,NL +1364530176,1364537343,NL +1364537344,1364537599,IS +1364537600,1364541439,NL 1364541440,1364545535,SE 1364545536,1364581375,NL 1364581376,1364582399,LY @@ -19657,7 +20237,9 @@ 1365015920,1365016575,US 1365016576,1365020671,ES 1365020672,1365024767,CZ -1365024768,1365028863,DE +1365024768,1365025151,DE +1365025152,1365025215,AT +1365025216,1365028863,DE 1365028864,1365032959,NL 1365032960,1365041151,PT 1365041152,1365044735,FR @@ -19889,7 +20471,9 @@ 1372685664,1372685679,DE 1372685680,1372688383,EU 1372688384,1372689407,DE -1372689408,1372690431,EU +1372689408,1372689919,EU +1372689920,1372690175,DE +1372690176,1372690431,EU 1372690432,1372691455,DE 1372691456,1372693503,EU 1372693504,1372694015,DE @@ -19922,88 +20506,125 @@ 1373437952,1373503487,CH 1373503488,1373569023,RU 1373569024,1373634559,AT -1373634560,1374683135,SE +1373634560,1374433279,SE +1374433280,1374433535,DK +1374433536,1374683135,SE 1374683136,1375080959,BE 1375080960,1375081215,EU 1375081216,1375207423,BE -1375207424,1375209215,FR -1375209216,1375209471,MQ -1375209472,1375209983,FR -1375209984,1375210239,MQ +1375207424,1375207679,FR +1375207680,1375208447,MQ +1375208448,1375208703,GP +1375208704,1375208959,FR +1375208960,1375210239,MQ 1375210240,1375210495,GP -1375210496,1375214335,FR -1375214336,1375214591,GP -1375214592,1375215103,FR -1375215104,1375215359,GP -1375215360,1375215615,FR +1375210496,1375211263,MQ +1375211264,1375211519,FR +1375211520,1375213055,GP +1375213056,1375213311,FR +1375213312,1375215615,GP 1375215616,1375215871,GF -1375215872,1375216639,FR -1375216640,1375216895,GF -1375216896,1375217151,FR -1375217152,1375217407,GF -1375217408,1375219711,FR -1375219712,1375219967,GF -1375219968,1375221503,FR -1375221504,1375221759,GF -1375221760,1375223807,FR -1375223808,1375224063,MQ -1375224064,1375224319,FR -1375224320,1375224831,MQ -1375224832,1375225087,FR -1375225088,1375225343,MQ -1375225344,1375227903,FR -1375227904,1375228415,MQ -1375228416,1375229951,FR -1375229952,1375230207,MQ -1375230208,1375232767,FR -1375232768,1375233023,MQ -1375233024,1375233535,FR -1375233536,1375233791,MQ -1375233792,1375235071,FR +1375215872,1375216127,FR +1375216128,1375216639,GF +1375216640,1375217663,FR +1375217664,1375217919,GF +1375217920,1375218175,FR +1375218176,1375218687,GF +1375218688,1375218943,FR +1375218944,1375220735,GF +1375220736,1375221759,FR +1375221760,1375222015,GF +1375222016,1375222783,FR +1375222784,1375223039,GF +1375223040,1375223295,FR +1375223296,1375223551,GF +1375223552,1375224831,FR +1375224832,1375225087,MQ +1375225088,1375226111,FR +1375226112,1375226367,MQ +1375226368,1375226623,FR +1375226624,1375227391,MQ +1375227392,1375227647,FR +1375227648,1375227903,MQ +1375227904,1375228415,FR +1375228416,1375228671,MQ +1375228672,1375229183,FR +1375229184,1375229439,MQ +1375229440,1375230719,FR +1375230720,1375230975,MQ +1375230976,1375231487,FR +1375231488,1375231743,MQ +1375231744,1375234047,FR +1375234048,1375234303,MQ +1375234304,1375234559,FR +1375234560,1375234815,MQ +1375234816,1375235071,FR 1375235072,1375235583,MQ 1375235584,1375236095,FR 1375236096,1375236351,MQ -1375236352,1375237375,FR -1375237376,1375237631,MQ -1375237632,1375238399,FR -1375238400,1375239167,MQ -1375239168,1375243263,FR -1375243264,1375243519,GP -1375243520,1375243775,FR +1375236352,1375237887,FR +1375237888,1375238143,MQ +1375238144,1375238655,FR +1375238656,1375238911,MQ +1375238912,1375239167,FR +1375239168,1375239423,MQ +1375239424,1375242495,FR +1375242496,1375242751,GP +1375242752,1375243007,FR +1375243008,1375243263,GP +1375243264,1375243775,FR 1375243776,1375244031,GP -1375244032,1375244287,FR -1375244288,1375244543,GP -1375244544,1375246591,FR -1375246592,1375246847,GP -1375246848,1375254271,FR -1375254272,1375254527,GP +1375244032,1375246079,FR +1375246080,1375246591,GP +1375246592,1375247871,FR +1375247872,1375248383,GP +1375248384,1375250687,FR +1375250688,1375251199,GP +1375251200,1375251711,FR +1375251712,1375252223,GP +1375252224,1375252735,FR +1375252736,1375253247,GP +1375253248,1375253503,FR +1375253504,1375253759,GP +1375253760,1375254015,FR +1375254016,1375254527,GP 1375254528,1375255039,FR 1375255040,1375255295,GP -1375255296,1375255807,FR -1375255808,1375256063,GP -1375256064,1375257087,FR -1375257088,1375257343,RE -1375257344,1375258111,FR -1375258112,1375258367,RE -1375258368,1375260062,FR +1375255296,1375255551,FR +1375255552,1375255807,GP +1375255808,1375256575,FR +1375256576,1375257599,RE +1375257600,1375258111,FR +1375258112,1375258623,RE +1375258624,1375260062,FR 1375260063,1375260063,RE -1375260064,1375261439,FR -1375261440,1375261695,RE -1375261696,1375262463,FR -1375262464,1375262719,RE -1375262720,1375263743,FR -1375263744,1375264255,RE -1375264256,1375269631,FR +1375260064,1375260927,FR +1375260928,1375262463,RE +1375262464,1375262975,FR +1375262976,1375263487,RE +1375263488,1375264255,FR +1375264256,1375264511,RE +1375264512,1375264767,FR +1375264768,1375265791,RE +1375265792,1375266303,FR +1375266304,1375266815,RE +1375266816,1375269119,FR +1375269120,1375269375,RE +1375269376,1375269631,FR 1375269632,1375270143,RE -1375270144,1375552511,FR +1375270144,1375270399,FR +1375270400,1375270655,RE +1375270656,1375270911,FR +1375270912,1375271679,RE +1375271680,1375552511,FR 1375552512,1375553535,EU 1375553536,1375705984,FR 1375705985,1375705985,EU 1375705986,1375731711,FR 1375731712,1375844607,GB -1375844608,1375844744,US -1375844745,1375844745,GB -1375844746,1375844863,US +1375844608,1375844735,US +1375844736,1375844767,GB +1375844768,1375844863,US 1375844864,1378719197,GB 1378719198,1378719198,EU 1378719199,1378877439,GB @@ -20342,7 +20963,9 @@ 1388583424,1388584959,FR 1388584960,1388587455,EU 1388587456,1388587471,GB -1388587472,1388589055,EU +1388587472,1388587519,EU +1388587520,1388587775,GB +1388587776,1388589055,EU 1388589056,1388589823,GB 1388589824,1388591103,EU 1388591104,1388591359,AU @@ -20356,7 +20979,9 @@ 1388642304,1388650495,FI 1388650496,1388658687,PL 1388658688,1388666879,GB -1388666880,1388671097,FR +1388666880,1388667647,FR +1388667648,1388668159,RE +1388668160,1388671097,FR 1388671098,1388671098,RE 1388671099,1388671763,FR 1388671764,1388671764,RE @@ -20577,9 +21202,7 @@ 1397489664,1397751807,CH 1397751808,1398276095,NL 1398276096,1398800383,DK -1398800384,1398817279,KW -1398817280,1398817535,US -1398817536,1398833151,KW +1398800384,1398833151,KW 1398833152,1398865919,NL 1398865920,1398867967,RU 1398867968,1398870015,NL @@ -20689,7 +21312,10 @@ 1401544704,1401546751,GB 1401546752,1401548799,IT 1401548800,1401550847,FR -1401550848,1401552895,GB +1401550848,1401551103,JE +1401551104,1401551615,GB +1401551616,1401552639,JE +1401552640,1401552895,GB 1401552896,1401554943,NL 1401554944,1401556991,IE 1401556992,1401563135,GB @@ -20801,9 +21427,9 @@ 1402273792,1402277631,RU 1402277632,1402277887,TJ 1402277888,1402290175,RU -1402290176,1402306204,NL -1402306205,1402306205,DE -1402306206,1402306559,NL +1402290176,1402306047,NL +1402306048,1402306303,DE +1402306304,1402306559,NL 1402306560,1402322943,IT 1402322944,1402339327,RU 1402339328,1402355711,CH @@ -20817,7 +21443,9 @@ 1402421248,1402422271,FR 1402422272,1402429439,GB 1402429440,1402430463,US -1402430464,1402437631,GB +1402430464,1402433600,GB +1402433601,1402433601,FR +1402433602,1402437631,GB 1402437632,1402454015,DK 1402454016,1402470399,GB 1402470400,1402994687,FR @@ -21001,53 +21629,109 @@ 1405063168,1405067263,NO 1405067264,1405083647,EE 1405083648,1405091839,SE -1405091840,1405814015,FR -1405814016,1405814271,MQ -1405814272,1405814527,FR -1405814528,1405814783,MQ -1405814784,1405815295,FR -1405815296,1405815551,MQ -1405815552,1405819647,FR -1405819648,1405819903,MQ -1405819904,1405820927,FR -1405820928,1405821183,MQ -1405821184,1405822719,FR -1405822720,1405823231,MQ -1405823232,1405823999,FR -1405824000,1405824255,MQ -1405824256,1405827583,FR -1405827584,1405827839,MQ -1405827840,1405828095,FR -1405828096,1405828607,MQ -1405828608,1405831167,FR -1405831168,1405831423,MQ -1405831424,1405832703,FR -1405832704,1405832959,MQ -1405832960,1405838335,FR -1405838336,1405838591,MQ -1405838592,1405838847,FR -1405838848,1405839103,MQ -1405839104,1405850879,FR -1405850880,1405851135,MQ -1405851136,1405861887,FR -1405861888,1405862143,MQ -1405862144,1405862399,FR +1405091840,1405812991,FR +1405812992,1405813759,MQ +1405813760,1405814271,FR +1405814272,1405814527,MQ +1405814528,1405814783,FR +1405814784,1405815295,MQ +1405815296,1405816319,FR +1405816320,1405817343,MQ +1405817344,1405817599,FR +1405817600,1405819903,MQ +1405819904,1405820159,FR +1405820160,1405821439,MQ +1405821440,1405821695,FR +1405821696,1405821951,MQ +1405821952,1405822207,FR +1405822208,1405823231,MQ +1405823232,1405823487,FR +1405823488,1405823743,MQ +1405823744,1405823999,FR +1405824000,1405825535,MQ +1405825536,1405826047,FR +1405826048,1405826559,MQ +1405826560,1405826815,FR +1405826816,1405827583,MQ +1405827584,1405827839,FR +1405827840,1405828351,MQ +1405828352,1405828607,FR +1405828608,1405828863,MQ +1405828864,1405829119,FR +1405829120,1405829375,MQ +1405829376,1405829631,FR +1405829632,1405830143,MQ +1405830144,1405830399,FR +1405830400,1405830911,MQ +1405830912,1405831167,FR +1405831168,1405834495,MQ +1405834496,1405835007,FR +1405835008,1405835519,MQ +1405835520,1405835775,FR +1405835776,1405836031,MQ +1405836032,1405836287,FR +1405836288,1405836543,MQ +1405836544,1405837311,FR +1405837312,1405837567,MQ +1405837568,1405837823,FR +1405837824,1405838079,MQ +1405838080,1405838335,FR +1405838336,1405839103,MQ +1405839104,1405839359,FR +1405839360,1405840383,MQ +1405840384,1405840895,FR +1405840896,1405846015,MQ +1405846016,1405846271,FR +1405846272,1405846783,MQ +1405846784,1405847039,FR +1405847040,1405847551,MQ +1405847552,1405847807,FR +1405847808,1405848063,MQ +1405848064,1405849599,FR +1405849600,1405850879,MQ +1405850880,1405851391,FR +1405851392,1405851647,MQ +1405851648,1405851903,FR +1405851904,1405852159,MQ +1405852160,1405852415,FR +1405852416,1405852927,MQ +1405852928,1405853439,FR +1405853440,1405853695,MQ +1405853696,1405853951,FR +1405853952,1405854207,MQ +1405854208,1405854975,FR +1405854976,1405855743,MQ +1405855744,1405855999,FR +1405856000,1405858047,MQ +1405858048,1405858559,FR +1405858560,1405860607,MQ +1405860608,1405860863,FR +1405860864,1405861887,MQ +1405861888,1405862399,FR 1405862400,1405862655,MQ -1405862656,1405864191,FR -1405864192,1405864447,MQ -1405864448,1405865471,FR -1405865472,1405865727,MQ -1405865728,1405867263,FR -1405867264,1405867519,MQ -1405867520,1405867775,FR -1405867776,1405868031,MQ -1405868032,1405871103,FR -1405871104,1405871359,MQ -1405871360,1405872895,FR -1405872896,1405873151,MQ -1405873152,1405875967,FR -1405875968,1405876223,MQ -1405876224,1406140415,FR +1405862656,1405863423,FR +1405863424,1405864191,MQ +1405864192,1405866495,FR +1405866496,1405867519,MQ +1405867520,1405868031,FR +1405868032,1405868287,MQ +1405868288,1405868799,FR +1405868800,1405869055,MQ +1405869056,1405869311,FR +1405869312,1405870591,MQ +1405870592,1405870847,FR +1405870848,1405871103,MQ +1405871104,1405871359,FR +1405871360,1405872127,MQ +1405872128,1405872639,FR +1405872640,1405873919,MQ +1405873920,1405874175,FR +1405874176,1405874431,MQ +1405874432,1405874687,FR +1405874688,1405876479,MQ +1405876480,1405876735,FR +1405876736,1405878271,MQ +1405878272,1406140415,FR 1406140416,1406205951,CZ 1406205952,1406271487,SE 1406271488,1406337023,IE @@ -21062,7 +21746,9 @@ 1406689280,1406697471,SE 1406697472,1406705663,GB 1406705664,1406708735,IT -1406708736,1406709759,A2 +1406708736,1406709247,A2 +1406709248,1406709503,IT +1406709504,1406709759,A2 1406709760,1406713855,IT 1406713856,1406722047,AT 1406722048,1406730239,DE @@ -21081,12 +21767,17 @@ 1406793844,1406793847,GB 1406793848,1406794751,ES 1406794752,1406795775,NL -1406795776,1406803967,GB +1406795776,1406796799,GB +1406796800,1406797311,IM +1406797312,1406803711,GB +1406803712,1406803967,IM 1406803968,1406812159,DE 1406812160,1406820351,SE 1406820352,1406828543,PL 1406828544,1406836735,GB -1406836736,1406844927,AT +1406836736,1406837247,AT +1406837248,1406837503,GB +1406837504,1406844927,AT 1406844928,1406853119,MD 1406853120,1406861311,UA 1406861312,1406869503,RU @@ -21176,7 +21867,9 @@ 1408106496,1408172031,PL 1408172032,1408237567,RU 1408237568,1408270335,CZ -1408270336,1408303103,PT +1408270336,1408283327,PT +1408283328,1408283391,GB +1408283392,1408303103,PT 1408303104,1408335871,LV 1408335872,1408368639,SE 1408368640,1408376831,NO @@ -21226,7 +21919,9 @@ 1409941504,1410007039,PL 1410007040,1410017791,A2 1410017792,1410017792,DE -1410017793,1410072575,A2 +1410017793,1410030335,A2 +1410030336,1410030591,US +1410030592,1410072575,A2 1410072576,1410203647,GB 1410203648,1410212863,FR 1410212864,1410213119,GB @@ -21267,7 +21962,9 @@ 1410539520,1410547711,GB 1410547712,1410555903,CZ 1410555904,1410564095,GB -1410564096,1410572287,SE +1410564096,1410568991,SE +1410568992,1410569007,NO +1410569008,1410572287,SE 1410572288,1410588671,DE 1410588672,1410596863,GB 1410596864,1410605055,ES @@ -21399,7 +22096,8 @@ 1412406272,1412408831,RU 1412408832,1412409343,RO 1412409344,1412412159,RU -1412412160,1412412671,RO +1412412160,1412412415,UA +1412412416,1412412671,RO 1412412672,1412413439,RU 1412413440,1412413951,RO 1412413952,1412414719,RU @@ -21496,7 +22194,8 @@ 1422911488,1422915583,GB 1422915584,1422916607,EU 1422916608,1422916863,GB -1422916864,1422917343,EU +1422916864,1422917119,EU +1422917120,1422917343,GB 1422917344,1422917375,NL 1422917376,1422917631,EU 1422917632,1423441919,NO @@ -21672,7 +22371,11 @@ 1426660659,1426669567,RO 1426669568,1426685951,IR 1426685952,1426702335,TJ -1426702336,1426716159,LV +1426702336,1426702591,LV +1426702592,1426702847,RU +1426702848,1426706687,LV +1426706688,1426706943,GB +1426706944,1426716159,LV 1426716160,1426716415,RU 1426716416,1426718719,LV 1426718720,1426731007,SI @@ -21838,7 +22541,10 @@ 1432131584,1432133631,US 1432133632,1432150015,GB 1432150016,1432158207,BA -1432158208,1432159487,DE +1432158208,1432158463,RO +1432158464,1432158719,DE +1432158720,1432158975,LB +1432158976,1432159487,DE 1432159488,1432159743,AE 1432159744,1432166399,DE 1432166400,1432174591,RU @@ -21892,10 +22598,14 @@ 1433608704,1433610239,GB 1433610240,1433612287,US 1433612288,1433614335,GB -1433614336,1433615027,DE +1433614336,1433614591,NL +1433614592,1433615027,DE 1433615028,1433615028,EU 1433615029,1433615359,DE -1433615360,1433616383,GB +1433615360,1433615615,FR +1433615616,1433615871,GB +1433615872,1433616127,IT +1433616128,1433616383,GB 1433616384,1433624575,AE 1433624576,1433632767,LV 1433632768,1433640959,GI @@ -21975,8 +22685,8 @@ 1434451968,1434517503,PL 1434517504,1434550271,DK 1434550272,1434583039,SA -1434583040,1434595327,BG -1434595328,1434596351,MK +1434583040,1434595583,BG +1434595584,1434596351,MK 1434596352,1434611711,BG 1434611712,1434613759,MK 1434613760,1434615807,BG @@ -22014,10 +22724,10 @@ 1436444672,1436446719,BE 1436446720,1436450815,FR 1436450816,1436452863,BH -1436452864,1436453314,GB +1436452864,1436453119,GB +1436453120,1436453314,DE 1436453315,1436453315,EU -1436453316,1436453375,GB -1436453376,1436453631,DE +1436453316,1436453631,DE 1436453632,1436453887,EU 1436453888,1436454911,GB 1436454912,1436456959,AZ @@ -22078,7 +22788,12 @@ 1438384128,1438400511,FI 1438400512,1438433279,SE 1438433280,1438515199,GB -1438515200,1438560255,DE +1438515200,1438553855,DE +1438553856,1438554111,BR +1438554112,1438554623,US +1438554624,1438555135,DE +1438555136,1438555391,US +1438555392,1438560255,DE 1438560256,1438562303,US 1438562304,1438580735,DE 1438580736,1438613503,NL @@ -22155,7 +22870,13 @@ 1439372544,1439372799,JP 1439372800,1439373311,NL 1439373312,1439373567,SE -1439373568,1439383551,NL +1439373568,1439374335,NL +1439374336,1439375359,IT +1439375360,1439375615,ES +1439375616,1439376383,NL +1439376384,1439377407,CN +1439377408,1439378431,IT +1439378432,1439383551,NL 1439383552,1439399935,FR 1439399936,1439432703,DK 1439432704,1439437823,RO @@ -22191,7 +22912,8 @@ 1439468544,1439469567,ES 1439469568,1439475711,RO 1439475712,1439475967,IN -1439475968,1439477759,RO +1439475968,1439476735,RO +1439476736,1439477759,IN 1439477760,1439479807,MD 1439479808,1439482367,RO 1439482368,1439482879,DK @@ -22249,7 +22971,8 @@ 1440546816,1440579583,NO 1440579584,1440645119,PL 1440645120,1440653311,GB -1440653312,1440669695,RS +1440653312,1440665599,RS +1440665600,1440669695,DE 1440669696,1440671743,NL 1440671744,1440672767,EE 1440672768,1440710655,NL @@ -22439,7 +23162,9 @@ 1449728000,1449728255,MD 1449728256,1449734143,RO 1449734144,1449736191,IT -1449736192,1449742335,RO +1449736192,1449736447,RO +1449736448,1449736703,MD +1449736704,1449742335,RO 1449742336,1449744383,MD 1449744384,1449750527,RO 1449750528,1449752575,SE @@ -22533,7 +23258,8 @@ 1449893888,1449895935,MD 1449895936,1449900543,RO 1449900544,1449901055,MD -1449901056,1449901823,RO +1449901056,1449901311,RO +1449901312,1449901823,FR 1449901824,1449902079,DE 1449902080,1449902335,RO 1449902336,1449903103,GB @@ -22554,7 +23280,9 @@ 1450041344,1450049535,DE 1450049536,1450057727,RU 1450057728,1450065919,EE -1450065920,1450074111,DE +1450065920,1450067135,DE +1450067136,1450067199,AT +1450067200,1450074111,DE 1450074112,1450082303,RU 1450082304,1450090495,IT 1450090496,1450106879,RU @@ -22854,9 +23582,7 @@ 1475575808,1475592191,AT 1475592192,1475608575,GB 1475608576,1475624959,RU -1475624960,1475636287,JE -1475636288,1475636351,GB -1475636352,1475638783,JE +1475624960,1475638783,JE 1475638784,1475639039,GB 1475639040,1475639391,JE 1475639392,1475639399,GB @@ -22872,7 +23598,9 @@ 1475641344,1475657727,UA 1475657728,1475674111,SK 1475674112,1475690495,DE -1475690496,1475706879,CH +1475690496,1475693055,CH +1475693056,1475693311,DE +1475693312,1475706879,CH 1475706880,1475723263,RU 1475723264,1475723839,GB 1475723840,1475723903,RU @@ -23012,7 +23740,9 @@ 1481719808,1481727999,CZ 1481728000,1481736191,IE 1481736192,1481741055,GG -1481741056,1481744383,GB +1481741056,1481741823,GB +1481741824,1481742079,GG +1481742080,1481744383,GB 1481744384,1481752575,IT 1481752576,1481760767,RU 1481760768,1481768959,UA @@ -23082,7 +23812,9 @@ 1485242368,1485246463,RU 1485246464,1485250559,UA 1485250560,1485254655,IR -1485254656,1485266943,RU +1485254656,1485259007,RU +1485262848,1485263103,UA +1485263104,1485266943,RU 1485266944,1485271039,RO 1485271040,1485275135,UA 1485275136,1485283327,LV @@ -23091,15 +23823,7 @@ 1485307904,1485832191,FR 1485832192,1485963263,GB 1485963264,1486028799,CZ -1486028800,1486031615,IT -1486031616,1486031871,BE -1486031872,1486032383,IT -1486032384,1486032639,BE -1486032640,1486038271,IT -1486038272,1486038527,BE -1486038528,1486040319,IT -1486040320,1486040575,BE -1486040576,1486061567,IT +1486028800,1486061567,IT 1486061568,1486094335,RU 1486094336,1486127103,ES 1486127104,1486159871,FI @@ -23287,12 +24011,29 @@ 1490944000,1491075071,LT 1491075072,1493172223,TR 1493172224,1493303295,DE -1493303296,1493434367,FR +1493303296,1493431551,FR +1493431552,1493432319,GP +1493432320,1493433087,FR +1493433088,1493433343,MQ +1493433344,1493434111,FR +1493434112,1493434367,MQ 1493434368,1493565439,SA 1493565440,1493696511,ES 1493696512,1493958655,NO 1493958656,1494220799,DE -1494220800,1494228991,FR +1494220800,1494221823,FR +1494221824,1494222335,RE +1494222336,1494222591,FR +1494222592,1494222847,RE +1494222848,1494223103,FR +1494223104,1494223359,RE +1494223360,1494224127,FR +1494224128,1494224383,RE +1494224384,1494224639,FR +1494224640,1494224895,RE +1494224896,1494227199,FR +1494227200,1494227711,GP +1494227712,1494228991,FR 1494228992,1494237183,RU 1494237184,1494245375,IE 1494245376,1494253567,RU @@ -23394,9 +24135,9 @@ 1495153664,1495160239,EU 1495160240,1495160255,FR 1495160256,1495160263,GB -1495160264,1495163551,EU -1495163552,1495163567,FR -1495163568,1495168639,EU +1495160264,1495163391,EU +1495163392,1495163647,FR +1495163648,1495168639,EU 1495168640,1495168655,FR 1495168656,1495169023,EU 1495169024,1495169279,FR @@ -23467,9 +24208,7 @@ 1495326720,1495332863,MD 1495332864,1495333375,RO 1495333376,1495333631,CH -1495333632,1495334911,RO -1495334912,1495335167,MD -1495335168,1495336447,RO +1495333632,1495336447,RO 1495336448,1495336959,NL 1495336960,1495339007,RO 1495339008,1495339263,DE @@ -23579,7 +24318,9 @@ 1495493632,1495494655,AE 1495494656,1495495167,RO 1495495168,1495495423,MD -1495495424,1495498239,RO +1495495424,1495497288,RO +1495497289,1495497289,IR +1495497290,1495498239,RO 1495498240,1495498367,IN 1495498368,1495498495,BD 1495498496,1495499775,RO @@ -23609,13 +24350,17 @@ 1495529472,1495529727,MD 1495529728,1495535615,RO 1495535616,1495536127,IR -1495536128,1495541247,RO +1495536128,1495540735,RO +1495540736,1495540991,NL +1495540992,1495541247,RO 1495541248,1495541759,GB 1495541760,1495543807,RO 1495543808,1495547903,IR 1495547904,1495548159,US 1495548160,1495548671,RO -1495548672,1495548927,RU +1495548672,1495548703,RU +1495548704,1495548735,RO +1495548736,1495548927,RU 1495548928,1495549695,RO 1495549696,1495549951,RU 1495549952,1495551999,RO @@ -23680,12 +24425,12 @@ 1495683072,1495687167,IR 1495687168,1495688703,RO 1495688704,1495689215,IR -1495689216,1495724543,RO +1495689216,1495723519,RO +1495723520,1495724031,FR +1495724032,1495724543,RO 1495724544,1495725055,IR 1495725056,1495732223,RO -1495732224,1495732991,ES -1495732992,1495733247,RO -1495733248,1495734271,ES +1495732224,1495734271,ES 1495734272,1495745791,RO 1495745792,1495746047,GB 1495746048,1495747583,RO @@ -23694,7 +24439,9 @@ 1495748864,1495749119,GB 1495749120,1495749631,RO 1495749632,1495750655,MD -1495750656,1495759359,RO +1495750656,1495755775,RO +1495755776,1495756031,PL +1495756032,1495759359,RO 1495759360,1495759487,TH 1495759488,1495759615,ID 1495759616,1495759871,RO @@ -23751,7 +24498,9 @@ 1495827968,1495828479,DE 1495828480,1495829503,RO 1495829504,1495830015,GB -1495830016,1495837695,RO +1495830016,1495833672,RO +1495833673,1495833673,IR +1495833674,1495837695,RO 1495837696,1495838719,IT 1495838720,1495845631,RO 1495845632,1495845887,GB @@ -23773,9 +24522,7 @@ 1495871744,1495872511,GB 1495872512,1495874047,RO 1495874048,1495874559,IR -1495874560,1495891455,RO -1495891456,1495891711,MD -1495891712,1495900159,RO +1495874560,1495900159,RO 1495900160,1495902207,SE 1495902208,1495907583,RO 1495907584,1495908351,GB @@ -23805,7 +24552,9 @@ 1495967744,1495968767,NL 1495968768,1495970815,RO 1495970816,1495971839,MD -1495971840,1495983103,RO +1495971840,1495979007,RO +1495979008,1495979263,NL +1495979264,1495983103,RO 1495983104,1495983615,IR 1495983616,1495985663,RO 1495985664,1495985791,FR @@ -23845,7 +24594,9 @@ 1496066816,1496067071,QA 1496067072,1496073983,RO 1496073984,1496074239,ES -1496074240,1496084479,RO +1496074240,1496082175,RO +1496082176,1496082431,GB +1496082432,1496084479,RO 1496084480,1496084991,IR 1496084992,1496085247,MD 1496085248,1496086015,RO @@ -23860,10 +24611,14 @@ 1496104448,1496104959,IR 1496104960,1496107519,RO 1496107520,1496108031,IR -1496108032,1496119295,RO +1496108032,1496117309,RO +1496117310,1496117310,IR +1496117311,1496119295,RO 1496119296,1496121343,SE 1496121344,1496122367,MD -1496122368,1496130559,RO +1496122368,1496126725,RO +1496126726,1496126726,US +1496126727,1496130559,RO 1496130560,1496131583,ES 1496131584,1496132607,MD 1496132608,1496133631,RO @@ -24013,9 +24768,7 @@ 1500643328,1500774399,PT 1500774400,1500905471,LT 1500905472,1501036543,IT -1501036544,1501154047,RO -1501154048,1501154303,US -1501154304,1501298687,RO +1501036544,1501298687,RO 1501298688,1501560831,IE 1501560832,1501822975,ES 1501822976,1502085119,HU @@ -24028,7 +24781,9 @@ 1502609408,1502625791,DE 1502625792,1502642175,SA 1502642176,1502658559,IR -1502658560,1502674943,AT +1502658560,1502665983,AT +1502665984,1502666239,SK +1502666240,1502674943,AT 1502674944,1502691327,DE 1502691328,1502707711,GB 1502707712,1502715903,RU @@ -24297,9 +25052,13 @@ 1504116736,1504149503,PL 1504149504,1504149759,GB 1504149760,1504150015,ES -1504150016,1504151039,GB +1504150016,1504150271,GB +1504150272,1504150527,DE +1504150528,1504151039,GB 1504151040,1504151295,FR -1504151296,1504154623,GB +1504151296,1504152575,GB +1504152576,1504152831,IE +1504152832,1504154623,GB 1504154624,1504155647,IE 1504155648,1504247807,GB 1504247808,1504313343,RU @@ -24464,7 +25223,9 @@ 1506469664,1506469695,IT 1506469696,1506469759,GB 1506469760,1506469775,IT -1506469776,1506471871,GB +1506469776,1506471551,GB +1506471552,1506471679,IT +1506471680,1506471871,GB 1506471872,1506471903,IT 1506471904,1506471983,GB 1506471984,1506471999,NL @@ -24512,9 +25273,7 @@ 1506869248,1506934783,UA 1506934784,1507000319,GR 1507000320,1507015167,QA -1507015168,1507015327,US -1507015328,1507015359,QA -1507015360,1507015423,US +1507015168,1507015423,US 1507015424,1507016191,QA 1507016192,1507016447,US 1507016448,1507065855,QA @@ -24678,133 +25437,255 @@ 1509935104,1509941247,NL 1509941248,1509947391,SE 1509947392,1509949439,NL -1509949440,1510608639,FR -1510608640,1510608895,RE -1510608896,1510610175,FR -1510610176,1510610431,RE -1510610432,1510617599,FR -1510617600,1510617855,RE -1510617856,1510619135,FR -1510619136,1510619391,RE -1510619392,1510625023,FR -1510625024,1510625279,RE -1510625280,1510628607,FR -1510628608,1510628863,RE -1510628864,1510641151,FR -1510641152,1510641407,RE -1510641408,1510642943,FR -1510642944,1510643199,RE -1510643200,1510647295,FR -1510647296,1510647551,RE -1510647552,1510648319,FR -1510648320,1510648831,RE -1510648832,1510649087,FR -1510649088,1510649343,RE -1510649344,1510651391,FR -1510651392,1510651647,RE -1510651648,1510652415,FR -1510652416,1510652671,RE -1510652672,1510657279,FR -1510657280,1510657535,RE -1510657536,1510661631,FR -1510661632,1510661887,RE -1510661888,1510662143,FR -1510662144,1510662399,RE -1510662400,1510663167,FR -1510663168,1510663423,RE -1510663424,1510664191,FR -1510664192,1510664447,RE +1509949440,1510604799,FR +1510604800,1510605311,RE +1510605312,1510605823,FR +1510605824,1510607615,RE +1510607616,1510607871,FR +1510607872,1510608383,RE +1510608384,1510608639,FR +1510608640,1510609663,RE +1510609664,1510609919,FR +1510609920,1510611199,RE +1510611200,1510611711,FR +1510611712,1510614271,RE +1510614272,1510614783,FR +1510614784,1510615551,RE +1510615552,1510615807,FR +1510615808,1510616063,RE +1510616064,1510616319,FR +1510616320,1510617087,RE +1510617088,1510617343,FR +1510617344,1510617599,RE +1510617600,1510617855,FR +1510617856,1510619647,RE +1510619648,1510620159,FR +1510620160,1510623743,RE +1510623744,1510623999,FR +1510624000,1510624511,RE +1510624512,1510624767,FR +1510624768,1510625279,RE +1510625280,1510626047,FR +1510626048,1510628351,RE +1510628352,1510628607,FR +1510628608,1510629119,RE +1510629120,1510629375,FR +1510629376,1510630143,RE +1510630144,1510630655,FR +1510630656,1510631167,RE +1510631168,1510631423,FR +1510631424,1510631935,RE +1510631936,1510632447,FR +1510632448,1510633983,RE +1510633984,1510634239,FR +1510634240,1510635263,RE +1510635264,1510637823,FR +1510637824,1510638079,RE +1510638080,1510638335,FR +1510638336,1510638591,RE +1510638592,1510639103,FR +1510639104,1510642687,RE +1510642688,1510642943,FR +1510642944,1510643455,RE +1510643456,1510643711,FR +1510643712,1510644991,RE +1510644992,1510645247,FR +1510645248,1510646783,RE +1510646784,1510647551,FR +1510647552,1510648063,RE +1510648064,1510648319,FR +1510648320,1510648575,RE +1510648576,1510648831,FR +1510648832,1510649855,RE +1510649856,1510650111,FR +1510650112,1510651135,RE +1510651136,1510651647,FR +1510651648,1510652927,RE +1510652928,1510653183,FR +1510653184,1510654463,RE +1510654464,1510654719,FR +1510654720,1510654975,RE +1510654976,1510655999,FR +1510656000,1510656255,RE +1510656256,1510656511,FR +1510656512,1510657535,RE +1510657536,1510658047,FR +1510658048,1510658303,RE +1510658304,1510658559,FR +1510658560,1510658815,RE +1510658816,1510659327,FR +1510659328,1510659583,RE +1510659584,1510659839,FR +1510659840,1510660095,RE +1510660096,1510660607,FR +1510660608,1510664447,RE 1510664448,1510664703,FR -1510664704,1510664959,RE -1510664960,1510665471,FR -1510665472,1510665727,RE -1510665728,1511981055,FR -1511981056,1511981311,RE -1511981312,1511985407,FR -1511985408,1511985663,RE -1511985664,1511993599,FR -1511993600,1511994111,RE -1511994112,1511997439,FR -1511997440,1511997695,MQ -1511997696,1512000767,FR -1512000768,1512001279,MQ -1512001280,1512003839,FR -1512003840,1512004095,MQ -1512004096,1512005631,FR -1512005632,1512006143,GP -1512006144,1512006399,FR -1512006400,1512006655,GP -1512006656,1512008191,FR -1512008192,1512008703,GP -1512008704,1512008959,FR -1512008960,1512009215,GP -1512009216,1512009983,FR -1512009984,1512010239,GP -1512010240,1512010751,FR +1510664704,1510665983,RE +1510665984,1510666239,FR +1510666240,1510668031,RE +1510668032,1511981055,FR +1511981056,1511981567,GP +1511981568,1511981823,FR +1511981824,1511982335,GP +1511982336,1511982847,FR +1511982848,1511984127,GP +1511984128,1511984639,FR +1511984640,1511985151,GP +1511985152,1511985407,FR +1511985408,1511987199,GP +1511987200,1511987455,FR +1511987456,1511989759,GP +1511989760,1511990015,FR +1511990016,1511990271,GP +1511990272,1511990527,FR +1511990528,1511991039,GP +1511991040,1511991295,FR +1511991296,1511991807,GP +1511991808,1511992063,FR +1511992064,1511994111,GP +1511994112,1511994367,FR +1511994368,1511995135,GP +1511995136,1511995391,FR +1511995392,1511997439,GP +1511997440,1511998207,FR +1511998208,1512001023,GP +1512001024,1512002559,FR +1512002560,1512003583,GP +1512003584,1512003839,FR +1512003840,1512005119,GP +1512005120,1512005375,FR +1512005376,1512005631,GP +1512005632,1512006655,FR +1512006656,1512006911,GP +1512006912,1512007167,FR +1512007168,1512008447,GP +1512008448,1512008703,FR +1512008704,1512008959,GP +1512008960,1512009215,FR +1512009216,1512009471,GP +1512009472,1512010239,FR +1512010240,1512010495,GP +1512010496,1512010751,FR 1512010752,1512011263,GP -1512011264,1512012031,FR -1512012032,1512012287,GP -1512012288,1512013823,FR -1512013824,1512014335,GF -1512014336,1512015103,FR -1512015104,1512015359,GF -1512015360,1512015809,FR -1512015810,1512015810,GF -1512015811,1512016127,FR -1512016128,1512016383,GF -1512016384,1512018175,FR -1512018176,1512018431,GF -1512018432,1512018687,FR -1512018688,1512018943,GF -1512018944,1512019199,FR -1512019200,1512019711,GF -1512019712,1512019967,FR -1512019968,1512020479,GF -1512020480,1512023807,FR -1512023808,1512024063,GF -1512024064,1512024319,FR -1512024320,1512024575,GF -1512024576,1512025087,FR -1512025088,1512025599,GF -1512025600,1512027135,FR +1512011264,1512011775,FR +1512011776,1512012543,GP +1512012544,1512012799,FR +1512012800,1512013823,GP +1512013824,1512024831,GF +1512024832,1512025087,FR +1512025088,1512026111,GF +1512026112,1512026367,FR +1512026368,1512026879,GF +1512026880,1512027135,FR 1512027136,1512028159,GF -1512028160,1512029439,FR -1512029440,1512029695,GF -1512029696,1512030207,FR +1512028160,1512028927,FR +1512028928,1512029695,GF +1512029696,1512029951,FR +1512029952,1512030207,GF 1512030208,1512046591,MQ -1512046592,1512309759,FR -1512309760,1512310271,GP -1512310272,1512314111,FR -1512314112,1512314367,GP -1512314368,1512317183,FR -1512317184,1512317439,GP -1512317440,1512319487,FR -1512319488,1512319743,GP -1512319744,1512323071,FR -1512323072,1512323327,GP -1512323328,1512328447,FR -1512328448,1512328703,GP -1512328704,1512333311,FR -1512333312,1512334079,GP -1512334080,1512334335,FR -1512334336,1512334847,GP -1512334848,1512338687,FR -1512338688,1512338943,GP -1512338944,1512341247,FR -1512341248,1512341503,GP -1512341504,1512342015,FR -1512342016,1512342271,GP -1512342272,1512358399,FR +1512046592,1512309247,FR +1512309248,1512311039,GP +1512311040,1512311295,FR +1512311296,1512311807,GP +1512311808,1512312063,FR +1512312064,1512312575,GP +1512312576,1512312831,FR +1512312832,1512314111,GP +1512314112,1512314623,FR +1512314624,1512315135,GP +1512315136,1512315391,FR +1512315392,1512316415,GP +1512316416,1512316671,FR +1512316672,1512318207,GP +1512318208,1512318463,FR +1512318464,1512319487,GP +1512319488,1512319743,FR +1512319744,1512320255,GP +1512320256,1512320511,FR +1512320512,1512322559,GP +1512322560,1512322815,FR +1512322816,1512323071,GP +1512323072,1512323839,FR +1512323840,1512324607,GP +1512324608,1512324863,FR +1512324864,1512325631,GP +1512325632,1512325887,FR +1512325888,1512326143,GP +1512326144,1512326399,FR +1512326400,1512326655,GP +1512326656,1512326911,FR +1512326912,1512327679,GP +1512327680,1512327935,FR +1512327936,1512329727,GP +1512329728,1512330239,FR +1512330240,1512330751,GP +1512330752,1512331007,FR +1512331008,1512331263,GP +1512331264,1512331519,FR +1512331520,1512331775,GP +1512331776,1512332031,FR +1512332032,1512333567,GP +1512333568,1512335615,FR +1512335616,1512338175,GP +1512338176,1512338431,FR +1512338432,1512339967,GP +1512339968,1512340223,FR +1512340224,1512340479,GP +1512340480,1512340991,FR +1512340992,1512341759,GP +1512341760,1512342015,FR +1512342016,1512344319,GP +1512344320,1512344831,FR +1512344832,1512345343,GP +1512345344,1512345855,FR +1512345856,1512346623,GP +1512346624,1512347135,FR +1512347136,1512347647,GP +1512347648,1512347903,FR +1512347904,1512348415,GP +1512348416,1512348671,FR +1512348672,1512350463,GP +1512350464,1512350719,FR +1512350720,1512351999,GP +1512352000,1512352255,FR +1512352256,1512353279,GP +1512353280,1512353791,FR +1512353792,1512354047,GP +1512354048,1512354303,FR +1512354304,1512354815,GP +1512354816,1512355327,FR +1512355328,1512356607,GP +1512356608,1512357119,FR +1512357120,1512357375,GP +1512357376,1512357631,FR +1512357632,1512357887,GP +1512357888,1512358399,FR 1512358400,1512358655,GP -1512358656,1512360191,FR -1512360192,1512360447,GP -1512360448,1512363775,FR -1512363776,1512364287,GP -1512364288,1512371199,FR -1512371200,1512371455,GP -1512371456,1512372223,FR -1512372224,1512372479,GP -1512372480,1514143743,FR +1512358656,1512359167,FR +1512359168,1512359423,GP +1512359424,1512360191,FR +1512360192,1512360959,GP +1512360960,1512361215,FR +1512361216,1512363007,GP +1512363008,1512363263,FR +1512363264,1512365055,GP +1512365056,1512365311,FR +1512365312,1512365823,GP +1512365824,1512366079,FR +1512366080,1512366335,GP +1512366336,1512366847,FR +1512366848,1512367103,GP +1512367104,1512368639,FR +1512368640,1512369151,GP +1512369152,1512369407,FR +1512369408,1512370441,GP +1512370442,1512370442,FR +1512370443,1512370687,GP +1512370688,1512370943,FR +1512370944,1512371199,GP +1512371200,1512371455,FR +1512371456,1512374271,GP +1512374272,1514143743,FR 1514143744,1514176511,SK 1514176512,1514471423,FR 1514471424,1514536959,ES @@ -24812,7 +25693,17 @@ 1514602496,1514668031,ES 1514668032,1514799103,FR 1514799104,1514930175,ES -1514930176,1515192639,FR +1514930176,1515002367,FR +1515002368,1515002623,ES +1515002624,1515030783,FR +1515030784,1515031039,ES +1515031040,1515051263,FR +1515051264,1515051519,ES +1515051520,1515057919,FR +1515057920,1515058175,ES +1515058176,1515059621,FR +1515059622,1515059622,ES +1515059623,1515192639,FR 1515192640,1515192655,EU 1515192656,1515467007,FR 1515467008,1515467263,ES @@ -24913,7 +25804,11 @@ 1519308800,1519312895,SE 1519312896,1519321087,LT 1519321088,1519337471,KZ -1519337472,1519394815,SE +1519337472,1519358975,SE +1519358976,1519359231,KZ +1519359232,1519369215,SE +1519369216,1519369471,KZ +1519369472,1519394815,SE 1519394816,1519398911,HR 1519398912,1519403007,SE 1519403008,1519419391,NL @@ -24924,7 +25819,11 @@ 1519648768,1519714303,SA 1519714304,1519779839,NO 1519779840,1519910911,RU -1519910912,1519931391,GB +1519910912,1519927295,GB +1519927296,1519927551,NL +1519927552,1519929855,GB +1519929856,1519930111,SE +1519930112,1519931391,GB 1519931392,1519934463,NL 1519934464,1519936191,GB 1519936192,1519936255,DK @@ -25029,7 +25928,8 @@ 1533483008,1533485055,AM 1533485056,1533486079,GB 1533486080,1533486335,SE -1533486336,1533487103,GB +1533486336,1533486591,NO +1533486592,1533487103,GB 1533487104,1533489151,FR 1533489152,1533491199,ES 1533491200,1533493247,AM @@ -25079,7 +25979,10 @@ 1533730816,1533732863,NL 1533732864,1533734911,RU 1533734912,1533739007,CZ -1533739008,1533805567,RU +1533739008,1533739263,IR +1533739264,1533771775,RU +1533771776,1533804543,IR +1533804544,1533805567,RU 1533805568,1533806591,NL 1533806592,1533818879,RU 1533818880,1533819903,NL @@ -25293,7 +26196,9 @@ 1536425984,1536442367,SK 1536442368,1536458751,RS 1536458752,1536475135,BG -1536475136,1536479231,NL +1536475136,1536476545,NL +1536476546,1536476546,GB +1536476547,1536479231,NL 1536479232,1536483327,GB 1536483328,1536491519,NL 1536491520,1536499711,NO @@ -25346,8 +26251,7 @@ 1538940928,1538949119,RU 1538949120,1538957311,AT 1538957312,1538964991,DE -1538964992,1538965247,GB -1538965248,1538965503,DE +1538964992,1538965503,GB 1538965504,1538973695,IR 1538973696,1538981887,JO 1538981888,1538990079,BY @@ -25401,7 +26305,8 @@ 1539211264,1539213311,CZ 1539213312,1539215359,SE 1539215360,1539219455,DE -1539219456,1539221503,GB +1539219456,1539219967,GB +1539219968,1539221503,GG 1539221504,1539223551,FR 1539223552,1539225599,RU 1539225600,1539227647,HU @@ -25517,7 +26422,6 @@ 1539418112,1539419135,RU 1539419136,1539420159,UA 1539420160,1539421183,RU -1539421184,1539422207,GB 1539422208,1539423231,PL 1539423232,1539424255,IE 1539425280,1539426303,PL @@ -25736,7 +26640,8 @@ 1539567616,1539568127,DE 1539568128,1539568639,NL 1539568640,1539569151,UA -1539569152,1539569663,EE +1539569152,1539569407,SE +1539569408,1539569663,EE 1539569664,1539570175,UA 1539570176,1539570687,PL 1539570688,1539571711,RU @@ -25943,7 +26848,6 @@ 1539733504,1539733759,FI 1539733760,1539734015,PL 1539734016,1539734271,FR -1539734272,1539734527,NO 1539734528,1539734783,TR 1539734784,1539735039,FR 1539735040,1539735295,BE @@ -26149,7 +27053,6 @@ 1539795200,1539795455,PL 1539795456,1539795711,UA 1539795712,1539795967,SA -1539795968,1539796223,NL 1539796224,1539796479,MC 1539796480,1539796735,GB 1539796736,1539796991,TR @@ -26509,7 +27412,8 @@ 1540136960,1540137983,PL 1540137984,1540139007,RU 1540139008,1540140031,DE -1540140032,1540141055,GB +1540140032,1540140799,GB +1540140800,1540141055,US 1540141056,1540142079,RU 1540142080,1540143103,UA 1540143104,1540144127,RU @@ -26682,7 +27586,8 @@ 1540284928,1540285439,UA 1540285440,1540285951,DE 1540285952,1540286463,RU -1540286464,1540286975,NL +1540286464,1540286719,GB +1540286720,1540286975,NL 1540286976,1540287487,GB 1540287488,1540288511,AT 1540288512,1540289535,RU @@ -27045,7 +27950,7 @@ 1540433152,1540433407,GB 1540433408,1540433663,AM 1540433664,1540433919,DK -1540434176,1540434431,CH +1540434176,1540434431,DK 1540434432,1540434687,DE 1540434688,1540434943,GB 1540434944,1540435199,FR @@ -27256,7 +28161,8 @@ 1540531200,1540532223,UA 1540532224,1540533247,RU 1540533248,1540534271,KZ -1540534272,1540535295,RU +1540534272,1540534527,UA +1540534528,1540535295,RU 1540535296,1540536319,SK 1540536320,1540537343,RU 1540537344,1540539391,UA @@ -27416,7 +28322,6 @@ 1540651008,1540651263,RO 1540651264,1540651519,CH 1540651520,1540651775,MK -1540651776,1540652031,RU 1540652032,1540652543,UA 1540652544,1540652799,TR 1540652800,1540653055,PL @@ -27427,6 +28332,7 @@ 1540654080,1540654335,EU 1540654336,1540654591,RU 1540654592,1540654847,SI +1540654848,1540655103,RU 1540655104,1540655359,AT 1540655360,1540655615,RU 1540655616,1540655871,GB @@ -27446,7 +28352,7 @@ 1540660736,1540660991,RU 1540660992,1540661247,RO 1540661248,1540661503,GB -1540661504,1540662015,RO +1540661760,1540662015,RO 1540662016,1540662271,BG 1540662272,1540662527,RO 1540662528,1540662783,PL @@ -27514,7 +28420,6 @@ 1540680960,1540681215,NL 1540681216,1540681471,FR 1540681472,1540681727,RU -1540681728,1540681983,TR 1540681984,1540682239,IT 1540682240,1540682495,PL 1540682496,1540682751,DE @@ -27555,7 +28460,6 @@ 1540692224,1540692735,FR 1540692736,1540692991,DE 1540692992,1540693247,GB -1540693248,1540693503,RU 1540693504,1540693759,ES 1540693760,1540694015,UZ 1540694016,1540694271,CH @@ -27613,7 +28517,6 @@ 1540708864,1540709119,FR 1540709120,1540709375,DE 1540709376,1540709631,UA -1540709888,1540710143,UA 1540710144,1540710399,NL 1540710400,1540710655,PL 1540710656,1540710911,FI @@ -27633,7 +28536,6 @@ 1540715520,1540715775,DE 1540716032,1540716287,PL 1540716288,1540716543,UA -1540716800,1540717055,UA 1540717056,1540717311,CZ 1540717312,1540717823,PL 1540717824,1540718079,UA @@ -27663,7 +28565,6 @@ 1540725248,1540725503,UA 1540725504,1540725759,SE 1540725760,1540726015,PL -1540726016,1540726271,TT 1540726272,1540726527,RU 1540726528,1540726783,CH 1540726784,1540727039,CZ @@ -27672,7 +28573,8 @@ 1540727552,1540727807,RU 1540727808,1540728063,GB 1540728064,1540728319,NL -1540728320,1540729343,RU +1540728320,1540728575,RU +1540728832,1540729343,RU 1540729344,1540729599,PL 1540729600,1540729855,CH 1540729856,1540730111,RU @@ -27717,7 +28619,6 @@ 1540740864,1540741119,RO 1540741120,1540741375,GB 1540741632,1540742143,NL -1540742144,1540742399,RU 1540742400,1540742655,DE 1540742656,1540742911,AT 1540743168,1540743423,NO @@ -27774,7 +28675,7 @@ 1540780032,1540781055,UA 1540781056,1540783103,RU 1540783104,1540787199,UA -1540787200,1540790271,RU +1540787200,1540789247,RU 1540790272,1540791295,KW 1540791296,1540792319,CZ 1540792320,1540793343,UA @@ -27789,7 +28690,8 @@ 1540802560,1540803583,MD 1540803584,1540804607,RU 1540804608,1540805631,UA -1540805632,1540809727,RU +1540805632,1540806655,RU +1540807680,1540809727,RU 1540809728,1540810751,GB 1540810752,1540811775,UA 1540811776,1540812799,PL @@ -27912,7 +28814,6 @@ 1540900352,1540900607,HU 1540900608,1540900863,BG 1540900864,1540901119,RU -1540901120,1540901375,LV 1540901376,1540901631,SI 1540901632,1540901887,RO 1540901888,1540902143,GR @@ -28079,7 +28980,6 @@ 1540947968,1540948479,PL 1540948480,1540948991,RU 1540948992,1540949503,UA -1540949504,1540950015,RU 1540950016,1540951551,UA 1540951552,1540952063,RS 1540952064,1540952575,RU @@ -28127,7 +29027,6 @@ 1540977152,1540977663,PL 1540977664,1540978175,FI 1540978176,1540978687,AT -1540978688,1540979199,RU 1540979200,1540979711,SI 1540979712,1540980223,RU 1540980224,1540980735,SI @@ -28162,7 +29061,6 @@ 1540988672,1540988927,RU 1540988928,1540989183,GB 1540989184,1540989439,PL -1540989440,1540989695,UA 1540989696,1540989951,PL 1540989952,1540990207,FR 1540990208,1540990463,DE @@ -28702,7 +29600,8 @@ 1541282816,1541283839,RU 1541283840,1541286911,UA 1541286912,1541287935,DE -1541287936,1541288959,RU +1541287936,1541288191,UA +1541288192,1541288959,RU 1541288960,1541289983,CZ 1541289984,1541291007,PL 1541291008,1541293055,UA @@ -28771,6 +29670,7 @@ 1541347584,1541347839,RU 1541347840,1541348095,SI 1541348096,1541348351,UA +1541348352,1541348607,RU 1541348608,1541348863,HR 1541348864,1541349119,UA 1541349120,1541349375,PL @@ -28778,7 +29678,7 @@ 1541349632,1541349887,PL 1541349888,1541350143,RU 1541350144,1541350399,FR -1541350400,1541350655,NO +1541350400,1541350655,SE 1541350656,1541350911,RU 1541350912,1541351167,AT 1541351168,1541351423,SI @@ -28859,8 +29759,7 @@ 1541371904,1541372159,RU 1541372160,1541372415,CH 1541372416,1541372671,UA -1541372672,1541372927,ES -1541372928,1541373183,NL +1541372672,1541373183,NL 1541373184,1541373439,FR 1541373440,1541373695,GB 1541373696,1541373951,UA @@ -29133,7 +30032,9 @@ 1541532672,1541533695,RU 1541533696,1541534719,PL 1541534720,1541535743,IT -1541535744,1541536767,US +1541535744,1541536255,US +1541536256,1541536511,IE +1541536512,1541536767,US 1541536768,1541537791,RU 1541537792,1541538303,GB 1541538304,1541538815,RO @@ -29582,7 +30483,7 @@ 1541805824,1541806079,RU 1541806080,1541806335,PL 1541806336,1541806591,UA -1541806592,1541806847,RU +1541806592,1541807103,RU 1541807104,1541808127,UA 1541808128,1541808383,IR 1541808384,1541809151,NL @@ -29948,7 +30849,7 @@ 1542017536,1542017791,RU 1542017792,1542018047,GB 1542018048,1542019071,DE -1542019072,1542019327,RU +1542019072,1542019583,RU 1542019584,1542020095,UA 1542020096,1542021119,RU 1542021120,1542023167,UA @@ -30116,6 +31017,7 @@ 1542124800,1542125567,PL 1542125568,1542126591,CZ 1542126592,1542127103,PL +1542127360,1542127615,RU 1542127616,1542128127,PL 1542128128,1542128383,RU 1542128384,1542129151,RO @@ -30404,7 +31306,6 @@ 1542297088,1542297343,RU 1542297344,1542297599,FI 1542297600,1542297855,UA -1542297856,1542298111,RU 1542298112,1542300159,PL 1542300160,1542300671,RU 1542300672,1542301695,UA @@ -30626,7 +31527,6 @@ 1542426880,1542427135,GB 1542427136,1542427391,PT 1542427392,1542427647,IE -1542427648,1542428159,BG 1542428160,1542428415,UA 1542428416,1542428671,RS 1542428672,1542429695,PL @@ -30685,7 +31585,9 @@ 1542456320,1542456831,RO 1542456832,1542457343,RS 1542457344,1542458367,RO -1542458368,1542459391,UZ +1542458368,1542458623,UZ +1542458624,1542458879,RU +1542458880,1542459391,UZ 1542459392,1542459647,RU 1542459648,1542459903,GB 1542459904,1542460415,UA @@ -31146,16 +32048,26 @@ 1546381312,1546383359,DK 1546383360,1546385407,IT 1546385408,1546387455,FR -1546387456,1546518527,TR +1546387456,1546491647,TR +1546491648,1546491903,RU +1546491904,1546518527,TR 1546518528,1546649599,KZ 1546649600,1546665983,SA 1546665984,1546682367,GB 1546682368,1546698751,BE 1546698752,1546715135,NL 1546715136,1546731519,LV -1546731520,1546744319,FR -1546744320,1546744575,MQ -1546744576,1546747903,FR +1546731520,1546731775,FR +1546731776,1546732543,MQ +1546732544,1546739711,FR +1546739712,1546739967,GP +1546739968,1546740991,FR +1546740992,1546741503,GP +1546741504,1546745343,FR +1546745344,1546745599,MQ +1546745600,1546746111,FR +1546746112,1546746367,MQ +1546746368,1546747903,FR 1546747904,1546764287,RU 1546764288,1546780671,UA 1546780672,1546797055,IR @@ -31163,7 +32075,9 @@ 1546813440,1546862591,RU 1546862592,1546878975,GE 1546878976,1546895359,DE -1546895360,1546911743,IE +1546895360,1546897919,IE +1546897920,1546898175,US +1546898176,1546911743,IE 1546911744,1546928127,SK 1546928128,1546944511,GB 1546944512,1546960895,UA @@ -31215,9 +32129,11 @@ 1547542528,1547546623,FR 1547546624,1547550719,IR 1547550720,1547554815,IE -1547554816,1547555078,AT +1547554816,1547555071,AT +1547555072,1547555078,NL 1547555079,1547555079,EU -1547555080,1547558911,AT +1547555080,1547555327,NL +1547555328,1547558911,AT 1547558912,1547563007,IL 1547563008,1547565055,NL 1547565056,1547565823,US @@ -31293,9 +32209,11 @@ 1548159232,1548159235,ES 1548159236,1548159487,NL 1548159488,1548159999,GB -1548160000,1548160257,NL +1548160000,1548160255,NL +1548160256,1548160257,BE 1548160258,1548160259,EU -1548160260,1548162463,NL +1548160260,1548160511,BE +1548160512,1548162463,NL 1548162464,1548162495,FR 1548162496,1548169215,NL 1548169216,1548171263,DE @@ -31334,39 +32252,42 @@ 1550976768,1550977023,US 1550977024,1550979071,RO 1550979072,1550983167,IR -1550983168,1550984191,RO +1550983168,1550983935,RO +1550983936,1550984191,GB 1550984192,1550984447,KR 1550984448,1550985215,RO 1550985216,1550987263,PS 1550987264,1550988543,RO 1550988544,1550988799,JP -1550988800,1550996223,RO +1550988800,1550990335,RO +1550990336,1550991359,AU +1550991360,1550996223,RO 1550996224,1550996479,AU 1550996480,1550998527,RO 1550998528,1550998783,IT -1550998784,1551014143,RO -1551014144,1551014399,MD -1551014400,1551015167,RO -1551015168,1551015423,MD -1551015424,1551017215,RO -1551017216,1551017471,MD -1551017472,1551032063,RO +1550998784,1551022847,RO +1551022848,1551023103,MD +1551023104,1551032063,RO 1551032064,1551032319,MD -1551032320,1551034879,RO -1551034880,1551035135,MD -1551035136,1551043071,RO +1551032320,1551043071,RO 1551043072,1551043327,MD -1551043328,1551076863,RO -1551076864,1551077119,MD -1551077120,1551080703,RO -1551080704,1551080959,MD -1551080960,1551085823,RO +1551043328,1551052031,RO +1551052032,1551052287,MD +1551052288,1551056639,RO +1551056640,1551056895,MD +1551056896,1551076607,RO +1551076608,1551076863,MD +1551076864,1551077375,RO +1551077376,1551077631,MD +1551077632,1551085823,RO 1551085824,1551086079,MD -1551086080,1551088895,RO -1551088896,1551089151,MD -1551089152,1551101951,RO -1551101952,1551102207,MD -1551102208,1551106047,RO +1551086080,1551086591,RO +1551086592,1551086847,MD +1551086848,1551094783,RO +1551094784,1551095039,MD +1551095040,1551101183,RO +1551101184,1551101439,MD +1551101440,1551106047,RO 1551106048,1551237119,DE 1551237120,1551368191,GR 1551368192,1551499263,NL @@ -31398,11 +32319,17 @@ 1551604480,1551604735,SE 1551604736,1551630335,EU 1551630336,1551892479,RU -1551892480,1556086783,FR +1551892480,1555696895,FR +1555696896,1555697151,ES +1555697152,1555760639,FR +1555760640,1555760895,ES +1555760896,1556086783,FR 1556086784,1556491204,DE 1556491205,1556491205,EU 1556491206,1557069823,DE -1557069824,1557135359,GB +1557069824,1557076991,GB +1557076992,1557077247,DE +1557077248,1557135359,GB 1557135360,1557921791,DE 1557921792,1558052863,NO 1558052864,1558054399,FR @@ -31430,7 +32357,11 @@ 1558093610,1558093610,ES 1558093611,1558097919,FR 1558097920,1558098175,GB -1558098176,1558103159,FR +1558098176,1558102501,FR +1558102502,1558102502,DE +1558102503,1558102507,FR +1558102508,1558102508,DE +1558102509,1558103159,FR 1558103160,1558103167,GB 1558103168,1558112095,FR 1558112096,1558112127,ES @@ -31466,7 +32397,9 @@ 1558179956,1558179959,IT 1558179960,1558180023,NL 1558180024,1558180039,IT -1558180040,1558180863,NL +1558180040,1558180287,NL +1558180288,1558180351,IT +1558180352,1558180863,NL 1558180864,1558183935,IT 1558183936,1558708223,DE 1558708224,1558904831,GB @@ -31544,8 +32477,8 @@ 1560018944,1560051711,DE 1560051712,1560084479,RU 1560084480,1560117247,JO -1560117248,1560133631,CZ -1560133632,1560135679,RU +1560117248,1560125439,CZ +1560125440,1560135679,RU 1560135680,1560135807,UA 1560135808,1560135935,CZ 1560135936,1560137727,RU @@ -31656,18 +32589,18 @@ 1566388224,1566390271,LU 1566390272,1566392319,LT 1566392320,1566394367,ES -1566394368,1566394528,NO +1566394368,1566394528,GB 1566394529,1566394529,FR -1566394530,1566394530,NO +1566394530,1566394530,GB 1566394531,1566394531,DE 1566394532,1566394532,PL 1566394533,1566394533,NL 1566394534,1566394534,SE 1566394535,1566394535,PT -1566394536,1566394536,GB -1566394537,1566394538,NO +1566394536,1566394538,GB 1566394539,1566394539,RU -1566394540,1566396415,NO +1566394540,1566394623,GB +1566394624,1566396415,NO 1566396416,1566398463,GB 1566398464,1566400511,RU 1566400512,1566400607,NO @@ -31708,7 +32641,9 @@ 1566443520,1566445567,NO 1566445568,1566447615,PL 1566447616,1566451711,IT -1566451712,1566453759,IL +1566451712,1566452223,IL +1566452224,1566452479,TR +1566452480,1566453759,IL 1566453760,1566455807,IQ 1566455808,1566457855,PT 1566457856,1566459903,CH @@ -31761,7 +32696,9 @@ 1566554112,1566556159,UA 1566556160,1566558207,RU 1566558208,1566560255,JO -1566560256,1566564351,IT +1566560256,1566560767,IT +1566560768,1566561023,SM +1566561024,1566564351,IT 1566564352,1566566399,IS 1566566400,1566568447,FR 1566568448,1566570495,KZ @@ -31782,7 +32719,9 @@ 1567490048,1567555583,IR 1567555584,1567621119,AT 1567621120,1567686655,SA -1567686656,1567696383,RO +1567686656,1567690751,RO +1567690752,1567692799,ES +1567692800,1567696383,RO 1567696384,1567696895,MD 1567696896,1567703039,RO 1567703040,1567707135,MD @@ -31836,8 +32775,10 @@ 1567858688,1567860735,SE 1567860736,1567866879,RO 1567866880,1567867135,IN -1567867136,1567869183,RO -1567869184,1567869439,NL +1567867136,1567867391,RO +1567867392,1567867519,GB +1567867520,1567869183,RO +1567869184,1567869439,GB 1567869440,1567871999,RO 1567872000,1567873023,ES 1567873024,1567879167,MD @@ -31868,7 +32809,9 @@ 1568060416,1568063487,MD 1568063488,1568083967,RO 1568083968,1568084223,CN -1568084224,1568088063,RO +1568084224,1568084991,RO +1568084992,1568086015,CN +1568086016,1568088063,RO 1568088064,1568104447,IR 1568104448,1568106495,MD 1568106496,1568107519,RO @@ -31876,7 +32819,8 @@ 1568108544,1568109055,GB 1568109056,1568110079,RO 1568110080,1568111103,GB -1568111104,1568111615,RO +1568111104,1568111359,RO +1568111360,1568111615,NL 1568111616,1568112127,GB 1568112128,1568112639,RO 1568112640,1568114687,MD @@ -31991,7 +32935,8 @@ 1571428608,1571428863,UA 1571428864,1571430399,CZ 1571430400,1571430911,UA -1571430912,1571431423,CZ +1571430912,1571431167,BY +1571431168,1571431423,UA 1571431424,1571432447,KZ 1571432448,1571434495,RU 1571434496,1571435519,UA @@ -32021,8 +32966,7 @@ 1571448832,1571449343,NL 1571449344,1571449855,CZ 1571449856,1571451391,RU -1571451392,1571451903,CZ -1571451904,1571452927,UA +1571451392,1571452927,UA 1571452928,1571453695,RU 1571453696,1571453951,CZ 1571453952,1571455999,RU @@ -32030,8 +32974,8 @@ 1571456512,1571456767,CZ 1571456768,1571457023,UA 1571457024,1571457535,CZ -1571457536,1571458047,RU -1571458048,1571458815,CZ +1571457536,1571458559,RU +1571458560,1571458815,CZ 1571458816,1571459071,BY 1571459072,1571463167,UA 1571463168,1571466239,CZ @@ -32048,13 +32992,15 @@ 1571476480,1571479551,RU 1571479552,1571483647,CZ 1571483648,1571484159,RU -1571484160,1571487743,CZ +1571484160,1571485695,CZ +1571485696,1571486719,RU +1571486720,1571486975,CZ +1571486976,1571487231,UA +1571487232,1571487743,CZ 1571487744,1571489023,SK 1571489024,1571489279,UA 1571489280,1571489535,BY -1571489536,1571490047,RU -1571490048,1571490303,CZ -1571490304,1571491071,RU +1571489536,1571491071,RU 1571491072,1571491327,CZ 1571491328,1571495935,UA 1571495936,1571496447,RU @@ -32070,7 +33016,8 @@ 1571524096,1571524351,RU 1571524352,1571524607,CZ 1571524608,1571526655,RU -1571526656,1571528191,CZ +1571526656,1571526911,UA +1571526912,1571528191,CZ 1571528192,1571528703,UA 1571528704,1571529215,BY 1571529216,1571529471,CZ @@ -32111,7 +33058,9 @@ 1571546112,1571546879,CZ 1571546880,1571547135,RU 1571547136,1571549183,CZ -1571549184,1571553279,UA +1571549184,1571550207,UA +1571550208,1571550463,RU +1571550464,1571553279,UA 1571553280,1571684351,IL 1571684352,1571686399,ES 1571686400,1571688447,GB @@ -32157,9 +33106,25 @@ 1571790848,1571794943,PL 1571794944,1571799039,NL 1571799040,1571815423,UA -1571815424,1571823359,FR -1571823360,1571823615,RE -1571823616,1571831807,FR +1571815424,1571815679,FR +1571815680,1571815935,RE +1571815936,1571817215,FR +1571817216,1571817471,RE +1571817472,1571817727,FR +1571817728,1571817983,RE +1571817984,1571823615,FR +1571823616,1571823871,RE +1571823872,1571825151,FR +1571825152,1571825407,RE +1571825408,1571826687,FR +1571826688,1571826943,RE +1571826944,1571827711,FR +1571827712,1571827967,RE +1571827968,1571829759,FR +1571829760,1571830015,RE +1571830016,1571830527,FR +1571830528,1571830783,RE +1571830784,1571831807,FR 1571831808,1571848191,DK 1571848192,1571864575,RU 1571864576,1571880959,PL @@ -32272,11 +33237,17 @@ 1572524032,1572528127,GE 1572528128,1572532223,RU 1572532224,1572536319,IT -1572536320,1572538367,GB +1572536320,1572536575,GB +1572536576,1572537087,GG +1572537088,1572538367,GB 1572538368,1572540415,NL 1572540416,1572542463,GB 1572542464,1572544511,IT -1572544512,1572546559,IQ +1572544512,1572545407,IQ +1572545408,1572545439,AU +1572545440,1572545791,IQ +1572545792,1572546047,US +1572546048,1572546559,IQ 1572546560,1572548607,FR 1572548608,1572550655,NL 1572550656,1572552703,DE @@ -32289,7 +33260,11 @@ 1572564992,1572567039,DE 1572567040,1572569087,RU 1572571136,1572573183,BG -1572573184,1572575231,GB +1572573184,1572573439,GB +1572573440,1572574463,GG +1572574464,1572574719,GB +1572574720,1572574975,GG +1572574976,1572575231,GB 1572575232,1572577279,RU 1572577280,1572579327,AM 1572579328,1572581375,GB @@ -32353,12 +33328,18 @@ 1572702208,1572704255,IT 1572704256,1572706303,RU 1572706304,1572708351,DE -1572708352,1572710399,GB +1572708352,1572708607,GB +1572708608,1572709375,GG +1572709376,1572709887,GB +1572709888,1572710143,GG +1572710144,1572710399,GB 1572710400,1572712447,DE 1572712448,1572714495,ES 1572714496,1572714943,NG 1572714944,1572714959,IT -1572714960,1572716543,NG +1572714960,1572715775,NG +1572715776,1572716031,IT +1572716032,1572716543,NG 1572716544,1572718591,SA 1572718592,1572720639,RU 1572720640,1572722687,IT @@ -32401,7 +33382,9 @@ 1572798464,1572800511,NL 1572800512,1572800738,RU 1572800739,1572800740,UA -1572800741,1572804607,RU +1572800741,1572800741,RU +1572800742,1572800742,UA +1572800743,1572804607,RU 1572804608,1572808703,GB 1572808704,1572810751,FR 1572810752,1572812799,DE @@ -32425,7 +33408,8 @@ 1572843520,1572845567,JO 1572845568,1572847615,FR 1572847616,1572849663,GI -1572849664,1572851711,GB +1572849664,1572850431,JE +1572850432,1572851711,GB 1572851712,1572853759,DE 1572853760,1572855807,BE 1572855808,1572857855,KZ @@ -32451,7 +33435,9 @@ 1578584357,1578584689,FR 1578584690,1578584690,PT 1578584691,1578585087,FR -1578585088,1578586111,PT +1578585088,1578585299,PT +1578585300,1578585300,FR +1578585301,1578586111,PT 1578586112,1578588159,ES 1578588160,1578590207,PL 1578590208,1578590787,FR @@ -32528,7 +33514,8 @@ 1578614404,1578614423,FR 1578614424,1578614427,IS 1578614428,1578614431,LV -1578614432,1578614459,FR +1578614432,1578614435,BG +1578614436,1578614459,FR 1578614460,1578614463,NO 1578614464,1578614471,FR 1578614472,1578614475,SI @@ -32568,7 +33555,9 @@ 1580105728,1580109567,PT 1580109568,1580109823,SE 1580109824,1580113919,US -1580113920,1580138495,PT +1580113920,1580125695,PT +1580125696,1580125951,TR +1580125952,1580138495,PT 1580138496,1580204031,IT 1580204032,1580335103,SA 1580335104,1580466175,RU @@ -32608,9 +33597,7 @@ 1582252032,1582268415,TR 1582268416,1582284799,DE 1582284800,1582301183,BH -1582301184,1583177471,IT -1583177472,1583177727,US -1583177728,1583349759,IT +1582301184,1583349759,IT 1583349760,1583611903,SA 1583611904,1583615999,LV 1583616000,1583620095,NL @@ -32633,7 +33620,7 @@ 1583689728,1583693823,IT 1583693824,1583697919,RU 1583697920,1583702015,TR -1583702016,1583706111,RU +1583702016,1583710207,RU 1583710208,1583714303,IR 1583714304,1583722495,GB 1583722496,1583726591,IR @@ -32720,7 +33707,10 @@ 1585217536,1585219583,FR 1585219584,1585221631,NL 1585221632,1585223679,SK -1585223680,1585225727,FR +1585223680,1585223935,MQ +1585223936,1585224063,RE +1585224064,1585225471,FR +1585225472,1585225727,YT 1585225728,1585227007,UA 1585227008,1585227263,RU 1585227264,1585227775,UA @@ -32729,7 +33719,8 @@ 1585233920,1585238015,RU 1585238016,1585240063,DE 1585240064,1585241087,FR -1585241088,1585242111,MQ +1585241088,1585241343,GP +1585241344,1585242111,MQ 1585242112,1585244159,RU 1585244160,1585246207,FR 1585246208,1585248255,RU @@ -32775,7 +33766,8 @@ 1585334272,1585336319,DE 1585336320,1585338367,SE 1585338368,1585340415,RU -1585340416,1585342463,AT +1585340416,1585340671,DE +1585340672,1585342463,AT 1585342464,1585344511,GB 1585344512,1585346559,FR 1585346560,1585348607,GB @@ -32874,7 +33866,11 @@ 1586339840,1586348031,RU 1586348032,1586356223,SY 1586356224,1586372607,RU -1586372608,1586380799,JO +1586372608,1586372863,JO +1586372864,1586373002,US +1586373003,1586373003,JO +1586373004,1586373119,US +1586373120,1586380799,JO 1586380800,1586388991,GB 1586388992,1586389503,ES 1586389504,1586389759,US @@ -32884,7 +33880,9 @@ 1586403328,1586405375,IS 1586405376,1586407423,AT 1586407424,1586409471,GB -1586411520,1586413567,GB +1586411520,1586412031,GB +1586412032,1586412287,US +1586412288,1586413567,GB 1586413568,1586415615,IT 1586415616,1586416255,ES 1586416256,1586417663,AD @@ -32951,9 +33949,7 @@ 1587478528,1587511295,RU 1587511296,1587544063,IL 1587544064,1588068351,IT -1588068352,1588092159,NL -1588092160,1588092415,GB -1588092416,1588133887,NL +1588068352,1588133887,NL 1588133888,1588592639,GB 1588592640,1588593663,RO 1588593664,1588593919,MD @@ -32972,11 +33968,14 @@ 1588641792,1588643839,ES 1588643840,1588649983,RO 1588649984,1588652031,SE -1588652032,1588654079,RO +1588652032,1588652159,NL +1588652160,1588654079,RO 1588654080,1588658175,DE 1588658176,1588659199,RO 1588659200,1588659711,NL -1588659712,1588664319,RO +1588659712,1588661247,RO +1588661248,1588661503,NL +1588661504,1588664319,RO 1588664320,1588664575,TH 1588664576,1588664831,VG 1588664832,1588673535,RO @@ -33185,7 +34184,9 @@ 1592901632,1592934399,RU 1592934400,1592950783,CZ 1592950784,1592967167,RU -1592967168,1592983551,LU +1592967168,1592980351,LU +1592980352,1592980479,DE +1592980480,1592983551,LU 1592983552,1592999935,RU 1592999936,1593016319,MD 1593016320,1593049087,RU @@ -33255,7 +34256,9 @@ 1593311232,1593343999,UA 1593344000,1593376767,HU 1593376768,1593409535,JO -1593409536,1593421055,DE +1593409536,1593412095,DE +1593412096,1593412351,GB +1593412352,1593421055,DE 1593421056,1593421311,GB 1593421312,1593421567,FR 1593421568,1593421823,GB @@ -33271,7 +34274,9 @@ 1593438720,1593438847,US 1593438848,1593438863,DE 1593438864,1593438975,US -1593438976,1593442303,DE +1593438976,1593441023,DE +1593441024,1593441279,RU +1593441280,1593442303,DE 1593442304,1593475071,BA 1593475072,1593491455,HR 1593491456,1593499647,DE @@ -33300,11 +34305,16 @@ 1596456960,1596588031,PL 1596588032,1596719103,BG 1596719104,1596850175,IE -1596850176,1596858879,CZ +1596850176,1596852223,CZ +1596852224,1596854271,UA +1596854272,1596858367,BY +1596858368,1596858879,CZ 1596858880,1596859391,RU 1596859392,1596862463,CZ 1596862464,1596876799,RU -1596876800,1596878079,CZ +1596876800,1596877055,CZ +1596877056,1596877311,RU +1596877312,1596878079,CZ 1596878080,1596878335,RU 1596878336,1596881919,CZ 1596881920,1596887295,RU @@ -33414,7 +34424,9 @@ 1599209472,1599242239,IR 1599242240,1599258623,CZ 1599258624,1599324159,RU -1599324160,1599340543,IE +1599324160,1599339007,IE +1599339008,1599339263,RU +1599339264,1599340543,IE 1599340544,1599356927,RU 1599356928,1599373311,BH 1599373312,1599406079,RU @@ -33633,8 +34645,7 @@ 1603081256,1603081263,FI 1603081264,1603081279,GB 1603081280,1603081295,US -1603081296,1603081407,GB -1603081408,1603081471,ES +1603081296,1603081471,ES 1603081472,1603082239,GB 1603082240,1603082495,DE 1603082496,1603082751,GT @@ -33686,7 +34697,9 @@ 1603215360,1603219455,DE 1603219456,1603223551,CH 1603223552,1603223807,FR -1603223808,1603226255,GB +1603223808,1603225087,GB +1603225088,1603225343,FR +1603225344,1603226255,GB 1603226256,1603226263,DE 1603226264,1603226271,NL 1603226272,1603227647,GB @@ -33719,9 +34732,18 @@ 1604059136,1604075519,MK 1604075520,1604091903,RU 1604091904,1604108287,BA -1604108288,1604120575,DE +1604108288,1604114431,DE +1604114432,1604115455,IR +1604115456,1604115967,DE +1604115968,1604116479,IR +1604116480,1604118783,DE +1604118784,1604120063,IR +1604120064,1604120575,DE 1604120576,1604122623,PL -1604122624,1604141055,DE +1604122624,1604123135,IR +1604123136,1604123647,DE +1604123648,1604124671,IR +1604124672,1604141055,DE 1604141056,1604157439,IT 1604157440,1604190207,FR 1604190208,1604206591,UA @@ -33856,7 +34878,9 @@ 1605165056,1605173247,GB 1605173248,1605181439,TR 1605181440,1605189631,LT -1605189632,1605197823,CZ +1605189632,1605189887,CZ +1605189888,1605190143,SK +1605190144,1605197823,CZ 1605197824,1605206015,DE 1605206016,1605214207,RU 1605214208,1605222399,TR @@ -33882,7 +34906,7 @@ 1605369856,1605402623,FR 1605402624,1605435391,SI 1605435392,1605468159,GB -1605468160,1605500927,RO +1605468160,1605500927,SA 1605500928,1605533695,PL 1605533696,1605566463,HR 1605566464,1605599231,RU @@ -33931,7 +34955,9 @@ 1607606016,1607606271,FR 1607606272,1607606783,DE 1607606784,1607607039,GB -1607607040,1607608319,IT +1607607040,1607607295,IT +1607607296,1607607551,PL +1607607552,1607608319,IT 1607608320,1607608575,HU 1607608576,1607608831,SK 1607608832,1607610367,EU @@ -33945,9 +34971,9 @@ 1607621376,1607621631,EU 1607621632,1607622655,IT 1607622656,1607624703,ES -1607624704,1607625215,IT -1607625216,1607625471,EU -1607625472,1607625727,IT +1607624704,1607625471,IT +1607625472,1607625599,EU +1607625600,1607625727,IT 1607625728,1607626751,ES 1607626752,1607627519,FR 1607627520,1607627775,FI @@ -34009,7 +35035,7 @@ 1607957504,1607958527,UA 1607958528,1607959551,PS 1607959552,1607960575,EE -1607960576,1607962623,RU +1607960576,1607961599,RU 1607962624,1607963647,UA 1607963648,1607965695,RU 1607965696,1607966719,UA @@ -34061,7 +35087,9 @@ 1611130880,1611218943,US 1611218944,1611227135,KH 1611227136,1611235327,CA -1611235328,1611251711,SG +1611235328,1611243519,SG +1611243520,1611247615,MY +1611247616,1611251711,HK 1611251712,1611662335,US 1611662336,1611662847,NL 1611662848,1611692543,US @@ -34106,9 +35134,7 @@ 1613750804,1613750804,A1 1613750805,1613758463,US 1613758464,1614282751,CA -1614282752,1614525567,US -1614525568,1614525695,AS -1614525696,1614741503,US +1614282752,1614741503,US 1614741504,1614757887,CA 1614757888,1614774271,US 1614774272,1614786559,CA @@ -34171,35 +35197,7 @@ 1680535552,1680539647,CA 1680539648,1680564223,US 1680564224,1680572415,CA -1680572416,1680627199,US -1680627200,1680627263,CA -1680627264,1680646399,US -1680646400,1680646655,CA -1680646656,1680646911,US -1680646912,1680647423,CA -1680647424,1680650751,US -1680650752,1680650879,CA -1680650880,1680651775,US -1680651776,1680652031,CA -1680652032,1680652351,US -1680652352,1680652543,CA -1680652544,1680734719,US -1680734720,1680734975,CA -1680734976,1680749567,US -1680749568,1680749695,CA -1680749696,1680780927,US -1680780928,1680781055,CA -1680781056,1680781439,US -1680781440,1680781567,CA -1680781568,1680798591,US -1680798592,1680798719,CA -1680798720,1680801023,US -1680801024,1680801151,CA -1680801152,1680808703,US -1680808704,1680808831,CA -1680808832,1680814399,US -1680814400,1680814463,PR -1680814464,1681915903,US +1680572416,1681915903,US 1686110208,1694498815,US 1694498816,1694499839,CN 1694499840,1694500863,ID @@ -34378,6 +35376,7 @@ 1728171008,1728172031,AU 1728172032,1728173055,VN 1728173056,1728175103,AU +1728175104,1728176127,TW 1728176128,1728177151,HK 1728177152,1728178175,AU 1728178176,1728179199,LA @@ -34415,6 +35414,7 @@ 1728246784,1728254975,JP 1728254976,1728255999,MY 1728256000,1728257023,HK +1728257024,1728258047,JP 1728258048,1728259071,IN 1728259072,1728260095,KR 1728260096,1728261119,IN @@ -34431,7 +35431,8 @@ 1728286720,1728287743,AU 1728287744,1728290815,CN 1728290816,1728291839,AU -1728291840,1728292863,SG +1728291840,1728292607,US +1728292608,1728292863,SG 1728292864,1728293887,PG 1728293888,1728294911,MY 1728294912,1728295935,TH @@ -34453,6 +35454,7 @@ 1728316416,1728317439,MY 1728317440,1728319487,JP 1728319488,1728320511,AU +1728320512,1728322559,HK 1728322560,1728323583,MY 1728323584,1728324607,JP 1728324608,1728325631,SG @@ -34487,8 +35489,7 @@ 1728347422,1728347422,AP 1728347423,1728348159,SG 1728348160,1728349183,VN -1728349184,1728349951,AU -1728349952,1728350207,NP +1728349184,1728350207,AU 1728350208,1728351231,NZ 1728351232,1728352255,MY 1728352256,1728353279,BD @@ -34513,6 +35514,7 @@ 1728369664,1728370687,AU 1728370688,1728371711,TH 1728371712,1728372735,IN +1728372736,1728373759,CN 1728373760,1728374783,TH 1728374784,1728375039,SG 1728375040,1728375295,IN @@ -34543,11 +35545,14 @@ 1728399104,1728400383,NZ 1728400384,1728400895,AU 1728400896,1728401151,IN +1728401152,1728401407,HK 1728401408,1728402431,NZ 1728402432,1728403455,IN 1728403456,1728406527,AU 1728406528,1728407551,TW +1728407552,1728407807,AU 1728407808,1728408063,MY +1728408064,1728408319,AU 1728408320,1728408575,ID 1728408576,1728409599,NZ 1728409600,1728410623,IN @@ -34563,13 +35568,16 @@ 1728419072,1728419327,HK 1728419328,1728419583,NP 1728419584,1728419839,SG +1728419840,1728420863,CN 1728420864,1728421887,NZ 1728421888,1728422911,JP 1728422912,1728423935,AU +1728423936,1728424959,CN 1728424960,1728425983,AF 1728425984,1728427007,JP 1728427008,1728428031,MY 1728428032,1728430079,IN +1728430080,1728431103,CN 1728431104,1728431615,AF 1728431616,1728431871,HK 1728431872,1728432127,SG @@ -34581,6 +35589,7 @@ 1728437248,1728438271,HK 1728438272,1728439295,NZ 1728439296,1728439807,NP +1728439808,1728440319,KH 1728440320,1728441343,BD 1728441344,1728442367,MY 1728442368,1728443391,SG @@ -34589,6 +35598,7 @@ 1728445440,1728446463,CN 1728446464,1728446975,ID 1728446976,1728447231,IN +1728447232,1728447487,AU 1728447488,1728448511,HK 1728448512,1728449535,KH 1728449536,1728450559,AU @@ -34612,11 +35622,14 @@ 1728467968,1728468735,HK 1728468736,1728469247,IN 1728469248,1728469503,NZ +1728469504,1728470015,IN 1728470016,1728471039,JP 1728471040,1728472063,PH 1728472064,1728473087,KR +1728473088,1728473343,PH 1728473344,1728473599,AU 1728473600,1728474111,SG +1728474112,1728475135,CN 1728475136,1728476159,JP 1728476160,1728476415,AU 1728476416,1728476927,ID @@ -34651,6 +35664,7 @@ 1728501504,1728502783,AU 1728502784,1728503807,CN 1728503808,1728504831,JP +1728504832,1728505855,CN 1728505856,1728506879,NL 1728506880,1728507903,MY 1728507904,1728508927,JP @@ -34693,6 +35707,7 @@ 1728544768,1728545791,IN 1728545792,1728546815,JP 1728546816,1728547839,AU +1728547840,1728548863,CN 1728548864,1728549119,KH 1728549120,1728549375,IN 1728549376,1728549631,PH @@ -34712,6 +35727,7 @@ 1728558080,1728559103,IN 1728559104,1728560127,ID 1728560128,1728560639,AU +1728560640,1728561151,KR 1728561152,1728562175,AU 1728562176,1728562431,VN 1728562432,1728562687,VU @@ -34747,6 +35763,7 @@ 1728593408,1728593663,IN 1728593664,1728593919,ID 1728593920,1728594943,JP +1728594944,1728595967,CN 1728595968,1728596479,NZ 1728596480,1728598015,ID 1728598016,1728599039,NZ @@ -34758,6 +35775,7 @@ 1728606208,1728607231,PK 1728607232,1728608255,IN 1728608256,1728608511,SG +1728608512,1728608767,BD 1728608768,1728609023,ID 1728609024,1728610303,IN 1728610304,1728611327,TH @@ -34796,17 +35814,20 @@ 1728641024,1728642047,IN 1728642048,1728643071,NZ 1728643072,1728645119,VN -1728645120,1728646143,SG +1728645120,1728646143,CN 1728646144,1728647167,IN -1728647168,1728648191,AU +1728647168,1728648703,AU 1728648704,1728648959,ID 1728648960,1728649215,PK +1728649216,1728650239,CN 1728650240,1728651263,JP 1728651264,1728652287,KR 1728652288,1728653311,ID 1728653312,1728654335,NZ 1728654336,1728655359,ID +1728655360,1728655871,AU 1728655872,1728656127,SB +1728656128,1728656383,MY 1728656384,1728661503,AU 1728661504,1728662527,IN 1728662528,1728665599,VN @@ -34815,6 +35836,8 @@ 1728668672,1728669695,SG 1728669696,1728670207,BD 1728670208,1728670463,NZ +1728670464,1728670719,ID +1728670720,1728671743,CN 1728671744,1728672767,BD 1728672768,1728673791,TW 1728673792,1728674815,JP @@ -34832,10 +35855,10 @@ 1728689152,1728689407,JP 1728689408,1728689663,BD 1728689664,1728689919,PK +1728689920,1728690175,ID 1728690176,1728691199,BD 1728691200,1728692223,KH -1728692224,1728693247,JP -1728693248,1728698367,VN +1728692224,1728698367,VN 1728698368,1728699391,NZ 1728699392,1728699903,BD 1728699904,1728700415,IN @@ -34878,6 +35901,7 @@ 1728734208,1728735231,SG 1728735232,1728736255,ID 1728736256,1728736511,HK +1728736512,1728736767,IN 1728736768,1728737023,ID 1728737024,1728737279,CN 1728737280,1728738303,JP @@ -34902,7 +35926,9 @@ 1728756736,1728757759,IN 1728757760,1728758783,JP 1728758784,1728759039,MY -1728759040,1728759295,HK +1728759040,1728759257,HK +1728759258,1728759258,KR +1728759259,1728759295,HK 1728759296,1728759551,MY 1728759552,1728759807,HK 1728759808,1728760831,PH @@ -34911,6 +35937,7 @@ 1728762880,1728763903,VN 1728763904,1728764927,KR 1728764928,1728765439,SG +1728765440,1728765695,IN 1728765696,1728765951,ID 1728765952,1728766975,IN 1728766976,1728767999,TH @@ -34933,8 +35960,7 @@ 1728784384,1728785407,PH 1728785408,1728786431,KR 1728786432,1728787455,SG -1728787456,1728787711,AU -1728787712,1728788479,NZ +1728787456,1728788479,AU 1728788480,1728789503,KR 1728789504,1728790527,PK 1728790528,1728791551,PH @@ -34963,6 +35989,7 @@ 1728813056,1728814079,IN 1728814080,1728815103,JP 1728815104,1728817151,AU +1728817152,1728818175,CN 1728818176,1728819199,VN 1728819200,1728819711,ID 1728819712,1728819967,NZ @@ -34991,11 +36018,7 @@ 1728838656,1728839679,ID 1728839936,1728840191,IN 1728840192,1728840447,SG -1728840448,1728841727,AU -1728841728,1728841983,NZ -1728841984,1728842239,AU -1728842240,1728842495,NZ -1728842496,1728842751,AU +1728840448,1728842751,AU 1728842752,1728843775,ID 1728843776,1728844799,JP 1728844800,1728845311,ID @@ -35015,11 +36038,13 @@ 1728856064,1728857087,MY 1728857088,1728858111,CN 1728858112,1728859135,BD +1728859136,1728860159,HK 1728860160,1728860671,ID 1728860672,1728861183,BD 1728861184,1728861439,ID 1728861440,1728862207,AU 1728862208,1728863231,PH +1728863232,1728864255,CN 1728864256,1728865279,AF 1728865280,1728866303,AU 1728866304,1728867327,VN @@ -35044,11 +36069,9 @@ 1728882432,1728882687,ID 1728882688,1728883711,IN 1728883712,1728885759,BD -1728885760,1728886783,JP 1728886784,1728887807,CN 1728887808,1728888831,AU 1728888832,1728889855,IN -1728889856,1728890879,JP 1728890880,1728891903,AU 1728891904,1728892927,BD 1728892928,1728893439,BN @@ -35061,15 +36084,14 @@ 1728898048,1728899071,BD 1728899072,1728900095,CN 1728900096,1728901119,BD -1728901120,1728901375,ID -1728901376,1728901631,AU -1728901632,1728902143,ID -1728902144,1728902399,SG +1728901120,1728902143,ID 1728902400,1728902655,IN -1728902912,1728903167,BD 1728903168,1728905215,KR +1728905472,1728905727,PK 1728905728,1728906239,IN +1728906240,1728907263,MY 1728907264,1728908287,NZ +1728908288,1728909311,CN 1728909312,1728912383,JP 1728912384,1728913407,TH 1728914432,1728915199,ID @@ -35079,7 +36101,9 @@ 1728918528,1728919551,KR 1728919552,1728920575,AU 1728920576,1728921599,JP -1728921600,1728922623,AF +1728921600,1728921855,AF +1728921856,1728922111,US +1728922112,1728922623,AF 1728922624,1728923647,AU 1728924416,1728924671,MY 1728924672,1728925695,VN @@ -35088,8 +36112,7 @@ 1728928768,1728929791,JP 1728929792,1728930815,IN 1728930816,1728931839,AU -1728931840,1728932863,JP -1728932864,1728933887,IN +1728932864,1728934911,IN 1728934912,1728935935,NZ 1728935936,1728936959,MY 1728936960,1728937983,CN @@ -35109,15 +36132,15 @@ 1728951552,1728951807,ID 1728951808,1728952063,SG 1728952064,1728952319,IN -1728952832,1728953343,NZ +1728952832,1728953343,AU 1728953344,1728954367,HK -1728954368,1728955391,JP 1728955392,1728956415,CN 1728956416,1728957439,ID -1728957440,1728959487,JP +1728958464,1728959487,JP 1728959488,1728960511,TH 1728960512,1728961279,AU 1728961280,1728961535,IN +1728961536,1728962559,CN 1728962560,1728963583,BD 1728963584,1728964607,TH 1728964608,1728965631,HK @@ -35151,11 +36174,14 @@ 1728990336,1728990463,ID 1728990464,1728990975,KR 1728990976,1728991231,SG +1728991232,1728992255,JP 1728992256,1728993279,CN 1728993280,1728994303,PG 1728994304,1728995327,AU 1728995328,1728996095,IN 1728996096,1728996351,SG +1728996352,1728997375,CN +1728997376,1728998399,IN 1728998400,1728998655,ID 1728998656,1728998911,BD 1728998912,1728999423,ID @@ -35181,6 +36207,7 @@ 1729020160,1729020415,BD 1729020416,1729020671,PH 1729020672,1729020927,ID +1729020928,1729021951,IN 1729021952,1729022975,AU 1729022976,1729023999,BD 1729024000,1729025023,IN @@ -35191,7 +36218,6 @@ 1729027584,1729027839,JP 1729027840,1729028095,HK 1729028096,1729029119,SG -1729029120,1729029375,AU 1729029376,1729029631,ID 1729029632,1729029887,AU 1729029888,1729030143,PK @@ -35204,7 +36230,6 @@ 1729035264,1729036287,AU 1729036288,1729037311,JP 1729037312,1729039359,CN -1729039360,1729040383,JP 1729040384,1729041407,CN 1729041408,1729042687,HK 1729042688,1729042943,SG @@ -35216,8 +36241,7 @@ 1729046528,1729047551,BD 1729047552,1729048575,AU 1729048576,1729049599,VN -1729049600,1729050623,IN -1729051648,1729053695,IN +1729049600,1729053695,IN 1729053696,1729054719,JP 1729054720,1729055231,AU 1729055232,1729055487,IN @@ -35252,8 +36276,7 @@ 1729079296,1729080319,AU 1729080320,1729081343,ID 1729081344,1729081599,IN -1729081600,1729081855,AU -1729081856,1729082111,NZ +1729081600,1729082111,AU 1729082112,1729082367,IN 1729082368,1729083391,HK 1729083392,1729083647,JP @@ -35265,8 +36288,7 @@ 1729090560,1729091583,JP 1729091584,1729092607,HK 1729092608,1729094143,BD -1729094400,1729094655,IN -1729094912,1729095167,AU +1729094656,1729095679,IN 1729095680,1729096703,SG 1729096704,1729097215,AU 1729097216,1729097727,AF @@ -35274,6 +36296,7 @@ 1729098752,1729099775,BD 1729099776,1729100543,IN 1729100544,1729100799,ID +1729100800,1729101823,IN 1729101824,1729102847,VN 1729102848,1729103871,IN 1729103872,1729104895,JP @@ -35349,6 +36372,7 @@ 1729167360,1729168383,IN 1729168384,1729169407,JP 1729169408,1729170431,TW +1729170432,1729171455,HK 1729171456,1729171967,AU 1729171968,1729172223,IN 1729172224,1729172479,MY @@ -35381,6 +36405,7 @@ 1729199616,1729199871,JP 1729200128,1729201151,IN 1729201152,1729202175,AU +1729202176,1729203199,CN 1729203200,1729205247,SG 1729205248,1729206271,JP 1729206272,1729207295,AU @@ -35428,7 +36453,9 @@ 1729247488,1729247743,AU 1729247744,1729248255,NZ 1729248256,1729249279,JP -1729249280,1729253375,IN +1729249280,1729252351,IN +1729252352,1729253375,ID +1729253376,1729254399,BD 1729254400,1729255423,AU 1729255424,1729257471,MY 1729257472,1729258495,ID @@ -35472,6 +36499,7 @@ 1729294848,1729295103,IN 1729295104,1729295359,PK 1729295360,1729296383,MY +1729296384,1729297407,IN 1729297408,1729298431,AU 1729299456,1729300479,NZ 1729300480,1729300991,SG @@ -35646,7 +36674,6 @@ 1729475584,1729476607,MY 1729476608,1729477631,IN 1729477632,1729478655,AU -1729478656,1729478911,BD 1729478912,1729479423,NZ 1729479424,1729479679,IN 1729479680,1729480703,TW @@ -35742,6 +36769,7 @@ 1729600512,1729601535,VN 1729601536,1729603583,CN 1729603584,1729604607,HK +1729604608,1729604863,AU 1729605376,1729605631,ID 1729605632,1729606655,CN 1729606656,1729607679,ID @@ -35772,7 +36800,7 @@ 1729627136,1729628159,SG 1729628160,1729629183,KR 1729629184,1729629695,ID -1729629696,1729629951,NZ +1729629696,1729629951,AU 1729629952,1729630207,HK 1729630208,1729631231,PH 1729631232,1729632255,IN @@ -35910,7 +36938,8 @@ 1729776128,1729776639,MY 1729777664,1729779711,PK 1729779712,1729780735,AU -1729780736,1729781759,HK +1729780736,1729781503,HK +1729781504,1729781759,TL 1729781760,1729782783,IN 1729782784,1729783551,ID 1729783552,1729783807,NZ @@ -36002,7 +37031,8 @@ 1729875456,1729875967,ID 1729875968,1729876991,CN 1729878016,1729879039,NZ -1729879040,1729879295,AU +1729879040,1729879167,AU +1729879168,1729879295,JP 1729879296,1729879423,KR 1729879424,1729879679,JP 1729879680,1729879807,AU @@ -36038,6 +37068,7 @@ 1729902080,1729902591,SG 1729902592,1729903615,ID 1729903616,1729905663,KR +1729905664,1729906687,PH 1729906688,1729906943,AU 1729906944,1729907199,JP 1729907200,1729907711,ID @@ -36055,7 +37086,8 @@ 1729918976,1729919999,BD 1729920000,1729921023,TH 1729921024,1729922047,AU -1729922048,1729922559,US +1729922048,1729922303,AF +1729922304,1729922559,US 1729922560,1729923071,AF 1729923072,1729924095,VN 1729924096,1729925119,IN @@ -36107,7 +37139,6 @@ 1729973248,1729974271,AU 1729974272,1729975295,PH 1729975296,1729976831,AU -1729976832,1729977343,NZ 1729977344,1729978367,HK 1729978368,1729979391,IN 1729979392,1729980415,AU @@ -36149,7 +37180,7 @@ 1730012160,1730013183,ID 1730013184,1730014207,IN 1730015232,1730016255,MY -1730016256,1730017279,PH +1730016256,1730017279,NZ 1730017280,1730017791,IN 1730017792,1730019327,PH 1730019328,1730020351,ID @@ -36367,7 +37398,6 @@ 1730476800,1730477055,IN 1730477056,1730478079,AU 1730478080,1730479103,CN -1730479104,1730480127,HK 1730480128,1730480639,AU 1730480640,1730481151,JP 1730481152,1730483199,CN @@ -36401,8 +37431,6 @@ 1730521088,1730522111,ID 1730522112,1730524159,CN 1730524160,1730525183,IN -1730525184,1730526207,HK -1730527232,1730528255,JP 1730528256,1730529279,SG 1730529280,1730529791,IN 1730529792,1730530303,AU @@ -36426,7 +37454,6 @@ 1730552832,1730553855,IN 1730553856,1730555903,CN 1730555904,1730556415,IN -1730556928,1730557951,JP 1730557952,1730558975,CN 1730558976,1730559999,MY 1730560000,1730561023,HK @@ -36466,7 +37493,6 @@ 1730592768,1730593791,MY 1730593792,1730594815,NP 1730594816,1730596863,IN -1730596864,1730597887,JP 1730597888,1730598911,PH 1730598912,1730599423,AU 1730599424,1730599935,VU @@ -36581,7 +37607,8 @@ 1730753536,1730754559,CN 1730754560,1730755071,IN 1730755072,1730755583,TH -1730755584,1730756607,JP +1730755584,1730756351,JP +1730756352,1730756607,CN 1730756608,1730757631,HK 1730757632,1730758655,SG 1730758656,1730759679,JP @@ -36889,7 +37916,8 @@ 1731171072,1731171199,TH 1731171200,1731171327,MY 1731171328,1731172863,IN -1731172864,1731173375,MY +1731172864,1731173119,MY +1731173120,1731173375,SG 1731173376,1731178495,IN 1731178496,1731179519,HK 1731179520,1731180543,JP @@ -37101,11 +38129,12 @@ 1731426304,1731427327,BD 1731427328,1731428351,KH 1731428352,1731428607,IN -1731428608,1731428863,NZ 1731428864,1731429119,AU 1731429120,1731429375,ID 1731429376,1731431423,IN -1731431424,1731432447,TW +1731431424,1731431935,TR +1731431936,1731432191,TW +1731432192,1731432447,TR 1731432448,1731433471,HK 1731433472,1731435519,IN 1731435520,1731436031,NZ @@ -37682,7 +38711,9 @@ 1732126720,1732127743,IN 1732127744,1732128767,HK 1732128768,1732129023,SG -1732129024,1732129791,HK +1732129024,1732129279,NZ +1732129280,1732129535,AU +1732129536,1732129791,HK 1732129792,1732130815,CN 1732130816,1732134911,IN 1732134912,1732140031,CN @@ -37832,7 +38863,8 @@ 1740772352,1740776447,IN 1740776448,1740777471,HK 1740777472,1740777983,JP -1740777984,1740778495,HK +1740777984,1740778239,KR +1740778240,1740778495,HK 1740778496,1740779519,IN 1740779520,1740780543,AU 1740780544,1740784639,IN @@ -37846,8 +38878,8 @@ 1740791808,1740792831,IN 1740792832,1740794879,HK 1740794880,1740795903,KR -1740795904,1740796159,NZ -1740796160,1740798207,IN +1740795904,1740796415,NZ +1740796416,1740798207,IN 1740798208,1740798463,AU 1740798464,1740798975,IN 1740798976,1740799999,AU @@ -37857,7 +38889,7 @@ 1740805120,1740806143,HK 1740806144,1740809215,IN 1740809216,1740810239,JP -1740810240,1740811263,IN +1740810240,1740811263,NL 1740811264,1740812287,ID 1740812288,1740813311,MN 1740813312,1740814335,IN @@ -37875,6 +38907,254 @@ 1740829696,1740830719,HK 1740830720,1740831743,IN 1740831744,1740832767,KR +1740832768,1740833791,BD +1740833792,1740834815,HK +1740834816,1740835839,NZ +1740835840,1740836863,AU +1740836864,1740837119,IN +1740837120,1740837375,AU +1740837376,1740837887,ID +1740837888,1740838911,MY +1740838912,1740839935,IN +1740839936,1740840191,SG +1740840192,1740840959,ID +1740840960,1740841983,SG +1740841984,1740845055,IN +1740845056,1740846079,HK +1740846080,1740846591,AU +1740846592,1740847103,BD +1740847104,1740848127,ID +1740848128,1740849407,AU +1740849408,1740849663,ID +1740849664,1740850175,AU +1740850176,1740855295,IN +1740855296,1740856319,ID +1740856320,1740858367,IN +1740858368,1740859391,SG +1740859392,1740860415,CN +1740860416,1740861439,HK +1740861440,1740862463,CN +1740862464,1740863487,HK +1740863488,1740865535,IN +1740865536,1740866559,AU +1740866560,1740867583,HK +1740867584,1740868607,CN +1740868608,1740869119,BD +1740869120,1740869375,ID +1740869376,1740869631,MY +1740869632,1740870655,JP +1740870656,1740872703,CN +1740872704,1740873727,ID +1740873728,1740874751,CN +1740874752,1740876287,ID +1740876288,1740876799,AU +1740876800,1740880895,IN +1740880896,1740881919,SG +1740881920,1740882943,CN +1740882944,1740884991,IN +1740884992,1740885503,BD +1740885504,1740886015,AU +1740886016,1740893183,IN +1740893184,1740895231,VN +1740895232,1740901375,IN +1740901376,1740901887,TH +1740901888,1740902143,ID +1740902144,1740902399,IN +1740902400,1740903423,VN +1740903424,1740904447,HK +1740904448,1740904959,NZ +1740904960,1740907519,IN +1740907520,1740908543,US +1740908544,1740909055,PK +1740909056,1740910591,ID +1740910592,1740911615,CN +1740911616,1740912639,IN +1740912640,1740913663,PH +1740913664,1740915711,CN +1740915712,1740916735,AU +1740916736,1740917759,CN +1740917760,1740918783,IN +1740918784,1740920319,AU +1740920320,1740920831,HK +1740920832,1740923903,CN +1740923904,1740924927,HK +1740924928,1740925951,PH +1740925952,1740926463,NZ +1740926464,1740926719,IN +1740926720,1740926975,AU +1740926976,1740927999,SG +1740928000,1740928255,ID +1740928256,1740928511,IN +1740928512,1740929023,AU +1740929024,1740931071,HK +1740931072,1740932095,PH +1740932096,1740933119,IN +1740933120,1740934143,PH +1740934144,1740935167,AU +1740935168,1740936191,IN +1740936192,1740937215,AU +1740937216,1740938239,HK +1740938240,1740938495,AU +1740938496,1740938751,IN +1740938752,1740939263,TH +1740939264,1740940287,PK +1740940288,1740941311,JP +1740941312,1740942335,CN +1740942336,1740943359,TW +1740944384,1740945407,US +1740945408,1740946431,CN +1740946432,1740947967,IN +1740947968,1740948223,AU +1740948224,1740948479,MY +1740948480,1740950527,IN +1740950528,1740951551,CN +1740951552,1740957695,IN +1740957696,1740958719,BD +1740958720,1740959743,VN +1740959744,1740960255,NL +1740960256,1740960767,IN +1740960768,1740962815,VN +1740962816,1740964863,SG +1740964864,1740965887,HK +1740965888,1740966911,IN +1740966912,1740967935,JP +1740967936,1740968959,IN +1740968960,1740969983,MY +1740969984,1740971007,HK +1740971008,1740975103,IN +1740975104,1740976127,PK +1740976128,1740976639,BD +1740976640,1740976895,SG +1740976896,1740977151,IN +1740977152,1740978175,NZ +1740978176,1740979199,MY +1740979200,1740980223,NZ +1740980224,1740981247,AU +1740981248,1740982271,HK +1740982272,1740985343,IN +1740985344,1740986367,PH +1740986368,1740986623,AU +1740986624,1740986879,ID +1740986880,1740987391,IN +1740987392,1740988415,ID +1740988416,1740989439,SG +1740989440,1740990463,IN +1740990464,1740991487,KH +1740991488,1741000703,IN +1741000704,1741001727,AU +1741001728,1741002751,HK +1741002752,1741003775,BD +1741003776,1741004799,HK +1741004800,1741005823,AU +1741005824,1741006847,MV +1741006848,1741007871,HK +1741007872,1741008895,TW +1741008896,1741009919,BT +1741009920,1741010943,CN +1741010944,1741011455,IN +1741011456,1741011967,AU +1741011968,1741012991,ID +1741012992,1741014015,HK +1741014016,1741015039,MM +1741015040,1741016063,PH +1741016064,1741017087,BD +1741017088,1741018111,JP +1741018112,1741019135,AU +1741019136,1741020159,HK +1741020160,1741022207,IN +1741022208,1741023231,CN +1741023232,1741025279,AU +1741025280,1741026303,IN +1741026304,1741027327,TH +1741027328,1741028351,BD +1741028352,1741029375,CN +1741029376,1741029631,SG +1741029632,1741029887,HK +1741029888,1741030399,BD +1741030400,1741031423,JP +1741031424,1741031935,NP +1741031936,1741032447,IN +1741032448,1741033471,JP +1741033472,1741033983,MY +1741033984,1741034495,HK +1741034496,1741035519,CN +1741035520,1741036031,AU +1741036544,1741037567,IN +1741037568,1741038079,AU +1741038080,1741038591,IN +1741038592,1741039615,JP +1741039616,1741040639,AU +1741040640,1741042687,HK +1741042688,1741043199,MY +1741043200,1741043711,AU +1741043712,1741044735,HK +1741044736,1741046783,CN +1741046784,1741047807,MY +1741047808,1741048831,CN +1741048832,1741049855,SG +1741049856,1741050367,IN +1741050368,1741050623,HK +1741050624,1741050879,IN +1741050880,1741051903,MY +1741051904,1741052927,PH +1741052928,1741053183,AU +1741053184,1741053439,ID +1741053440,1741055999,IN +1741056000,1741056511,NZ +1741056512,1741057023,AU +1741057024,1741058047,JP +1741058048,1741058559,AU +1741058560,1741061119,ID +1741061120,1741062143,CN +1741062144,1741062655,IN +1741062656,1741062911,AU +1741062912,1741063167,ID +1741063168,1741065215,BD +1741065216,1741067263,SG +1741067264,1741068287,MM +1741068288,1741069311,TH +1741069312,1741070335,CN +1741070336,1741071359,JP +1741071360,1741072383,IN +1741072384,1741073407,BD +1741073408,1741074431,IN +1741074432,1741075455,TL +1741075456,1741076479,CN +1741076480,1741077247,NZ +1741077248,1741077503,IN +1741077504,1741079551,HK +1741079552,1741081599,CN +1741081600,1741082623,HK +1741082624,1741084671,JP +1741084672,1741092863,CN +1741092864,1741093887,HK +1741093888,1741094911,BD +1741094912,1741095423,NZ +1741095424,1741095935,ID +1741095936,1741115391,VN +1741115392,1741115647,AU +1741115648,1741115903,NZ +1741115904,1741116415,AU +1741116416,1741117439,BD +1741117440,1741119487,IN +1741119488,1741119743,AU +1741119744,1741120511,IN +1741120512,1741122559,HK +1741122560,1741123583,BD +1741123584,1741125119,IN +1741125120,1741125375,ID +1741125376,1741125631,AU +1741125632,1741128703,IN +1741128704,1741129727,JP +1741129728,1741130751,IN +1741130752,1741131775,JP +1741131776,1741132799,IN +1741132800,1741133823,HK +1741133824,1741134847,BD +1741134848,1741136895,IN +1741136896,1741137919,CN +1741137920,1741138431,BD +1741138944,1741139967,IN 1742734336,1742735359,IN 1742735360,1742736383,JP 1742736384,1742737407,PK @@ -38068,8 +39348,7 @@ 1742933504,1742933759,ID 1742933760,1742934015,NZ 1742934016,1742935039,AF -1742935040,1742937087,AU -1742937088,1742938111,NZ +1742935040,1742938111,AU 1742938112,1742939135,TW 1742939136,1742940159,IN 1742940160,1742941183,JP @@ -38103,7 +39382,7 @@ 1742978048,1742979071,JP 1742979072,1742980095,HK 1742980096,1742981119,CN -1742981120,1742982143,NZ +1742981120,1742982143,AU 1742982144,1742983167,CN 1742983168,1742984191,IN 1742984192,1742985215,CN @@ -38346,6 +39625,7 @@ 1743237120,1743238143,BD 1743238144,1743240191,CN 1743240192,1743241215,SG +1743241216,1743242239,JP 1743242240,1743244287,ID 1743244288,1743245311,AU 1743245312,1743248383,IN @@ -38453,6 +39733,7 @@ 1743355904,1743356927,CN 1743356928,1743357951,NZ 1743357952,1743358975,CN +1743358976,1743359231,AF 1743359488,1743361023,ID 1743361024,1743362047,AU 1743362048,1743364095,ID @@ -38470,7 +39751,6 @@ 1743373312,1743374335,JP 1743375360,1743376383,MM 1743376384,1743377407,AU -1743377408,1743378431,JP 1743378432,1743379455,IN 1743379456,1743380479,NZ 1743380480,1743381503,AU @@ -38481,7 +39761,6 @@ 1743385088,1743385343,AU 1743385344,1743386623,IN 1743386624,1743387647,HK -1743387648,1743388671,JP 1743388672,1743389695,CN 1743389696,1743390719,KR 1743391744,1743391999,PK @@ -38489,6 +39768,7 @@ 1743392768,1743393791,HK 1743393792,1743394815,CN 1743394816,1743395839,BD +1743395840,1743396863,JP 1743396864,1743397887,HK 1743397888,1743398911,VN 1743398912,1743399935,TW @@ -38518,7 +39798,6 @@ 1743426560,1743426815,SG 1743426816,1743430399,IN 1743430400,1743430655,AU -1743430656,1743431679,JP 1743431680,1743432703,SG 1743432704,1743433727,CN 1743433728,1743434751,JP @@ -38560,8 +39839,6 @@ 1743470848,1743471103,AU 1743471104,1743471615,ID 1743471616,1743472639,IN -1743472640,1743473663,KH -1743473664,1743474687,JP 1743474688,1743476735,CN 1743476736,1743477759,TW 1743477760,1743479807,AU @@ -38578,9 +39855,9 @@ 1743493120,1743493631,ID 1743493632,1743493887,AU 1743493888,1743495167,IN -1743495168,1743497215,JP 1743497216,1743499263,HK -1743499264,1743500287,AF +1743499264,1743499519,US +1743499520,1743500287,AF 1743500288,1743501311,JP 1743501312,1743502335,CN 1743502336,1743503359,AU @@ -38590,7 +39867,6 @@ 1743506432,1743506943,SG 1743506944,1743507455,IN 1743507456,1743509503,VN -1743509504,1743510527,HK 1743510528,1743545343,CN 1743545344,1743546367,HK 1743546368,1743549951,IN @@ -38613,10 +39889,20 @@ 1743567872,1743569151,ID 1743569152,1743569919,IN 1743569920,1743570943,SG -1743570944,1743574015,IN -1743574016,1743575039,AU +1743570944,1743571199,IN +1743571200,1743571455,ID +1743571456,1743571967,AU +1743571968,1743574015,IN +1743574016,1743574527,AU +1743574528,1743574783,US +1743574784,1743575039,AU 1743575040,1743576063,HK -1743585280,1743589375,CN +1743576064,1743577087,CN +1743577088,1743578111,JP +1743578112,1743579135,MY +1743579136,1743580159,CN +1743580160,1743581183,IN +1743581184,1743589375,CN 1743589376,1743590399,AU 1743590400,1743591423,KR 1743591424,1743593471,CN @@ -38629,7 +39915,7 @@ 1743599616,1743600639,IN 1743600640,1743602687,VN 1743602688,1743603711,CN -1743603712,1743605759,HK +1743603712,1743604735,HK 1743605760,1743606015,SG 1743606016,1743606527,AU 1743606528,1743606783,AF @@ -38665,12 +39951,10 @@ 1743666432,1743666687,IN 1743666688,1743666943,AU 1743666944,1743667199,BD -1743667200,1743668223,KH -1743668224,1743672319,VN +1743667200,1743672319,VN 1743672320,1743673343,NZ 1743673344,1743676415,CN 1743676416,1743679487,IN -1743679488,1743680511,JP 1743680512,1743681535,TL 1743681536,1743682559,AU 1743682560,1743683583,MY @@ -38703,9 +39987,7 @@ 1743715328,1743717375,CN 1743717376,1743718399,BD 1743718400,1743719423,NZ -1743719424,1743720447,HK 1743720448,1743721471,JP -1743721472,1743722495,SG 1743722496,1743723519,AU 1743723520,1743724543,HK 1743724544,1743725567,VN @@ -38717,14 +39999,13 @@ 1743729664,1743730687,KH 1743730688,1743731711,IN 1743731712,1743732735,TW -1743732736,1743733759,HK 1743733760,1743734783,CN 1743734784,1743735807,HK 1743735808,1743736319,AU 1743736320,1743736575,IN 1743736576,1743736831,AU 1743736832,1743738879,IN -1743738880,1743740927,JP +1743739904,1743740927,JP 1743740928,1743741951,CN 1743741952,1743742975,HK 1743742976,1743743487,NZ @@ -38773,7 +40054,7 @@ 1743795200,1743796223,NZ 1743796224,1743797247,JP 1743797248,1743798271,TH -1743798272,1743800319,HK +1743798272,1743799295,HK 1743800320,1743801343,CN 1743801344,1743802367,IN 1743802368,1743803391,HK @@ -38802,7 +40083,7 @@ 1743827968,1743828991,HK 1743828992,1743830015,NZ 1743831040,1743832063,IN -1743832064,1743834111,HK +1743833088,1743834111,HK 1743834112,1743838207,IN 1743838208,1743838463,PK 1743838464,1743838719,HK @@ -38968,7 +40249,7 @@ 1744022528,1744023551,SG 1744023552,1744023807,IN 1744023808,1744024319,ID -1744024320,1744024575,AF +1744024320,1744024575,US 1744024576,1744025599,HK 1744025600,1744026623,IN 1744027648,1744028671,MY @@ -39014,8 +40295,8 @@ 1744077824,1744078847,PK 1744078848,1744079871,VN 1744079872,1744080895,BD -1744080896,1744081407,US -1744081408,1744081919,AF +1744080896,1744081151,US +1744081152,1744081919,AF 1744081920,1744082943,HK 1744082944,1744083967,IN 1744083968,1744084991,HK @@ -39162,7 +40443,11 @@ 1744222720,1744222975,AU 1744223232,1744224255,TH 1744225280,1744226303,IN -1744226304,1744227327,SG +1744226304,1744226559,SG +1744226560,1744226595,ID +1744226596,1744226596,SG +1744226597,1744226815,ID +1744226816,1744227327,SG 1744227328,1744228351,MY 1744228352,1744229375,TW 1744229376,1744230399,IN @@ -39283,8 +40568,7 @@ 1744350208,1744351231,IN 1744351232,1744352255,NZ 1744353280,1744354303,HK -1744354304,1744354559,AU -1744354560,1744355327,NZ +1744354304,1744355327,AU 1744355328,1744356351,CN 1744357376,1744357631,NZ 1744357632,1744357887,AU @@ -39382,8 +40666,7 @@ 1744455680,1744456703,JP 1744456704,1744459775,IN 1744459776,1744460799,NZ -1744460800,1744462847,JP -1744462848,1744463871,NZ +1744460800,1744461823,JP 1744463872,1744464895,CN 1744464896,1744465919,JP 1744465920,1744466943,IN @@ -39398,9 +40681,7 @@ 1744474112,1744481279,IN 1744481280,1744482303,JP 1744483328,1744484351,CN -1744484352,1744485119,IN -1744485120,1744485375,MY -1744485376,1744486399,IN +1744484352,1744486399,IN 1744486400,1744487423,CN 1744487424,1744487935,TH 1744487936,1744488191,NZ @@ -39418,7 +40699,6 @@ 1744500736,1744502783,CN 1744502784,1744503807,MY 1744503808,1744504831,AU -1744504832,1744505855,MY 1744505856,1744506367,AU 1744506368,1744506623,ID 1744506624,1744506879,AU @@ -39524,7 +40804,8 @@ 1744617472,1744618495,IN 1744619520,1744620543,SG 1744620544,1744622591,CN -1744622592,1744625663,IN +1744622592,1744624639,IN +1744624640,1744625663,NL 1744626688,1744627711,KR 1744627712,1744628735,CN 1744628736,1744629759,IN @@ -39711,7 +40992,7 @@ 1744825344,1744826367,VN 1744826368,1744827391,ID 1744827392,1744828415,JP -1744828416,1744828927,NZ +1744828416,1744828927,AU 1744828928,1744829183,SG 1744829184,1744829439,AU 1744829440,1744830463,HK @@ -39764,7 +41045,9 @@ 1747779584,1747795967,NL 1747795968,1747801855,US 1747801856,1747802111,IE -1747802112,1749061631,US +1747802112,1747853924,US +1747853925,1747853925,NL +1747853926,1749061631,US 1749061632,1749069823,NL 1749069824,1749094399,US 1749094400,1749098495,NL @@ -39894,7 +41177,9 @@ 1753346048,1753483263,US 1753483264,1753483519,IE 1753483520,1753483775,IL -1753483776,1753486335,US +1753483776,1753484607,US +1753484608,1753484655,BR +1753484656,1753486335,US 1753486336,1753486591,IN 1753486592,1753487359,US 1753487360,1753487615,CH @@ -39905,7 +41190,9 @@ 1753490432,1753490687,IL 1753490688,1753494527,US 1753494528,1753494783,IL -1753494784,1753517567,US +1753494784,1753516543,US +1753516544,1753516799,ES +1753516800,1753517567,US 1753517568,1753517823,NO 1753517824,1753522431,US 1753522432,1753522687,FR @@ -40173,7 +41460,9 @@ 1757427712,1757443071,US 1757443072,1757446143,CA 1757446144,1757447167,US -1757447168,1757448191,CA +1757447168,1757447343,CA +1757447344,1757447344,US +1757447345,1757448191,CA 1757448192,1757450239,US 1757450240,1757451263,CA 1757451264,1757452287,US @@ -40226,27 +41515,25 @@ 1758413568,1758414335,US 1758414336,1758414591,LV 1758414592,1758414847,IN -1758414848,1758415103,GD +1758414848,1758415103,US 1758415104,1758415359,GB 1758415360,1758415615,FR 1758415616,1758415871,CY 1758415872,1758416127,IT 1758416128,1758416383,US 1758416384,1758416639,CF -1758416640,1758416895,IL +1758416640,1758416895,US 1758416896,1758417151,VC 1758417152,1758417407,ID 1758417408,1758417663,CL 1758417664,1758417919,HK 1758417920,1758418175,DE -1758418176,1758418431,RU +1758418176,1758418431,US 1758418432,1758418687,CN 1758418688,1758418943,BL 1758418944,1758419199,US 1758419200,1758419455,CR -1758419456,1758419711,EG -1758419712,1758419967,VE -1758419968,1758420223,US +1758419456,1758420223,US 1758420224,1758420479,HU 1758420480,1758420735,CH 1758420736,1758420991,MM @@ -40529,19 +41816,24 @@ 1761185280,1761185535,US 1761185536,1761185791,AE 1761185792,1761186047,MX -1761186048,1761186815,US +1761186048,1761186303,US +1761186304,1761186559,DE +1761186560,1761186815,US 1761186816,1761187071,MX 1761187072,1761187327,US 1761187328,1761187583,PK 1761187584,1761188095,US 1761188096,1761188351,RU -1761188352,1761189887,US +1761188352,1761189631,US +1761189632,1761189887,DE 1761189888,1761190143,JP 1761190144,1761191679,US 1761191680,1761191935,MX 1761191936,1761192703,US 1761192704,1761192959,AU -1761192960,1761194239,US +1761192960,1761193727,US +1761193728,1761193983,DE +1761193984,1761194239,US 1761194240,1761194495,PH 1761194496,1761194751,HK 1761194752,1761195007,US @@ -40592,7 +41884,9 @@ 1761288192,1761292287,CA 1761292288,1761302015,US 1761302016,1761302271,CA -1761302272,1761304575,US +1761302272,1761302527,US +1761302528,1761302783,CA +1761302784,1761304575,US 1761304576,1761308671,CA 1761308672,1761328639,US 1761328640,1761328895,AU @@ -40812,27 +42106,10 @@ 1795593728,1795595775,NL 1795595776,1795596287,US 1795596288,1795603455,NL -1795603456,1796253695,US -1796253696,1796253951,CA -1796253952,1796257919,US -1796257920,1796258047,PR -1796258048,1796262911,US -1796262912,1796263167,PR -1796263168,1796325375,US -1796325376,1796325631,PR -1796325632,1796402431,US -1796402432,1796402559,CA -1796402560,1796403199,US -1796403200,1796403327,CA -1796403328,1796404095,US -1796404096,1796404223,CA -1796404224,1796404735,US -1796404736,1796404863,CA -1796404864,1796406655,US -1796406656,1796406783,CA -1796406784,1805000058,US +1795603456,1805000058,US 1805000059,1805000059,CA -1805000060,1805016831,US +1805000060,1805016575,US +1805016576,1805016831,NZ 1805016832,1805017087,TR 1805017088,1805021183,CN 1805021184,1805049855,US @@ -40878,7 +42155,9 @@ 1805752576,1805753087,CA 1805753088,1805754111,US 1805754112,1805754367,CA -1805754368,1806172159,US +1805754368,1806134015,US +1806134016,1806134271,IN +1806134272,1806172159,US 1806172160,1806172415,DE 1806172416,1806172671,GB 1806172672,1806172927,DE @@ -40887,7 +42166,11 @@ 1806174208,1806174463,BR 1806174464,1806180351,US 1806180352,1806180607,AU -1806180608,1806205183,US +1806180608,1806198271,US +1806198272,1806198527,JP +1806198528,1806203391,US +1806203392,1806203647,AU +1806203648,1806205183,US 1806205184,1806205439,CA 1806205440,1806263551,US 1806263552,1806263807,KR @@ -41006,7 +42289,9 @@ 1816001792,1816002559,NL 1816002560,1816068095,US 1816068096,1816133631,CA -1816133632,1822429183,US +1816133632,1819976622,US +1819976623,1819976623,RE +1819976624,1822429183,US 1822429184,1822433279,CA 1822433280,1822445567,US 1822445568,1822451199,CA @@ -41028,11 +42313,11 @@ 1822572544,1822605311,CA 1822605312,1822614015,US 1822614016,1822614271,JP -1822614272,1822618111,US -1822618112,1822618367,CA -1822618368,1822619135,US -1822619136,1822619391,CA -1822619392,1822654463,US +1822614272,1822617855,US +1822617856,1822618367,CA +1822618368,1822619647,US +1822619648,1822620415,AU +1822620416,1822654463,US 1822654464,1822662143,CA 1822662144,1822662399,US 1822662400,1822670847,CA @@ -41061,11 +42346,9 @@ 1823383552,1823387647,CA 1823387648,1823428607,US 1823428608,1823432703,CA -1823432704,1823440895,US -1823440896,1823441151,CA -1823441152,1823441407,US -1823441408,1823441919,CA -1823441920,1823465471,US +1823432704,1823442431,US +1823442432,1823442687,CA +1823442688,1823465471,US 1823465472,1823469567,CA 1823469568,1823735807,US 1823735808,1823866879,CA @@ -41075,16 +42358,51 @@ 1831337984,1831862271,DE 1831862272,1832124415,PT 1832124416,1832386559,IT -1832386560,1832517631,DK +1832386560,1832456959,DK +1832456960,1832457215,SE +1832457216,1832478463,DK +1832478464,1832478719,SE +1832478720,1832517631,DK 1832517632,1832583167,SE 1832583168,1832648703,DK 1832648704,1832681471,HR 1832681472,1832714239,RU 1832714240,1832747007,HU 1832747008,1832779775,RU -1832779776,1832803583,FR -1832803584,1832803839,MQ -1832803840,1832812543,FR +1832779776,1832780799,FR +1832780800,1832781055,MQ +1832781056,1832782591,FR +1832782592,1832783103,MQ +1832783104,1832784639,FR +1832784640,1832785407,GP +1832785408,1832786943,FR +1832786944,1832787967,GF +1832787968,1832790527,FR +1832790528,1832790783,YT +1832790784,1832794111,FR +1832794112,1832794879,GP +1832794880,1832795391,FR +1832795392,1832795647,GF +1832795648,1832796415,FR +1832796416,1832796671,RE +1832796672,1832796927,FR +1832796928,1832797183,GP +1832797184,1832798463,FR +1832798464,1832798975,GP +1832798976,1832800255,FR +1832800256,1832800511,MQ +1832800512,1832800767,FR +1832800768,1832801535,MQ +1832801536,1832804351,FR +1832804352,1832804607,MQ +1832804608,1832805119,FR +1832805120,1832805631,MQ +1832805632,1832805887,FR +1832805888,1832806399,MQ +1832806400,1832806911,GP +1832806912,1832807167,FR +1832807168,1832807935,GP +1832807936,1832812543,FR 1832812544,1832845311,RU 1832845312,1832878079,BH 1832878080,1832910847,RU @@ -41618,9 +42936,34 @@ 1836681216,1836711935,BG 1836711936,1836728319,UA 1836728320,1836744703,RS -1836744704,1836745983,FR -1836745984,1836746239,RE -1836746240,1836761087,FR +1836744704,1836746495,FR +1836746496,1836746751,RE +1836746752,1836747263,FR +1836747264,1836748031,RE +1836748032,1836748287,FR +1836748288,1836748543,RE +1836748544,1836749567,FR +1836749568,1836750079,RE +1836750080,1836750335,FR +1836750336,1836750591,RE +1836750592,1836750847,FR +1836750848,1836751359,RE +1836751360,1836753919,FR +1836753920,1836754175,RE +1836754176,1836754431,FR +1836754432,1836754687,RE +1836754688,1836754943,FR +1836754944,1836755199,RE +1836755200,1836755967,FR +1836755968,1836756223,RE +1836756224,1836756479,FR +1836756480,1836756735,RE +1836756736,1836758015,FR +1836758016,1836758271,RE +1836758272,1836760063,FR +1836760064,1836760319,RE +1836760320,1836760831,FR +1836760832,1836761087,RE 1836761088,1836777471,IR 1836777472,1836793855,SI 1836793856,1836794567,GB @@ -41882,8 +43225,20 @@ 1842044928,1842053119,GB 1842053120,1842069503,IR 1842069504,1842077695,RU -1842077696,1842079487,FR -1842079488,1842085887,MQ +1842077696,1842078207,FR +1842078208,1842078463,MQ +1842078464,1842079231,FR +1842079232,1842079743,MQ +1842079744,1842080255,GP +1842080256,1842080767,MQ +1842080768,1842081023,GP +1842081024,1842081791,MQ +1842081792,1842082047,GP +1842082048,1842082815,MQ +1842082816,1842083327,GP +1842083328,1842084607,MQ +1842084608,1842084863,GP +1842084864,1842085887,MQ 1842085888,1842118655,GB 1842118656,1842151423,FI 1842151424,1842153471,FR @@ -41980,7 +43335,11 @@ 1843789824,1843806207,SK 1843806208,1843822591,IR 1843822592,1843838975,RU -1843838976,1843855359,DE +1843838976,1843846911,DE +1843846912,1843847167,IR +1843847168,1843853055,DE +1843853056,1843853311,IR +1843853312,1843855359,DE 1843855360,1843871743,PL 1843871744,1843888127,GB 1843888128,1843904511,CZ @@ -42240,7 +43599,13 @@ 1848393728,1848401919,JP 1848401920,1848406015,PH 1848406016,1848410111,NP -1848410112,1848414207,PH +1848410112,1848411135,JP +1848411136,1848411391,PH +1848411392,1848412415,JP +1848412416,1848412671,PH +1848412672,1848413439,JP +1848413440,1848413951,PH +1848413952,1848414207,JP 1848414208,1848418303,CN 1848418304,1848420351,AU 1848420352,1848422399,ID @@ -42351,8 +43716,7 @@ 1860733952,1860734975,AU 1860734976,1860735999,NZ 1860736000,1860737023,AU -1860737024,1860739071,JP -1860739072,1860743167,PH +1860737024,1860743167,JP 1860743168,1860743333,AP 1860743334,1860743334,HK 1860743335,1860743462,AP @@ -42495,8 +43859,7 @@ 1876950016,1876951039,ID 1876951040,1877475327,CN 1877475328,1877688319,JP -1877688320,1877689343,IN -1877690368,1877691391,IN +1877688320,1877691391,IN 1877691392,1877692415,JP 1877692416,1877696511,PH 1877696512,1877704703,CN @@ -42533,7 +43896,8 @@ 1884291072,1885863935,CN 1885863936,1885995007,TW 1885995008,1886191615,KR -1886191616,1886195711,PH +1886191616,1886195455,JP +1886195456,1886195711,PH 1886195712,1886197759,ID 1886197760,1886199807,JP 1886199808,1886207999,KR @@ -42577,6 +43941,7 @@ 1888266240,1888268287,JP 1888268288,1888270335,AU 1888270336,1888271359,SG +1888271360,1888272383,IN 1888272384,1888288767,KR 1888288768,1888354303,AU 1888354304,1888485375,TH @@ -42630,8 +43995,7 @@ 1897170944,1897172991,ID 1897172992,1897175039,PH 1897175040,1897176063,JP -1897177088,1897185279,PH -1897185280,1897201663,JP +1897177088,1897201663,JP 1897201664,1897209855,KR 1897209856,1897213951,AU 1897213952,1897218047,JP @@ -42669,7 +44033,9 @@ 1897791488,1897824255,KR 1897824256,1897857023,IN 1897857024,1897922559,CN -1897922560,1898708991,JP +1897922560,1898676991,JP +1898676992,1898677247,US +1898677248,1898708991,JP 1898708992,1899233279,CN 1899233280,1899237375,AU 1899237376,1899241471,JP @@ -42744,7 +44110,9 @@ 1909456896,1909473279,JP 1909473280,1909474303,A2 1909474304,1909475327,PH -1909475328,1909481471,A2 +1909475328,1909480447,A2 +1909480448,1909480703,US +1909480704,1909481471,A2 1909481472,1909587967,CN 1909587968,1909719039,MY 1909719040,1909735423,CN @@ -42836,7 +44204,9 @@ 1920003072,1920008191,HK 1920008192,1920057343,CN 1920057344,1920058111,HK -1920058112,1920072703,CN +1920058112,1920069631,CN +1920069632,1920071167,HK +1920071168,1920072703,CN 1920072704,1920073727,HK 1920073728,1920466943,CN 1920466944,1920991231,ID @@ -42892,7 +44262,9 @@ 1921953792,1921957887,JP 1921957888,1921974271,GU 1921974272,1922039807,IN -1922039808,1925447679,JP +1922039808,1924379903,JP +1924379904,1924380159,US +1924380160,1925447679,JP 1925447680,1925578751,CN 1925578752,1925611519,AU 1925611520,1925619711,PH @@ -42945,11 +44317,7 @@ 1933922304,1933926399,IN 1933926400,1933934591,KR 1933934592,1933942783,IN -1933942784,1933944319,NZ -1933944320,1933944575,AU -1933944576,1933946879,NZ -1933946880,1933948927,AU -1933948928,1933950975,NZ +1933942784,1933950975,NZ 1933950976,1933955071,JP 1933955072,1933957119,BD 1933957120,1933959167,ID @@ -43073,9 +44441,11 @@ 1946174464,1946174719,TW 1946174720,1946175487,SG 1946175488,1946175615,HK -1946175616,1946176511,SG -1946176512,1946176639,AU -1946176640,1946176767,PH +1946175616,1946175999,SG +1946176000,1946176255,JP +1946176256,1946176511,SG +1946176512,1946176647,AU +1946176648,1946176767,PH 1946176768,1946178047,SG 1946178048,1946178303,HK 1946178304,1946179583,SG @@ -43085,6 +44455,7 @@ 1946189824,1946222591,JP 1946222592,1946943487,CN 1946943488,1946951679,JP +1946951680,1946953727,BD 1946953728,1946955775,ID 1946955776,1946957823,SG 1946957824,1946959871,NZ @@ -43100,7 +44471,9 @@ 1949440000,1949442047,ID 1949442048,1949446143,TW 1949446144,1949448191,JP -1949448192,1949449395,AU +1949448192,1949449139,AU +1949449140,1949449140,IN +1949449141,1949449395,AU 1949449396,1949449396,AP 1949449397,1949449471,AU 1949449472,1949449727,JP @@ -43205,9 +44578,11 @@ 1958830080,1958838271,JP 1958838272,1958842367,IN 1958842368,1958844415,NZ +1958844416,1958845439,CN 1958845440,1958845951,MY 1958845952,1958846463,HK 1958846464,1958847487,IN +1958847488,1958848511,CN 1958848512,1958850559,BD 1958850560,1958852607,CN 1958852608,1958853631,AU @@ -43221,7 +44596,11 @@ 1959102464,1959104511,JP 1959104512,1959106559,AU 1959110656,1959112703,JP -1959112704,1959116799,HK +1959112704,1959114751,HK +1959114752,1959115007,IN +1959115008,1959116287,HK +1959116288,1959116543,AU +1959116544,1959116799,HK 1959116800,1959133183,SG 1959133184,1959239679,CN 1959239680,1959241727,KR @@ -43346,7 +44725,9 @@ 1966473216,1966538751,ID 1966538752,1966571519,JP 1966571520,1966587903,KR -1966587904,1966591999,AF +1966587904,1966588159,AF +1966588160,1966588415,US +1966588416,1966591999,AF 1966592000,1966596095,JP 1966596096,1966600191,AU 1966600192,1966602239,IN @@ -43390,9 +44771,7 @@ 1969727488,1969729535,ID 1969729536,1969733631,JP 1969733632,1969750015,VN -1969750016,1969783551,JP -1969783552,1969783807,US -1969783808,1969790975,JP +1969750016,1969790975,JP 1969790976,1969793023,AU 1969793024,1969795071,CN 1969795072,1969797119,NZ @@ -43412,9 +44791,8 @@ 1970802944,1970803199,SG 1970803200,1970803711,AU 1970803712,1970803967,HK -1970803968,1970804519,AU -1970804520,1970804520,SG -1970804521,1970804735,AU +1970803968,1970804479,AU +1970804480,1970804735,SG 1970804736,1970806783,KH 1970806784,1970808831,NZ 1970808832,1970810879,AU @@ -43525,7 +44903,9 @@ 1989662720,1989663743,AU 1989663744,1989664767,ID 1989664768,1990197247,JP -1990197248,1990983679,TW +1990197248,1990448639,TW +1990448640,1990448895,CN +1990448896,1990983679,TW 1990983680,1991245823,TH 1991245824,1991311359,KR 1991311360,1991376895,JP @@ -43676,9 +45056,7 @@ 2000355328,2000371711,KR 2000371712,2000373759,JP 2000373760,2000375807,HK -2000375808,2000376319,AF -2000376320,2000376575,US -2000376576,2000377855,AF +2000375808,2000377855,AF 2000377856,2000379903,JP 2000379904,2000388095,TH 2000388096,2000617471,CN @@ -43715,11 +45093,15 @@ 2001855232,2001855263,US 2001855264,2001855743,SG 2001855744,2001855999,HK -2001856000,2001857255,SG -2001857256,2001857263,A1 -2001857264,2001857439,SG -2001857440,2001857471,US -2001857472,2001857791,SG +2001856000,2001856127,SG +2001856128,2001856151,CZ +2001856152,2001856155,SG +2001856156,2001856159,CZ +2001856160,2001856191,SG +2001856192,2001856199,CZ +2001856200,2001857279,SG +2001857280,2001857535,HK +2001857536,2001857791,SG 2001857792,2001858047,HK 2001858048,2001858335,SG 2001858336,2001858367,US @@ -43732,15 +45114,39 @@ 2001860048,2001860351,SG 2001860352,2001860607,HK 2001860608,2001860655,SG -2001860656,2001860671,US +2001860656,2001860659,US +2001860660,2001860661,HK +2001860662,2001860664,US +2001860665,2001860665,HK +2001860666,2001860667,US +2001860668,2001860668,HK +2001860669,2001860671,US 2001860672,2001860991,SG -2001860992,2001861007,US +2001860992,2001860995,US +2001860996,2001860997,HK +2001860998,2001861001,US +2001861002,2001861003,HK +2001861004,2001861007,US 2001861008,2001861263,SG -2001861264,2001861279,US +2001861264,2001861265,US +2001861266,2001861267,HK +2001861268,2001861268,US +2001861269,2001861269,HK +2001861270,2001861271,US +2001861272,2001861272,HK +2001861273,2001861273,US +2001861274,2001861274,HK +2001861275,2001861279,US 2001861280,2001862079,SG -2001862080,2001862124,US +2001862080,2001862101,US +2001862102,2001862102,HK +2001862103,2001862116,US +2001862117,2001862118,HK +2001862119,2001862124,US 2001862125,2001862125,HK -2001862126,2001862143,US +2001862126,2001862128,US +2001862129,2001862131,HK +2001862132,2001862143,US 2001862144,2001862655,SG 2001862656,2001864703,AU 2001864704,2001870847,JP @@ -43836,9 +45242,9 @@ 2015166464,2015182847,AU 2015182848,2015199231,PH 2015199232,2015203327,KR -2015203328,2015204607,JP -2015204608,2015204863,US -2015204864,2015205375,JP +2015203328,2015204095,JP +2015204096,2015204351,US +2015204352,2015205375,JP 2015205376,2015207423,ID 2015207424,2015215615,JP 2015215616,2015216383,IN @@ -43848,7 +45254,7 @@ 2015219457,2015219967,IN 2015219968,2015220223,PH 2015220224,2015220479,IN -2015220480,2015220735,HK +2015220480,2015220735,JP 2015220736,2015223807,IN 2015223808,2015225855,ID 2015225856,2015227903,IN @@ -43880,16 +45286,12 @@ 2019035136,2019037183,CN 2019037184,2019041279,JP 2019041280,2019045375,IN -2019045376,2019045631,US -2019045632,2019045887,JP -2019045888,2019046143,US -2019046144,2019049471,JP +2019045376,2019045887,US +2019045888,2019049471,JP 2019049472,2019078143,AU 2019078144,2019082239,IN 2019082240,2019098623,HK -2019098624,2019106955,PH -2019106956,2019106956,NO -2019106957,2019115007,PH +2019098624,2019115007,PH 2019115008,2019117055,US 2019117056,2019119103,IN 2019119104,2019121151,NZ @@ -44008,7 +45410,9 @@ 2036598784,2036600831,JP 2036600832,2036604927,ID 2036604928,2036609023,SG -2036609024,2036611071,AF +2036609024,2036609791,AF +2036609792,2036610047,US +2036610048,2036611071,AF 2036611072,2036613119,JP 2036613120,2036629503,KR 2036629504,2036678655,CN @@ -44067,8 +45471,7 @@ 2047082496,2047410175,CN 2047410176,2047492095,HK 2047492096,2047496191,KR -2047496192,2047504383,HK -2047504384,2047506431,CN +2047496192,2047506431,HK 2047506432,2047508479,US 2047508480,2047574015,CN 2047574016,2047606783,SG @@ -44088,7 +45491,9 @@ 2050091008,2050097151,JP 2050097152,2050101247,SG 2050101248,2050113535,JP -2050113536,2050129919,SG +2050113536,2050129663,SG +2050129664,2050129727,JP +2050129728,2050129919,SG 2050129920,2050162687,IN 2050162688,2050228223,CN 2050228224,2050490367,PH @@ -44213,34 +45618,38 @@ 2060062720,2060066815,JP 2060066816,2060075007,KR 2060075008,2060083199,AU -2060083200,2060091391,PH +2060083200,2060091391,JP 2060091392,2060189695,KR 2060189696,2060451839,CN 2060451840,2061500415,JP 2061500416,2063073279,CN 2063073280,2063077375,BD -2063077376,2063077377,HK +2063077376,2063077377,PH 2063077378,2063077378,AP -2063077379,2063079423,HK +2063077379,2063077631,PH +2063077632,2063079423,HK 2063079424,2063081471,CN 2063081472,2063085567,ID 2063085568,2063089663,CN 2063089664,2063097855,JP 2063097856,2063106047,MM -2063106048,2063107071,SG +2063106048,2063106559,SG +2063106560,2063106815,AU +2063106816,2063107071,SG 2063107072,2063107327,AP 2063107328,2063108095,SG 2063108096,2063110143,HK 2063110144,2063111167,JP 2063111168,2063114239,AU 2063114240,2063115263,IN -2063115264,2063118159,JP -2063118160,2063118191,PH -2063118192,2063118335,JP +2063115264,2063118079,JP +2063118080,2063118335,PH 2063118336,2063118591,IN 2063118592,2063119871,JP 2063119872,2063120383,IN -2063120384,2063121919,JP +2063120384,2063120895,JP +2063120896,2063121151,AU +2063121152,2063121919,JP 2063121920,2063122431,IN 2063122432,2063138815,SG 2063138816,2063335423,JP @@ -44452,16 +45861,17 @@ 2082340864,2082406399,IN 2082406400,2082471935,CN 2082471936,2083007231,JP -2083007232,2083007487,US -2083007488,2083007743,JP -2083007744,2083007999,US -2083008000,2083008767,JP -2083008768,2083009023,US -2083009024,2083011839,JP -2083011840,2083012095,US -2083012096,2083024895,JP +2083007232,2083007999,US +2083008000,2083010047,JP +2083010048,2083010303,US +2083010304,2083011071,JP +2083011072,2083011583,US +2083011584,2083012095,JP +2083012096,2083012351,US +2083012352,2083024895,JP 2083024896,2083053567,CN 2083053568,2083057663,TH +2083057664,2083058687,CN 2083058688,2083059711,IN 2083059712,2083061759,ID 2083061760,2083110911,JP @@ -44515,7 +45925,6 @@ 2087518208,2087519231,TH 2087519232,2087520255,SG 2087520256,2087522303,FM -2087522304,2087524351,BD 2087524352,2087526399,TH 2087526400,2087534591,PK 2087534592,2087542783,AU @@ -44692,7 +46101,9 @@ 2111258624,2111275007,JP 2111275008,2111307775,HK 2111307776,2111832063,CN -2111832064,2112487423,TW +2111832064,2112082431,TW +2112082432,2112083199,CN +2112083200,2112487423,TW 2112487424,2112618495,VN 2112618496,2112880639,NZ 2112880640,2113560063,KR @@ -44700,9 +46111,11 @@ 2113560320,2113683455,KR 2113683456,2113685663,JP 2113685664,2113685695,SG -2113685696,2113687999,JP -2113688000,2113688031,AU -2113688032,2113688959,JP +2113685696,2113687295,JP +2113687296,2113687551,AU +2113687552,2113687807,JP +2113687808,2113688063,AU +2113688064,2113688959,JP 2113688960,2113688991,SG 2113688992,2113691135,JP 2113691136,2113691391,SG @@ -44721,6 +46134,7 @@ 2113761280,2113765375,VN 2113765376,2113798143,HK 2113798144,2113811455,AU +2113811456,2113812479,IN 2113812480,2113813503,JP 2113813504,2113830911,AU 2113830912,2113863679,CN @@ -44754,7 +46168,15 @@ 2147526656,2147528703,UA 2147528704,2147532799,CZ 2147532800,2147534847,DE -2147534848,2147549183,GR +2147534848,2147536127,GR +2147536128,2147536383,CY +2147536384,2147538431,GR +2147538432,2147538943,CY +2147538944,2147541247,GR +2147541248,2147541503,CY +2147541504,2147546623,GR +2147546624,2147546879,CY +2147546880,2147549183,GR 2147549184,2147942399,US 2147942400,2148007935,DE 2148007936,2148532223,US @@ -44807,7 +46229,8 @@ 2153387008,2153387263,CH 2153387264,2153387775,US 2153387776,2153388031,CH -2153388032,2153397247,US +2153388032,2153396991,US +2153396992,2153397247,IL 2153397248,2153397503,IN 2153397504,2153397759,SA 2153397760,2153398015,QA @@ -44875,9 +46298,11 @@ 2156331008,2156593151,US 2156593152,2156658687,IL 2156658688,2156691455,IR -2156691456,2156694271,A2 -2156694272,2156694783,FR -2156694784,2156695551,A2 +2156691456,2156693503,A2 +2156693504,2156693759,FR +2156693760,2156694271,A2 +2156694272,2156695039,FR +2156695040,2156695551,A2 2156695552,2156697599,FR 2156697600,2156699647,GR 2156699648,2156703743,RU @@ -44916,7 +46341,9 @@ 2160914432,2160918527,SA 2160918528,2161508351,US 2161508352,2161573887,FI -2161573888,2162687999,US +2161573888,2162228223,US +2162228224,2162228479,CA +2162228480,2162687999,US 2162688000,2162753535,GB 2162753536,2162819071,CA 2162819072,2162884607,SA @@ -44940,6 +46367,7 @@ 2165178368,2165309439,US 2165309440,2165374975,SE 2165374976,2165440511,US +2165440512,2165506047,NG 2165506048,2165571583,US 2165571584,2165637119,FR 2165637120,2165964799,US @@ -44951,7 +46379,12 @@ 2166571008,2166575103,GB 2166575104,2166594563,US 2166594564,2166594564,DE -2166594565,2168193023,US +2166594565,2167209983,US +2167209984,2167242751,DZ +2167242752,2167275519,BF +2167275520,2167930879,US +2167930880,2167996415,NG +2167996416,2168193023,US 2168193024,2168258559,JP 2168258560,2168651775,US 2168651776,2168717311,GB @@ -44974,7 +46407,11 @@ 2170945536,2171011071,FR 2171011072,2171076607,DE 2171076608,2171142143,FR -2171142144,2172452863,US +2171142144,2172256255,US +2172256256,2172272639,GH +2172272640,2172289023,RE +2172289024,2172321791,AO +2172321792,2172452863,US 2172452864,2172518399,NL 2172518400,2172583935,US 2172583936,2172649471,AU @@ -45016,7 +46453,8 @@ 2177302528,2177368063,FR 2177368064,2177695743,US 2177695744,2177703935,UG -2177703936,2177712127,ZA +2177703936,2177720319,ZA +2177720320,2177728511,NG 2177728512,2177744895,ZA 2177744896,2177761279,BW 2177761280,2177826815,DE @@ -45144,13 +46582,23 @@ 2188718474,2188718474,AT 2188718475,2188724463,EU 2188724464,2188724464,NL -2188724465,2188724991,EU -2188724992,2188725247,RS -2188725248,2188738306,EU +2188724465,2188724735,EU +2188724736,2188724991,NL +2188724992,2188725247,EU +2188725248,2188725503,GB +2188725504,2188728319,EU +2188728320,2188728575,GB +2188728576,2188729855,EU +2188729856,2188730111,ES +2188730112,2188736511,EU +2188736512,2188736767,GB +2188736768,2188738306,EU 2188738307,2188738307,GB -2188738308,2188768767,EU -2188768768,2188769023,YT -2188769024,2188771327,EU +2188738308,2188749183,EU +2188749184,2188749311,SL +2188749312,2188754431,EU +2188754432,2188754687,RU +2188754688,2188771327,EU 2188771328,2188900351,US 2188900352,2188900607,EU 2188900608,2188902399,US @@ -45393,13 +46841,17 @@ 2204893184,2204894207,AR 2204894208,2204895231,PA 2204895232,2204897279,BR -2204897280,2204898303,HN +2204897280,2204898095,HN +2204898096,2204898111,CR +2204898112,2204898303,HN 2204898304,2204899327,PA 2204899328,2204902399,BR 2204902400,2204903423,CR 2204903424,2204904447,AR 2204904448,2204910591,BR -2204910592,2204911615,CL +2204910592,2204910847,AR +2204910848,2204911487,CL +2204911488,2204911615,CO 2204911616,2204913663,BR 2204913664,2204914687,AR 2204914688,2204929023,BR @@ -45602,7 +47054,9 @@ 2214591488,2214592511,BR 2214592512,2218786815,US 2218786816,2219769855,IL -2219769856,2224160767,US +2219769856,2223111679,US +2223111680,2223111935,VI +2223111936,2224160767,US 2224160768,2224226303,GB 2224226304,2224242687,US 2224242688,2224259071,SG @@ -45633,7 +47087,9 @@ 2226847744,2226913279,DE 2226913280,2226921471,US 2226921472,2226921727,EU -2226921728,2227052543,US +2226921728,2226999039,US +2226999040,2226999295,BE +2226999296,2227052543,US 2227052544,2227052799,EU 2227052800,2227109887,US 2227109888,2227175423,PE @@ -45683,7 +47139,9 @@ 2231333888,2231335935,BR 2231335936,2231336959,MX 2231336960,2231337983,BR -2231337984,2231339007,HN +2231337984,2231338695,HN +2231338696,2231338703,US +2231338704,2231339007,HN 2231339008,2231346175,BR 2231346176,2231347199,PY 2231347200,2231355391,BR @@ -45991,7 +47449,8 @@ 2258611120,2258611167,JP 2258611168,2258611215,AU 2258611216,2258611223,NZ -2258611224,2258611967,AU +2258611224,2258611711,AU +2258611712,2258611967,NZ 2258611968,2258612223,HK 2258612224,2258614783,AU 2258614784,2258614815,IN @@ -46002,7 +47461,9 @@ 2258621952,2258622207,NZ 2258622208,2258622719,HK 2258622720,2258623231,NZ -2258623232,2258632703,HK +2258623232,2258624255,HK +2258624256,2258624511,AU +2258624512,2258632703,HK 2258632704,2258698239,JP 2258698240,2259222527,US 2259222528,2259288063,DE @@ -46027,7 +47488,9 @@ 2260467712,2260533247,NL 2260533248,2260598783,US 2260598784,2260664319,CA -2260664320,2260729343,GB +2260664320,2260723711,GB +2260723712,2260723967,IL +2260723968,2260729343,GB 2260729344,2260729599,IL 2260729600,2260729855,GB 2260729856,2260991999,US @@ -46061,7 +47524,7 @@ 2263613440,2263678975,TH 2263678976,2263744511,JP 2263744512,2263810047,US -2263810048,2263875583,RO +2263810048,2263875583,SA 2263875584,2264203263,US 2264203264,2264268799,DE 2264268800,2264334335,FR @@ -46099,15 +47562,7 @@ 2271674368,2271805439,FR 2271805440,2272067583,US 2272067584,2272133119,FR -2272133120,2272198655,US -2272198656,2272329727,FR -2272329728,2272395263,US -2272395264,2272919551,FR -2272919552,2274099199,US -2274099200,2274164735,FR -2274164736,2276130815,US -2276130816,2276196351,FR -2276196352,2276786175,US +2272133120,2276786175,US 2276786176,2276851711,CA 2276851712,2276917247,US 2276917248,2276982783,FR @@ -46116,8 +47571,16 @@ 2277113856,2277769215,US 2277769216,2277834751,GB 2277834752,2279342079,US -2279342080,2280992767,FR -2280992768,2280993279,US +2279342080,2280982527,FR +2280982528,2280982783,US +2280982784,2280983039,FR +2280983040,2280983295,US +2280983296,2280992779,FR +2280992780,2280992781,CA +2280992782,2280993023,FR +2280993024,2280993035,CA +2280993036,2280993036,US +2280993037,2280993279,CA 2280993280,2280998911,FR 2280998912,2280999167,EU 2280999168,2281007103,FR @@ -46126,7 +47589,9 @@ 2281023488,2281023743,IN 2281023744,2281701375,FR 2281701376,2281705471,CH -2281705472,2282226019,US +2281705472,2281705727,US +2281705728,2281705983,CN +2281705984,2282226019,US 2282226020,2282226020,AP 2282226021,2282226175,US 2282226176,2282226243,AU @@ -46134,7 +47599,9 @@ 2282226246,2282226431,AU 2282226432,2282226943,US 2282226944,2282227199,AP -2282227200,2282264063,US +2282227200,2282234111,US +2282234112,2282234367,GB +2282234368,2282264063,US 2282264064,2282264319,EU 2282264320,2282264575,US 2282264576,2282264831,EU @@ -46203,9 +47670,25 @@ 2302083072,2302214143,NL 2302214144,2302279679,US 2302279680,2302345215,SE +2302345216,2302346239,IN +2302346240,2302347263,BD +2302347264,2302348287,IN +2302348288,2302349311,ID +2302349312,2302351359,HK +2302351360,2302357503,VN +2302357504,2302358527,BD +2302358528,2302363647,IN +2302363648,2302364671,JP +2302364672,2302365695,IN +2302365696,2302366719,HK +2302366720,2302367743,IN +2302367744,2302368767,CN 2302410752,2302541823,SE 2302541824,2302607359,CH -2302607360,2302640127,SC +2302607360,2302625761,SC +2302625762,2302625762,CA +2302625763,2302640127,SC +2302640128,2302672895,UG 2302672896,2302935039,US 2302935040,2303000575,KR 2303000576,2303190527,US @@ -46354,7 +47837,9 @@ 2317221888,2317287423,JP 2317287424,2317395967,US 2317395968,2317396223,NO -2317396224,2317413119,US +2317396224,2317398015,US +2317398016,2317398271,GB +2317398272,2317413119,US 2317413120,2317413375,CA 2317413376,2317413631,ID 2317413632,2317414655,US @@ -46455,7 +47940,9 @@ 2321420288,2321430527,BR 2321430528,2321431551,CR 2321431552,2321446911,BR -2321446912,2321447935,HN +2321446912,2321447727,HN +2321447728,2321447743,NL +2321447744,2321447935,HN 2321447936,2321452031,BR 2321452032,2321453055,MX 2321453056,2321454079,HN @@ -46541,7 +48028,9 @@ 2322268160,2322333695,JP 2322333696,2322368511,US 2322368512,2322368767,MY -2322368768,2322923519,US +2322368768,2322563583,US +2322563584,2322563839,FI +2322563840,2322923519,US 2322923520,2322924543,BR 2322924544,2322925567,NI 2322925568,2322929663,AR @@ -46601,7 +48090,7 @@ 2323187712,2323188735,BR 2323188736,2323189759,CO 2323189760,2323205119,BR -2323205120,2323208191,AR +2323205120,2323209215,AR 2323209216,2323210239,BR 2323210240,2323211263,CL 2323211264,2323213311,AR @@ -46759,9 +48248,11 @@ 2328678400,2328680447,BR 2328680448,2328681471,AR 2328681472,2328683519,BR +2328683520,2328684543,CL 2328684544,2328685567,BR 2328685568,2328686591,VE 2328686592,2328687615,BR +2328687616,2328690687,AR 2328690688,2328756223,BE 2328756224,2328797439,CH 2328797440,2328797695,AU @@ -46774,14 +48265,15 @@ 2329411584,2329477119,FI 2329477120,2329542655,AU 2329542656,2329608191,CA -2329609216,2329610239,AR +2329608192,2329610239,AR 2329610240,2329611263,PY +2329611264,2329612287,SV 2329612288,2329613311,AR -2329613312,2329614335,BR -2329615360,2329617407,BR +2329613312,2329617407,BR 2329617408,2329618431,MX 2329618432,2329619455,AR 2329619456,2329622527,BR +2329622528,2329623551,CL 2329623552,2329624575,AR 2329624576,2329626623,BR 2329626624,2329627647,HN @@ -46791,15 +48283,19 @@ 2329638912,2329639935,HN 2329639936,2329644031,BR 2329644032,2329645055,CW -2329645056,2329649151,BR +2329645056,2329648127,BR +2329648128,2329649151,SV 2329649152,2329650175,AR -2329650176,2329651199,BR +2329650176,2329652223,BR +2329652224,2329653247,HN 2329653248,2329662463,BR 2329662464,2329664511,AR 2329664512,2329666559,BR 2329666560,2329667583,CL +2329667584,2329668607,AR 2329668608,2329671679,BR 2329671680,2329672703,AR +2329672704,2329673727,BR 2329673728,2329739263,US 2329739264,2329804799,CH 2329804800,2329870335,DE @@ -46833,14 +48329,25 @@ 2331836416,2331901951,GB 2331901952,2331967487,US 2331967488,2331980799,BR -2331980800,2331981823,PA +2331980800,2331981567,PA +2331981568,2331981823,US 2331981824,2331982847,BR 2331982848,2331983871,MX -2331983872,2331992063,BR -2331993088,2331994111,CL -2331994112,2332006399,BR +2331983872,2331987967,BR +2331987968,2331988991,AR +2331988992,2331990015,BR +2331990016,2331991039,AR +2331991040,2331992063,BR +2331992064,2331994111,CL +2331994112,2331997183,BR +2331997184,2331998207,MX +2331998208,2332006399,BR 2332006400,2332007423,SV -2332016640,2332020735,BR +2332007424,2332010495,BR +2332010496,2332011519,AR +2332011520,2332030975,BR +2332030976,2332031999,DO +2332032000,2332033023,AW 2332033024,2332098559,ID 2332098560,2332622847,DE 2332622848,2332688383,CN @@ -46914,7 +48421,9 @@ 2338848768,2338914303,US 2338914304,2339962879,NO 2339962880,2340028415,US -2340028416,2340093951,SE +2340028416,2340081663,SE +2340081664,2340081919,BR +2340081920,2340093951,SE 2340093952,2340159487,FI 2340159488,2340225023,FR 2340225024,2340421631,US @@ -46951,7 +48460,9 @@ 2342682624,2342690815,DE 2342690816,2342700247,US 2342700248,2342700248,GB -2342700249,2342715391,US +2342700249,2342705120,US +2342705121,2342705121,GB +2342705122,2342715391,US 2342715392,2342780927,AU 2342780928,2342846463,NO 2342846464,2342911999,BE @@ -47111,7 +48622,9 @@ 2366032896,2366033151,GB 2366033152,2366111743,DE 2366111744,2366144511,MT -2366144512,2366149375,RU +2366144512,2366148479,RU +2366148480,2366148607,US +2366148608,2366149375,RU 2366149376,2366149407,DE 2366149408,2366149423,PL 2366149424,2366149439,SK @@ -47154,11 +48667,19 @@ 2372214784,2372218879,DE 2372218880,2372222463,FR 2372222464,2372222975,CH -2372222976,2372228351,EU -2372228352,2372228607,KR -2372228608,2372231423,EU -2372231424,2372231679,HU -2372231680,2372238729,EU +2372222976,2372224655,EU +2372224656,2372224671,GB +2372224672,2372227071,EU +2372227072,2372227327,NO +2372227328,2372227839,EU +2372227840,2372228607,KR +2372228608,2372231167,EU +2372231168,2372231295,HU +2372231296,2372231679,EU +2372231680,2372232191,GB +2372232192,2372233727,EU +2372233728,2372233983,GB +2372233984,2372238729,EU 2372238730,2372238730,US 2372238731,2372239359,EU 2372239360,2372240383,SK @@ -47187,7 +48708,9 @@ 2372507648,2372509695,IT 2372509696,2372510335,A2 2372510336,2372510336,ES -2372510337,2372511743,A2 +2372510337,2372510719,A2 +2372510720,2372510975,AO +2372510976,2372511743,A2 2372511744,2372513791,BA 2372513792,2372534271,GB 2372534272,2372665343,US @@ -47196,7 +48719,11 @@ 2372796416,2372993023,US 2372993024,2373025791,DE 2373025792,2373026047,SG -2373026048,2373058559,DE +2373026048,2373031423,DE +2373031424,2373031679,US +2373031680,2373036031,DE +2373036032,2373038079,US +2373038080,2373058559,DE 2373058560,2373124095,US 2373124096,2373189631,FR 2373189632,2373255167,US @@ -47277,7 +48804,9 @@ 2377449472,2377515007,FR 2377515008,2377842687,US 2377842688,2377908223,GB -2377908224,2378022911,US +2377908224,2378010111,US +2378010112,2378010367,AU +2378010368,2378022911,US 2378022912,2378023423,HK 2378023424,2378025983,US 2378025984,2378026239,NL @@ -47299,7 +48828,9 @@ 2378500608,2378500863,GB 2378500864,2378501631,US 2378501632,2378501887,EU -2378501888,2378694655,US +2378501888,2378504191,US +2378504192,2378504447,NL +2378504448,2378694655,US 2378694656,2378760191,DE 2378760192,2378825727,AT 2378825728,2378891263,US @@ -47312,9 +48843,9 @@ 2380201984,2380267519,KR 2380267520,2380398591,US 2380398592,2380464127,IL -2380464128,2380464896,FR -2380464897,2380464897,US -2380464898,2380465407,FR +2380464128,2380464895,FR +2380464896,2380465151,US +2380465152,2380465407,FR 2380465408,2380465663,AP 2380465664,2380529663,FR 2380529664,2380593663,GB @@ -47339,7 +48870,9 @@ 2382233600,2382299135,US 2382299136,2382331903,GR 2382331904,2382335999,FR -2382336000,2382340095,NL +2382336000,2382337279,NL +2382337280,2382337535,FR +2382337536,2382340095,NL 2382340096,2382342143,CH 2382342144,2382344191,AT 2382344192,2382346239,NL @@ -47427,13 +48960,14 @@ 2392002304,2392010751,CA 2392010752,2392011263,US 2392011264,2392011519,CA +2392011520,2392011775,US 2392011776,2392012543,CA 2392012544,2392014079,US 2392014080,2392014335,CA 2392015360,2392015871,CA 2392015872,2392017407,US 2392017408,2392017663,CA -2392017920,2392018431,US +2392017664,2392018431,US 2392018432,2392018687,CA 2392018688,2392018943,US 2392018944,2392019199,CA @@ -47455,7 +48989,9 @@ 2394947584,2395013119,US 2395013120,2395209727,CA 2395209728,2395340799,US -2395340800,2395841023,CA +2395340800,2395814911,CA +2395814912,2395815167,US +2395815168,2395841023,CA 2395841024,2395841535,GB 2395841536,2397700095,CA 2397700096,2397765631,US @@ -47464,7 +49000,33 @@ 2398945280,2399010815,CA 2399010816,2399109119,US 2399109120,2399141887,PR -2399141888,2401036287,US +2399141888,2399148031,BR +2399148032,2399149055,DO +2399149056,2399150079,BR +2399150080,2399151103,BQ +2399151104,2399158271,BR +2399158272,2399159295,AR +2399159296,2399161343,BR +2399161344,2399163391,AR +2399163392,2399165439,BR +2399165440,2399166463,CO +2399166464,2399167487,VE +2399167488,2399167743,AR +2399167744,2399167999,BO +2399168512,2399169535,SV +2399169536,2399170559,CO +2399170560,2399182847,BR +2399182848,2399183871,CR +2399183872,2399184895,BR +2399184896,2399185919,AR +2399185920,2399186943,TT +2399186944,2399202303,BR +2399202304,2399203327,HN +2399203328,2399204351,CL +2399204352,2399205375,AR +2399205376,2399206399,PE +2399206400,2399207423,BR +2399207424,2401036287,US 2401036288,2401036543,EU 2401036544,2401828863,US 2401828864,2401894399,GB @@ -47508,6 +49070,28 @@ 2407661568,2407727103,AT 2407727104,2408054783,US 2408054784,2408120319,JP +2408120320,2408125439,BR +2408125440,2408126463,AR +2408126464,2408127487,NI +2408127488,2408140799,BR +2408140800,2408141823,DO +2408141824,2408144895,BR +2408144896,2408145919,CO +2408145920,2408147967,BR +2408147968,2408148991,MX +2408148992,2408150015,BO +2408150016,2408157183,BR +2408157184,2408158207,PE +2408158208,2408159231,CR +2408159232,2408162303,BR +2408162304,2408164351,HN +2408164352,2408169471,BR +2408169472,2408170495,TT +2408170496,2408178687,BR +2408178688,2408179711,HN +2408179712,2408182783,BR +2408182784,2408183807,AR +2408183808,2408185855,BR 2408185856,2409562111,US 2409562112,2409627647,GB 2409627648,2409693183,ZA @@ -47531,9 +49115,51 @@ 2411753472,2411757567,SG 2411757568,2411986943,US 2411986944,2412052479,FR -2412052480,2412576767,US +2412052480,2412314623,US +2412380160,2412383231,BR +2412383232,2412384255,CL +2412384256,2412387327,AR +2412387328,2412388351,BR +2412388352,2412389375,AR +2412389376,2412399615,BR +2412399616,2412400639,MX +2412400640,2412402687,BR +2412402688,2412403711,AR +2412403712,2412404735,BR +2412404736,2412405759,AR +2412405760,2412414975,BR +2412414976,2412415999,AR +2412416000,2412417023,CL +2412417024,2412418047,AR +2412418048,2412419071,BR +2412419072,2412420095,PA +2412420096,2412421119,MX +2412421120,2412422143,CR +2412423168,2412429311,BR +2412429312,2412430335,AR +2412430336,2412431359,HN +2412431360,2412432383,AR +2412432384,2412433407,MX +2412433408,2412434431,PY +2412434432,2412444671,BR +2412444672,2412445695,NI +2412445696,2412576767,US 2412576768,2412642303,AT 2412642304,2412773375,US +2412773376,2412777471,BR +2412777472,2412778495,HN +2412778496,2412782591,BR +2412782592,2412783615,AR +2412784640,2412786687,AR +2412786688,2412787711,CL +2412787712,2412788735,GT +2412788736,2412789759,BR +2412789760,2412790783,CO +2412790784,2412791807,BR +2412797952,2412799999,BR +2412806144,2412814335,BR +2412815360,2412816383,DO +2412817408,2412822527,BR 2412838912,2412904447,US 2412904448,2412969983,GB 2412969984,2413297663,US @@ -47564,7 +49190,13 @@ 2415788032,2415853567,US 2415919104,2415984639,CN 2416050176,2416058367,US -2416058368,2416115711,NL +2416058368,2416084991,NL +2416084992,2416085247,AU +2416085248,2416085503,NL +2416085504,2416085759,US +2416085760,2416086015,NL +2416086016,2416086271,SG +2416086272,2416115711,NL 2416115712,2416181247,US 2416181248,2416246783,FI 2416246784,2416312319,US @@ -47572,7 +49204,9 @@ 2416377856,2416443391,CN 2416443392,2416705535,US 2416705536,2416771071,CN -2416771072,2416963583,US +2416771072,2416916479,US +2416916480,2416916735,AU +2416916736,2416963583,US 2416963584,2416963839,EU 2416963840,2416967679,US 2416967680,2417033215,IN @@ -47712,7 +49346,9 @@ 2418671616,2418737151,US 2418737152,2418802687,NL 2418802688,2418868223,EU -2418868224,2419326975,US +2418868224,2418998271,US +2418998272,2418998527,GB +2418998528,2419326975,US 2419326976,2419392511,CN 2419392512,2419458047,AU 2419458048,2419523583,NL @@ -47770,7 +49406,9 @@ 2425487360,2426667007,US 2426667008,2426732543,NO 2426732544,2426798079,FR -2426798080,2427224063,US +2426798080,2426942463,US +2426942464,2426943487,CA +2426943488,2427224063,US 2427224064,2427256831,CA 2427256832,2427322367,GB 2427322368,2427453439,US @@ -47797,13 +49435,17 @@ 2429353984,2429419519,AU 2429419520,2429485055,RU 2429485056,2429616127,US -2429616128,2429681663,NL +2429616128,2429643519,NL +2429643520,2429643775,RU +2429643776,2429681663,NL 2429681664,2429796607,US 2429796608,2429797375,GB 2429797376,2429878271,US 2429878272,2429943807,JP 2429943808,2430009343,HK -2430009344,2432172031,US +2430009344,2431846143,US +2431846144,2431846399,GB +2431846400,2432172031,US 2432172032,2432237567,BE 2432237568,2432616447,US 2432616448,2432617471,NL @@ -47814,7 +49456,9 @@ 2433247488,2433810431,NL 2433810432,2433875967,GB 2433875968,2435055615,NL -2435055616,2435121151,GB +2435055616,2435071743,GB +2435071744,2435071999,NL +2435072000,2435121151,GB 2435121152,2436300799,NL 2436300800,2436366335,GB 2436366336,2436759551,NL @@ -47829,9 +49473,7 @@ 2446983168,2447048703,EU 2447048704,2447376383,NL 2447376384,2447441919,GB -2447441920,2447446271,DE -2447446272,2447446527,GB -2447446528,2447507455,DE +2447441920,2447507455,DE 2447507456,2447572991,FR 2447572992,2447638527,GB 2447638528,2447704063,DE @@ -47859,7 +49501,8 @@ 2448851968,2448883711,GB 2448883712,2448949247,FI 2448949248,2449014783,FR -2449014784,2449080319,RU +2449014784,2449045503,RU +2449045504,2449080319,KZ 2449080320,2449145855,CH 2449145856,2449211391,SE 2449211392,2449276927,CH @@ -47909,8 +49552,8 @@ 2451031040,2451031295,AP 2451031296,2451035135,US 2451035136,2451035391,EU -2451035392,2451042815,US -2451042816,2451043071,ZA +2451035392,2451042559,US +2451042560,2451043071,ZA 2451043072,2452619263,US 2452619264,2452684799,IT 2452684800,2452750335,US @@ -47960,7 +49603,8 @@ 2454781952,2454847487,FI 2454847488,2454851583,US 2454851584,2454851839,DK -2454851840,2454853119,US +2454851840,2454852863,US +2454852864,2454853119,BE 2454853120,2454853375,DK 2454853376,2454887423,US 2454887424,2454887679,DK @@ -48005,7 +49649,9 @@ 2456354816,2456420351,GB 2456420352,2456485887,EU 2456485888,2456551423,DE -2456551424,2456603135,AT +2456551424,2456602623,AT +2456602624,2456602879,DE +2456602880,2456603135,AT 2456603136,2456603391,EU 2456603392,2456616959,AT 2456616960,2456682495,CH @@ -48064,7 +49710,9 @@ 2459893760,2459959295,CH 2459959296,2460024831,JP 2460024832,2460090367,FI -2460090368,2460155903,GB +2460090368,2460152319,GB +2460152320,2460152575,FR +2460152576,2460155903,GB 2460155904,2460221439,US 2460221440,2460286975,BR 2460286976,2460549119,US @@ -48073,7 +49721,9 @@ 2460680192,2460745727,NZ 2460745728,2460811263,NO 2460811264,2460876799,SE -2460876800,2460942335,US +2460876800,2460920319,US +2460920320,2460920575,GB +2460920576,2460942335,US 2460942336,2461007871,BE 2461007872,2461138943,GB 2461138944,2461204479,AU @@ -48389,7 +50039,9 @@ 2489843712,2489995544,US 2489995545,2489995545,AP 2489995546,2490013695,US -2490013696,2490015743,GB +2490013696,2490014011,GB +2490014012,2490014012,US +2490014013,2490015743,GB 2490015744,2490041599,US 2490041600,2490041855,AP 2490041856,2490043391,US @@ -48422,9 +50074,13 @@ 2494103552,2494169087,FR 2494169088,2494562303,US 2494562304,2494627839,GB -2494627840,2494660607,US +2494627840,2494650623,US +2494650624,2494650879,BR +2494650880,2494660607,US 2494660608,2494661119,EU -2494661120,2494683391,US +2494661120,2494677759,US +2494677760,2494678015,AU +2494678016,2494683391,US 2494683392,2494683647,AP 2494683648,2494689791,US 2494689792,2494690047,IN @@ -48435,9 +50091,11 @@ 2495152128,2495217663,EU 2495217664,2495283199,US 2495283200,2495348735,CH -2495348736,2495349051,US +2495348736,2495348991,US +2495348992,2495349051,DE 2495349052,2495349052,EU -2495349053,2495351039,US +2495349053,2495349247,DE +2495349248,2495351039,US 2495351040,2495351295,EU 2495351296,2495353143,US 2495353144,2495353144,EU @@ -48480,8 +50138,8 @@ 2500141312,2500141823,US 2500141824,2500142847,IE 2500142848,2500143103,US -2500143104,2500143871,IE -2500143872,2500144895,US +2500143104,2500143615,IE +2500143616,2500144895,US 2500144896,2500145151,IE 2500145152,2500149503,US 2500149504,2500149759,GB @@ -48493,9 +50151,9 @@ 2500161024,2500162047,GB 2500162048,2500162559,US 2500162560,2500162815,GB -2500162816,2500166207,US -2500166208,2500166223,GB -2500166224,2500170751,US +2500162816,2500166143,US +2500166144,2500166399,GB +2500166400,2500170751,US 2500170752,2500170752,FI 2500170753,2500177935,US 2500177936,2500177943,PL @@ -48507,15 +50165,15 @@ 2500196352,2500198399,FI 2500198400,2500198911,US 2500198912,2500199167,GB -2500199168,2500199423,US -2500199424,2500199679,IE -2500199680,2500200703,US -2500200704,2500200959,GB -2500200960,2500201535,US +2500199168,2500199471,US +2500199472,2500199475,IE +2500199476,2500201535,US 2500201536,2500201543,GB 2500201544,2500202879,US 2500202880,2500203007,ES -2500203008,2500212415,US +2500203008,2500209919,US +2500209920,2500210175,GB +2500210176,2500212415,US 2500212416,2500212423,CH 2500212424,2500212991,US 2500212992,2500213247,ES @@ -48531,35 +50189,45 @@ 2500236838,2500236838,ES 2500236839,2500238047,US 2500238048,2500238055,FR -2500238056,2500238079,US -2500238080,2500238335,YT -2500238336,2500239615,US +2500238056,2500239615,US 2500239616,2500239871,FR 2500239872,2500240383,US 2500240384,2500240639,FR 2500240640,2500240895,US -2500240896,2500241151,FR -2500241152,2500245503,US -2500245504,2500245759,GB -2500245760,2500246015,US -2500246016,2500246527,GB +2500240896,2500241407,FR +2500241408,2500246271,US +2500246272,2500246527,GB 2500246528,2500247551,US 2500247552,2500248575,ES -2500248576,2500272127,US -2500272128,2500272639,GB -2500272640,2500276223,US +2500248576,2500249599,US +2500249600,2500249855,ES +2500249856,2500263935,US +2500263936,2500264191,FR +2500264192,2500272127,US +2500272128,2500272383,GB +2500272384,2500273151,US +2500273152,2500273407,GB +2500273408,2500275199,US +2500275200,2500275455,GB +2500275456,2500276223,US 2500276224,2500276735,GB 2500276736,2500276991,US 2500276992,2500277247,GB 2500277248,2500278751,US 2500278752,2500278783,GB -2500278784,2500289023,US +2500278784,2500288511,US +2500288512,2500288767,FR +2500288768,2500289023,US 2500289024,2500289279,FR -2500289280,2500292607,US +2500289280,2500290559,US +2500290560,2500290815,FR +2500290816,2500292607,US 2500292608,2500292863,DE 2500292864,2500313855,US 2500313856,2500314111,AT -2500314112,2500319439,US +2500314112,2500318207,US +2500318208,2500318463,IT +2500318464,2500319439,US 2500319440,2500319471,ES 2500319472,2500319487,US 2500319488,2500321279,ES @@ -48570,36 +50238,42 @@ 2500394240,2500532749,US 2500532750,2500532750,GR 2500532751,2500535295,US -2500535296,2500535551,IE -2500535552,2500537687,US -2500537688,2500537695,GB -2500537696,2500542751,US +2500535296,2500535807,IE +2500535808,2500537599,US +2500537600,2500537855,GB +2500537856,2500542751,US 2500542752,2500542755,NL -2500542756,2500553759,US -2500553760,2500553767,GB -2500553768,2500554379,US +2500542756,2500551679,US +2500551680,2500551935,FR +2500551936,2500553727,US +2500553728,2500553983,GB +2500553984,2500554379,US 2500554380,2500554487,DE 2500554488,2500555263,US 2500555264,2500555519,FR -2500555520,2500559359,US +2500555520,2500558847,US +2500558848,2500559103,FR +2500559104,2500559359,US 2500559360,2500559615,FR -2500559616,2500562719,US +2500559616,2500562431,US +2500562432,2500562687,GB +2500562688,2500562719,US 2500562720,2500562727,GB 2500562728,2500562767,US 2500562768,2500562775,GB -2500562776,2500562959,US -2500562960,2500562967,ES -2500562968,2500568679,US +2500562776,2500562943,US +2500562944,2500563199,ES +2500563200,2500567039,US +2500567040,2500567295,GB +2500567296,2500568679,US 2500568680,2500568683,GB 2500568684,2500591615,US 2500591616,2500595711,GB 2500595712,2500596223,US 2500596224,2500596735,CH -2500596736,2500608511,US -2500608512,2500608767,ES -2500608768,2500616191,US -2500616192,2500616703,IT -2500616704,2500637727,US +2500596736,2500616191,US +2500616192,2500616447,IT +2500616448,2500637727,US 2500637728,2500637759,GB 2500637760,2500638719,US 2500638720,2500639743,GB @@ -48613,17 +50287,23 @@ 2500666464,2500666471,LU 2500666472,2500681759,US 2500681760,2500681767,PL -2500681768,2500687871,US +2500681768,2500685823,US +2500685824,2500686079,FR +2500686080,2500687871,US 2500687872,2500689919,FR 2500689920,2500694527,US 2500694528,2500694783,IT 2500694784,2500719103,US 2500719104,2500721151,IE -2500721152,2500723799,US +2500721152,2500723711,US +2500723712,2500723799,GB 2500723800,2500723807,ES -2500723808,2500728063,US +2500723808,2500723967,GB +2500723968,2500728063,US 2500728064,2500728319,GB -2500728320,2500743215,US +2500728320,2500739599,US +2500739600,2500739607,DE +2500739608,2500743215,US 2500743216,2500743223,GB 2500743224,2500984831,US 2500984832,2501017599,GB @@ -48632,8 +50312,8 @@ 2501640192,2502033407,US 2502033408,2502037503,LU 2502037504,2502041599,US -2502041600,2502043647,ES -2502043648,2503016447,US +2502041600,2502045695,ES +2502045696,2503016447,US 2503016448,2503147519,IL 2503147520,2503671807,US 2503671808,2503737343,NL @@ -48658,10 +50338,36 @@ 2504482816,2504486911,ES 2504486912,2504491007,US 2504491008,2504499199,IT -2504499200,2504918642,US +2504499200,2504499455,US +2504499456,2504499711,IE +2504499712,2504917503,US +2504917504,2504917759,IL +2504917760,2504918642,US 2504918643,2504918643,IL -2504918644,2504949759,US -2504949760,2504982527,IL +2504918644,2504920831,US +2504920832,2504921087,IL +2504921088,2504923135,US +2504923136,2504923391,IL +2504923392,2504925695,US +2504925696,2504926207,IL +2504926208,2504926719,US +2504926720,2504926975,IL +2504926976,2504931583,US +2504931584,2504931839,IL +2504931840,2504936191,US +2504936192,2504936447,IL +2504936448,2504938495,US +2504938496,2504938751,IL +2504938752,2504943615,US +2504943616,2504944639,IL +2504944640,2504945151,US +2504945152,2504945407,IL +2504945408,2504945663,US +2504945664,2504946175,IL +2504946176,2504946431,US +2504946432,2504946687,IL +2504946688,2504949503,US +2504949504,2504982527,IL 2504982528,2505457663,US 2505457664,2505459711,IE 2505459712,2505469439,US @@ -48686,9 +50392,13 @@ 2505803776,2506293247,US 2506293248,2506358783,CA 2506358784,2506359039,ES -2506359040,2506360831,US -2506360832,2506361087,ES -2506361088,2506401791,US +2506359040,2506360063,US +2506360064,2506360319,ES +2506360320,2506360575,US +2506360576,2506361087,ES +2506361088,2506399999,US +2506400000,2506400255,IT +2506400256,2506401791,US 2506401792,2506403839,IT 2506403840,2506489855,US 2506489856,2506498047,ES @@ -48730,9 +50440,7 @@ 2508324864,2508455935,US 2508455936,2508521471,IT 2508521472,2508587007,CH -2508587008,2508631295,BE -2508631296,2508631551,US -2508631552,2508652543,BE +2508587008,2508652543,BE 2508652544,2508718079,AU 2508718080,2508914687,US 2508914688,2508980223,IT @@ -48800,22 +50508,32 @@ 2513049552,2513049567,ES 2513049568,2513051487,FR 2513051488,2513051519,GB -2513051520,2513068207,FR +2513051520,2513057045,FR +2513057046,2513057046,PT +2513057047,2513068207,FR 2513068208,2513068223,DE 2513068224,2513068287,NL 2513068288,2513070559,FR 2513070560,2513070591,ES 2513070592,2513070623,FR 2513070624,2513070655,ES -2513070656,2513076471,FR +2513070656,2513073791,FR +2513073792,2513073855,IT +2513073856,2513073951,FR +2513073952,2513073983,ES +2513073984,2513076471,FR 2513076472,2513076479,ES 2513076480,2513078367,FR 2513078368,2513078371,GB 2513078372,2513079250,FR 2513079251,2513079254,ES -2513079255,2513081327,FR +2513079255,2513080031,FR +2513080032,2513080063,IT +2513080064,2513081327,FR 2513081328,2513081343,ES -2513081344,2513082561,FR +2513081344,2513081935,FR +2513081936,2513081939,DE +2513081940,2513082561,FR 2513082562,2513082562,GB 2513082563,2513102899,FR 2513102900,2513102903,CZ @@ -48824,7 +50542,9 @@ 2513502208,2513567743,NO 2513567744,2513600511,GR 2513600512,2513633279,NL -2513633280,2513698815,DE +2513633280,2513672495,DE +2513672496,2513672496,US +2513672497,2513698815,DE 2513698816,2513764351,DK 2513764352,2514419711,DE 2514419712,2514485247,GB @@ -48837,6 +50557,7 @@ 2515664896,2516037631,DE 2516037632,2516038143,DK 2516038144,2516058111,DE +2516058112,2516123647,CA 2516123648,2516254719,DE 2516254720,2516320255,FR 2516320256,2516451327,US @@ -49036,13 +50757,14 @@ 2532465664,2532467711,CN 2532467712,2532468735,TW 2532468736,2532469759,BD -2532469760,2532470783,ID +2532469760,2532470783,TL 2532470784,2532473855,CN 2532473856,2532474879,HK 2532474880,2532475903,NZ 2532475904,2532476927,KR 2532476928,2532477951,AU -2532477952,2532478975,IN +2532477952,2532478463,IN +2532478464,2532478975,AE 2532478976,2532479999,KR 2532480000,2532481023,IN 2532481024,2532486143,CN @@ -49052,7 +50774,8 @@ 2532492288,2532495359,IN 2532495360,2532496383,HK 2532496384,2532497407,CN -2532497408,2532499455,HK +2532497408,2532498431,HK +2532498432,2532499455,US 2532499456,2532500479,CN 2532500480,2532501503,HK 2532501504,2532506623,CN @@ -49106,7 +50829,9 @@ 2538646272,2538646399,BE 2538646400,2538646783,FR 2538646784,2538647039,CZ -2538647040,2538648239,FR +2538647040,2538648015,FR +2538648016,2538648031,ES +2538648032,2538648239,FR 2538648240,2538648255,DE 2538648256,2538648591,FR 2538648592,2538648623,BE @@ -49130,7 +50855,9 @@ 2538651280,2538651283,DE 2538651284,2538652727,FR 2538652728,2538652731,DE -2538652732,2538653379,FR +2538652732,2538653327,FR +2538653328,2538653331,CZ +2538653332,2538653379,FR 2538653380,2538653383,DE 2538653384,2538653387,ES 2538653388,2538653927,FR @@ -49181,7 +50908,8 @@ 2545156096,2545221631,GB 2545221632,2545287167,US 2545287168,2545352703,ES -2545352704,2545418239,CH +2545352704,2545352959,SE +2545352960,2545418239,CH 2545418240,2545483775,NL 2545483776,2545614847,US 2545614848,2545680383,NO @@ -49292,9 +51020,11 @@ 2550136832,2550202367,DO 2550202368,2553544703,US 2553544704,2553610239,IN -2553610240,2554211383,US +2553610240,2554211327,US +2554211328,2554211383,SG 2554211384,2554211387,AP -2554211388,2554227967,US +2554211388,2554211583,SG +2554211584,2554227967,US 2554227968,2554228029,EU 2554228030,2554228030,US 2554228031,2554228223,EU @@ -49341,7 +51071,9 @@ 2557673472,2557739007,DK 2557739008,2557870079,US 2557870080,2557935615,ID -2557935616,2558789571,US +2557935616,2558658499,US +2558658500,2558658500,PR +2558658501,2558789571,US 2558789572,2558789572,PR 2558789573,2558918655,US 2558918656,2558984191,GB @@ -49351,7 +51083,7 @@ 2559508480,2559574015,DE 2559574016,2559770623,US 2559770624,2559836159,AU -2559836160,2559901695,FR +2559836160,2559901695,US 2559901696,2559967231,KR 2559967232,2560032767,GB 2560032768,2560098303,US @@ -49415,9 +51147,18 @@ 2572954368,2572954623,HK 2572954624,2572954879,AU 2572954880,2572955135,HK -2572955136,2572955647,DE +2572955136,2572955388,DE +2572955389,2572955389,HK +2572955390,2572955647,DE 2572955648,2572959743,BR -2572959744,2572968447,DE +2572959744,2572960255,DE +2572960256,2572960511,SE +2572960512,2572960767,BE +2572960768,2572961023,FR +2572961024,2572961279,CH +2572961280,2572961535,IT +2572961536,2572961791,ES +2572961792,2572968447,DE 2572968448,2572968959,CZ 2572968960,2572975103,BR 2572975104,2572975615,DE @@ -49440,14 +51181,18 @@ 2574188544,2574254079,NZ 2574254080,2574286847,SE 2574286848,2574287103,AU -2574287104,2574319615,SE +2574287104,2574311167,SE +2574311168,2574311423,US +2574311424,2574319615,SE 2574319616,2574647295,US 2574647296,2574778367,CN 2574778368,2576297471,JP 2576297472,2576302079,US 2576302080,2583582207,JP 2583582208,2583582463,HK -2583582464,2583691263,JP +2583582464,2583601663,JP +2583601664,2583602175,US +2583602176,2583691263,JP 2583691264,2583695359,ZA 2583695360,2583697407,BW 2583697408,2583699455,CI @@ -49619,7 +51364,9 @@ 2585067520,2585788415,US 2585788416,2585853951,GB 2585853952,2585985023,JP -2585985024,2586480639,US +2585985024,2586378751,US +2586378752,2586379263,UA +2586379264,2586480639,US 2586480640,2586484735,IL 2586484736,2586486783,GB 2586486784,2586510335,US @@ -49628,8 +51375,7 @@ 2586544128,2586546175,SE 2586546176,2586566655,US 2586566656,2586566687,FR -2586566688,2586610431,US -2586610432,2586610687,GB +2586566688,2586610687,US 2586610688,2586611711,ES 2586611712,2586619903,US 2586619904,2586620415,FR @@ -49648,23 +51394,29 @@ 2586715136,2586716159,US 2586716160,2586716671,ES 2586716672,2586717183,US -2586717184,2586717439,ES -2586717440,2586733567,US +2586717184,2586718207,ES +2586718208,2586733567,US 2586733568,2586733823,LT 2586733824,2586734591,US 2586734592,2586735615,LT -2586735616,2586788607,US -2586788608,2586788863,GB -2586788864,2586789887,US +2586735616,2586788863,US +2586788864,2586789119,GB +2586789120,2586789887,US 2586789888,2586790143,GB 2586790144,2586804223,US 2586804224,2586804479,ES -2586804480,2586828799,US +2586804480,2586805247,US +2586805248,2586805503,ES +2586805504,2586806271,US +2586806272,2586807295,ES +2586807296,2586828799,US 2586828800,2586829055,CH 2586829056,2586869759,US 2586869760,2586870015,ES 2586870016,2586870271,US -2586870272,2586875903,ES +2586870272,2586874367,ES +2586874368,2586874879,US +2586874880,2586875903,ES 2586875904,2586876415,US 2586876416,2586876671,ES 2586876672,2586876927,US @@ -49676,14 +51428,16 @@ 2586953472,2586953727,ES 2586953728,2586953983,MX 2586953984,2586954239,PE -2586954240,2587018239,US -2587018240,2587018495,IE +2586954240,2587017215,US +2587017216,2587017471,IE +2587017472,2587017983,US +2587017984,2587018495,IE 2587018496,2587018671,US 2587018672,2587018687,IE 2587018688,2587019263,US 2587019264,2587019775,IE -2587019776,2587020287,US -2587020288,2587020799,IE +2587019776,2587020031,US +2587020032,2587020799,IE 2587020800,2587021823,US 2587021824,2587022335,IE 2587022336,2587066879,US @@ -49692,13 +51446,15 @@ 2587067392,2587067903,GB 2587067904,2587068415,US 2587068416,2587068479,GB -2587068480,2587071759,US +2587068480,2587070463,US +2587070464,2587070719,GB +2587070720,2587071759,US 2587071760,2587071775,GB 2587071776,2587128522,US 2587128523,2587128523,TR 2587128524,2587131903,US -2587131904,2587132159,FR -2587132160,2587197439,US +2587131904,2587132415,FR +2587132416,2587197439,US 2587197440,2587197695,ES 2587197696,2587240389,US 2587240390,2587240390,FR @@ -49706,14 +51462,12 @@ 2587249418,2587249418,FR 2587249419,2587361791,US 2587361792,2587362047,MD -2587362048,2587394047,US -2587394048,2587394303,ES -2587394304,2587394815,US -2587394816,2587395071,ES -2587395072,2587396095,US +2587362048,2587394559,US +2587394560,2587395327,ES +2587395328,2587396095,US 2587396096,2587399167,ES -2587399168,2587412479,US -2587412480,2587414527,IT +2587399168,2587412223,US +2587412224,2587414527,IT 2587414528,2587443199,US 2587443200,2587447295,CH 2587447296,2587476760,US @@ -49727,7 +51481,8 @@ 2587492352,2587493375,ES 2587493376,2587494399,US 2587494400,2587496447,ES -2587496448,2587508735,US +2587496448,2587504639,US +2587504640,2587508735,ES 2587508736,2587525119,GB 2587525120,2587542527,US 2587542528,2587544575,ES @@ -49743,9 +51498,15 @@ 2587639808,2587640063,GB 2587640064,2587926527,US 2587926528,2587930623,BG -2587930624,2587939071,US -2587939072,2587939327,PR -2587939328,2587951103,US +2587930624,2587938815,US +2587938816,2587939583,PR +2587939584,2587939711,US +2587939712,2587939839,PR +2587939840,2587940095,US +2587940096,2587940607,PR +2587940608,2587940863,US +2587940864,2587941119,PR +2587941120,2587951103,US 2587951104,2587952127,ZA 2587952128,2587953151,NG 2587953152,2587954175,MU @@ -49791,6 +51552,7 @@ 2588213248,2588278783,ZA 2588278784,2588295167,KE 2588295168,2588299263,GH +2588299264,2588303359,TG 2588303360,2588311551,CM 2588311552,2588315647,ZA 2588315648,2588317695,BW @@ -49889,7 +51651,11 @@ 2591424512,2591457279,NG 2591457280,2591473663,ML 2591473664,2591477759,AO -2591477760,2591481855,PT +2591477760,2591478783,PT +2591478784,2591479039,AO +2591479040,2591479551,PT +2591479552,2591479807,AO +2591479808,2591481855,PT 2591481856,2591483903,TZ 2591485952,2591486975,SO 2591486976,2591487999,ZA @@ -49913,6 +51679,7 @@ 2591612928,2591621119,ZW 2591621120,2591686655,DZ 2591686656,2591817727,KE +2591817728,2591948799,SN 2591948800,2591981567,MG 2591981568,2591997951,CM 2591997952,2592006143,ZA @@ -49950,15 +51717,9 @@ 2601451520,2601517055,CA 2601517056,2602565631,US 2602565632,2602631167,NZ -2602631168,2602762495,US -2602762496,2602762751,IN -2602762752,2602770943,US -2602770944,2602771455,IN -2602771456,2602774015,US -2602774016,2602774527,IN -2602774528,2602821631,US -2602821632,2602821887,IN -2602821888,2602825727,US +2602631168,2602774015,US +2602774016,2602774271,IN +2602774528,2602825727,US 2602825728,2602825983,AU 2602825984,2603417599,US 2603417600,2603483135,DE @@ -50076,21 +51837,20 @@ 2617140736,2617140991,CA 2617140992,2617141247,LC 2617141248,2617141503,SV -2617141504,2617141759,GT +2617141504,2617141759,US 2617141760,2617142015,ZW 2617142016,2617142271,KR 2617142272,2617142527,US 2617142528,2617142783,LU -2617142784,2617143039,PH +2617142784,2617143039,US 2617143040,2617143295,UG 2617143296,2617143551,US 2617143552,2617143807,TT 2617143808,2617144063,US 2617144064,2617144319,ZA -2617144320,2617144575,MU +2617144320,2617144575,US 2617144576,2617144831,FJ -2617144832,2617145087,US -2617145088,2617145343,MX +2617144832,2617145343,US 2617145344,2617145599,NI 2617145600,2617145855,UA 2617145856,2617146111,US @@ -50098,8 +51858,7 @@ 2617146368,2617146623,US 2617146624,2617146879,GY 2617146880,2617147135,DE -2617147136,2617147391,AO -2617147392,2617149439,US +2617147136,2617149439,US 2617149440,2617155583,CA 2617155584,2617163775,US 2617163776,2617164031,SK @@ -50184,7 +51943,9 @@ 2618949632,2619080703,US 2619080704,2619146239,FR 2619146240,2619277311,US -2619277312,2619342847,BN +2619277312,2619327743,BN +2619327744,2619327999,MY +2619328000,2619342847,BN 2619342848,2619473919,US 2619473920,2619539455,CA 2619539456,2619604991,ES @@ -50223,7 +51984,11 @@ 2624192512,2624258047,CH 2624258048,2624266495,US 2624266496,2624266751,AP -2624266752,2624391696,US +2624266752,2624279063,US +2624279064,2624279071,IN +2624279072,2624281087,US +2624281088,2624281343,IN +2624281344,2624391696,US 2624391697,2624391697,EU 2624391698,2624393727,US 2624393728,2624393983,EU @@ -50304,9 +52069,9 @@ 2642280448,2642411519,US 2642411520,2642477055,AU 2642477056,2642542591,FI -2642542592,2642603263,US -2642603264,2642603519,NO -2642603520,2642935807,US +2642542592,2642751487,US +2642751488,2642753535,CA +2642753536,2642935807,US 2642935808,2643001343,FR 2643001344,2643066879,US 2643066880,2643132415,IT @@ -50357,7 +52122,9 @@ 2647326720,2647392255,GB 2647392256,2647457791,US 2647457792,2647523327,JP -2647523328,2647687167,US +2647523328,2647605503,US +2647605504,2647605759,GB +2647605760,2647687167,US 2647687168,2647687423,CA 2647687424,2647851007,US 2647851008,2647916543,AU @@ -50427,7 +52194,9 @@ 2655325696,2655325823,CA 2655325824,2655326207,US 2655326208,2655326463,CA -2655326464,2655715327,US +2655326464,2655373256,US +2655373257,2655373257,CA +2655373258,2655715327,US 2655715328,2655780863,PL 2655780864,2656387071,US 2656387072,2656403455,CA @@ -50454,9 +52223,11 @@ 2658009088,2658074623,IT 2658074624,2658140159,US 2658140160,2658205695,NO -2658205696,2658459648,US +2658205696,2658459647,US +2658459648,2658459648,HU 2658459649,2658459649,EU -2658459650,2658598911,US +2658459650,2658459903,HU +2658459904,2658598911,US 2658598912,2658664447,GB 2658664448,2658926591,US 2658926592,2659057663,GB @@ -50515,7 +52286,9 @@ 2663579648,2663645183,SK 2663645184,2663710719,CZ 2663710720,2663776255,SK -2663776256,2664955903,JP +2663776256,2663891199,JP +2663891200,2663891455,CN +2663891456,2664955903,JP 2664955904,2665021439,CH 2665021440,2665086975,JP 2665086976,2665152511,GB @@ -50531,7 +52304,9 @@ 2665545728,2665611263,DE 2665611264,2665676799,CH 2665676800,2665742335,ES -2665742336,2665873407,US +2665742336,2665805055,US +2665805056,2665805311,CA +2665805312,2665873407,US 2665873408,2665938943,GB 2665938944,2666004479,FR 2666004480,2666070015,CH @@ -50700,9 +52475,13 @@ 2675589120,2675605503,DE 2675605504,2675606271,US 2675606272,2675606527,IT -2675606528,2675835135,US -2675835136,2675835391,CA -2675835392,2675965951,US +2675606528,2675606975,US +2675606976,2675607039,IT +2675607040,2675628415,US +2675628416,2675628447,GB +2675628448,2675630095,US +2675630096,2675630111,GB +2675630112,2675965951,US 2675965952,2676031487,CA 2676031488,2676097023,US 2676097024,2676162559,NO @@ -50721,9 +52500,13 @@ 2677538816,2677604351,FI 2677604352,2677635071,US 2677635072,2677636095,CN -2677636096,2677642239,US +2677636096,2677639167,US +2677639168,2677639423,CA +2677639424,2677639679,US +2677639680,2677639935,CA +2677639936,2677642239,US 2677642240,2677642495,ES -2677642496,2677642751,US +2677642496,2677642751,CA 2677642752,2677643007,SE 2677643008,2677644347,US 2677644348,2677644348,GB @@ -50743,9 +52526,7 @@ 2677669888,2677735423,DE 2677735424,2677800959,US 2677800960,2677866495,CH -2677866496,2677924863,US -2677924864,2677925119,GB -2677925120,2677997567,US +2677866496,2677997567,US 2677997568,2678063103,CA 2678063104,2678128639,UA 2678128640,2678194175,US @@ -50805,7 +52586,9 @@ 2680029184,2680094719,SE 2680094720,2680160255,US 2680160256,2680225791,TH -2680225792,2680356863,SE +2680225792,2680264191,SE +2680264192,2680264447,DK +2680264448,2680356863,SE 2680356864,2680422399,DK 2680422400,2680487935,AU 2680487936,2680553471,GB @@ -50835,7 +52618,12 @@ 2682008576,2682008831,GB 2682008832,2682014207,US 2682014208,2682014719,GB -2682014720,2682257407,US +2682014720,2682014975,TH +2682014976,2682015231,US +2682015232,2682015487,IN +2682015488,2682107903,US +2682107904,2682108159,GB +2682108160,2682257407,US 2682257408,2682322943,UA 2682322944,2682388479,US 2682388480,2682454015,CN @@ -50853,9 +52641,10 @@ 2683437056,2683568127,US 2683568128,2683633663,GB 2683633664,2683637759,EU -2683637760,2683637859,NL +2683637760,2683637859,FR 2683637860,2683637860,EU -2683637861,2683641855,NL +2683637861,2683638015,FR +2683638016,2683641855,NL 2683641856,2683645951,US 2683645952,2683646207,AP 2683646208,2683650047,SG @@ -50915,9 +52704,14 @@ 2686910464,2686975999,US 2686976000,2687041535,GR 2687041536,2687238143,US -2687238144,2687301795,DE +2687238144,2687297231,DE +2687297232,2687297239,GB +2687297240,2687297243,SE +2687297244,2687301795,DE 2687301796,2687301796,EU -2687301797,2687762431,DE +2687301797,2687560191,DE +2687560192,2687560447,ZA +2687560448,2687762431,DE 2687762432,2687827967,AT 2687827968,2687893503,CH 2687893504,2688221183,DE @@ -50925,7 +52719,9 @@ 2688286720,2688352255,DE 2688352256,2688418825,CH 2688418826,2688418826,EU -2688418827,2688421119,CH +2688418827,2688420351,CH +2688420352,2688420607,CN +2688420608,2688421119,CH 2688421120,2688421375,AP 2688421376,2688548863,CH 2688548864,2688614399,AU @@ -50961,22 +52757,18 @@ 2689594112,2689594879,GB 2689594880,2689597439,US 2689597440,2689662975,IT -2689662976,2689801904,US -2689801905,2689801905,DE -2689801906,2689802751,US +2689662976,2689801727,US +2689801728,2689801983,DE +2689801984,2689802751,US 2689802752,2689803263,TR 2689803264,2689803519,GB 2689803520,2689804799,US 2689804800,2689805055,GB 2689805056,2689818879,US 2689818880,2689819135,IN -2689819136,2689826815,US -2689826816,2689827071,JP -2689827072,2689835007,US +2689819136,2689835007,US 2689835008,2689835263,AU -2689835264,2689835519,US -2689835520,2689835775,AU -2689835776,2689925119,US +2689835264,2689925119,US 2689925120,2689990655,CH 2689990656,2690383871,US 2690383872,2690449407,FR @@ -51033,9 +52825,13 @@ 2700279808,2700935167,JP 2700935168,2701066239,US 2701066240,2701131775,BG -2701131776,2701132543,HN +2701131776,2701131807,HN +2701131808,2701131823,CA +2701131824,2701132543,HN 2701132544,2701132559,CR -2701132560,2701139967,HN +2701132560,2701136047,HN +2701136048,2701136055,US +2701136056,2701139967,HN 2701139968,2701148159,NI 2701148160,2701149183,AR 2701149184,2701150207,HN @@ -51057,7 +52853,9 @@ 2701393920,2701459455,NO 2701459456,2701524991,AT 2701524992,2701656063,US -2701656064,2701721599,RU +2701656064,2701688831,RU +2701688832,2701721087,US +2701721088,2701721599,RU 2701721600,2701787135,TR 2701787136,2701852671,CO 2701852672,2701918207,US @@ -51069,9 +52867,9 @@ 2702442496,2702508031,CH 2702508032,2702573567,US 2702573568,2702581759,AR -2702581760,2702585855,VE -2702585856,2702586111,CW -2702586112,2702586367,PA +2702581760,2702583807,VE +2702583808,2702585855,MX +2702585856,2702586367,PA 2702586368,2702587903,CW 2702587904,2702589951,BR 2702589952,2702606335,GF @@ -51094,7 +52892,9 @@ 2704277504,2704343039,FR 2704343040,2704408575,US 2704408576,2704474111,AU -2704474112,2704485119,US +2704474112,2704476927,US +2704476928,2704477183,GB +2704477184,2704485119,US 2704485120,2704485375,AU 2704485376,2704539647,US 2704539648,2704605183,SE @@ -51153,6 +52953,7 @@ 2708865024,2708930559,JP 2708930560,2709127167,US 2709127168,2709192703,KR +2709192704,2709258239,ZA 2709258240,2709389311,US 2709389312,2709454847,SG 2709454848,2709716991,US @@ -51245,8 +53046,8 @@ 2723610624,2723832575,US 2723832576,2723832831,GB 2723832832,2724268287,US -2724268288,2724268415,MX -2724268416,2724303989,US +2724268288,2724268543,MX +2724268544,2724303989,US 2724303990,2724303990,GB 2724303991,2724790271,US 2724790272,2724855807,CN @@ -51263,7 +53064,19 @@ 2727411712,2727608319,AU 2727608320,2728132607,US 2728132608,2728263679,CA -2728263680,2731543551,US +2728263680,2728263935,US +2728263936,2728264703,AU +2728264704,2728266495,US +2728266496,2728266751,QA +2728266752,2728273407,US +2728273408,2728273663,IE +2728273664,2728282271,US +2728282272,2728282303,CA +2728282304,2728286207,US +2728286208,2728286463,DE +2728286464,2728289023,US +2728289024,2728289279,AE +2728289280,2731543551,US 2731543552,2731544575,CA 2731544576,2731549695,US 2731549696,2731550719,CA @@ -51333,7 +53146,9 @@ 2731843584,2731845631,PR 2731845632,2731853823,US 2731853824,2731855871,CA -2731855872,2731856895,VC +2731855872,2731856127,VC +2731856128,2731856383,LC +2731856384,2731856895,VC 2731856896,2731862015,US 2731862016,2731864063,CA 2731864064,2731870207,US @@ -51392,7 +53207,9 @@ 2732337152,2732351487,US 2732351488,2732353535,PR 2732353536,2732361727,US -2732361728,2732363775,BB +2732361728,2732362495,BB +2732362496,2732363007,DM +2732363008,2732363775,BB 2732363776,2732371967,US 2732372992,2732375039,US 2732375040,2732376063,CA @@ -51491,7 +53308,9 @@ 2734102528,2734104575,VI 2734104576,2734105599,US 2734105600,2734106623,CA -2734106624,2734108671,A2 +2734106624,2734107647,A2 +2734107648,2734108415,US +2734108416,2734108671,A2 2734108672,2734119935,US 2734119936,2734120959,CA 2734120960,2734123007,VG @@ -51721,8 +53540,7 @@ 2738214912,2738215935,HK 2738215936,2738216959,CN 2738216960,2738217983,HK -2738217984,2738219007,AU -2738219008,2738220031,NZ +2738217984,2738220031,AU 2738220032,2738221055,PK 2738221056,2738222079,CN 2738222080,2738223103,MO @@ -51867,7 +53685,9 @@ 2757033984,2757099519,BR 2757099520,2757230591,US 2757230592,2757296127,ZA -2757296128,2757754879,US +2757296128,2757394431,US +2757394432,2757394687,GB +2757394688,2757754879,US 2757754880,2757820415,CL 2757820416,2757885951,AU 2757885952,2757951487,CL @@ -51949,7 +53769,11 @@ 2765568000,2765570047,IR 2765570048,2765578239,RU 2765578240,2765580287,AZ -2765580288,2765582335,GB +2765580288,2765581311,GB +2765581312,2765581567,US +2765581568,2765581823,GB +2765581824,2765582079,US +2765582080,2765582335,GB 2765582336,2765586431,CZ 2765586432,2765619199,IR 2765619200,2768240639,US @@ -51966,7 +53790,9 @@ 2769747968,2769813503,CA 2769813504,2769879039,US 2769879040,2769944575,ZA -2769944576,2770272255,US +2769944576,2769999871,US +2769999872,2769999935,GB +2769999936,2770272255,US 2770272256,2770337791,AU 2770337792,2770993151,US 2770993152,2771124223,IN @@ -51990,7 +53816,12 @@ 2773807104,2773811199,IN 2773811200,2773876735,US 2773876736,2773942271,AU -2773942272,2774335487,US +2773942272,2774138879,US +2774163456,2774171647,CV +2774188032,2774192127,ZA +2774196224,2774200319,ZA +2774200320,2774204415,NG +2774204416,2774335487,US 2774335488,2774401023,JP 2774401024,2774532095,US 2774532096,2774597631,JP @@ -52008,7 +53839,8 @@ 2776104960,2776170495,GB 2776170496,2776478207,US 2776478208,2776478463,EU -2776478464,2776478975,US +2776478464,2776478719,ZA +2776478720,2776478975,US 2776478976,2776479231,AU 2776479232,2776697614,US 2776697615,2776697615,EU @@ -52048,8 +53880,8 @@ 2780929792,2780930047,US 2780930048,2780930559,GB 2780930560,2780931071,US -2780931072,2780932095,GB -2780932096,2780932607,US +2780931072,2780932351,GB +2780932352,2780932607,US 2780932608,2780933119,GB 2780933120,2780933375,US 2780933376,2780933631,GB @@ -52064,7 +53896,11 @@ 2781207552,2781208575,DE 2781208576,2781478911,US 2781478912,2781544447,HK -2781544448,2781629951,US +2781544448,2781623807,US +2781623808,2781624319,CA +2781624320,2781628415,US +2781628416,2781628671,DE +2781628672,2781629951,US 2781629952,2781630207,EU 2781630208,2781630463,US 2781630464,2781631487,MY @@ -52080,7 +53916,9 @@ 2782658560,2782724095,PH 2782724096,2782789631,US 2782789632,2782855167,CH -2782855168,2783002623,US +2782855168,2782995455,US +2782995456,2782995967,CA +2782995968,2783002623,US 2783002624,2783002879,DK 2783002880,2783003135,US 2783003136,2783003391,RU @@ -52138,7 +53976,9 @@ 2788261888,2788294655,GB 2788294656,2789113855,US 2789113856,2789146623,CA -2789146624,2789212159,US +2789146624,2789200895,US +2789200896,2789201151,GB +2789201152,2789212159,US 2789212160,2789277695,AU 2789277696,2789343231,NZ 2789343232,2789933055,US @@ -52168,15 +54008,11 @@ 2792947712,2793013247,SG 2793013248,2793209855,US 2793209856,2793275391,KR -2793275392,2796766207,US -2796766208,2796766463,NZ -2796766464,2796806911,US +2793275392,2796806911,US 2796806912,2796807167,NZ 2796807168,2796807935,US 2796807936,2796808191,NZ -2796808192,2797646591,US -2797646592,2797646847,VI -2797646848,2798838015,US +2796808192,2798838015,US 2798838016,2798838271,CO 2798838272,2801795071,US 2801795072,2801860607,CO @@ -52193,7 +54029,9 @@ 2803826688,2803892223,US 2803892224,2805465087,CA 2805465088,2805989375,UY -2805989376,2806644735,US +2805989376,2806007807,US +2806007808,2806008063,GB +2806008064,2806644735,US 2806644736,2806710271,CA 2806710272,2807103487,US 2807103488,2807169023,NL @@ -52201,7 +54039,9 @@ 2807236864,2807237119,EU 2807237120,2807259647,US 2807259648,2807260159,AP -2807260160,2807566335,US +2807260160,2807271679,US +2807271680,2807271935,AU +2807271936,2807566335,US 2807566336,2807574527,CA 2807574528,2807587071,US 2807587072,2807587327,IT @@ -52247,9 +54087,13 @@ 2809291824,2809291824,US 2809291825,2809291891,CA 2809291892,2809291892,US -2809291893,2809308599,CA +2809291893,2809297711,CA +2809297712,2809297712,US +2809297713,2809308599,CA 2809308600,2809308607,US -2809308608,2809321007,CA +2809308608,2809316607,CA +2809316608,2809316623,US +2809316624,2809321007,CA 2809321008,2809321015,US 2809321016,2809323519,CA 2809323520,2809331711,FR @@ -52279,9 +54123,7 @@ 2812295168,2812297215,GB 2812297216,2812411903,US 2812411904,2812477439,AU -2812477440,2812764159,US -2812764160,2812764415,GB -2812764416,2812805119,US +2812477440,2812805119,US 2812805120,2812870655,CH 2812870656,2812936191,JP 2812936192,2813067263,US @@ -52290,7 +54132,9 @@ 2813263872,2813329407,JP 2813329408,2813526015,US 2813526016,2813591551,NZ -2813591552,2814181375,US +2813591552,2813908479,US +2813908480,2813908735,AU +2813908736,2814181375,US 2814181376,2814246911,CN 2814246912,2814377215,US 2814377216,2814377471,EU @@ -52333,7 +54177,8 @@ 2817325056,2817325311,EU 2817325312,2817933055,US 2817933056,2817933311,CA -2817933312,2817986303,US +2817933312,2817933567,PR +2817933568,2817986303,US 2817986304,2817986559,AP 2817986560,2818002943,US 2818002944,2818003722,GB @@ -52345,7 +54190,9 @@ 2818310144,2818375679,AR 2818375680,2818572287,US 2818637824,2818670591,AU -2818670592,2822731894,US +2818670592,2822592397,US +2822592398,2822592398,IE +2822592399,2822731894,US 2822731895,2822731895,GB 2822731896,2822848997,US 2822848998,2822848998,EU @@ -52363,7 +54210,13 @@ 2824011776,2824077311,AR 2824077312,2824274720,US 2824274721,2824274721,EU -2824274722,2824404991,US +2824274722,2824292095,US +2824292096,2824292351,AU +2824292352,2824357375,US +2824357376,2824357631,GB +2824357632,2824357887,US +2824357888,2824358143,CA +2824358144,2824404991,US 2824404992,2824470527,ZA 2824536064,2824798207,US 2824798208,2824863743,TW @@ -52401,7 +54254,9 @@ 2828599808,2828664831,AU 2828664832,2828730367,KR 2828730368,2828795903,ZA -2828795904,2829041663,US +2828795904,2829033471,US +2829033472,2829033727,IN +2829033728,2829041663,US 2829041664,2829041919,AU 2829041920,2829058047,US 2829058048,2829123583,CN @@ -52417,9 +54272,11 @@ 2829385728,2829451263,MX 2829451264,2829516799,US 2829516800,2829582335,BW -2829582336,2829591033,US +2829582336,2829590783,US +2829590784,2829591033,GB 2829591034,2829591034,EU -2829591035,2829593343,US +2829591035,2829591039,GB +2829591040,2829593343,US 2829593344,2829593599,EU 2829593600,2829844479,US 2829844480,2829910015,ZA @@ -52488,7 +54345,9 @@ 2835349504,2835480575,ZA 2835480576,2837446655,US 2837446656,2837839871,CH -2837839872,2837905407,US +2837839872,2837858047,US +2837858048,2837858055,IN +2837858056,2837905407,US 2837905408,2837970943,CH 2837970944,2838036479,US 2838036480,2838233087,CH @@ -52537,9 +54396,9 @@ 2844524544,2844590079,KR 2844590080,2844783615,US 2844783616,2844784639,EU -2844784640,2844884991,US -2844884992,2844885247,FR -2844885248,2844902655,US +2844784640,2844862975,US +2844862976,2844863231,CA +2844863232,2844902655,US 2844902656,2844902911,AP 2844902912,2845704191,US 2845704192,2845755391,CU @@ -52574,6 +54433,19 @@ 2851026944,2851027967,DZ 2851027968,2851028991,ZA 2851028992,2851030015,CI +2851030016,2851031039,ZA +2851031040,2851032063,CD +2851032064,2851033087,AO +2851033088,2851035135,ZA +2851035136,2851036159,UG +2851036160,2851037183,LY +2851037184,2851038207,CF +2851038208,2851039231,ML +2851039232,2851040255,MZ +2851040256,2851041279,AO +2851041280,2851042303,GQ +2851042304,2851043327,LY +2851043328,2851044351,TD 2851078144,2851995647,US 2852061184,2852062207,ZA 2852062208,2852063231,CM @@ -52639,7 +54511,9 @@ 2854748160,2855469055,US 2855469056,2855484671,PY 2855484672,2855485439,AR -2855485440,2855501823,UY +2855485440,2855487999,UY +2855488000,2855488255,AR +2855488256,2855501823,UY 2855501824,2855534591,AR 2855534592,2855706623,US 2855706624,2855706879,EU @@ -52647,7 +54521,13 @@ 2856058880,2856124415,CH 2856124416,2856184831,US 2856184832,2856185855,GB -2856185856,2856452095,US +2856185856,2856438783,US +2856438784,2856439039,BR +2856439040,2856439295,US +2856439296,2856439551,BR +2856439552,2856442367,US +2856442368,2856442623,PH +2856442624,2856452095,US 2856452096,2856517631,BR 2856517632,2856714239,US 2856714240,2856779775,MX @@ -52660,11 +54540,15 @@ 2859008000,2859073535,JP 2859073536,2861069055,US 2861069056,2861069311,GB -2861069312,2861850623,US +2861069312,2861733375,US +2861733376,2861733631,CA +2861733632,2861850623,US 2861850624,2861850879,AP 2861850880,2861851391,US 2861851392,2861851647,AP -2861851648,2861876735,US +2861851648,2861862911,US +2861862912,2861863167,AU +2861863168,2861876735,US 2861876736,2861876991,GB 2861876992,2861881087,US 2861881088,2861881343,GB @@ -52689,9 +54573,7 @@ 2865577984,2865610751,BE 2865610752,2865889279,US 2865889280,2865954815,AR -2865954816,2866953215,US -2866953216,2866953471,AU -2866953472,2867593215,US +2865954816,2867593215,US 2867593216,2867724287,CH 2867855360,2868117503,US 2868379648,2868380159,IN @@ -52858,7 +54740,9 @@ 2869952512,2870018047,FR 2870018048,2870083583,DE 2870083584,2870089727,FR -2870089728,2870091775,DE +2870089728,2870090495,DE +2870090496,2870090751,BE +2870090752,2870091775,DE 2870091776,2870149119,FR 2870149120,2870214655,HU 2870214656,2870280191,DK @@ -53022,13 +54906,17 @@ 2892146944,2892147199,NL 2892147200,2892149503,US 2892149504,2892149759,NL -2892149760,2892171263,US +2892149760,2892150271,US +2892150272,2892150783,CA +2892150784,2892171263,US 2892171264,2892172287,CA 2892172288,2892174335,US 2892174336,2892177407,CA 2892177408,2892369919,US 2892369920,2892374015,CA -2892374016,2892423167,US +2892374016,2892420607,US +2892420608,2892420863,CA +2892420864,2892423167,US 2892423168,2892424191,VI 2892424192,2892425215,CA 2892425216,2892443647,US @@ -53044,7 +54932,11 @@ 2892989184,2892989439,PE 2892989440,2892989695,CO 2892989696,2892989951,VE -2892989952,2893676543,US +2892989952,2892990207,US +2892990208,2892990463,CA +2892990464,2892990975,IT +2892990976,2892991231,ID +2892991232,2893676543,US 2893676544,2893807615,CA 2893807616,2894921727,US 2894921728,2895118335,GB @@ -53086,19 +54978,17 @@ 2902476544,2902476799,CW 2902476800,2902507519,US 2902507520,2902515711,CA -2902515712,2902564399,US -2902564400,2902564415,CN -2902564416,2902564687,US -2902564688,2902564703,AU -2902564704,2904555519,US +2902515712,2904555519,US 2904555520,2904817663,CA 2904817664,2905001983,US 2905001984,2905002152,GB 2905002153,2905002153,US -2905002154,2905002239,GB -2905002240,2905002248,US +2905002154,2905002248,GB 2905002249,2905002249,NL -2905002250,2905044991,US +2905002250,2905002495,GB +2905002496,2905005055,US +2905005056,2905005311,GB +2905005312,2905044991,US 2905044992,2905045247,SG 2905045248,2905345279,US 2905345280,2905345535,AU @@ -53122,9 +55012,7 @@ 2905473024,2905481215,CA 2905481216,2913992703,US 2913992704,2914516991,CA -2914516992,2914651775,US -2914651776,2914651903,AS -2914651904,2915105791,US +2914516992,2915105791,US 2915105792,2915106047,NL 2915106048,2915106303,US 2915106304,2915106559,SG @@ -53232,7 +55120,8 @@ 2917203968,2917257215,US 2917257216,2917261311,KY 2917261312,2917265407,US -2917265408,2917267775,JM +2917265408,2917267711,JM +2917267712,2917267775,AG 2917267776,2917267839,VG 2917267840,2917267967,AG 2917267968,2917268223,JM @@ -53302,7 +55191,9 @@ 2918051840,2918121471,CA 2918121472,2918154239,US 2918154240,2918170623,CA -2918170624,2918187775,US +2918170624,2918174463,US +2918174464,2918174719,MX +2918174720,2918187775,US 2918187776,2918188031,CA 2918188032,2918232063,US 2918232064,2918236159,CA @@ -53327,7 +55218,9 @@ 2918407424,2918408191,PR 2918408192,2918432767,US 2918432768,2918436863,CA -2918436864,2918469631,US +2918436864,2918463231,US +2918463232,2918463487,CA +2918463488,2918469631,US 2918469632,2918471423,CA 2918471424,2918471679,US 2918471680,2918472703,CA @@ -53335,7 +55228,9 @@ 2918473216,2918473727,CA 2918473728,2918477823,US 2918477824,2918481919,CA -2918481920,2918536719,US +2918481920,2918527231,US +2918527232,2918527487,FR +2918527488,2918536719,US 2918536720,2918536727,CA 2918536728,2918570239,US 2918570240,2918570495,JP @@ -53782,9 +55677,7 @@ 2954840256,2954840447,GB 2954840448,2954840515,FR 2954840516,2954840519,NL -2954840520,2954840731,FR -2954840732,2954840735,IT -2954840736,2954840927,FR +2954840520,2954840927,FR 2954840928,2954840931,DE 2954840932,2954841707,FR 2954841708,2954841711,NL @@ -53898,7 +55791,9 @@ 2955034624,2955083775,IE 2955083776,2955149311,GB 2955149312,2955411455,UA -2955411456,2955673599,TR +2955411456,2955631615,TR +2955631616,2955631871,UA +2955631872,2955673599,TR 2955673600,2955804671,SA 2955804672,2955837439,EE 2955837440,2955845631,IR @@ -53986,8 +55881,8 @@ 2956823552,2956824575,US 2956824576,2956826623,PT 2956826624,2956828671,HR -2956828672,2956832767,BA -2956832768,2956833791,AT +2956828672,2956833023,BA +2956833024,2956833791,AT 2956833792,2956836863,BA 2956836864,2956853247,SK 2956853248,2956865535,HR @@ -54013,11 +55908,8 @@ 2957068288,2957070335,LU 2957070336,2957074431,IT 2957074432,2957082623,RU -2957082624,2957099007,DE -2957099008,2957100031,CH -2957100032,2957104639,DE -2957104640,2957105663,US -2957105664,2957115391,DE +2957082624,2957090815,DE +2957090816,2957115391,IR 2957115392,2957180927,AT 2957180928,2957189119,UA 2957189120,2957193215,LV @@ -54461,7 +56353,13 @@ 2961057792,2961061887,RU 2961061888,2961062911,PL 2961062912,2961063935,UA -2961063936,2961072127,NL +2961063936,2961064959,NL +2961064960,2961065215,HK +2961065216,2961065471,AU +2961065472,2961065727,BR +2961065728,2961069567,NL +2961069568,2961069823,IN +2961069824,2961072127,NL 2961072128,2961088511,UA 2961088512,2961088767,SE 2961088768,2961089023,RU @@ -54525,7 +56423,8 @@ 2967432960,2967433215,CH 2967433216,2967434239,RO 2967434240,2967435007,GB -2967435008,2967441407,RO +2967435008,2967435263,IE +2967435264,2967441407,RO 2967441408,2967445503,MD 2967445504,2967446015,GB 2967446016,2967446783,RO @@ -54636,7 +56535,8 @@ 2987540480,2987544575,SK 2987544576,2987548671,NL 2987548672,2987552767,RU -2987552768,2987556863,GB +2987552768,2987553023,AE +2987553024,2987556863,GB 2987556864,2987560959,NL 2987560960,2987565055,DE 2987565056,2987569151,AT @@ -55020,7 +56920,9 @@ 2988540564,2988540567,CZ 2988540568,2988541955,FR 2988541956,2988541959,DE -2988541960,2988542627,FR +2988541960,2988542339,FR +2988542340,2988542340,US +2988542341,2988542627,FR 2988542628,2988542631,NL 2988542632,2988544671,FR 2988544672,2988544687,GB @@ -55060,11 +56962,15 @@ 2988551536,2988551551,DE 2988551552,2988552883,FR 2988552884,2988552887,IT -2988552888,2988553399,FR +2988552888,2988553199,FR +2988553200,2988553215,BE +2988553216,2988553399,FR 2988553400,2988553407,NL 2988553408,2988553531,FR 2988553532,2988553535,ES -2988553536,2988554035,FR +2988553536,2988553855,FR +2988553856,2988553919,BE +2988553920,2988554035,FR 2988554036,2988554039,ES 2988554040,2988555527,FR 2988555528,2988555531,DE @@ -55131,7 +57037,7 @@ 2990014464,2990079999,PL 2990080000,2990096895,RU 2990096896,2990097023,KZ -2990097024,2990097151,RU +2990097024,2990097151,US 2990097152,2990097279,KZ 2990097280,2990145535,RU 2990145536,2990211071,SI @@ -55168,29 +57074,27 @@ 2991341568,2991357951,MD 2991357952,2991358207,DE 2991358208,2991358463,US -2991358464,2991358719,DE -2991358720,2991358975,US -2991358976,2991359231,DE -2991359232,2991359743,US -2991359744,2991361279,DE +2991358464,2991358891,DE +2991358892,2991358892,US +2991358893,2991358975,DE +2991358976,2991359487,US +2991359488,2991360511,DE +2991360512,2991361023,US +2991361024,2991361279,DE 2991361280,2991361535,US -2991361536,2991362047,DE -2991362048,2991362303,US -2991362304,2991362815,DE -2991362816,2991363071,US -2991363072,2991364863,DE -2991364864,2991365375,US -2991365376,2991366143,DE +2991361536,2991363071,DE +2991363072,2991363583,US +2991363584,2991363839,DE +2991363840,2991364607,US +2991364608,2991365631,DE +2991365632,2991365887,US +2991365888,2991366143,DE 2991366144,2991366399,US -2991366400,2991368959,DE -2991368960,2991369215,US -2991369216,2991369983,DE -2991369984,2991370239,US -2991370240,2991371007,DE -2991371008,2991371263,US -2991371264,2991373055,DE -2991373056,2991373311,US -2991373312,2991374335,DE +2991366400,2991368703,DE +2991368704,2991368959,US +2991368960,2991371263,DE +2991371264,2991371519,US +2991371520,2991374335,DE 2991374336,2991390719,RU 2991390720,2991407103,BA 2991407104,2991423487,DE @@ -55203,7 +57107,9 @@ 2991521792,2991538175,RS 2991538176,2991554559,SI 2991554560,2991570943,GB -2991570944,2991587327,IT +2991570944,2991571711,IT +2991571712,2991571967,GB +2991571968,2991587327,IT 2991587328,2991718399,SA 2991718400,2991849471,CH 2991849472,2991980543,NL @@ -55225,7 +57131,9 @@ 2995009536,2995011583,ES 2995011584,2995013631,DE 2995013632,2995015679,SE -2995015680,2995017727,BG +2995015680,2995017215,BG +2995017216,2995017471,JP +2995017472,2995017727,BG 2995017728,2995019775,IT 2995019776,2995021823,RU 2995021824,2995023871,IT @@ -55271,8 +57179,8 @@ 2996776960,2996781055,RU 2996781056,2996785151,RO 2996785152,2996789247,RU -2996789248,2996793343,UA -2996793344,2996797439,RU +2996789248,2996793599,UA +2996793600,2996797439,RU 2996797440,2996801535,PL 2996801536,2996805631,RO 2996805632,2996809727,PL @@ -55417,7 +57325,11 @@ 3000317952,3000319999,PL 3000320000,3000322047,FR 3000322048,3000322303,PL -3000322304,3000326143,RU +3000322304,3000322559,RU +3000322560,3000322815,DE +3000322816,3000323071,RU +3000323072,3000323583,DE +3000323584,3000326143,RU 3000326144,3000330239,PL 3000330240,3000332287,UA 3000332288,3000334335,RU @@ -55562,7 +57474,9 @@ 3001909248,3001917439,ES 3001917440,3001919743,GB 3001919744,3001919999,AU -3001920000,3001921535,GB +3001920000,3001920255,GB +3001920256,3001920511,AU +3001920512,3001921535,GB 3001921536,3001929727,RU 3001929728,3001933823,RS 3001933824,3001937919,ES @@ -55609,7 +57523,9 @@ 3002617856,3002619903,RU 3002619904,3002621951,IT 3002621952,3002623999,NO -3002624000,3002628095,GB +3002624000,3002627327,GB +3002627328,3002627583,SA +3002627584,3002628095,GB 3002628096,3002630143,NO 3002630144,3002632191,GB 3002632192,3002634239,EE @@ -55760,7 +57676,9 @@ 3003099136,3003101183,CZ 3003101184,3003103231,UA 3003103232,3003105279,IT -3003105280,3003109375,NL +3003105280,3003107327,NL +3003107328,3003107583,RU +3003107584,3003109375,NL 3003109376,3003111423,FR 3003111424,3003113471,IT 3003113472,3003115519,ES @@ -55828,7 +57746,10 @@ 3003154944,3003159039,AR 3003159040,3003159295,CO 3003159296,3003160575,AR -3003160576,3003161599,CL +3003160576,3003160831,CL +3003160832,3003161087,PE +3003161088,3003161343,CO +3003161344,3003161599,CL 3003161600,3003162623,UY 3003162624,3003170815,CR 3003170816,3003171071,GT @@ -55873,17 +57794,17 @@ 3005890048,3005890303,CO 3005890304,3005890559,PA 3005890560,3005891583,CO -3005891584,3005893119,PA +3005891584,3005891839,PA +3005891840,3005892095,CO +3005892096,3005893119,PA 3005893120,3005893631,CO 3005893632,3005893887,PA 3005893888,3005894911,CO 3005894912,3005895167,PA -3005895168,3005895423,CO -3005895424,3005896703,PA -3005896704,3005897727,CO -3005897728,3005897983,PA -3005897984,3005898239,CO -3005898240,3005899007,PA +3005895168,3005895935,CO +3005895936,3005896703,PA +3005896704,3005898495,CO +3005898496,3005899007,PA 3005899008,3005900543,CO 3005900544,3005901055,PA 3005901056,3005901311,CO @@ -55891,8 +57812,8 @@ 3005901568,3005901823,CO 3005901824,3005902591,PA 3005902592,3005903871,CO -3005903872,3005904895,PA -3005904896,3005905407,CO +3005903872,3005904639,PA +3005904640,3005905407,CO 3005905408,3005905663,PA 3005905664,3005906943,CO 3005906944,3005911039,PA @@ -55906,8 +57827,7 @@ 3005913088,3005913343,PA 3005913344,3005913599,CO 3005913600,3005913855,PA -3005913856,3005914879,CO -3005914880,3005915135,PA +3005913856,3005915135,CO 3005915136,3005918207,AR 3005918208,3005919231,CO 3005919232,3005923327,AR @@ -55939,11 +57859,7 @@ 3006279168,3006279423,NI 3006279424,3006283519,PA 3006283520,3006283775,NI -3006283776,3006284543,CR -3006284544,3006284799,PA -3006284800,3006285055,CR -3006285056,3006285311,PA -3006285312,3006286335,CR +3006283776,3006286335,CR 3006286336,3006286847,PA 3006286848,3006287615,CR 3006287616,3006287871,PA @@ -55952,7 +57868,9 @@ 3006288384,3006289151,CR 3006289152,3006289407,PA 3006289408,3006289919,CR -3006289920,3006291199,PA +3006289920,3006290175,PA +3006290176,3006290687,CR +3006290688,3006291199,PA 3006291200,3006291967,CR 3006291968,3006296575,PA 3006296576,3006296831,CR @@ -55962,29 +57880,27 @@ 3006309632,3006309887,CR 3006309888,3006310143,PA 3006310144,3006310655,CR -3006310656,3006311167,PA -3006311168,3006311423,CR -3006311424,3006311679,PA -3006311680,3006312447,CR +3006310656,3006310911,PA +3006310912,3006312447,CR 3006312448,3006312703,PA 3006312704,3006313471,CR 3006313472,3006313727,PA -3006313728,3006314495,CR -3006314496,3006315263,PA +3006313728,3006314751,CR +3006314752,3006315263,PA 3006315264,3006315775,CR 3006315776,3006316031,PA 3006316032,3006316287,CR 3006316288,3006320895,PA -3006320896,3006321151,CR -3006321152,3006321663,PA +3006320896,3006321407,CR +3006321408,3006321663,PA 3006321664,3006322175,CR 3006322176,3006322431,PA 3006322432,3006323199,CR 3006323200,3006323455,PA 3006323456,3006323711,CR 3006323712,3006323967,PA -3006323968,3006324479,CR -3006324480,3006328831,PA +3006323968,3006324735,CR +3006324736,3006328831,PA 3006328832,3006330623,NI 3006330624,3006330879,PA 3006330880,3006331903,CR @@ -56037,11 +57953,14 @@ 3007086592,3007090687,PA 3007090688,3007091711,NL 3007091712,3007092223,RU -3007092224,3007092735,DE +3007092224,3007092479,VE +3007092480,3007092735,IR 3007092736,3007094783,AR 3007094784,3007096831,CR 3007096832,3007098879,AR -3007098880,3007100647,HN +3007098880,3007099463,HN +3007099464,3007099471,IN +3007099472,3007100647,HN 3007100648,3007100655,MX 3007100656,3007100887,HN 3007100888,3007100895,PH @@ -56289,11 +58208,54 @@ 3007171872,3007171873,BR 3007171874,3007171875,CL 3007171876,3007171903,BR -3007171904,3007172607,CL +3007171904,3007172351,CL +3007172352,3007172383,FR +3007172384,3007172415,BE +3007172416,3007172607,CL 3007172608,3007172863,US -3007172864,3007175679,BR +3007172864,3007172991,BR +3007172992,3007173023,IS +3007173024,3007173055,NZ +3007173056,3007173375,BR +3007173376,3007173407,NO +3007173408,3007173439,SE +3007173440,3007173631,BR +3007173632,3007173663,NO +3007173664,3007173695,NZ +3007173696,3007174015,BR +3007174016,3007174047,NL +3007174048,3007174079,FR +3007174080,3007174271,BR +3007174272,3007174303,FI +3007174304,3007174335,NL +3007174336,3007174399,BR +3007174400,3007174431,IS +3007174432,3007174463,IT +3007174464,3007175679,BR 3007175680,3007175935,GB -3007175936,3007183359,BR +3007175936,3007175967,NZ +3007175968,3007175999,BE +3007176000,3007176319,BR +3007176320,3007176351,SE +3007176352,3007176383,FR +3007176384,3007176703,BR +3007176704,3007177727,IN +3007177728,3007181183,BR +3007181184,3007181215,IT +3007181216,3007181247,IS +3007181248,3007181567,BR +3007181568,3007181599,NL +3007181600,3007181631,AU +3007181632,3007181823,BR +3007181824,3007181855,BE +3007181856,3007181887,NO +3007181888,3007182591,BR +3007182592,3007182623,SE +3007182624,3007182655,NL +3007182656,3007183231,BR +3007183232,3007183263,NZ +3007183264,3007183295,IT +3007183296,3007183359,BR 3007183360,3007183615,AU 3007183616,3007183871,IE 3007183872,3007184127,JO @@ -56371,10 +58333,11 @@ 3025603104,3025603215,HK 3025603216,3025603327,IN 3025603328,3025603335,GU -3025603336,3025603839,IN +3025603336,3025603583,IN +3025603584,3025603839,SG 3025603840,3025604095,HK -3025604096,3025604607,IN -3025604608,3025606655,SG +3025604096,3025604351,IN +3025604352,3025606655,SG 3025606656,3025606815,IN 3025606816,3025606831,SG 3025606832,3025607167,IN @@ -56389,8 +58352,8 @@ 3025612800,3025612815,IN 3025612816,3025612831,SG 3025612832,3025612895,IN -3025612896,3025613063,SG -3025613064,3025616895,IN +3025612896,3025613067,SG +3025613068,3025616895,IN 3025616896,3025617439,SG 3025617440,3025617447,IN 3025617448,3025617455,SG @@ -56403,8 +58366,8 @@ 3025621248,3025621503,IN 3025621504,3025621759,PH 3025621760,3025623055,IN -3025623056,3025623087,SG -3025623088,3025623295,IN +3025623056,3025623103,SG +3025623104,3025623295,IN 3025623296,3025623551,JP 3025623552,3025623807,SG 3025623808,3025625343,IN @@ -56415,16 +58378,15 @@ 3025625400,3025625407,TH 3025625408,3025625471,SG 3025625472,3025625503,MY -3025625504,3025625527,SG -3025625528,3025625535,IN +3025625504,3025625535,SG 3025625536,3025625599,CA 3025625600,3025625855,SG -3025625856,3025626111,IN +3025625856,3025625887,IN +3025625888,3025625895,SG +3025625896,3025626111,IN 3025626112,3025626367,SG 3025626368,3025629439,IN -3025629440,3025629567,HK -3025629568,3025629695,IN -3025629696,3025629951,HK +3025629440,3025629951,HK 3025629952,3025630023,AU 3025630024,3025630207,IN 3025630208,3025630719,AU @@ -56440,17 +58402,16 @@ 3025632512,3025632767,SG 3025632768,3025633535,IN 3025633536,3025633791,HK -3025633792,3025633807,AU -3025633808,3025633823,IN -3025633824,3025633855,AU -3025633856,3025633919,IN +3025633792,3025633919,AU 3025633920,3025634047,MY 3025634048,3025637151,IN 3025637152,3025637183,MY 3025637184,3025637375,IN 3025637376,3025637631,HK 3025637632,3025637887,MY -3025637888,3025638279,IN +3025637888,3025638015,IN +3025638016,3025638023,HK +3025638024,3025638279,IN 3025638280,3025638287,SG 3025638288,3025638399,IN 3025638400,3025638655,SG @@ -56466,8 +58427,8 @@ 3025639552,3025639679,SG 3025639680,3025639807,HK 3025639808,3025639839,IN -3025639840,3025639871,HK -3025639872,3025640191,IN +3025639840,3025639879,HK +3025639880,3025640191,IN 3025640192,3025640447,JP 3025640448,3025640799,MY 3025640800,3025641727,IN @@ -56490,9 +58451,11 @@ 3025647968,3025648079,IN 3025648080,3025648087,SG 3025648088,3025648091,US -3025648092,3025649151,IN +3025648092,3025648095,SG +3025648096,3025649151,IN 3025649152,3025649663,HK -3025649664,3025666047,IN +3025649664,3025649919,AE +3025649920,3025666047,IN 3025666048,3025928191,CN 3025928192,3025932287,TW 3025932288,3025944575,JP @@ -56511,17 +58474,22 @@ 3025989632,3025993727,KR 3025993728,3026059263,VN 3026059264,3026067455,PH +3026067456,3026068479,IN 3026068480,3026069503,PH 3026069504,3026071551,JP 3026071552,3026073599,HK 3026073600,3026075647,CN -3026075648,3026077951,AF -3026077952,3026078207,US -3026078208,3026080255,AF +3026075648,3026078207,AF +3026078208,3026078463,US +3026078464,3026079487,AF +3026079488,3026079743,US +3026079744,3026080255,AF 3026080256,3026080511,US 3026080512,3026081023,AF 3026081024,3026081279,US -3026081280,3026083839,AF +3026081280,3026082559,AF +3026082560,3026083071,US +3026083072,3026083839,AF 3026083840,3026087935,CN 3026087936,3026089983,AU 3026092032,3026108415,MO @@ -56547,19 +58515,20 @@ 3028533248,3028538111,JP 3028538112,3028538317,US 3028538318,3028538318,JP -3028538319,3028541695,US -3028541696,3028541951,JP -3028541952,3028542463,US -3028542464,3028543999,JP -3028544000,3028545535,US -3028545536,3028545791,JP -3028545792,3028546303,US -3028546304,3028546815,JP -3028546816,3028547583,US -3028547584,3028547839,JP -3028547840,3028548095,US -3028548096,3028548351,JP -3028548352,3028549631,US +3028538319,3028538367,US +3028538368,3028538879,JP +3028538880,3028539391,US +3028539392,3028541695,JP +3028541696,3028542463,US +3028542464,3028543487,JP +3028543488,3028543743,US +3028543744,3028543999,JP +3028544000,3028546559,US +3028546560,3028547583,JP +3028547584,3028548095,US +3028548096,3028548607,JP +3028548608,3028549119,US +3028549120,3028549631,JP 3028549632,3028811775,KR 3028811776,3029336063,CN 3029336064,3029598207,JP @@ -56655,7 +58624,9 @@ 3033710592,3033712639,KR 3033712640,3033714687,SG 3033714688,3033715711,NZ +3033715712,3033716735,CN 3033716736,3033717759,TH +3033717760,3033718783,BD 3033718784,3033726975,CN 3033726976,3033743359,KR 3033743360,3033745407,IN @@ -56689,9 +58660,7 @@ 3034466304,3034472447,JP 3034472448,3034480639,IN 3034480640,3034482687,SG -3034482688,3034483967,AF -3034483968,3034484223,US -3034484224,3034484735,AF +3034482688,3034484735,AF 3034484736,3034488831,TH 3034488832,3034492927,AU 3034492928,3034497023,JP @@ -56724,9 +58693,7 @@ 3035333632,3035334655,HK 3035335680,3035337727,JP 3035337728,3035338751,ID -3035338752,3035339007,SG -3035339008,3035339263,IN -3035339264,3035339775,SG +3035338752,3035339775,SG 3035339776,3035340799,AU 3035340800,3035348991,MN 3035348992,3035357183,AU @@ -56747,10 +58714,9 @@ 3039166464,3039231999,PA 3039232000,3039297535,EC 3039297536,3039363071,PY -3039363072,3039379455,BZ +3039363072,3039379455,US 3039379456,3039395839,GY -3039395840,3039411199,BZ -3039411200,3039412223,US +3039395840,3039412223,US 3039412224,3039412735,CL 3039412736,3039412991,BR 3039412992,3039413247,US @@ -56783,7 +58749,9 @@ 3041132544,3041394687,CO 3041394688,3041656831,CL 3041656832,3041787903,BR -3041787904,3044016127,AR +3041787904,3041886463,AR +3041886464,3041886719,US +3041886720,3044016127,AR 3044016128,3044147199,EC 3044147200,3044155391,GT 3044155392,3044161535,AR @@ -56805,7 +58773,9 @@ 3044454400,3044482559,AR 3044482560,3044482687,CO 3044482688,3044503551,AR -3044503552,3044507647,US +3044503552,3044503807,US +3044503808,3044504319,AR +3044504320,3044507647,US 3044507648,3044540415,AR 3044540416,3045064703,PY 3045064704,3047161855,CO @@ -56828,8 +58798,42 @@ 3048210432,3048275967,PE 3048275968,3048292351,AR 3048292352,3048292607,BZ -3048292608,3048293375,HN -3048293376,3048308735,BZ +3048292608,3048292799,HN +3048292800,3048292807,ES +3048292808,3048293375,HN +3048293376,3048293599,BZ +3048293600,3048293615,ES +3048293616,3048295343,BZ +3048295344,3048295351,CA +3048295352,3048297407,BZ +3048297408,3048297423,CA +3048297424,3048298799,BZ +3048298800,3048298807,US +3048298808,3048299487,BZ +3048299488,3048299503,BR +3048299504,3048301935,BZ +3048301936,3048301951,CA +3048301952,3048302295,BZ +3048302296,3048302303,CA +3048302304,3048303303,BZ +3048303304,3048303311,NL +3048303312,3048304031,BZ +3048304032,3048304047,NL +3048304048,3048305063,BZ +3048305064,3048305071,CR +3048305072,3048305471,BZ +3048305472,3048305487,US +3048305488,3048305983,BZ +3048305984,3048305991,US +3048305992,3048307607,BZ +3048307608,3048307615,CA +3048307616,3048307967,BZ +3048307968,3048307983,CA +3048307984,3048308103,BZ +3048308104,3048308111,CA +3048308112,3048308295,BZ +3048308296,3048308303,CR +3048308304,3048308735,BZ 3048308736,3048325119,BO 3048325120,3048331263,AR 3048331264,3048332287,GY @@ -56924,7 +58928,8 @@ 3050708496,3050708735,BR 3050708736,3050708991,US 3050708992,3050709007,AT -3050709008,3050709247,BR +3050709008,3050709119,BR +3050709120,3050709247,US 3050709248,3050709375,DE 3050709376,3050709503,BR 3050709504,3050709519,TH @@ -56934,8 +58939,8 @@ 3050710032,3050710271,BR 3050710272,3050710527,US 3050710528,3050710543,FR -3050710544,3050710783,BR -3050710784,3050711039,US +3050710544,3050710655,BR +3050710656,3050711039,US 3050711040,3050711055,AU 3050711056,3050711295,BR 3050711296,3050711551,US @@ -56943,8 +58948,8 @@ 3050711568,3050711807,BR 3050711808,3050712063,US 3050712064,3050712079,FR -3050712080,3050712319,BR -3050712320,3050712575,US +3050712080,3050712127,BR +3050712128,3050712575,US 3050712576,3050712591,PL 3050712592,3050712831,BR 3050712832,3050713087,US @@ -56957,13 +58962,13 @@ 3050714368,3050714623,GB 3050714624,3050714879,BR 3050714880,3050715135,ES -3050715136,3050715647,BR -3050715648,3050766335,US +3050715136,3050766335,US 3050766336,3050766351,NO 3050766352,3050766591,BR 3050766592,3050766847,US 3050766848,3050766863,KR -3050766864,3050767359,BR +3050766864,3050767103,BR +3050767104,3050767359,AR 3050767360,3050767375,AT 3050767376,3050767615,BR 3050767616,3050767871,US @@ -56971,8 +58976,8 @@ 3050767888,3050768127,BR 3050768128,3050768383,US 3050768384,3050768399,AT -3050768400,3050768639,BR -3050768640,3050768895,US +3050768400,3050768511,BR +3050768512,3050768895,US 3050768896,3050768911,CZ 3050768912,3050769151,BR 3050769152,3050769407,US @@ -57061,7 +59066,8 @@ 3050801008,3050801023,EC 3050801024,3050801151,US 3050801152,3050801167,EG -3050801168,3050801183,GQ +3050801168,3050801175,GQ +3050801176,3050801183,NZ 3050801184,3050801199,GF 3050801200,3050801215,PF 3050801216,3050801231,GE @@ -57104,23 +59110,40 @@ 3050802512,3050802527,TT 3050802528,3050802543,UY 3050802544,3050802559,VE -3050802560,3050831871,US +3050802560,3050802687,US +3050802688,3050802751,NZ +3050802752,3050802815,NO +3050802816,3050803199,US +3050803200,3050803263,NL +3050803264,3050803327,SE +3050803328,3050803711,US +3050803712,3050803775,IS +3050803776,3050803839,FR +3050803840,3050804223,US +3050804224,3050804287,BE +3050804288,3050804351,NZ +3050804352,3050805247,US +3050805248,3050805311,NL +3050805312,3050805375,FI +3050805376,3050805759,US +3050805760,3050805791,DK +3050805792,3050831871,US 3050831872,3051356159,BR 3051356160,3051372543,CR 3051372544,3051372799,PA 3051372800,3051373055,CR -3051373056,3051373311,PA -3051373312,3051374335,CR -3051374336,3051374591,PA +3051373056,3051374591,PA 3051374592,3051374847,CR -3051374848,3051375615,PA -3051375616,3051376895,CR +3051374848,3051375871,PA +3051375872,3051376895,CR 3051376896,3051377151,PA 3051377152,3051379455,CR 3051379456,3051379711,PA 3051379712,3051380735,CR 3051380736,3051388927,AR -3051388928,3051395071,US +3051388928,3051390719,US +3051390720,3051390975,NL +3051390976,3051395071,US 3051395072,3051395583,NL 3051395584,3051397119,PA 3051397120,3051398143,CO @@ -57410,13 +59433,9 @@ 3082190848,3082289151,JP 3082289152,3087007743,CN 3087007744,3088449535,US -3088449536,3088462847,TH -3088462848,3088463103,US -3088463104,3088474111,TH +3088449536,3088474111,TH 3088474112,3088478207,US -3088478208,3088489471,TH -3088489472,3088489727,US -3088489728,3088506879,TH +3088478208,3088506879,TH 3088506880,3088605183,US 3088605184,3088609279,NL 3088609280,3088629759,US @@ -57429,7 +59448,9 @@ 3088686592,3088687103,NL 3088687104,3088701439,US 3088701440,3088702463,NL -3088702464,3088752639,US +3088702464,3088711167,US +3088711168,3088711423,AU +3088711424,3088752639,US 3088752640,3088752895,NL 3088752896,3088753919,US 3088753920,3088754175,NL @@ -57499,9 +59520,13 @@ 3092559360,3092559615,NL 3092559616,3092567039,US 3092567040,3092568063,NL -3092568064,3092572671,US +3092568064,3092569343,US +3092569344,3092569599,AU +3092569600,3092572671,US 3092572672,3092573183,NL -3092573184,3092578303,US +3092573184,3092573695,US +3092573696,3092573951,AU +3092573952,3092578303,US 3092578304,3092582399,NL 3092582400,3092615167,US 3092615168,3092619263,NL @@ -57531,7 +59556,8 @@ 3092688896,3092692991,NL 3092692992,3092697087,US 3092697088,3092697599,NL -3092697600,3092701183,US +3092697600,3092700927,US +3092700928,3092701183,AU 3092701184,3092703231,NL 3092703232,3092704255,US 3092704256,3092705279,NL @@ -57650,6 +59676,7 @@ 3103859712,3103859967,RO 3103859968,3103860223,PL 3103860224,3103860479,FR +3103860480,3103860735,UA 3103860736,3103860991,BG 3103860992,3103861247,RU 3103861248,3103861503,PL @@ -57660,6 +59687,11 @@ 3103862528,3103862783,FR 3103862784,3103863039,DE 3103863040,3103863295,RU +3103863296,3103863807,UA +3103863808,3103864063,RU +3103864064,3103864319,GB +3103864320,3103864575,DE +3103864832,3103865087,BG 3103916032,3103917055,CH 3103917056,3103918079,IT 3103918080,3103919103,DE @@ -58453,7 +60485,9 @@ 3104750592,3104751615,CZ 3104751616,3104751871,UA 3104751872,3104752127,CA -3104752128,3104752639,UA +3104752128,3104752255,GB +3104752256,3104752383,RU +3104752384,3104752639,UA 3104752640,3104753663,SA 3104753664,3104754687,GR 3104754688,3104755711,MK @@ -58544,7 +60578,9 @@ 3104847872,3104848895,RU 3104848896,3104849919,DE 3104849920,3104850943,RU -3104850944,3104851967,GB +3104850944,3104851199,GB +3104851200,3104851711,JE +3104851712,3104851967,GB 3104851968,3104852991,DE 3104852992,3104854015,AT 3104854016,3104855039,GI @@ -58982,7 +61018,8 @@ 3105299456,3105300479,IT 3105300480,3105301503,RU 3105301504,3105302527,ES -3105302528,3105303551,FR +3105302528,3105302783,GB +3105302784,3105303551,FR 3105303552,3105304575,IE 3105304576,3105305599,GE 3105305600,3105308671,GB @@ -59334,6 +61371,7 @@ 3105662976,3105663999,ES 3105664000,3105665023,DE 3105665024,3105666047,PL +3105666048,3105667071,NL 3105667072,3105668095,DE 3105668096,3105668131,US 3105668132,3105668159,NL @@ -59563,8 +61601,12 @@ 3105896448,3105897471,RU 3105897472,3105898495,UA 3105898496,3105898751,CZ -3105898752,3105900543,RU -3105900544,3105902591,GB +3105898752,3105899263,RU +3105899264,3105899519,CZ +3105899520,3105900543,RU +3105900544,3105901567,GB +3105901568,3105901823,US +3105901824,3105902591,GB 3105902592,3105903615,DE 3105903616,3105904639,RU 3105904640,3105905663,NO @@ -59695,7 +61737,9 @@ 3106021376,3106022399,FR 3106022400,3106023423,IT 3106023424,3106023679,NL -3106023680,3106024319,US +3106023680,3106023807,US +3106023808,3106023935,AE +3106023936,3106024319,US 3106024320,3106024447,DE 3106024448,3106025471,GB 3106025472,3106026495,PL @@ -59748,7 +61792,9 @@ 3106070528,3106071551,UA 3106071552,3106071937,BH 3106071938,3106071938,US -3106071939,3106072575,BH +3106071939,3106072063,BH +3106072064,3106072319,US +3106072320,3106072575,BH 3106072576,3106073599,GB 3106073600,3106074623,PL 3106074624,3106076671,RU @@ -59938,7 +61984,16 @@ 3106263040,3106264063,PT 3106264064,3106265087,ES 3106265088,3106266111,GB -3106266112,3106267135,FR +3106266112,3106266367,FR +3106266368,3106266399,HK +3106266400,3106266431,SG +3106266432,3106266719,FR +3106266720,3106266751,US +3106266752,3106266927,FR +3106266928,3106266943,AU +3106266944,3106266975,FR +3106266976,3106267007,US +3106267008,3106267135,FR 3106267136,3106269183,ES 3106269184,3106270207,IS 3106270208,3106271231,GB @@ -59963,7 +62018,9 @@ 3106291712,3106292735,CH 3106292736,3106293759,NO 3106293760,3106294783,UA -3106294784,3106295807,DE +3106294784,3106295039,DE +3106295040,3106295295,US +3106295296,3106295807,DE 3106295808,3106296831,GB 3106296832,3106297855,RU 3106297856,3106298879,NL @@ -60395,9 +62452,13 @@ 3106716672,3106717695,CZ 3106717696,3106718719,TR 3106718720,3106719743,CH -3106719744,3106720245,DE -3106720246,3106720246,US -3106720247,3106720767,DE +3106719744,3106719999,DE +3106720000,3106720016,US +3106720017,3106720017,DE +3106720018,3106720159,US +3106720160,3106720160,DE +3106720161,3106720255,US +3106720256,3106720767,DE 3106720768,3106722815,AT 3106722816,3106723839,IT 3106723840,3106724863,PL @@ -60423,7 +62484,8 @@ 3106744320,3106745343,SM 3106745344,3106746367,NL 3106746368,3106747391,DK -3106747392,3106748415,BE +3106747392,3106747903,US +3106747904,3106748415,BE 3106748416,3106749439,CZ 3106749440,3106750463,RU 3106750464,3106751487,BG @@ -60615,11 +62677,12 @@ 3106941952,3106943999,FR 3106944000,3106945023,IT 3106945024,3106946047,NL -3106946048,3106947071,GB +3106946048,3106947071,JE 3106947072,3106948095,AE 3106948096,3106949119,NL 3106949120,3106950143,RU -3106950144,3106951167,GB +3106950144,3106950399,IM +3106950400,3106951167,GB 3106951168,3106952191,SE 3106952192,3106954239,ES 3106954240,3106955263,DE @@ -60658,7 +62721,9 @@ 3106992128,3106993151,AM 3106993152,3106994175,DE 3106994176,3106995199,SK -3106995200,3106996223,FR +3106995200,3106995711,FR +3106995712,3106995967,US +3106995968,3106996223,FR 3106996224,3106997247,SI 3106997248,3106998271,NO 3106998272,3106999295,IT @@ -60857,6 +62922,7 @@ 3107204096,3107205119,FR 3107205120,3107206143,BG 3107206144,3107207167,NL +3107207168,3107207423,AT 3107208192,3107209215,NL 3107209216,3107210239,IT 3107210240,3107213311,RU @@ -61381,7 +63447,8 @@ 3107733504,3107734527,BG 3107734528,3107735551,HU 3107735552,3107737599,DE -3107737600,3107738623,NL +3107737600,3107737855,GB +3107737856,3107738623,NL 3107738624,3107738879,DE 3107738880,3107739135,DK 3107739136,3107739391,RO @@ -61677,6 +63744,7 @@ 3108047872,3108050943,RU 3108050944,3108051967,GB 3108051968,3108052991,FR +3108052992,3108054015,GB 3108054016,3108055039,LV 3108055040,3108056063,GB 3108056064,3108057087,IT @@ -61962,6 +64030,7 @@ 3108356096,3108358143,PL 3108358144,3108359167,DE 3108359168,3108360191,NL +3108360192,3108361215,SA 3108361216,3108362239,IE 3108362240,3108363263,LU 3108363264,3108364287,RU @@ -63202,7 +65271,10 @@ 3109669888,3109670911,GB 3109670912,3109671935,DE 3109671936,3109672959,HR -3109672960,3109673983,GB +3109672960,3109673215,GB +3109673216,3109673471,NL +3109673472,3109673727,SG +3109673728,3109673983,GB 3109673984,3109675007,FR 3109675008,3109677055,DE 3109677056,3109678079,BE @@ -63272,7 +65344,8 @@ 3109741568,3109743615,DE 3109743616,3109744639,HU 3109744640,3109745663,TR -3109745664,3109746687,DE +3109745664,3109746431,DE +3109746432,3109746687,US 3109746688,3109747711,AZ 3109747712,3109748735,ES 3109748736,3109749759,MT @@ -63352,14 +65425,16 @@ 3109834752,3109835775,ES 3109835776,3109836799,AM 3109836800,3109837823,SY -3109837824,3109838847,NL +3109837824,3109838847,ES 3109838848,3109839871,PT 3109839872,3109840895,AT 3109840896,3109841919,IT 3109841920,3109842943,ES 3109842944,3109843967,FI 3109843968,3109844991,HU -3109844992,3109846015,DE +3109844992,3109845503,DE +3109845504,3109845759,GB +3109845760,3109846015,DE 3109846016,3109847039,GB 3109847040,3109848063,IE 3109848064,3109849087,BG @@ -63474,7 +65549,9 @@ 3109953285,3109953285,IT 3109953286,3109953288,GB 3109953289,3109953289,US -3109953290,3109953319,GB +3109953290,3109953291,GB +3109953292,3109953292,HK +3109953293,3109953319,GB 3109953320,3109953320,MX 3109953321,3109953359,GB 3109953360,3109953360,SG @@ -63717,7 +65794,8 @@ 3110195200,3110196223,HU 3110196224,3110196479,LT 3110196480,3110196735,GB -3110196736,3110197247,NL +3110196736,3110196991,SE +3110196992,3110197247,NO 3110197248,3110199295,IT 3110199296,3110200319,DE 3110200320,3110201343,NL @@ -63746,11 +65824,13 @@ 3110223872,3110224895,FR 3110224896,3110225919,AT 3110225920,3110226943,CH -3110226944,3110231039,RU +3110226944,3110227967,KZ +3110227968,3110231039,RU 3110231040,3110232063,DE 3110232064,3110233087,DK 3110233088,3110234111,NL -3110234112,3110235135,EU +3110234112,3110234879,EU +3110234880,3110235135,CY 3110235136,3110236159,GB 3110236160,3110237183,IR 3110237184,3110238207,FR @@ -63825,8 +65905,8 @@ 3110303744,3110304767,DK 3110304768,3110305791,KZ 3110305792,3110306815,NL -3110306816,3110307071,NZ -3110307072,3110307839,BY +3110306816,3110307327,NZ +3110307328,3110307839,BY 3110307840,3110308863,IE 3110308864,3110309887,RS 3110309888,3110310911,DE @@ -63869,7 +65949,7 @@ 3110350848,3110351871,DE 3110351872,3110353919,RU 3110353920,3110354943,GB -3110354944,3110355967,RU +3110354944,3110355967,KZ 3110355968,3110356991,GB 3110356992,3110358015,ES 3110358016,3110359039,GE @@ -63902,7 +65982,10 @@ 3110389760,3110390783,LB 3110390784,3110391807,NO 3110391808,3110392831,AE -3110392832,3110393855,GB +3110392832,3110393087,GB +3110393088,3110393343,IE +3110393344,3110393599,GB +3110393600,3110393855,IE 3110393856,3110394879,LB 3110394880,3110395903,DE 3110395904,3110396927,KZ @@ -63929,13 +66012,17 @@ 3110418432,3110419455,SE 3110419456,3110420479,NL 3110420480,3110421503,FR -3110421504,3110422527,RU +3110421504,3110422015,RU +3110422016,3110422271,US +3110422272,3110422527,RU 3110422528,3110423551,PL 3110423552,3110425599,GB 3110425600,3110426623,IE 3110426624,3110427647,DK 3110427648,3110428671,DE -3110428672,3110429695,NL +3110428672,3110428927,NL +3110428928,3110429183,US +3110429184,3110429695,NL 3110429696,3110430719,DE 3110430720,3110431743,RO 3110431744,3110432767,NL @@ -63998,7 +66085,9 @@ 3110495232,3110496255,SE 3110496256,3110497279,DE 3110497280,3110498303,NO -3110498304,3110501375,RU +3110498304,3110499839,RU +3110499840,3110500351,KZ +3110500352,3110501375,RU 3110501376,3110502399,RS 3110502400,3110503423,RU 3110503424,3110504447,GB @@ -64116,13 +66205,15 @@ 3110629376,3110630399,UA 3110630400,3110631423,IT 3110631424,3110632447,GB -3110632448,3110633471,BG +3110632448,3110633471,IT 3110633472,3110636543,NL 3110636544,3110637567,DE 3110637568,3110638591,GR 3110638592,3110639615,RU 3110639616,3110640639,ES -3110640640,3110641663,IQ +3110640640,3110640895,IQ +3110640896,3110641151,US +3110641152,3110641663,IQ 3110641664,3110642687,DE 3110642688,3110643711,ES 3110643712,3110644735,RO @@ -64166,16 +66257,16 @@ 3110686720,3110687743,BE 3110687744,3110688767,RO 3110688768,3110689791,RU -3110689792,3110690815,BG +3110689792,3110690815,IT 3110690816,3110691839,GB 3110691840,3110692863,RU -3110692864,3110693887,HU +3110692864,3110693887,IT 3110693888,3110694911,UA 3110694912,3110695935,DE 3110695936,3110696959,RU 3110696960,3110697983,IR 3110697984,3110699007,GB -3110699008,3110700031,HU +3110699008,3110700031,IT 3110700032,3110701055,CH 3110701056,3110702079,FR 3110702080,3110703103,PL @@ -64195,9 +66286,10 @@ 3110716416,3110717439,AZ 3110717440,3110718463,BE 3110718464,3110719487,NL -3110719488,3110720511,IT -3110720512,3110721535,CZ -3110721536,3110723583,NL +3110719488,3110721535,IT +3110721536,3110723087,NL +3110723088,3110723103,DE +3110723104,3110723583,NL 3110723584,3110724607,RU 3110724608,3110725631,TJ 3110725632,3110726655,ES @@ -64416,7 +66508,7 @@ 3110963200,3110965247,GB 3110965248,3110966271,NL 3110966272,3110967295,IL -3110967296,3110968319,PT +3110967296,3110968319,GB 3110968320,3110969343,DE 3110969344,3110970367,NL 3110970368,3110971391,CH @@ -64554,7 +66646,9 @@ 3111114752,3111115775,RU 3111115776,3111116799,DE 3111116800,3111117823,GB -3111117824,3111118847,ES +3111117824,3111117824,ES +3111117825,3111118079,FR +3111118080,3111118847,ES 3111118848,3111119871,TR 3111119872,3111120895,FR 3111120896,3111121919,SE @@ -64616,7 +66710,7 @@ 3111182336,3111183359,RU 3111183360,3111184383,FR 3111184384,3111185407,IQ -3111185408,3111186431,RU +3111185408,3111186431,UA 3111186432,3111189503,GB 3111189504,3111190527,DE 3111190528,3111191551,GB @@ -64728,7 +66822,8 @@ 3111308288,3111309311,GB 3111309312,3111310335,CH 3111310336,3111313407,DE -3111313408,3111314431,AT +3111313408,3111313663,GB +3111313664,3111314431,AT 3111314432,3111315455,GB 3111315456,3111316479,IT 3111316480,3111317503,NL @@ -64763,6 +66858,515 @@ 3111346176,3111347199,RU 3111347200,3111348223,LB 3111348224,3111349247,DE +3111349248,3111350271,GB +3111350272,3111351295,PL +3111351296,3111353343,GB +3111353344,3111354111,DE +3111354112,3111355391,GB +3111355392,3111356415,IT +3111356416,3111357439,GE +3111357440,3111358463,RU +3111358464,3111359487,NL +3111359488,3111360511,IR +3111360512,3111361535,PL +3111361536,3111363583,RU +3111363584,3111365631,IR +3111365632,3111367679,DE +3111367680,3111368703,CZ +3111368704,3111369727,AT +3111369728,3111370751,FR +3111370752,3111371775,DE +3111371776,3111373823,GB +3111373824,3111374847,GR +3111374848,3111375871,TR +3111375872,3111376895,IL +3111376896,3111377919,BE +3111377920,3111378943,RO +3111378944,3111379967,IL +3111379968,3111380991,GB +3111380992,3111382015,ES +3111382016,3111383039,DE +3111383040,3111383295,FI +3111383296,3111383551,FR +3111383552,3111383807,CH +3111383808,3111384063,FI +3111384064,3111387135,NO +3111387136,3111388159,IT +3111388160,3111389183,NO +3111389184,3111390207,DK +3111390208,3111391231,NL +3111391232,3111392255,DE +3111392256,3111394303,IR +3111394304,3111395327,AT +3111395328,3111396351,FI +3111396352,3111397375,DE +3111397376,3111399423,NL +3111399424,3111400447,CZ +3111400448,3111402495,GB +3111402496,3111403519,BE +3111403520,3111404543,IE +3111404544,3111405567,GB +3111405568,3111406591,BE +3111406592,3111407615,CZ +3111407616,3111408639,NL +3111408640,3111409663,IT +3111409664,3111410687,FR +3111410688,3111411711,BG +3111411712,3111412735,AT +3111412736,3111413759,IL +3111413760,3111414783,FR +3111414784,3111416831,GB +3111416832,3111417855,LB +3111417856,3111418879,SE +3111418880,3111419903,NL +3111419904,3111421951,FR +3111421952,3111422975,PL +3111422976,3111423999,KZ +3111424000,3111425023,NL +3111425024,3111426047,DK +3111426048,3111427071,TR +3111427072,3111428095,DE +3111428096,3111429119,IR +3111429120,3111430143,NL +3111430144,3111431167,IE +3111431168,3111432191,GB +3111432192,3111433215,FR +3111433216,3111434239,ES +3111434240,3111436287,DK +3111436288,3111437311,KZ +3111437312,3111439359,RU +3111439360,3111440383,BG +3111440384,3111441407,DE +3111441408,3111442431,GB +3111442432,3111443455,NL +3111443456,3111444479,DE +3111444480,3111445503,SA +3111445504,3111446527,RU +3111446528,3111447551,DE +3111447552,3111447791,GB +3111447792,3111447807,AT +3111447808,3111448575,GB +3111448576,3111449599,NO +3111449600,3111451647,DE +3111451648,3111452671,PL +3111452672,3111453695,MY +3111453696,3111454719,NL +3111454720,3111455743,IQ +3111455744,3111456255,CH +3111456256,3111456767,DE +3111456768,3111457791,FR +3111457792,3111458303,GB +3111458304,3111458815,FR +3111458816,3111459839,NL +3111459840,3111460863,RU +3111460864,3111461887,GR +3111461888,3111462911,FR +3111462912,3111463935,AT +3111463936,3111464959,ES +3111464960,3111465983,IR +3111465984,3111467007,DE +3111467008,3111469055,FR +3111469056,3111470079,EE +3111470080,3111471103,AE +3111471104,3111471359,NL +3111471360,3111471615,RO +3111471616,3111473151,NL +3111473152,3111474175,BG +3111474176,3111475199,PL +3111475200,3111476223,NL +3111476224,3111477247,FR +3111477248,3111478271,IR +3111478272,3111479295,UA +3111479296,3111480319,SE +3111480320,3111481343,NL +3111481344,3111482367,GB +3111482368,3111483391,RU +3111483392,3111484415,TR +3111484416,3111485439,NL +3111485440,3111486463,SA +3111486464,3111487487,CY +3111487488,3111488511,IR +3111488512,3111490559,RU +3111490560,3111491583,KG +3111491584,3111493631,RU +3111493632,3111494655,DE +3111494656,3111495679,LI +3111495680,3111496703,CH +3111496704,3111498751,ES +3111498752,3111499775,DE +3111499776,3111500799,IT +3111500800,3111501823,BG +3111501824,3111502847,NO +3111502848,3111504895,GB +3111504896,3111505919,IR +3111505920,3111506943,NL +3111506944,3111507967,DE +3111507968,3111508991,IT +3111508992,3111510015,FI +3111510016,3111511039,LB +3111511040,3111512063,DE +3111512064,3111513087,RU +3111513088,3111514111,GB +3111514112,3111515135,UA +3111515136,3111516159,RU +3111516160,3111519231,DE +3111519232,3111520255,RO +3111520256,3111521279,IQ +3111521280,3111522303,IR +3111522304,3111523327,FR +3111523328,3111524351,DE +3111524352,3111525375,LB +3111525376,3111526399,GB +3111526400,3111527423,IS +3111527424,3111528447,SE +3111528448,3111529471,DK +3111529472,3111530495,IQ +3111530496,3111531519,AZ +3111531520,3111533567,ES +3111533568,3111534591,NL +3111534592,3111535615,RU +3111535616,3111536639,FR +3111536640,3111537663,IT +3111537664,3111538687,LV +3111538688,3111539711,CZ +3111539712,3111540735,GE +3111540736,3111541759,NL +3111541760,3111542783,FR +3111542784,3111543807,IQ +3111543808,3111544831,DE +3111544832,3111546879,US +3111546880,3111547903,PT +3111547904,3111548927,FR +3111548928,3111549951,SA +3111549952,3111550975,NL +3111550976,3111551999,IQ +3111552000,3111553023,NL +3111553024,3111554047,IR +3111554048,3111555071,TR +3111555072,3111556095,DE +3111556096,3111557119,AL +3111557120,3111558143,IR +3111558144,3111559167,ES +3111559168,3111560191,EE +3111560192,3111561215,RU +3111561216,3111562239,RS +3111562240,3111563263,DE +3111564288,3111565311,DK +3111565312,3111566335,IT +3111566336,3111567359,ES +3111567360,3111568383,TR +3111568384,3111569407,DE +3111569408,3111570431,RO +3111570432,3111571455,IE +3111571456,3111572479,DE +3111572480,3111573503,PL +3111573504,3111574527,LU +3111574528,3111575551,LB +3111575552,3111576575,FI +3111576576,3111577599,IE +3111577600,3111578623,FI +3111578624,3111579647,US +3111579648,3111580671,BG +3111580672,3111581695,AT +3111581696,3111582719,DK +3111582720,3111583743,IL +3111583744,3111584767,RU +3111584768,3111585791,IR +3111585792,3111586815,DE +3111586816,3111587839,PL +3111587840,3111588863,DE +3111588864,3111589887,GB +3111589888,3111590911,FR +3111590912,3111591935,NL +3111591936,3111592959,DE +3111592960,3111593983,CH +3111593984,3111595007,US +3111595008,3111596031,AT +3111596032,3111597055,ES +3111597056,3111598079,GB +3111598080,3111599103,RU +3111599104,3111600127,GB +3111600128,3111601151,RU +3111601152,3111602175,GB +3111602176,3111603199,DE +3111603200,3111604223,UA +3111604224,3111605247,TR +3111605248,3111606271,CH +3111606272,3111607295,RS +3111607296,3111608319,DE +3111608320,3111609343,CZ +3111609344,3111610367,SE +3111610368,3111611391,CH +3111611392,3111612415,GB +3111612416,3111613439,ES +3111613440,3111614463,AT +3111614464,3111615487,PL +3111615488,3111616511,IS +3111616512,3111617535,FI +3111617536,3111618559,GB +3111618560,3111619583,DE +3111619584,3111621631,GB +3111621632,3111622655,PL +3111622656,3111623679,GB +3111623680,3111624703,BE +3111624704,3111625727,AT +3111625728,3111626751,IR +3111626752,3111627775,FR +3111627776,3111628799,GB +3111628800,3111629823,CH +3111629824,3111630847,HU +3111630848,3111631871,PL +3111631872,3111633919,NL +3111633920,3111636991,FR +3111636992,3111638015,PL +3111638016,3111639039,UA +3111639040,3111640063,CZ +3111640064,3111641087,NL +3111641088,3111643135,IT +3111643136,3111644159,GB +3111644160,3111645183,ES +3111645184,3111646207,IR +3111646208,3111647231,IT +3111647232,3111648255,ES +3111648256,3111651327,GB +3111651328,3111652351,RO +3111652352,3111653375,GB +3111653376,3111654399,RO +3111654400,3111655423,GB +3111655424,3111656447,NO +3111656448,3111657471,LB +3111657472,3111658495,GB +3111658496,3111659519,AL +3111659520,3111660543,IT +3111660544,3111661567,ES +3111661568,3111662591,FI +3111662592,3111663615,GB +3111663616,3111664639,RU +3111664640,3111665663,DE +3111665664,3111666687,PL +3111666688,3111667711,CZ +3111667712,3111668735,GB +3111668736,3111669759,KZ +3111669760,3111670783,IT +3111670784,3111671807,ES +3111671808,3111672831,RU +3111672832,3111673855,MK +3111673856,3111674879,GI +3111674880,3111675903,NO +3111675904,3111676927,ES +3111676928,3111677951,AE +3111677952,3111678975,ES +3111678976,3111679999,GB +3111680000,3111681023,IR +3111681024,3111682047,IL +3111682048,3111683071,GB +3111683072,3111684095,UA +3111684096,3111685119,IR +3111685120,3111686143,CH +3111686144,3111687167,RO +3111687168,3111688191,DE +3111688192,3111689215,GB +3111689216,3111690239,DE +3111690240,3111691263,IR +3111691264,3111692287,BE +3111692288,3111693311,IR +3111693312,3111694335,GB +3111694336,3111695359,FR +3111695360,3111696383,RU +3111696384,3111697407,CY +3111697408,3111698431,RU +3111698432,3111701503,IR +3111701504,3111702527,GB +3111702528,3111713791,IR +3111713792,3111714815,RU +3111714816,3111715839,TJ +3111715840,3111716863,GB +3111716864,3111717887,NL +3111717888,3111718911,AD +3111718912,3111719935,GB +3111719936,3111720959,CY +3111720960,3111721983,GB +3111721984,3111723007,SE +3111723008,3111725055,IT +3111725056,3111726079,AT +3111726080,3111727103,SE +3111727104,3111728127,HR +3111728128,3111729151,AT +3111729152,3111730175,IR +3111730176,3111731199,DK +3111731200,3111732223,SK +3111732224,3111733247,DE +3111733248,3111734271,RU +3111734272,3111735295,GB +3111735296,3111736319,KZ +3111736320,3111737343,RU +3111737344,3111738367,GB +3111738368,3111739391,NL +3111739392,3111740415,DE +3111740416,3111741439,IT +3111741440,3111743487,UA +3111743488,3111744511,NL +3111744512,3111745535,UA +3111745536,3111746559,MD +3111746560,3111747583,TR +3111747584,3111748607,IR +3111748608,3111749631,GB +3111749632,3111750655,DE +3111750656,3111751679,FR +3111751680,3111752703,GB +3111752704,3111753727,IT +3111753728,3111754751,BG +3111754752,3111755775,IT +3111755776,3111756799,NO +3111756800,3111757823,NL +3111757824,3111758335,NZ +3111758336,3111758847,HR +3111758848,3111759871,DK +3111759872,3111760895,IS +3111760896,3111761919,NL +3111761920,3111762943,SY +3111762944,3111763967,NL +3111763968,3111766015,DE +3111766016,3111767039,HR +3111767040,3111768063,SE +3111768064,3111769087,IT +3111769088,3111770111,DE +3111770112,3111771135,FI +3111771136,3111772159,GB +3111772160,3111773183,NL +3111773184,3111774207,IQ +3111774208,3111775231,ES +3111775232,3111776255,AM +3111776256,3111778303,RU +3111778304,3111779327,GB +3111779328,3111780351,SA +3111780352,3111781375,GB +3111781376,3111782399,DE +3111782400,3111783423,IL +3111783424,3111784447,TR +3111784448,3111785471,GB +3111785472,3111786495,NL +3111786496,3111787519,IT +3111787520,3111788543,RU +3111788544,3111789567,KZ +3111789568,3111790591,GB +3111790592,3111791615,CZ +3111791616,3111792639,IT +3111792640,3111793663,CH +3111793664,3111794687,SK +3111794688,3111795711,GB +3111795712,3111796735,PL +3111796736,3111798783,GB +3111798784,3111799807,SE +3111799808,3111800831,CH +3111800832,3111801855,IR +3111801856,3111802879,DE +3111802880,3111803903,PL +3111803904,3111804927,LB +3111804928,3111805951,PL +3111805952,3111806975,FR +3111806976,3111807999,PL +3111808000,3111809023,FI +3111809024,3111810047,NO +3111810048,3111811071,NL +3111811072,3111812095,SA +3111812096,3111814143,GB +3111814144,3111815167,IE +3111815168,3111816191,PL +3111816192,3111817215,LT +3111817216,3111819263,PL +3111819264,3111821311,NL +3111821312,3111822335,FR +3111822336,3111824383,NL +3111824384,3111825407,PL +3111825408,3111826431,RU +3111826432,3111827455,DE +3111827456,3111828479,ES +3111828480,3111829503,DK +3111829504,3111830527,NL +3111830528,3111831551,NO +3111831552,3111832575,TR +3111832576,3111835647,GB +3111835648,3111836671,CZ +3111836672,3111837695,RO +3111837696,3111838719,IT +3111838720,3111839743,AL +3111839744,3111840767,GB +3111840768,3111841791,CH +3111841792,3111842815,DE +3111842816,3111843839,CH +3111843840,3111844863,BE +3111844864,3111845887,IQ +3111845888,3111846911,TR +3111846912,3111847935,GB +3111847936,3111848959,IT +3111848960,3111849983,RU +3111849984,3111851007,KZ +3111851008,3111852031,SA +3111852032,3111853055,FR +3111853056,3111854079,GP +3111854080,3111855103,NO +3111855104,3111856127,IT +3111856128,3111857151,KZ +3111857152,3111858175,RU +3111858176,3111859199,PL +3111859200,3111860223,EE +3111860224,3111861247,ES +3111861248,3111862271,NL +3111862272,3111864319,IR +3111864320,3111865343,FR +3111865344,3111866367,RU +3111866368,3111867391,GB +3111867392,3111868415,FR +3111868416,3111869439,DE +3111869440,3111870463,NO +3111870464,3111871487,GB +3111871488,3111873535,TR +3111873536,3111874559,AT +3111874560,3111875583,GB +3111875584,3111876607,FI +3111876608,3111877631,ES +3111877632,3111878655,PL +3111878656,3111879679,CZ +3111879680,3111880703,FI +3111880704,3111881727,ES +3111881728,3111882751,RO +3111882752,3111886847,GB +3111886848,3111887871,PL +3111887872,3111888895,RU +3111888896,3111889919,IE +3111889920,3111890943,RU +3111890944,3111891967,AT +3111891968,3111892991,FR +3111892992,3111894015,BY +3111894016,3111895039,BG +3111895040,3111896063,RU +3111896064,3111897087,IS +3111897088,3111899135,ES +3111899136,3111900159,IR +3111900160,3111901183,IT +3111901184,3111902207,LU +3111902208,3111903231,RO +3111903232,3111904255,DE +3111904256,3111905279,SE +3111905280,3111906303,IT +3111906304,3111908351,GB +3111908352,3111909375,RO +3111909376,3111912447,GB +3111912448,3111913471,ES +3111913472,3111914495,UA +3111914496,3111915519,RU +3111915520,3111916543,DE +3111916544,3111919615,ES +3111919616,3111920639,RO +3111920640,3111921663,ES +3111921664,3111922687,RU +3111922688,3111923711,IT +3111923712,3111924735,DE +3111924736,3111925759,NO +3111925760,3111927807,GB +3111927808,3111930879,DE +3111930880,3111931903,NO 3113710318,3113710318,CA 3120562176,3120594943,CO 3120594944,3120599039,AR @@ -64864,9 +67468,7 @@ 3123445760,3123576831,TT 3123576832,3123707903,EC 3123707904,3124232191,UY -3124232192,3124765183,AR -3124765184,3124765439,MX -3124765440,3124783103,AR +3124232192,3124783103,AR 3124783104,3124785151,GT 3124785152,3124788223,CL 3124788224,3124789247,PE @@ -64904,14 +67506,20 @@ 3126857856,3126857983,US 3126857984,3126858495,AR 3126858496,3126858623,US -3126858624,3126861311,AR +3126858624,3126860415,AR +3126860416,3126860543,US +3126860544,3126860671,AR +3126860672,3126860799,US +3126860800,3126861311,AR 3126861312,3126861439,US 3126861440,3126862591,AR 3126862592,3126862719,US 3126862720,3126863999,AR 3126864000,3126864127,US 3126864128,3126870015,AR -3126870016,3126874111,VE +3126870016,3126873343,VE +3126873344,3126873599,PA +3126873600,3126874111,VE 3126874112,3126878207,CR 3126878208,3126882303,PA 3126882304,3126886399,US @@ -64935,7 +67543,8 @@ 3130284032,3130286079,DO 3130286080,3130290175,PA 3130290176,3130302463,AR -3130302464,3130312703,PA +3130302464,3130302975,CY +3130302976,3130312703,PA 3130312704,3130314751,AR 3130314752,3130315775,CL 3130315776,3130316799,CR @@ -64978,12 +67587,18 @@ 3132948480,3133014015,AR 3133014016,3133046783,HT 3133046784,3133067263,AR -3133067264,3133073407,PA -3133073408,3133074431,CW +3133067264,3133071359,PA +3133071360,3133071871,CY +3133071872,3133073407,PA +3133073408,3133073663,CW +3133073664,3133073919,AW +3133073920,3133074431,CW 3133074432,3133075455,CL 3133075456,3133079551,CW 3133079552,3133145087,AR -3133145088,3136985087,BR +3133145088,3133311999,BR +3133312000,3133313023,MX +3133313024,3136985087,BR 3136985088,3136986111,AR 3136986112,3140614143,BR 3140614144,3140616191,CR @@ -65029,7 +67644,9 @@ 3156926464,3156928511,NL 3156928512,3156930559,LU 3156930560,3156933631,US -3156933632,3156934655,SG +3156933632,3156933887,SG +3156933888,3156934143,CN +3156934144,3156934655,SG 3156934656,3157000191,RU 3157000192,3157008383,MK 3157008384,3157016575,RU @@ -65097,9 +67714,9 @@ 3158417408,3158419455,NL 3158419456,3158421503,FR 3158421504,3158423551,GB -3158423552,3158425087,MT -3158425088,3158425343,NL -3158425344,3158425599,MT +3158423552,3158425159,MT +3158425160,3158425167,IE +3158425168,3158425599,MT 3158425600,3158427647,NL 3158427648,3158429695,DE 3158429696,3158431743,RU @@ -65122,9 +67739,9 @@ 3158616064,3158630399,RU 3158630400,3158638591,PL 3158638592,3158704127,LT -3158704128,3158713343,KW -3158713344,3158713599,US -3158713600,3158835199,KW +3158704128,3158719487,KW +3158719488,3158719743,US +3158719744,3158835199,KW 3158835200,3158851583,IQ 3158851584,3158859775,RU 3158859776,3158859903,NL @@ -65312,18 +67929,39 @@ 3161571328,3161587711,UZ 3161587712,3161604095,RU 3161604096,3161612287,PL -3161612288,3161616383,EU +3161612288,3161613055,EU +3161613056,3161613311,BR +3161613312,3161616127,EU +3161616128,3161616383,ES 3161616384,3161618431,GB 3161618432,3161620479,IQ 3161620480,3161636863,DK -3161636864,3161653247,RU +3161636864,3161641215,RU +3161641216,3161641983,UA +3161641984,3161642239,RU +3161642240,3161645055,UA +3161645056,3161653247,RU 3161653248,3161669631,LU -3161669632,3161679615,FR -3161679616,3161679871,MQ -3161679872,3161686015,FR +3161669632,3161670143,FR +3161670144,3161670399,RE +3161670400,3161671423,FR +3161671424,3161671679,RE +3161671680,3161671935,FR +3161671936,3161672191,RE +3161672192,3161678335,FR +3161678336,3161678591,MQ +3161678592,3161679871,FR +3161679872,3161680127,GP +3161680128,3161680383,FR +3161680384,3161680895,GP +3161680896,3161681151,FR +3161681152,3161681407,GP +3161681408,3161686015,FR 3161686016,3161702399,UA 3161702400,3161718783,AM -3161718784,3161735167,PL +3161718784,3161727999,PL +3161728000,3161728255,A1 +3161728256,3161735167,PL 3161735168,3161751551,CZ 3161751552,3161767935,RU 3161767936,3161784319,BH @@ -65425,7 +68063,9 @@ 3162570752,3162603519,HR 3162603520,3162636287,GE 3162636288,3162669055,FR -3162669056,3162681343,RU +3162669056,3162676223,RU +3162676224,3162677247,KZ +3162677248,3162681343,RU 3162681344,3162682367,UA 3162682368,3162682879,MD 3162682880,3162683135,IE @@ -65480,8 +68120,7 @@ 3164667904,3164733439,PS 3164733440,3164798975,RU 3164798976,3164864511,UA -3164864512,3164864703,GB -3164864704,3164864735,ZA +3164864512,3164864735,ZA 3164864736,3164864767,IE 3164864768,3164897279,GB 3164897280,3164899327,IT @@ -65531,7 +68170,9 @@ 3164958896,3164958911,PT 3164958912,3164959551,FR 3164959552,3164959583,DE -3164959584,3164960263,FR +3164959584,3164960247,FR +3164960248,3164960255,DE +3164960256,3164960263,FR 3164960264,3164960267,ES 3164960268,3164960439,FR 3164960440,3164960443,DE @@ -65591,7 +68232,8 @@ 3164976160,3164976295,FR 3164976296,3164976303,IT 3164976304,3164995583,FR -3164995584,3165061119,NL +3164995584,3165052927,NL +3165052928,3165061119,SG 3165061120,3165126655,SK 3165126656,3165192191,RU 3165192192,3165257727,GE @@ -65633,7 +68275,9 @@ 3166568448,3166601215,UA 3166601216,3166609407,RU 3166609408,3166633983,UA -3166633984,3166642175,RU +3166633984,3166639103,RU +3166639104,3166639359,UA +3166639360,3166642175,RU 3166642176,3166646271,UA 3166646272,3166650367,CZ 3166650368,3166654463,UA @@ -65659,7 +68303,9 @@ 3166699520,3166961663,DE 3166961664,3167223807,SI 3167223808,3167748095,NL -3167748096,3167760383,RO +3167748096,3167758335,RO +3167758336,3167758463,NL +3167758464,3167760383,RO 3167760384,3167762431,GB 3167762432,3167764479,MD 3167764480,3167772671,IR @@ -65694,7 +68340,19 @@ 3167846400,3167866879,IR 3167866880,3167870975,RO 3167870976,3167879167,MD -3167879168,3167895551,DE +3167879168,3167880703,DE +3167880704,3167880959,US +3167880960,3167882751,DE +3167882752,3167883007,US +3167883008,3167883775,DE +3167883776,3167884031,US +3167884032,3167884543,DE +3167884544,3167885311,US +3167885312,3167885823,DE +3167885824,3167886079,US +3167886080,3167888895,DE +3167888896,3167889151,US +3167889152,3167895551,DE 3167895552,3167899647,IR 3167899648,3167902719,RO 3167902720,3167902975,BE @@ -65792,7 +68450,7 @@ 3168135680,3168136191,CZ 3168136192,3168137471,RO 3168137472,3168137727,MD -3168137728,3168137983,EU +3168137728,3168137983,RO 3168137984,3168138239,NL 3168138240,3168139263,MD 3168139264,3168141311,GB @@ -65919,11 +68577,14 @@ 3169905664,3169906687,ES 3169906688,3169913855,RO 3169913856,3169914111,GB -3169914112,3169921023,RO +3169914112,3169920767,RO +3169920768,3169921023,BZ 3169921024,3169923071,GB 3169923072,3169927423,RO 3169927424,3169927679,NL -3169927680,3169935359,RO +3169927680,3169928191,RO +3169928192,3169928447,SE +3169928448,3169935359,RO 3169935360,3169937407,ES 3169937408,3169951743,RO 3169951744,3169955839,SE @@ -65950,9 +68611,11 @@ 3170295808,3170303999,RU 3170304000,3170312191,SY 3170312192,3170320383,RU -3170320384,3170327551,JO -3170327552,3170327807,US -3170327808,3170328575,JO +3170320384,3170321423,JO +3170321424,3170321663,US +3170321664,3170327593,JO +3170327594,3170327594,US +3170327595,3170328575,JO 3170328576,3170336767,UA 3170336768,3170338815,RO 3170338816,3170344959,ES @@ -65998,8 +68661,8 @@ 3187824640,3187826687,CL 3187826688,3187834879,AR 3187834880,3187843071,CW -3187843072,3187845119,AW -3187845120,3187849215,CW +3187843072,3187846143,AW +3187846144,3187849215,CW 3187849216,3187849471,CO 3187849472,3187851263,CW 3187851264,3187855359,PY @@ -66017,7 +68680,9 @@ 3187933342,3187933342,HN 3187933343,3187935519,GT 3187935520,3187935527,HN -3187935528,3187935607,GT +3187935528,3187935543,GT +3187935544,3187935551,HN +3187935552,3187935607,GT 3187935608,3187935615,HN 3187935616,3187936047,GT 3187936048,3187936063,HN @@ -66035,7 +68700,11 @@ 3187940964,3187940967,HN 3187940968,3187941207,GT 3187941208,3187941215,HN -3187941216,3187943055,GT +3187941216,3187941647,GT +3187941648,3187941655,HN +3187941656,3187942563,GT +3187942564,3187942567,HN +3187942568,3187943055,GT 3187943056,3187943063,HN 3187943064,3187943127,GT 3187943128,3187943135,HN @@ -66056,18 +68725,18 @@ 3187945976,3187946111,GT 3187946112,3187946239,HN 3187946240,3187946495,GT -3187946496,3187946511,HN -3187946512,3187946639,GT -3187946640,3187946647,HN -3187946648,3187947983,GT +3187946496,3187946751,HN +3187946752,3187947983,GT 3187947984,3187947987,HN 3187947988,3187948031,GT -3187948032,3187948159,HN -3187948160,3187948479,GT +3187948032,3187948287,HN +3187948288,3187948479,GT 3187948480,3187948543,HN -3187948544,3187948799,US +3187948544,3187948799,GT 3187948800,3187948927,HN -3187948928,3187949567,GT +3187948928,3187949311,GT +3187949312,3187949439,HN +3187949440,3187949567,GT 3187949568,3187950126,BQ 3187950127,3187950127,CW 3187950128,3187953663,BQ @@ -66098,7 +68767,9 @@ 3188125696,3188137175,AR 3188137176,3188137183,DE 3188137184,3188146175,AR -3188146176,3188170751,CO +3188146176,3188152171,CO +3188152172,3188152175,PE +3188152176,3188170751,CO 3188170752,3188174847,CR 3188174848,3188178943,BR 3188178944,3188187135,CR @@ -66108,7 +68779,9 @@ 3188211712,3188228095,CL 3188228096,3188236287,PE 3188236288,3188237311,PA -3188237312,3188239359,VE +3188237312,3188238847,VE +3188238848,3188239103,US +3188239104,3188239359,VE 3188239360,3188240383,PE 3188240384,3188241407,CO 3188241408,3188242431,EC @@ -66120,9 +68793,10 @@ 3188269056,3188269439,MX 3188269440,3188269567,CO 3188269568,3188269823,MX -3188269824,3188270079,VE +3188269824,3188270079,PA 3188270080,3188270335,MX -3188270336,3188270847,VE +3188270336,3188270719,PA +3188270720,3188270847,MX 3188270848,3188271103,BR 3188271104,3188273151,MX 3188273152,3188275199,PA @@ -66142,7 +68816,9 @@ 3188473856,3188482047,PE 3188482048,3188490239,AR 3188490240,3188498431,CO -3188498432,3188512127,AR +3188498432,3188511103,AR +3188511104,3188511231,US +3188511232,3188512127,AR 3188512128,3188512255,US 3188512256,3188513407,AR 3188513408,3188513535,US @@ -66157,7 +68833,8 @@ 3188518400,3188523007,AR 3188523008,3188539391,CO 3188539392,3188543487,CL -3188543488,3188545535,PA +3188543488,3188543999,CY +3188544000,3188545535,PA 3188545536,3188547583,AR 3188547584,3188551679,CO 3188551680,3188552703,AR @@ -66238,7 +68915,9 @@ 3191611392,3191619583,VE 3191619584,3191619903,CL 3191619904,3191619935,VE -3191619936,3191635967,CL +3191619936,3191624191,CL +3191624192,3191624447,CO +3191624448,3191635967,CL 3191635968,3191637759,CO 3191637760,3191638015,AR 3191638016,3191647743,CO @@ -66249,7 +68928,9 @@ 3191650304,3191650815,US 3191650816,3191651071,CO 3191651072,3191651839,US -3191651840,3191670015,CO +3191651840,3191668991,CO +3191668992,3191669247,PY +3191669248,3191670015,CO 3191670016,3191670271,AR 3191670272,3191670783,CO 3191670784,3191672831,CL @@ -66276,9 +68957,7 @@ 3191696128,3191696383,CO 3191696384,3191701503,US 3191701504,3191702527,CL -3191702528,3191703039,US -3191703040,3191703551,CO -3191703552,3191704575,US +3191702528,3191704575,US 3191704576,3191704831,CO 3191704832,3191705343,US 3191705344,3191705599,CO @@ -66289,18 +68968,24 @@ 3191722496,3191725055,CL 3191725056,3191725311,AR 3191725312,3191725567,CL -3191725568,3191726079,CO +3191725568,3191725823,CO +3191725824,3191726079,CL 3191726080,3191726335,AR 3191726336,3191726591,CL 3191726592,3191726847,AR 3191726848,3191727103,CL 3191727104,3191727359,AR -3191727360,3191729919,CO +3191727360,3191727871,CO +3191727872,3191728127,CL +3191728128,3191729407,CO +3191729408,3191729663,CL +3191729664,3191729919,CO 3191729920,3191730431,CL 3191730432,3191730687,AR 3191730688,3191730943,CL 3191730944,3191731199,AR -3191731200,3191731711,CO +3191731200,3191731455,CL +3191731456,3191731711,CO 3191731712,3191731967,AR 3191731968,3191732223,CO 3191732224,3191732479,CL @@ -66323,11 +69008,15 @@ 3193438208,3193569279,CW 3193569280,3193573087,CO 3193573088,3193573095,US -3193573096,3193579263,CO +3193573096,3193575311,CO +3193575312,3193575327,PE +3193575328,3193579263,CO 3193579264,3193579519,EC 3193579520,3193582591,CO 3193582592,3193583103,EC -3193583104,3193592319,CO +3193583104,3193589503,CO +3193589504,3193589759,EC +3193589760,3193592319,CO 3193592320,3193592575,EC 3193592576,3193595391,CO 3193595392,3193595647,EC @@ -66343,9 +69032,11 @@ 3193617152,3193617407,EC 3193617408,3193621759,CO 3193621760,3193622015,EC -3193622016,3193622527,CO -3193622528,3193623551,EC -3193623552,3193625599,CO +3193622016,3193622271,CO +3193622272,3193623551,EC +3193623552,3193624063,CO +3193624064,3193624575,EC +3193624576,3193625599,CO 3193625600,3193625855,EC 3193625856,3193626111,CO 3193626112,3193626623,US @@ -66362,37 +69053,27 @@ 3193724928,3193729023,AR 3193729024,3193733119,CU 3193733120,3193735167,AR -3193735168,3193735679,US -3193735680,3193736191,AR -3193736192,3193736447,US -3193736448,3193736703,AR -3193736704,3193736959,US +3193735168,3193735935,US +3193735936,3193736191,AR +3193736192,3193736959,US 3193736960,3193737215,AR 3193737216,3193739007,US 3193739008,3193739263,AR -3193739264,3193740799,US -3193740800,3193741311,AR -3193741312,3193742335,US +3193739264,3193742335,US 3193742336,3193742591,AR 3193742592,3193742847,US 3193742848,3193743231,AR 3193743232,3193743359,US 3193743360,3193743743,AR -3193743744,3193743871,US -3193743872,3193743999,AR -3193744000,3193744127,US +3193743744,3193744127,US 3193744128,3193744639,AR -3193744640,3193744895,US -3193744896,3193745151,AR -3193745152,3193745407,US +3193744640,3193745407,US 3193745408,3193746431,AR 3193746432,3193746687,US 3193746688,3193746751,AR 3193746752,3193746815,US 3193746816,3193746879,AR -3193746880,3193747455,US -3193747456,3193747583,AR -3193747584,3193748479,US +3193746880,3193748479,US 3193748480,3193748863,AR 3193748864,3193750271,US 3193750272,3193750527,AR @@ -66405,13 +69086,13 @@ 3193753088,3193753343,US 3193753344,3193753471,AR 3193753472,3193753599,US -3193753600,3193754239,AR -3193754240,3193754367,US +3193753600,3193754111,AR +3193754112,3193754367,US 3193754368,3193754623,AR 3193754624,3193754751,US -3193754752,3193755135,AR -3193755136,3193755263,US -3193755264,3193755647,AR +3193754752,3193755007,AR +3193755008,3193755519,US +3193755520,3193755647,AR 3193755648,3193755775,US 3193755776,3193756415,AR 3193756416,3193756543,US @@ -66428,7 +69109,9 @@ 3193778176,3193782271,AR 3193782272,3193798655,TT 3193798656,3193806847,CO -3193806848,3193810943,CR +3193806848,3193808895,CR +3193808896,3193809663,US +3193809664,3193810943,CR 3193810944,3193815039,PY 3193815040,3193823231,AR 3193823232,3193827327,CL @@ -66457,12 +69140,16 @@ 3194077184,3194085375,CO 3194085376,3194093567,VE 3194093568,3194126335,SR -3194126336,3194127103,GT +3194126336,3194126911,GT +3194126912,3194126975,PE +3194126976,3194127103,GT 3194127104,3194127359,BR 3194127360,3194128383,PE 3194128384,3194129407,NI 3194129408,3194129663,AR -3194129664,3194130047,BR +3194129664,3194129671,BR +3194129672,3194129919,AR +3194129920,3194130047,BR 3194130048,3194130175,CO 3194130176,3194130431,AR 3194130432,3194134527,BR @@ -66500,7 +69187,9 @@ 3194428416,3194437631,VE 3194437632,3194441727,BO 3194441728,3194445823,AR -3194445824,3194454015,CO +3194445824,3194449175,CO +3194449176,3194449183,PE +3194449184,3194454015,CO 3194454016,3194458111,AR 3194458112,3194462207,CL 3194462208,3194466303,BR @@ -66598,8 +69287,11 @@ 3194806272,3194814463,AR 3194814464,3194818559,PA 3194818560,3194830847,AR -3194830848,3194831871,BR -3194831872,3194839039,PA +3194830848,3194832895,BR +3194832896,3194833919,PA +3194833920,3194835967,BR +3194835968,3194838015,PA +3194838016,3194839039,MX 3194839040,3194863615,CO 3194863616,3194871807,HN 3194871808,3194879999,BO @@ -66615,7 +69307,11 @@ 3194953216,3194953343,NI 3194953344,3194953727,GT 3194953728,3194959871,AR -3194959872,3194961919,US +3194959872,3194960383,US +3194960384,3194960895,AR +3194960896,3194961151,US +3194961152,3194961407,AR +3194961408,3194961919,US 3194961920,3194970111,EC 3194970112,3194974207,PA 3194974208,3194976255,AR @@ -66685,7 +69381,9 @@ 3195203584,3195205631,VE 3195205632,3195206655,PE 3195206656,3195207679,CL -3195207680,3195211775,GT +3195207680,3195209687,GT +3195209688,3195209695,PR +3195209696,3195211775,GT 3195211776,3195214988,BZ 3195214989,3195214989,RU 3195214990,3195215871,BZ @@ -66743,8 +69441,8 @@ 3195740416,3195740927,PA 3195740928,3195741055,US 3195741056,3195741087,HN -3195741088,3195741951,US -3195741952,3195744255,PA +3195741088,3195741695,US +3195741696,3195744255,PA 3195744256,3195748351,EC 3195748352,3195752447,CL 3195752448,3195763711,AR @@ -66753,23 +69451,35 @@ 3195768832,3195772927,AR 3195772928,3195781119,VE 3195781120,3195785215,PA -3195785216,3195786991,HN +3195785216,3195786191,HN +3195786192,3195786199,US +3195786200,3195786991,HN 3195786992,3195787007,CA -3195787008,3195789311,HN +3195787008,3195787127,HN +3195787128,3195787135,DE +3195787136,3195787215,HN +3195787216,3195787231,US +3195787232,3195788159,HN +3195788160,3195788167,CA +3195788168,3195789311,HN 3195789312,3195793407,PA 3195793408,3195801599,AR 3195801600,3195803647,HN 3195803648,3195804671,CL 3195804672,3195805695,VE 3195805696,3195807743,NI -3195807744,3195808639,BZ -3195808640,3195808767,CO -3195808768,3195809151,BZ +3195807744,3195808383,BZ +3195808384,3195808511,US +3195808512,3195808639,BZ +3195808640,3195808895,US +3195808896,3195809151,BZ 3195809152,3195809279,US 3195809280,3195809791,BZ 3195809792,3195811839,PE 3195811840,3195813887,AR -3195813888,3195822079,DO +3195813888,3195814655,DO +3195814656,3195814911,GP +3195814912,3195822079,DO 3195822080,3195830271,CO 3195830272,3195838463,AR 3195838464,3195840511,HN @@ -66787,7 +69497,9 @@ 3196190720,3196207103,HN 3196207104,3196223487,CO 3196223488,3196305407,EC -3196305408,3196321791,CO +3196305408,3196316183,CO +3196316184,3196316191,CW +3196316192,3196321791,CO 3196321792,3196583935,UY 3196583936,3196690687,AR 3196690688,3196690943,UY @@ -66834,7 +69546,9 @@ 3199565824,3199582207,NI 3199582208,3199598591,HN 3199598592,3199631359,CO -3199631360,3199729663,AR +3199631360,3199719167,AR +3199719168,3199719423,DE +3199719424,3199729663,AR 3199729664,3199762431,NI 3199762432,3199778815,CO 3199778816,3199779839,AR @@ -66844,8 +69558,8 @@ 3199782912,3199784959,AR 3199784960,3199785983,EC 3199785984,3199795199,AR -3199795200,3199815679,CW -3199815680,3199817727,SX +3199795200,3199811583,CW +3199811584,3199817727,SX 3199817728,3199819775,CW 3199819776,3199820799,CR 3199820800,3199822847,AR @@ -66885,7 +69599,8 @@ 3201562624,3201563647,CL 3201563648,3201564287,PA 3201564288,3201564415,GB -3201564416,3201564671,PA +3201564416,3201564543,PA +3201564544,3201564671,GB 3201564672,3201630207,NI 3201630208,3201695743,TT 3201695744,3201761279,EC @@ -66896,17 +69611,7 @@ 3201859584,3201863679,CO 3201863680,3201865727,CL 3201865728,3201867775,CO -3201867776,3201869823,PE -3201869824,3201869855,AR -3201869856,3201869871,PE -3201869872,3201869919,AR -3201869920,3201869935,PE -3201869936,3201871743,AR -3201871744,3201871807,PE -3201871808,3201871811,AR -3201871812,3201871815,PE -3201871816,3201871871,AR -3201871872,3201875967,PE +3201867776,3201875967,PE 3201875968,3201880063,CO 3201880064,3201884159,EC 3201884160,3201894399,VE @@ -66914,7 +69619,9 @@ 3201925120,3201957887,CL 3201957888,3202088959,PA 3202088960,3202220031,AR -3202220032,3202351103,PE +3202220032,3202280447,PE +3202280448,3202280575,SE +3202280576,3202351103,PE 3202351104,3202875391,AR 3202875392,3203399679,PE 3203399680,3203465215,CO @@ -66947,8 +69654,8 @@ 3203561472,3203562495,SV 3203562496,3203563775,CO 3203563776,3203564287,PA -3203564288,3203564799,CO -3203564800,3203565055,DO +3203564288,3203564543,CO +3203564544,3203565055,DO 3203565056,3203566591,CO 3203566592,3203566847,PA 3203566848,3203568639,CO @@ -66990,11 +69697,14 @@ 3210743568,3210743583,US 3210743584,3210744063,CL 3210744064,3210744079,TR -3210744080,3210744319,CL -3210744320,3210744575,US +3210744080,3210744191,CL +3210744192,3210744575,US 3210744576,3210744591,BE -3210744592,3210744831,BR -3210744832,3210745087,CL +3210744592,3210744703,BR +3210744704,3210744831,US +3210744832,3210744863,NZ +3210744864,3210744895,IS +3210744896,3210745087,CL 3210745088,3210745343,US 3210745344,3210745359,RU 3210745360,3210745375,US @@ -67003,18 +69713,18 @@ 3210745856,3210745871,IT 3210745872,3210746367,BR 3210746368,3210746383,SE -3210746384,3210746623,CL +3210746384,3210746623,BR 3210746624,3210746879,US 3210746880,3210746895,CH 3210746896,3210747135,CL 3210747136,3210747903,US 3210747904,3210748159,BR 3210748160,3210748175,JP -3210748176,3210748415,BR -3210748416,3210748927,US +3210748176,3210748287,BR +3210748288,3210748927,US 3210748928,3210749439,CL 3210749440,3210752255,US -3210752256,3210752511,CL +3210752256,3210752511,SG 3210752512,3210755839,US 3210755840,3210755855,MY 3210755856,3210755871,US @@ -67040,7 +69750,7 @@ 3210766848,3210767103,US 3210767104,3210767359,CL 3210767360,3210768127,US -3210768128,3210768383,CL +3210768128,3210768383,MY 3210768384,3210768639,NL 3210768640,3210769151,CL 3210769152,3210769407,NL @@ -67051,12 +69761,13 @@ 3210770944,3210771199,CL 3210771200,3210771215,TH 3210771216,3210771711,CL -3210771712,3210771967,US -3210771968,3210772991,CL +3210771712,3210772479,US +3210772480,3210772991,CL 3210772992,3210773247,US 3210773248,3210773503,BR 3210773504,3210773519,PL -3210773520,3210774015,CL +3210773520,3210773759,BR +3210773760,3210774015,CL 3210774016,3210774271,US 3210774272,3210774287,NO 3210774288,3210774783,BR @@ -67115,11 +69826,13 @@ 3210793472,3210793727,US 3210793728,3210793983,CL 3210793984,3210794751,US -3210794752,3210796287,CL +3210794752,3210795007,CL +3210795008,3210796031,US +3210796032,3210796287,CL 3210796288,3210797055,US 3210797056,3210797311,CL -3210797312,3210798079,US -3210798080,3210798847,CL +3210797312,3210798591,US +3210798592,3210798847,CL 3210798848,3210799103,ES 3210799104,3210799359,US 3210799360,3210799615,CL @@ -67128,7 +69841,9 @@ 3210800896,3210802431,US 3210802432,3210802687,CL 3210802688,3210802943,US -3210802944,3210803071,CL +3210802944,3210803039,CL +3210803040,3210803055,AU +3210803056,3210803071,CL 3210803072,3210803087,US 3210803088,3210803199,CL 3210803200,3210803201,US @@ -67154,7 +69869,9 @@ 3210831872,3210832895,DO 3210832896,3210835967,AR 3210835968,3210838015,PY -3210838016,3210870783,AR +3210838016,3210868735,AR +3210868736,3210869759,US +3210869760,3210870783,AR 3210870784,3210903551,CO 3210903552,3210919935,PE 3210919936,3210920959,GT @@ -67169,7 +69886,9 @@ 3211071744,3211071999,DE 3211072000,3211072027,US 3211072028,3211072057,BR -3211072058,3211072511,US +3211072058,3211072287,US +3211072288,3211072319,NZ +3211072320,3211072511,US 3211072512,3211073023,NL 3211073024,3211073279,GB 3211073280,3211073535,FR @@ -67187,8 +69906,7 @@ 3211076608,3211079679,US 3211079680,3211079935,GB 3211079936,3211080191,NG -3211080192,3211080447,CL -3211080448,3211080703,US +3211080192,3211080703,US 3211080704,3211080959,GB 3211080960,3211081215,CL 3211081216,3211081727,CH @@ -67200,8 +69918,8 @@ 3211083776,3211083791,RU 3211083792,3211083839,CL 3211083840,3211083855,GB -3211083856,3211083871,DE -3211083872,3211084031,CL +3211083856,3211083903,DE +3211083904,3211084031,CL 3211084032,3211084287,DE 3211084288,3211084303,NL 3211084304,3211084351,DE @@ -67235,10 +69953,7 @@ 3211086336,3211086351,FR 3211086352,3211086367,DE 3211086368,3211086463,CL -3211086464,3211086591,DE -3211086592,3211086607,CL -3211086608,3211086623,DE -3211086624,3211086847,CL +3211086464,3211086847,DE 3211086848,3211086863,PL 3211086864,3211086879,DE 3211086880,3211087119,CL @@ -67250,9 +69965,7 @@ 3211087888,3211087903,DE 3211087904,3211087999,CL 3211088000,3211088127,US -3211088128,3211088143,CL -3211088144,3211088159,DE -3211088160,3211088383,CL +3211088128,3211088383,DE 3211088384,3211088399,BE 3211088400,3211088415,DE 3211088416,3211088655,CL @@ -67272,76 +69985,47 @@ 3211090944,3211090959,TR 3211090960,3211091071,DE 3211091072,3211091199,US -3211091200,3211091215,CL -3211091216,3211091231,DE -3211091232,3211091455,CL +3211091200,3211091455,DE 3211091456,3211091471,FI 3211091472,3211091487,DE 3211091488,3211091727,CL 3211091728,3211091743,DE 3211091744,3211091967,CL 3211091968,3211091983,RU -3211091984,3211091999,DE -3211092000,3211092239,CL -3211092240,3211092255,DE -3211092256,3211092479,CL +3211091984,3211092479,DE 3211092480,3211092495,BE -3211092496,3211092511,DE -3211092512,3211092607,CL +3211092496,3211092607,DE 3211092608,3211092735,US -3211092736,3211092751,CL -3211092752,3211092767,DE -3211092768,3211092991,CL +3211092736,3211092991,DE 3211092992,3211093007,SK -3211093008,3211093023,DE -3211093024,3211093263,CL -3211093264,3211093279,DE -3211093280,3211093503,CL +3211093008,3211093503,DE 3211093504,3211093519,HR -3211093520,3211093535,DE -3211093536,3211093775,CL -3211093776,3211093791,DE -3211093792,3211094015,CL +3211093520,3211094015,DE 3211094016,3211094031,CZ -3211094032,3211094047,DE -3211094048,3211094143,CL +3211094032,3211094143,DE 3211094144,3211094271,US -3211094272,3211094287,CL -3211094288,3211094303,DE -3211094304,3211094527,CL +3211094272,3211094527,DE 3211094528,3211094543,HR 3211094544,3211095039,DE 3211095040,3211095055,ES -3211095056,3211095071,DE -3211095072,3211095311,CL -3211095312,3211095327,DE -3211095328,3211095551,CL +3211095056,3211095551,DE 3211095552,3211095567,GB -3211095568,3211095583,DE -3211095584,3211095679,CL +3211095568,3211095679,DE 3211095680,3211095807,US 3211095808,3211096063,DE 3211096064,3211096079,GB -3211096080,3211096095,DE -3211096096,3211096335,CL -3211096336,3211096351,DE -3211096352,3211096575,CL -3211096576,3211096831,DE -3211096832,3211096847,CL -3211096848,3211096863,DE -3211096864,3211097087,CL -3211097088,3211097103,DE +3211096080,3211097103,DE 3211097104,3211097151,GB 3211097152,3211097215,CL 3211097216,3211097343,GB 3211097344,3211097359,CL 3211097360,3211097375,DE 3211097376,3211097599,CL -3211097600,3211097855,US +3211097600,3211097855,RU 3211097856,3211097871,CL 3211097872,3211097887,DE 3211097888,3211098111,CL -3211098112,3211098367,US +3211098112,3211098367,RU 3211098368,3211098383,CL 3211098384,3211098399,DE 3211098400,3211098623,CL @@ -67357,7 +70041,7 @@ 3211099920,3211099935,DE 3211099936,3211100159,CL 3211100160,3211101951,US -3211101952,3211102207,AR +3211101952,3211102207,SG 3211102208,3211104767,AU 3211104768,3211105791,US 3211105792,3211106303,ES @@ -67491,7 +70175,9 @@ 3220163584,3220164607,BR 3220164608,3220168703,IE 3220168704,3220172799,US -3220172800,3221225471,BR +3220172800,3221196100,BR +3221196101,3221196101,US +3221196102,3221225471,BR 3221225480,3221225727,US 3221226240,3221226495,US 3221226496,3221227519,KY @@ -67504,7 +70190,9 @@ 3221258240,3221291007,CA 3221291008,3221334269,US 3221334270,3221334270,DZ -3221334271,3221469175,US +3221334271,3221415935,US +3221415936,3221416191,RU +3221416192,3221469175,US 3221469176,3221469183,CA 3221469184,3221560319,US 3221560320,3221561087,GB @@ -67541,7 +70229,9 @@ 3221618176,3221618431,NL 3221618432,3221618687,US 3221618688,3221618943,GB -3221618944,3221647103,US +3221618944,3221621247,US +3221621248,3221621503,GB +3221621504,3221647103,US 3221647104,3221647359,FR 3221647360,3221656831,US 3221656832,3221657087,AU @@ -67683,16 +70373,18 @@ 3222989312,3222989567,NL 3222989568,3222989823,CA 3222989824,3222990079,PT -3222990080,3222990335,NL -3222990336,3222990591,AT +3222990080,3222990591,AT 3222990592,3222990847,PT 3222990848,3223077119,US 3223077120,3223077375,EU 3223077376,3223091199,US 3223091200,3223092223,AU -3223092224,3223201791,US +3223092224,3223092479,GB +3223092480,3223201791,US 3223201792,3223202815,PR -3223202816,3223214079,US +3223202816,3223204863,US +3223204864,3223205119,CA +3223205120,3223214079,US 3223214080,3223214591,CA 3223214592,3223216383,US 3223216384,3223217151,CA @@ -67927,7 +70619,9 @@ 3223867648,3223867903,CA 3223867904,3223868415,US 3223868416,3223869439,BM -3223869440,3223871487,US +3223869440,3223869695,NO +3223869696,3223869951,DK +3223869952,3223871487,US 3223871488,3223873535,CA 3223873536,3223881727,US 3223881728,3223882751,CA @@ -68125,7 +70819,9 @@ 3224725760,3224739071,US 3224739072,3224739327,FI 3224739328,3224772351,US -3224772352,3224777983,DE +3224772352,3224776447,DE +3224776448,3224776703,GB +3224776704,3224777983,DE 3224777984,3224778239,US 3224779776,3224785151,DE 3224785152,3224791039,US @@ -68290,9 +70986,7 @@ 3225452544,3225456639,CA 3225456640,3225459711,US 3225459712,3225459967,CA -3225459968,3225460479,US -3225460480,3225460735,CA -3225460736,3225460991,US +3225459968,3225460991,US 3225460992,3225462015,CA 3225462016,3225468927,US 3225468928,3225470463,CA @@ -68511,9 +71205,7 @@ 3225873920,3225874943,US 3225874944,3225875199,GB 3225875200,3225878527,US -3225878528,3225880319,SE -3225880320,3225880575,US -3225880576,3225881343,SE +3225878528,3225881343,SE 3225881344,3225881599,IT 3225881600,3225882367,SE 3225882368,3225882623,DE @@ -68787,7 +71479,15 @@ 3226695680,3226695935,US 3226695936,3226696191,CA 3226696192,3226696703,AU -3226696704,3226705151,US +3226696704,3226697727,US +3226697728,3226697983,CA +3226697984,3226698495,US +3226698496,3226698751,CA +3226698752,3226700287,US +3226700288,3226700799,CA +3226700800,3226701055,US +3226701056,3226701567,CA +3226701568,3226705151,US 3226705152,3226705407,AU 3226705408,3226705919,US 3226705920,3226706175,FR @@ -69306,7 +72006,7 @@ 3227852032,3227853311,US 3227853312,3227853567,GB 3227853568,3227860991,US -3227863552,3227863807,US +3227863296,3227863807,US 3227863808,3227864063,NL 3227864064,3227865343,US 3227865344,3227867647,NL @@ -69367,7 +72067,8 @@ 3227955712,3227964927,US 3227964928,3227965183,NL 3227965184,3227967487,US -3227967488,3227967999,NL +3227967488,3227967743,FR +3227967744,3227967999,NL 3227968000,3227968255,US 3227968256,3227968767,GB 3227968768,3227969023,RU @@ -69565,8 +72266,9 @@ 3228363264,3228363519,CH 3228363520,3228364287,US 3228364288,3228364543,NL -3228364800,3228368895,US -3228368896,3228380415,DE +3228364544,3228368895,US +3228368896,3228379135,DE +3228379648,3228380415,DE 3228380416,3228380671,US 3228380672,3228380927,DE 3228381184,3228387839,DE @@ -69580,12 +72282,13 @@ 3228395776,3228399615,DE 3228399616,3228399871,US 3228399872,3228400383,DE -3228400640,3228404735,DE +3228400640,3228403711,DE +3228403968,3228404223,DE 3228404736,3228404863,FR 3228404864,3228404895,EU 3228404896,3228405503,FR 3228405504,3228405759,DE -3228405760,3228406015,IN +3228405760,3228406015,FR 3228406016,3228406271,US 3228406272,3228406527,IN 3228406528,3228407039,FR @@ -69801,7 +72504,7 @@ 3229412608,3229414911,DE 3229414912,3229415167,US 3229415168,3229415679,NL -3229415680,3229415935,CA +3229415680,3229415935,US 3229415936,3229483007,DE 3229483008,3229483263,US 3229483264,3229499647,FI @@ -69824,7 +72527,8 @@ 3229814272,3229815807,US 3229815808,3229816063,NL 3229816064,3229817087,US -3229817088,3229817599,NL +3229817088,3229817343,AU +3229817344,3229817599,NL 3229817600,3229818623,AU 3229818624,3229818879,US 3229818880,3229820927,JM @@ -69848,7 +72552,9 @@ 3229844992,3229845247,BL 3229845248,3229845503,US 3229845504,3229846527,CA -3229847296,3229864703,US +3229847296,3229849599,US +3229849600,3229849855,AU +3229849856,3229864703,US 3229864704,3229864959,AP 3229864960,3229870335,US 3229870592,3229870847,CA @@ -70637,8 +73343,17 @@ 3231514880,3231515647,NO 3231515648,3231516671,US 3231516672,3231519231,SE -3231519232,3231526911,US -3231526912,3231528959,A2 +3231519232,3231526935,US +3231526936,3231526943,CA +3231526944,3231527119,US +3231527120,3231527127,CA +3231527128,3231527679,US +3231527680,3231527967,CA +3231527968,3231528191,US +3231528192,3231528447,IN +3231528448,3231528471,US +3231528472,3231528487,CA +3231528488,3231528959,US 3231528960,3231528975,CA 3231528976,3231528983,US 3231528984,3231528991,CA @@ -70689,9 +73404,7 @@ 3231588864,3231589119,GB 3231589120,3231591679,US 3231591680,3231591935,AU -3231591936,3231593983,US -3231593984,3231594239,GB -3231594240,3231596031,US +3231591936,3231596031,US 3231596032,3231596543,PR 3231596544,3231634943,US 3231634944,3231635455,CA @@ -70741,7 +73454,7 @@ 3231716608,3231716863,TR 3231716864,3231717119,LU 3231717120,3231717375,NO -3231717632,3231718143,US +3231717376,3231718143,US 3231718144,3231718399,IT 3231718400,3231718655,US 3231718656,3231718911,AU @@ -70813,8 +73526,8 @@ 3231775488,3231775743,PT 3231775744,3231775999,NL 3231776000,3231776511,US -3231776512,3231777023,CA -3231777024,3231793151,US +3231776512,3231776767,CA +3231776768,3231793151,US 3231793152,3231793663,NL 3231793664,3231800319,US 3231800320,3231801343,CN @@ -70876,7 +73589,9 @@ 3231903744,3231905791,RU 3231905792,3231906047,PL 3231906048,3231907839,RU -3231907840,3231912959,US +3231907840,3231911423,US +3231911424,3231911935,AP +3231911936,3231912959,US 3231912960,3231913215,AP 3231913216,3231916031,US 3231916032,3231948799,FI @@ -70966,7 +73681,8 @@ 3232311808,3232407039,US 3232407040,3232407551,SG 3232407552,3232432383,US -3232432384,3232433663,EU +3232432384,3232433407,EU +3232433408,3232433663,IT 3232433664,3232440319,US 3232440320,3232448511,CA 3232448512,3232461311,US @@ -71080,6 +73796,7 @@ 3233568000,3233568767,JP 3233568768,3233569023,CA 3233569024,3233569535,AU +3233569536,3233569791,US 3233569792,3233570047,JP 3233570048,3233570815,US 3233570816,3233571071,GB @@ -71120,7 +73837,8 @@ 3233590528,3233590783,PR 3233590784,3233591295,AU 3233591296,3233593599,US -3233593600,3233594111,AU +3233593600,3233593855,NZ +3233593856,3233594111,AU 3233594112,3233594367,RU 3233594368,3233594623,US 3233594624,3233594879,RU @@ -71162,8 +73880,7 @@ 3233630720,3233630975,US 3233630976,3233631231,MU 3233631232,3233631487,NL -3233631488,3233631743,US -3233632000,3233635839,US +3233631488,3233635839,US 3233635840,3233636095,AU 3233636096,3233642239,US 3233642240,3233642495,GB @@ -71298,10 +74015,12 @@ 3233803264,3233808383,US 3233808384,3233873919,TW 3233873920,3233874175,US -3233874176,3233874431,AU -3233874432,3233903743,US +3233874176,3233874687,AU +3233874688,3233903615,US +3233903616,3233903743,GB 3233903744,3233903807,EU -3233903808,3233907711,US +3233903808,3233903871,GB +3233903872,3233907711,US 3233907712,3233907967,AP 3233907968,3233914879,US 3233914880,3233915135,AP @@ -71420,8 +74139,8 @@ 3234230208,3234232319,US 3234232320,3234232575,EG 3234232576,3234238975,US -3234238976,3234239231,MY -3234239232,3234240255,US +3234238976,3234239487,MY +3234239488,3234240255,US 3234240256,3234240511,EU 3234240512,3234267135,US 3234267136,3234267391,CA @@ -71447,7 +74166,7 @@ 3234538752,3234539007,TC 3234539520,3234549759,US 3234549760,3234550015,RU -3234553856,3234554367,US +3234553856,3234554623,US 3234554624,3234554879,AU 3234554880,3234556415,US 3234556416,3234556927,CA @@ -71498,7 +74217,7 @@ 3234747904,3234748159,NL 3234748160,3234749695,US 3234749696,3234750207,CA -3234750464,3234751999,US +3234750208,3234751999,US 3234752000,3234752255,AU 3234752256,3234753535,US 3234753536,3234753791,AU @@ -71529,7 +74248,7 @@ 3234803712,3234803967,PR 3234803968,3234806783,US 3234806784,3234807295,CA -3234807552,3234807807,US +3234807296,3234807807,US 3234807808,3234808063,AU 3234808064,3234809087,EC 3234809088,3234810879,US @@ -71620,7 +74339,9 @@ 3235856384,3235872767,BR 3235872768,3235876607,US 3235876608,3235876863,AP -3235876864,3235906303,US +3235876864,3235877375,US +3235877376,3235877631,AU +3235877632,3235906303,US 3235906304,3235906559,CA 3235906560,3235908863,US 3235908864,3235909119,CA @@ -71684,7 +74405,9 @@ 3235968512,3235968767,CA 3235968768,3235970559,US 3235970560,3235970815,CA -3235970816,3236044799,US +3235970816,3235971071,US +3235971072,3235971327,CA +3235971328,3236044799,US 3236044800,3236052991,CA 3236052992,3236069375,US 3236069376,3236102143,CA @@ -71853,9 +74576,7 @@ 3237038080,3237038335,CA 3237038336,3237043967,US 3237043968,3237044223,CH -3237044224,3237046015,US -3237046016,3237046271,RO -3237046272,3237047039,US +3237044224,3237047039,US 3237047040,3237047295,FR 3237047296,3237050111,US 3237050112,3237050367,GB @@ -71869,7 +74590,7 @@ 3237155840,3237156863,AU 3237156864,3237182463,US 3237182464,3237183487,NL -3237183488,3237205247,US +3237183488,3237205503,US 3237205504,3237206015,CA 3237206016,3237216255,US 3237216256,3237281791,JP @@ -71939,9 +74660,9 @@ 3237478400,3237511167,LK 3237511168,3237548031,US 3237548032,3237552127,KR -3237552128,3237553154,US -3237553155,3237553155,GB -3237553156,3237553922,US +3237552128,3237553151,US +3237553152,3237553407,GB +3237553408,3237553922,US 3237553923,3237553923,EU 3237553924,3237554431,US 3237554432,3237554434,SG @@ -72042,7 +74763,8 @@ 3237961216,3237961471,SV 3237961472,3237961727,HT 3237961728,3238002687,US -3238002688,3238010879,NL +3238002688,3238008831,NL +3238008832,3238010879,RO 3238010880,3238017023,CH 3238017024,3238018303,DK 3238018304,3238018559,UA @@ -72053,7 +74775,8 @@ 3238037504,3238039039,LV 3238039040,3238039551,UA 3238039552,3238039807,PL -3238039808,3238042623,RU +3238039808,3238040063,RU +3238040576,3238042623,RU 3238042624,3238042879,IR 3238042880,3238043135,IT 3238043136,3238043647,GB @@ -72359,7 +75082,6 @@ 3239161344,3239161599,PL 3239161600,3239161855,HU 3239162368,3239162623,DE -3239162624,3239162879,BE 3239163904,3239164159,PL 3239164160,3239164671,DE 3239164672,3239164927,GB @@ -72537,7 +75259,6 @@ 3239541248,3239541503,UA 3239541504,3239541759,FR 3239541760,3239542015,GB -3239542272,3239542527,RU 3239543808,3239544831,DE 3239544832,3239545087,GB 3239545088,3239545343,SI @@ -72794,7 +75515,7 @@ 3239882752,3239883007,GB 3239883008,3239883263,UA 3239883264,3239883519,EU -3239883520,3239883775,RU +3239883520,3239883775,CZ 3239883776,3239884031,DE 3239884032,3239884287,RU 3239884544,3239884799,FR @@ -72831,9 +75552,7 @@ 3239901696,3239901951,BG 3239901952,3239902207,DE 3239902720,3239902975,EE -3239903232,3239904255,DE -3239904512,3239904767,GB -3239905536,3239905791,DE +3239903232,3239907327,DE 3239907328,3239907583,UA 3239908096,3239908351,RU 3239908864,3239910399,DE @@ -73175,7 +75894,7 @@ 3240312320,3240312575,IR 3240312576,3240312831,RU 3240312832,3240316927,GB -3240321024,3240321791,RU +3240321024,3240321535,RU 3240321792,3240322047,PL 3240322048,3240322303,RU 3240322560,3240324095,CZ @@ -73425,11 +76144,9 @@ 3240812288,3240812543,KW 3240813568,3240814591,PL 3240814592,3240816639,IT -3240818688,3240819711,NL -3240819712,3240819715,GB +3240818688,3240819715,NL 3240819716,3240819716,EU -3240819717,3240819967,GB -3240819968,3240820735,NL +3240819717,3240820735,NL 3240820736,3240820799,FR 3240820800,3240820831,CY 3240820832,3240820863,GB @@ -73461,7 +76178,6 @@ 3240853248,3240853503,RU 3240853504,3240854527,VA 3240854528,3240855039,IT -3240855040,3240855295,RU 3240855552,3240857599,IT 3240857600,3240857855,PL 3240858624,3240858879,PL @@ -73660,6 +76376,7 @@ 3241700352,3241721855,FR 3241722112,3241722367,FR 3241724416,3241724671,RU +3241724672,3241724927,RE 3241725952,3241742335,FR 3241743360,3241743615,DE 3241744384,3241745407,FR @@ -73684,8 +76401,7 @@ 3241856000,3241857279,NL 3241857280,3241857535,CH 3241857536,3241859071,AT -3241859072,3241860863,US -3241860864,3241861119,FR +3241859072,3241861119,US 3241861120,3241863167,BE 3241863168,3241863423,PL 3241863424,3241863679,FR @@ -73804,7 +76520,9 @@ 3243769856,3243900927,DK 3243900928,3243966463,NO 3243966464,3243974655,PL -3243974656,3243978751,LU +3243974656,3243975423,LU +3243975424,3243975679,FR +3243975680,3243978751,LU 3243978752,3243982847,NL 3243982848,3243991039,HU 3243991040,3243999231,BE @@ -73945,7 +76663,6 @@ 3244838144,3244838399,IL 3244838400,3244838655,GB 3244838656,3244838911,BG -3244838912,3244839167,TR 3244839168,3244839423,GB 3244839424,3244839679,AT 3244839680,3244839935,DK @@ -74051,7 +76768,6 @@ 3244868352,3244868607,RU 3244868608,3244868863,FI 3244868864,3244869119,RU -3244869120,3244869375,GB 3244869376,3244869631,FR 3244869632,3244869887,GR 3244869888,3244870143,TR @@ -74240,6 +76956,7 @@ 3244922368,3244922623,GB 3244922880,3244923135,UA 3244923136,3244923391,AT +3244923392,3244923647,RU 3244923648,3244923903,LV 3244923904,3244924159,RU 3244924160,3244924927,CZ @@ -74264,7 +76981,6 @@ 3244930304,3244930559,AT 3244930560,3244930815,GB 3244930816,3244931071,NL -3244931072,3244931327,RU 3244931328,3244931583,RO 3244931584,3244931839,FR 3244931840,3244932095,NL @@ -74283,8 +76999,7 @@ 3244935424,3244935679,UA 3244935680,3244935935,PL 3244935936,3244936191,IL -3244936192,3244936959,AT -3244936960,3244937215,KZ +3244936192,3244937215,AT 3244937216,3244937471,TR 3244937472,3244937727,GB 3244937728,3244937983,UA @@ -74333,6 +77048,7 @@ 3244952576,3244953599,GB 3244953600,3244954623,DE 3244955648,3244957695,UA +3244957696,3244958719,RU 3244958720,3244959743,FR 3244959744,3244960767,RU 3244960768,3244961791,RO @@ -74732,7 +77448,6 @@ 3245283328,3245283839,GB 3245283840,3245284351,PL 3245284352,3245284863,GB -3245285376,3245285631,NL 3245285632,3245285887,GB 3245285888,3245286143,DE 3245286144,3245286399,GB @@ -74757,11 +77472,10 @@ 3245298688,3245298943,GB 3245298944,3245299199,UA 3245299456,3245299711,AT -3245299712,3245299967,DE 3245299968,3245300223,BG 3245300736,3245300991,RU 3245300992,3245301247,FI -3245301248,3245301503,DK +3245301248,3245301503,NL 3245301504,3245301759,BE 3245301760,3245302783,SK 3245302784,3245303807,DE @@ -74776,7 +77490,6 @@ 3245312000,3245314047,DE 3245314048,3245315071,PL 3245317120,3245318143,UA -3245318144,3245318399,IT 3245318400,3245318655,RO 3245318656,3245318911,DK 3245318912,3245319167,DE @@ -74826,7 +77539,10 @@ 3246370816,3246371073,ES 3246371074,3246371074,PT 3246371075,3246374911,ES -3246374912,3246379007,EU +3246374912,3246376959,EU +3246376960,3246377215,ES +3246377216,3246378751,EU +3246378752,3246379007,ES 3246379008,3246381055,GB 3246381056,3246387199,EU 3246387200,3246388223,GB @@ -75424,6 +78140,7 @@ 3249569792,3249574143,NL 3249574144,3249574399,RU 3249574400,3249574655,SE +3249574656,3249574911,RU 3249574912,3249590527,NL 3249590528,3249590783,FR 3249592320,3249598463,NL @@ -76200,7 +78917,9 @@ 3251320832,3251321855,PL 3251321856,3251322879,RU 3251322880,3251331071,GB -3251331072,3251331583,FR +3251331072,3251331321,FR +3251331322,3251331322,GB +3251331323,3251331583,FR 3251331584,3251332095,PL 3251332096,3251333119,RU 3251333120,3251333631,CH @@ -76327,7 +79046,6 @@ 3252379648,3252379903,ES 3252379904,3252380159,GB 3252380160,3252380415,BE -3252380416,3252380671,UA 3252380672,3252380927,SI 3252381184,3252381439,IT 3252381440,3252381695,ES @@ -76557,7 +79275,9 @@ 3253075968,3253139455,RO 3253139456,3253139711,MD 3253139712,3253207039,RO -3253207040,3253270527,RU +3253207040,3253230591,RU +3253230592,3253230847,BY +3253230848,3253270527,RU 3253270528,3253271551,BY 3253271552,3253338111,RU 3253338112,3253338367,PL @@ -76594,7 +79314,9 @@ 3253405564,3253405564,EU 3253405565,3253409791,SE 3253409792,3253410047,GB -3253410048,3253411839,SE +3253410048,3253411327,SE +3253411328,3253411583,NO +3253411584,3253411839,SE 3253411840,3253412095,US 3253412096,3253412351,SE 3253412352,3253412607,US @@ -76607,7 +79329,9 @@ 3253428480,3253429247,SE 3253429248,3253429759,JP 3253429760,3253430015,ES -3253430016,3253433087,SE +3253430016,3253430783,SE +3253430784,3253431039,BE +3253431040,3253433087,SE 3253433088,3253433343,DE 3253433344,3253434111,SE 3253434112,3253434367,GB @@ -76781,9 +79505,9 @@ 3253730304,3253730815,RO 3253730816,3253731327,UA 3253731328,3253731583,DE -3253731584,3253733375,GB -3253733376,3253733631,NL -3253733632,3253736959,GB +3253731584,3253735679,GB +3253735680,3253735935,FR +3253735936,3253736959,GB 3253736960,3253737215,FR 3253737216,3253737823,GB 3253737824,3253737831,PL @@ -76795,11 +79519,13 @@ 3253738568,3253738569,BE 3253738570,3253738570,US 3253738571,3253738575,BE -3253738576,3253741055,GB -3253741056,3253741311,BE -3253741312,3253741679,GB +3253738576,3253741567,GB +3253741568,3253741679,SE 3253741680,3253741695,RU -3253741696,3253744415,GB +3253741696,3253741816,SE +3253741817,3253741817,GB +3253741818,3253741823,SE +3253741824,3253744415,GB 3253744416,3253744447,CH 3253744448,3253745983,GB 3253745984,3253745999,SE @@ -76811,9 +79537,17 @@ 3253746040,3253746047,GB 3253746048,3253746111,IT 3253746112,3253746175,DE -3253746176,3253761407,GB +3253746176,3253760511,GB +3253760512,3253760767,FR +3253760768,3253761407,GB 3253761408,3253761471,ES -3253761472,3253762815,GB +3253761472,3253761535,GB +3253761536,3253761791,US +3253761792,3253762303,GB +3253762304,3253762559,DE +3253762560,3253762753,IT +3253762754,3253762754,ES +3253762755,3253762815,IT 3253762816,3253762943,CH 3253762944,3253763071,GB 3253763072,3253763327,SE @@ -76831,19 +79565,31 @@ 3253767676,3253767679,DE 3253767680,3253767711,GB 3253767712,3253767743,DE -3253767744,3253768565,GB +3253767744,3253768191,GB +3253768192,3253768447,ES +3253768448,3253768565,GB 3253768566,3253768566,DE -3253768567,3253770983,GB +3253768567,3253768959,GB +3253768960,3253769215,DE +3253769216,3253770983,GB 3253770984,3253770984,DE 3253770985,3253771199,GB 3253771200,3253771263,IE 3253771264,3253772063,GB 3253772064,3253772095,DE -3253772096,3253772191,GB -3253772192,3253772207,DE -3253772208,3253773055,GB +3253772096,3253772519,GB +3253772520,3253772527,DE +3253772528,3253773055,GB 3253773056,3253773311,DE -3253773312,3253796863,GB +3253773312,3253774583,GB +3253774584,3253774591,DE +3253774592,3253775183,GB +3253775184,3253775191,FR +3253775192,3253775807,GB +3253775808,3253775823,DE +3253775824,3253776159,GB +3253776160,3253776175,DE +3253776176,3253796863,GB 3253796864,3253862399,SE 3253862400,3253862655,GB 3253862656,3253882879,FR @@ -76934,7 +79680,6 @@ 3253967872,3253968895,UA 3253968896,3253969151,DE 3253969408,3253969919,AT -3253970432,3253970687,RU 3253970688,3253970943,UA 3253970944,3253971967,RS 3253971968,3253972991,RU @@ -76943,7 +79688,9 @@ 3253975040,3253977087,DE 3253977088,3253985279,TR 3253985280,3253993471,GB -3253993472,3254124543,BE +3253993472,3254067711,BE +3254067712,3254067967,CZ +3254067968,3254124543,BE 3254124544,3254255615,CH 3254255616,3254256127,RE 3254256128,3254256639,GP @@ -76993,21 +79740,13 @@ 3254508832,3254509412,FR 3254509413,3254509413,GQ 3254509414,3254607871,FR -3254607872,3254608127,RE -3254608128,3254608383,FR -3254608384,3254608895,RE -3254608896,3254609663,FR -3254609664,3254609919,RE -3254609920,3254611455,FR +3254607872,3254608895,RE +3254608896,3254609151,FR +3254609152,3254610431,RE +3254610432,3254610687,FR +3254610688,3254611455,RE 3254611456,3254611967,YT -3254611968,3254612223,FR -3254612224,3254612479,RE -3254612480,3254613247,FR -3254613248,3254613503,RE -3254613504,3254614271,FR -3254614272,3254614527,RE -3254614528,3254615039,FR -3254615040,3254615551,RE +3254611968,3254615551,RE 3254615552,3254616063,YT 3254616064,3254648831,FR 3254648832,3254649855,AL @@ -77235,7 +79974,6 @@ 3254891776,3254892031,DE 3254892032,3254892287,GB 3254892288,3254892543,BE -3254892544,3254892799,RU 3254892800,3254893055,SK 3254893568,3254894079,CZ 3254894080,3254894335,CH @@ -77277,7 +80015,9 @@ 3254962381,3254962381,NL 3254962382,3254962421,FR 3254962422,3254962422,NL -3254962423,3255117823,FR +3254962423,3255015423,FR +3255015424,3255015679,MQ +3255015680,3255117823,FR 3255120640,3255120895,DE 3255121664,3255121919,FR 3255123712,3255123967,DE @@ -77382,7 +80122,9 @@ 3255237120,3255237375,AT 3255237888,3255238143,ES 3255238400,3255238655,QA -3255238656,3255280018,BE +3255238656,3255272191,BE +3255272192,3255272447,US +3255272448,3255280018,BE 3255280019,3255280019,EU 3255280020,3255292311,BE 3255292312,3255292319,LU @@ -77524,9 +80266,7 @@ 3255496704,3255498751,EU 3255498752,3255500799,FR 3255500800,3255504895,CH -3255504896,3255505151,RU -3255505152,3255505663,GB -3255505920,3255506431,RU +3255504896,3255505919,GB 3255506432,3255506687,PL 3255506688,3255506943,PT 3255506944,3255507199,PL @@ -77718,9 +80458,13 @@ 3256692736,3256693759,GR 3256694784,3256695807,DE 3256695808,3256696831,UA -3256696832,3256699135,EU +3256696832,3256698367,EU +3256698368,3256698623,NL +3256698624,3256698879,GB +3256698880,3256699135,EU 3256699136,3256699391,NL -3256699392,3256705535,EU +3256699392,3256699647,GB +3256699648,3256705535,EU 3256705536,3256705791,BE 3256705792,3256710655,EU 3256710656,3256710911,SE @@ -77952,7 +80696,9 @@ 3257551624,3257551647,BE 3257551648,3257551711,GB 3257551712,3257551719,BE -3257551720,3257556991,GB +3257551720,3257552732,GB +3257552733,3257552733,SE +3257552734,3257556991,GB 3257557504,3257558015,LU 3257558016,3257559039,RO 3257559552,3257560063,UA @@ -77984,7 +80730,9 @@ 3257729024,3257730047,DE 3257730048,3257740799,NL 3257740800,3257741055,FR -3257741056,3257742335,NL +3257741056,3257741311,NL +3257741312,3257741567,DE +3257741568,3257742335,NL 3257742336,3257743359,DE 3257743360,3257748479,NL 3257748480,3257749503,DE @@ -78019,7 +80767,10 @@ 3257987328,3257987583,CZ 3257987840,3257988095,AT 3257990656,3257990911,AT -3257991168,3258003967,DE +3257991168,3257995263,DE +3257996032,3257996287,DE +3257996544,3257996799,CH +3257996800,3258003967,DE 3258003968,3258004479,RU 3258004992,3258005247,DE 3258006528,3258015743,DE @@ -78149,12 +80900,10 @@ 3258103552,3258103807,AE 3258104320,3258104575,PL 3258104576,3258104831,DE -3258105088,3258105343,CZ 3258105600,3258105855,DE 3258105856,3258109951,CZ 3258109952,3258110207,DK 3258110464,3258110975,CZ -3258111232,3258111487,CZ 3258111488,3258111743,PL 3258111744,3258118399,CZ 3258118400,3258118655,UA @@ -78168,7 +80917,9 @@ 3258230784,3258232831,NO 3258232832,3258249215,SE 3258249216,3258253311,NO -3258253312,3258269695,NL +3258253312,3258253567,DE +3258254080,3258254335,NL +3258255360,3258269695,NL 3258271744,3258272767,NL 3258272768,3258273791,FR 3258273792,3258288127,NL @@ -78325,7 +81076,9 @@ 3259226112,3259227391,RU 3259227392,3259227647,KZ 3259227648,3259236351,RU -3259236352,3259237887,SE +3259236352,3259236863,SE +3259236864,3259237119,CH +3259237120,3259237887,SE 3259237888,3259238143,FR 3259238144,3259243007,SE 3259243008,3259243519,AT @@ -78727,7 +81480,6 @@ 3262030848,3262031871,FR 3262033920,3262038015,AX 3262038016,3262038271,FR -3262038272,3262038527,RU 3262038528,3262038783,IL 3262038784,3262039039,NO 3262039040,3262039295,DE @@ -78887,7 +81639,8 @@ 3262436352,3262436863,SE 3262437888,3262438399,FR 3262438400,3262438911,NL -3262438912,3262439423,DK +3262438912,3262439167,DK +3262439168,3262439423,SE 3262439424,3262439935,AT 3262439936,3262440447,IL 3262440960,3262441471,IL @@ -79039,7 +81792,9 @@ 3262636032,3262644223,BE 3262644224,3262648319,NL 3262648320,3262648575,EU -3262648576,3262654463,NL +3262648576,3262650111,NL +3262650112,3262650367,DE +3262650368,3262654463,NL 3262654464,3262654719,DE 3262654720,3262664703,NL 3262664704,3262665727,DE @@ -79141,7 +81896,6 @@ 3263100928,3263101183,AT 3263101184,3263101439,SE 3263101440,3263101695,DK -3263101696,3263101951,RU 3263101952,3263102207,LT 3263102208,3263102463,GB 3263102464,3263102719,PL @@ -79610,10 +82364,8 @@ 3264846208,3264846335,AE 3264846336,3264846463,GB 3264846464,3264846591,NO -3264846720,3264846847,RU 3264846848,3264846911,DK 3264846912,3264847103,CY -3264847168,3264847199,IE 3264847232,3264847263,CH 3264847264,3264847295,LI 3264847296,3264847359,CY @@ -79683,10 +82435,8 @@ 3265141152,3265141551,CH 3265141552,3265141555,IE 3265141556,3265141759,CH -3265141760,3265141775,GB -3265141776,3265141791,CH -3265141792,3265141887,GB -3265141888,3265142783,CH +3265141760,3265142015,GB +3265142016,3265142783,CH 3265142784,3265150975,MT 3265150976,3265159167,AD 3265159168,3265167359,FR @@ -79738,7 +82488,6 @@ 3265596928,3265597439,FR 3265597440,3265597951,MC 3265597952,3265599999,RU -3265600000,3265600255,HU 3265600512,3265601023,GB 3265601024,3265601535,RU 3265601536,3265601791,SE @@ -79909,7 +82658,9 @@ 3266420736,3266428927,GB 3266428928,3266437119,GR 3266437120,3266445311,GL -3266445312,3266510847,NL +3266445312,3266472959,NL +3266472960,3266473215,SE +3266473216,3266510847,NL 3266510848,3266543615,ES 3266543616,3266576383,IT 3266576384,3266616575,DE @@ -79926,7 +82677,9 @@ 3266797824,3266798079,ES 3266798080,3266798847,GB 3266798848,3266798879,CZ -3266798880,3266805759,GB +3266798880,3266804639,GB +3266804640,3266804643,NL +3266804644,3266805759,GB 3266805760,3266813951,AT 3266813952,3266822143,UA 3266822144,3266830335,FR @@ -79957,7 +82710,8 @@ 3267059712,3267060735,NL 3267060736,3267061759,LV 3267061760,3267063807,UA -3267063808,3267064576,BE +3267063808,3267064063,DE +3267064064,3267064576,BE 3267064577,3267064577,EU 3267064578,3267064831,BE 3267064832,3267065855,PL @@ -80218,13 +82972,12 @@ 3268248544,3268249599,EU 3268249600,3268251311,GB 3268251312,3268251327,IE -3268251328,3268251583,GB -3268251584,3268251615,DE -3268251616,3268251631,CH -3268251632,3268251647,GB +3268251328,3268251647,GB 3268251648,3268254463,EU -3268254464,3268254719,GB -3268254720,3268254895,EU +3268254464,3268254543,GB +3268254544,3268254623,EU +3268254624,3268254639,GB +3268254640,3268254895,EU 3268254896,3268254903,GB 3268254904,3268255823,EU 3268255824,3268255863,GB @@ -80332,9 +83085,7 @@ 3268278464,3268278495,GB 3268278496,3268280063,EU 3268280064,3268280319,GB -3268280320,3268332799,FR -3268332800,3268333055,GP -3268333056,3268345855,FR +3268280320,3268345855,FR 3268345856,3268411391,GB 3268411392,3268426751,AT 3268426752,3268427775,CH @@ -80379,7 +83130,8 @@ 3268765184,3268765695,RU 3268765696,3268766719,UA 3268766720,3268767231,IL -3268767232,3268767743,RU +3268767232,3268767487,UA +3268767488,3268767743,RU 3268767744,3268768255,NL 3268768256,3268768767,BE 3268768768,3268769279,RU @@ -80459,7 +83211,8 @@ 3269285336,3269285343,FR 3269285344,3269285344,GB 3269285345,3269285345,EU -3269285346,3269285631,GB +3269285346,3269285375,GB +3269285376,3269285631,FR 3269285632,3269285887,DE 3269285888,3269286399,EU 3269286400,3269286463,DE @@ -80594,8 +83347,7 @@ 3270443008,3270508543,DK 3270508544,3270639615,FI 3270639616,3270640127,PL -3270640128,3270640383,RU -3270640640,3270642175,RU +3270640128,3270642175,RU 3270642176,3270642687,NO 3270642688,3270643199,DE 3270643200,3270643711,RU @@ -80645,7 +83397,6 @@ 3270906112,3270909951,IT 3270911840,3270911871,PL 3270911872,3270911935,DE -3270911936,3270911967,PL 3270911968,3270911999,NL 3270913024,3270913535,DE 3270913536,3270913791,EU @@ -80706,6 +83457,7 @@ 3270980864,3270981631,RU 3270981632,3270981887,IT 3270981888,3270982143,AT +3270982144,3270982399,RU 3270982400,3270982655,TR 3270982656,3270982911,UA 3270982912,3270983167,DK @@ -80866,7 +83618,9 @@ 3271933184,3271933439,GB 3271933440,3271933695,SE 3271933696,3271933951,DE -3271933952,3272015871,FR +3271933952,3271936767,FR +3271936768,3271937023,US +3271937024,3272015871,FR 3272019968,3272020991,IT 3272020992,3272024063,DK 3272024064,3272032255,IE @@ -81115,7 +83869,9 @@ 3272268288,3272268543,UA 3272268800,3272269055,IL 3272269056,3272269311,GB -3272269568,3272351743,GB +3272269568,3272293631,GB +3272293632,3272293887,AU +3272293888,3272351743,GB 3272351744,3272352767,PL 3272352768,3272353791,UA 3272353792,3272355839,CH @@ -81329,7 +84085,9 @@ 3273048064,3273056255,IT 3273056256,3273064447,MD 3273064448,3273129983,PT -3273129984,3273138175,DK +3273129984,3273132287,DK +3273132288,3273132543,GB +3273132544,3273138175,DK 3273138176,3273146367,BG 3273146368,3273148415,RU 3273148416,3273150463,LU @@ -81352,7 +84110,9 @@ 3273193984,3273194495,EU 3273194496,3273195007,UA 3273195008,3273195519,RU -3273195520,3273261055,FR +3273195520,3273207807,FR +3273207808,3273208063,RE +3273208064,3273261055,FR 3273261056,3273261567,NO 3273261568,3273262079,BE 3273262080,3273262591,LU @@ -81395,7 +84155,13 @@ 3273327584,3273327615,IE 3273327616,3273328511,EU 3273328512,3273328639,DE -3273328640,3273329423,GB +3273328640,3273329199,GB +3273329200,3273329215,DE +3273329216,3273329279,GB +3273329280,3273329311,EU +3273329312,3273329327,GB +3273329328,3273329407,EU +3273329408,3273329423,GB 3273329424,3273329439,DE 3273329440,3273330175,GB 3273330176,3273330183,IR @@ -82234,11 +85000,7 @@ 3275424720,3275424727,EU 3275424728,3275424735,GB 3275424736,3275424751,EU -3275424752,3275424871,GB -3275424872,3275424879,EU -3275424880,3275424895,GB -3275424896,3275424959,EU -3275424960,3275425311,GB +3275424752,3275425311,GB 3275425312,3275425327,EU 3275425328,3275425343,GB 3275425344,3275425535,EU @@ -82270,9 +85032,7 @@ 3275438656,3275438671,EU 3275438672,3275438847,GB 3275438848,3275439103,EU -3275439104,3275439679,GB -3275439680,3275439687,EU -3275439688,3275441407,GB +3275439104,3275441407,GB 3275441408,3275441423,EU 3275441424,3275441439,GB 3275441440,3275441471,EU @@ -82300,15 +85060,7 @@ 3275447040,3275447055,EU 3275447056,3275447151,GB 3275447152,3275448319,EU -3275448320,3275449359,GB -3275449360,3275449375,EU -3275449376,3275449399,GB -3275449400,3275449407,EU -3275449408,3275449519,GB -3275449520,3275449527,FR -3275449528,3275449567,GB -3275449568,3275449583,EU -3275449584,3275450207,GB +3275448320,3275450207,GB 3275450208,3275450223,EU 3275450224,3275450879,GB 3275450880,3275451231,EU @@ -82324,11 +85076,7 @@ 3275451768,3275451775,EU 3275451776,3275451779,GB 3275451780,3275452415,EU -3275452416,3275453695,GB -3275453696,3275453823,EU -3275453824,3275453839,GB -3275453840,3275453847,EU -3275453848,3275455231,GB +3275452416,3275455231,GB 3275455232,3275455247,EU 3275455248,3275456407,GB 3275456408,3275456415,EU @@ -82343,15 +85091,7 @@ 3275460296,3275460351,EU 3275460352,3275460607,IE 3275460608,3275460863,HK -3275460864,3275463183,GB -3275463184,3275463191,EU -3275463192,3275463199,GB -3275463200,3275463215,EU -3275463216,3275463239,GB -3275463240,3275463247,EU -3275463248,3275463263,GB -3275463264,3275463295,EU -3275463296,3275463423,GB +3275460864,3275463423,GB 3275463424,3275463455,EU 3275463456,3275463495,GB 3275463496,3275463503,EU @@ -82365,11 +85105,7 @@ 3275468736,3275468751,IE 3275468752,3275468767,GB 3275468768,3275468799,IE -3275468800,3275474887,GB -3275474888,3275474895,EU -3275474896,3275474911,GB -3275474912,3275474927,EU -3275474928,3275474951,GB +3275468800,3275474951,GB 3275474952,3275474959,EU 3275474960,3275475039,GB 3275475040,3275475043,EU @@ -82663,13 +85399,17 @@ 3275948032,3276013567,SE 3276013568,3276014239,GB 3276014240,3276014247,FR -3276014248,3276014799,GB +3276014248,3276014335,GB +3276014336,3276014591,FR +3276014592,3276014799,GB 3276014800,3276014815,FR 3276014816,3276014951,GB 3276014952,3276014959,ES -3276014960,3276019711,GB -3276019712,3276019967,FR -3276019968,3276025159,GB +3276014960,3276020735,GB +3276020736,3276020991,FR +3276020992,3276021503,GB +3276021504,3276021759,FR +3276021760,3276025159,GB 3276025160,3276025167,FR 3276025168,3276028543,GB 3276028544,3276028671,FR @@ -82681,7 +85421,9 @@ 3276031480,3276031487,FR 3276031488,3276032311,GB 3276032312,3276032319,FR -3276032320,3276036543,GB +3276032320,3276033791,GB +3276033792,3276034047,FR +3276034048,3276036543,GB 3276036544,3276036607,FR 3276036608,3276039263,GB 3276039264,3276039279,FR @@ -82857,7 +85599,8 @@ 3276499504,3276499567,DE 3276499568,3276503039,EU 3276503040,3276505087,DE -3276505088,3276509183,EU +3276505088,3276508927,EU +3276508928,3276509183,GB 3276509184,3276510207,IT 3276510208,3276512255,EU 3276512256,3276513023,ZA @@ -83023,7 +85766,11 @@ 3276902368,3276902399,CH 3276902400,3276902655,GB 3276902656,3276902911,SE -3276902912,3276907341,GB +3276902912,3276903423,GB +3276903424,3276903487,SE +3276903488,3276903551,GB +3276903552,3276903679,SE +3276903680,3276907341,GB 3276907342,3276907342,EU 3276907343,3276907519,GB 3276907520,3276907551,NL @@ -83036,14 +85783,16 @@ 3276912216,3276912287,GB 3276912288,3276912319,IT 3276912320,3276912383,GB -3276912384,3276912511,IT -3276912512,3276912671,GB +3276912384,3276912639,IT +3276912640,3276912671,GB 3276912672,3276912687,IT 3276912688,3276912879,GB 3276912880,3276912895,IT 3276912896,3276917231,GB 3276917232,3276917247,FR -3276917248,3276919061,GB +3276917248,3276917735,GB +3276917736,3276917739,ES +3276917740,3276919061,GB 3276919062,3276919062,DE 3276919063,3276919375,GB 3276919376,3276919391,DE @@ -83216,7 +85965,6 @@ 3277373952,3277374463,FR 3277374464,3277375999,RU 3277376000,3277376511,NL -3277376512,3277377023,RO 3277377024,3277378047,RU 3277378560,3277379071,HR 3277379072,3277379583,UZ @@ -83238,26 +85986,17 @@ 3277389312,3277389823,AM 3277389824,3277394943,GB 3277394944,3277395455,US -3277395456,3277402591,GB -3277402592,3277402607,ES -3277402608,3277403135,GB -3277403136,3277403215,FR -3277403216,3277403231,GB -3277403232,3277403311,FR -3277403312,3277403327,GB -3277403328,3277403359,FR -3277403360,3277403375,GB -3277403376,3277403471,FR +3277395456,3277403135,GB +3277403136,3277403471,FR 3277403472,3277403647,GB -3277403648,3277403807,ES -3277403808,3277404159,GB +3277403648,3277403903,ES +3277403904,3277404159,GB 3277404160,3277404415,DE 3277404416,3277404655,IT 3277404656,3277404671,GB 3277404672,3277404735,CH 3277404736,3277404927,GB -3277404928,3277404975,NL -3277404976,3277405183,GB +3277404928,3277405183,NL 3277405184,3277405263,SE 3277405264,3277405439,GB 3277405440,3277405471,DE @@ -83319,7 +86058,10 @@ 3277698560,3277699071,DE 3277699584,3277700607,RU 3277700608,3277701119,UA -3277701120,3277701631,DK +3277701120,3277701311,SE +3277701312,3277701313,DK +3277701314,3277701375,SE +3277701376,3277701631,DK 3277701632,3277702143,AT 3277702144,3277702655,EU 3277702656,3277703679,DE @@ -83653,7 +86395,9 @@ 3279085568,3279089663,NL 3279089664,3279093759,KG 3279093760,3279123455,FR -3279123456,3279123967,RE +3279123456,3279123714,RE +3279123715,3279123715,FR +3279123716,3279123967,RE 3279123968,3279159295,FR 3279159296,3279290367,PL 3279290368,3279292415,EU @@ -84054,7 +86798,9 @@ 3281062912,3281063039,EU 3281063040,3281063111,DE 3281063112,3281063167,EU -3281063168,3281125375,DE +3281063168,3281068673,DE +3281068674,3281068674,US +3281068675,3281125375,DE 3281125376,3281133567,SK 3281133568,3281141759,IR 3281141760,3281149951,RU @@ -84154,7 +86900,9 @@ 3281975296,3281976319,RU 3281976320,3281976831,DE 3281976832,3281977343,RU -3281977344,3282042879,NO +3281977344,3282039039,NO +3282039040,3282039295,SE +3282039296,3282042879,NO 3282042880,3282083839,CH 3282083840,3282084351,DE 3282084352,3282084863,RO @@ -84583,7 +87331,9 @@ 3284030480,3284030495,FR 3284030496,3284030615,GB 3284030616,3284030623,SE -3284030624,3284030991,GB +3284030624,3284030775,GB +3284030776,3284030783,SE +3284030784,3284030991,GB 3284030992,3284031007,FR 3284031008,3284033535,GB 3284033536,3284041727,RU @@ -84739,7 +87489,9 @@ 3284271104,3284402175,GB 3284402176,3284467711,SE 3284467712,3284533247,FI -3284533248,3284598783,SE +3284533248,3284588287,SE +3284588288,3284588543,DK +3284588544,3284598783,SE 3284598784,3284664319,HU 3284664320,3284672511,GB 3284672512,3284680703,DE @@ -84841,7 +87593,8 @@ 3285120512,3285121023,RO 3285121024,3285121535,SE 3285121536,3285122047,CY -3285122048,3285123071,RU +3285122048,3285122559,GB +3285122560,3285123071,RU 3285123072,3285188607,BE 3285188608,3285319679,RU 3285319680,3285320191,HU @@ -85075,14 +87828,12 @@ 3285913864,3285913871,EU 3285913872,3285913903,GB 3285913904,3285917695,EU -3285917696,3285917703,GB -3285917704,3285917711,EU -3285917712,3285917807,GB -3285917808,3285917951,EU -3285917952,3285918207,GB +3285917696,3285918207,GB 3285918208,3285919743,EU 3285919744,3285921791,QA -3285921792,3285924911,EU +3285921792,3285922047,EU +3285922048,3285922303,FR +3285922304,3285924911,EU 3285924912,3285924919,CH 3285924920,3285924927,FI 3285924928,3285924943,DE @@ -85093,7 +87844,8 @@ 3285924960,3285924991,DE 3285924992,3285924995,FR 3285924996,3285924999,CZ -3285925000,3285925163,EU +3285925000,3285925007,RU +3285925008,3285925163,EU 3285925164,3285925171,CH 3285925172,3285926431,EU 3285926432,3285926463,CH @@ -85104,8 +87856,8 @@ 3285928312,3285929215,EU 3285929216,3285929231,DE 3285929232,3285931527,EU -3285931528,3285931543,DE -3285931544,3285935871,EU +3285931528,3285931551,DE +3285931552,3285935871,EU 3285935872,3285936127,GB 3285936128,3285936135,EU 3285936136,3285936147,FR @@ -85132,7 +87884,7 @@ 3285951680,3285954047,EU 3285954048,3285954303,AE 3285954304,3285954559,EU -3285954560,3285954567,GB +3285954560,3285954567,RO 3285954568,3285954575,PL 3285954576,3285954815,GB 3285954816,3285962751,EU @@ -85140,8 +87892,8 @@ 3285963776,3285964799,EU 3285964800,3285964935,DE 3285964936,3285965055,EU -3285965056,3285965567,DE -3285965568,3285968895,EU +3285965056,3285965823,DE +3285965824,3285968895,EU 3285968896,3285970943,GB 3285970944,3285975039,EU 3285975040,3286013695,FR @@ -85224,14 +87976,23 @@ 3286368256,3286376447,CH 3286376448,3286384639,GB 3286384640,3286401023,DE -3286401024,3286409215,GB +3286401024,3286403071,GB +3286403072,3286403327,GG +3286403328,3286404863,GB +3286404864,3286405119,GG +3286405120,3286406655,GB +3286406656,3286406911,GG +3286406912,3286407167,GB +3286407168,3286407423,GG +3286407424,3286407679,GB +3286407680,3286407935,GG +3286407936,3286409215,GB 3286409216,3286417407,DE 3286417408,3286417663,UA 3286417664,3286417919,IT 3286417920,3286418175,DE 3286418176,3286418431,AT 3286418432,3286418687,TR -3286418688,3286418943,UA 3286418944,3286419199,PL 3286419200,3286419455,DK 3286419456,3286419711,DE @@ -85252,6 +88013,7 @@ 3286423808,3286424063,CZ 3286424064,3286424319,LV 3286424320,3286424575,FR +3286424576,3286424831,RU 3286424832,3286425087,TR 3286425088,3286425343,RU 3286425344,3286425599,IT @@ -85283,7 +88045,7 @@ 3286657024,3286657279,BE 3286657280,3286657535,ES 3286657536,3286657791,HU -3286658048,3286658303,US +3286658048,3286658303,DE 3286658304,3286658559,RU 3286658560,3286658815,NL 3286658816,3286659071,RU @@ -85311,7 +88073,9 @@ 3286777856,3286778111,GB 3286778112,3286781951,FR 3286781952,3286794239,GB -3286794240,3286888447,DE +3286794240,3286799103,DE +3286799104,3286799359,IT +3286799360,3286888447,DE 3286888448,3286889471,IE 3286889472,3286892543,DE 3286892544,3286893055,LI @@ -85613,7 +88377,7 @@ 3287640064,3287640575,PL 3287640576,3287641087,SI 3287641088,3287641599,EU -3287642112,3287642623,GB +3287642112,3287642623,NL 3287642624,3287643135,BE 3287643136,3287643647,IT 3287643648,3287644671,UA @@ -85623,7 +88387,7 @@ 3287662592,3287662847,DE 3287662848,3287663103,DK 3287663104,3287663359,LV -3287663616,3287663871,ES +3287663616,3287663871,NL 3287663872,3287664127,PT 3287664128,3287664383,PL 3287664384,3287664639,NL @@ -85926,7 +88690,7 @@ 3288544500,3288544767,US 3288544768,3288545023,MX 3288545024,3288545279,FR -3288545280,3288545535,US +3288545280,3288545535,AU 3288545536,3288545791,ZA 3288545792,3288546303,KE 3288546304,3288547327,NG @@ -85980,8 +88744,9 @@ 3288779776,3288780799,NG 3288780800,3288782591,ZA 3288782592,3288782847,KE -3288783872,3288784127,KE -3288784128,3288784895,ZA +3288782848,3288783359,NG +3288783360,3288784127,KE +3288784128,3288785151,ZA 3288787968,3288788223,EG 3288788224,3288792831,ZA 3288792832,3288793087,AO @@ -86018,9 +88783,10 @@ 3289053952,3289055231,NG 3289055232,3289071103,ZA 3289071104,3289071359,SO -3289071616,3289074431,ZA +3289071360,3289074431,ZA 3289074432,3289074687,DZ 3289074688,3289075711,ZA +3289075712,3289077759,MW 3289077760,3289078271,KE 3289078272,3289078527,GH 3289078528,3289081855,ZA @@ -86054,7 +88820,9 @@ 3289137152,3289153535,BM 3289153536,3289156607,MU 3289156608,3289158655,RW -3289158656,3289161727,MU +3289158656,3289159935,MU +3289159936,3289160191,RW +3289160192,3289161727,MU 3289161728,3289163263,PR 3289163264,3289163519,US 3289163520,3289169919,PR @@ -86067,7 +88835,8 @@ 3289213440,3289213951,ZA 3289213952,3289214207,MA 3289214208,3289214463,AO -3289214976,3289215231,NG +3289214464,3289214719,CD +3289214720,3289215231,NG 3289215232,3289217279,ZA 3289217280,3289217535,KE 3289217536,3289217791,UG @@ -86085,7 +88854,7 @@ 3289229568,3289230591,ZA 3289230592,3289230847,KE 3289230848,3289231359,GH -3289233408,3289233919,ZA +3289231360,3289233919,ZA 3289233920,3289234175,TZ 3289234176,3289235199,ZA 3289235200,3289235455,KE @@ -86154,8 +88923,7 @@ 3290136576,3290169343,NG 3290169344,3290171135,ZA 3290171136,3290171391,SZ -3290171392,3290171903,ZA -3290171904,3290172159,NG +3290171392,3290172159,ZA 3290172160,3290172415,KE 3290172416,3290181631,ZA 3290181632,3290181887,US @@ -86186,6 +88954,7 @@ 3290423296,3290427391,NA 3290427392,3290431487,ZA 3290431488,3290433535,JM +3290433536,3290435583,ZA 3290435584,3290439679,DZ 3290439680,3290447871,TT 3290447872,3290456063,AR @@ -86375,17 +89144,20 @@ 3291549184,3291549439,GH 3291549440,3291549695,UG 3291549696,3291549951,LR +3291549952,3291550207,GA 3291611136,3291611391,ZA 3291742208,3292004351,US 3292004352,3292266495,SC 3292397568,3292528639,ZA +3300392960,3300655103,TN +3300655104,3300917247,ET 3300917248,3300921343,MU 3300921344,3300925439,BJ 3300925440,3300929535,MG 3300933632,3300950015,MU 3300953088,3300954111,MU 3300954112,3300958207,NG -3300966400,3301113855,ZA +3300958208,3301113855,ZA 3301113856,3301138431,NG 3301138432,3301140479,ZA 3301140480,3301146623,NG @@ -86463,25 +89235,28 @@ 3301556224,3301557759,DJ 3301557760,3301558015,US 3301558016,3301560319,DJ -3301560320,3301565439,KE -3301565440,3301566463,MU +3301560320,3301565695,KE +3301565696,3301566463,MU 3301568512,3301570559,EG 3301570560,3301572607,KE 3301572608,3301605375,EG 3301605376,3301613567,SD -3301621760,3301629951,KE +3301613568,3301629951,KE 3301632000,3301634047,CM 3301634048,3301636095,LS 3301636096,3301637119,ZA 3301637120,3301638143,AO 3301638144,3301703679,TN -3301703680,3301834751,EG +3301703680,3301707263,EG +3301707264,3301707519,US +3301707520,3301834751,EG 3301834752,3301900287,MA 3301900288,3301904383,NG 3301904384,3301908479,KE 3301908480,3301912575,ZA 3301912576,3301916671,MU 3301916672,3301933055,IN +3301933056,3301949439,KE 3301949440,3301965823,SN 3301965824,3302490111,ZA 3302490112,3302490367,KE @@ -86496,6 +89271,7 @@ 3302505472,3302506495,NA 3302506496,3302508543,KE 3302508544,3302514687,MU +3302514688,3302522879,ZA 3302522880,3302523903,KE 3302523904,3302525951,ZA 3302525952,3302526975,EG @@ -86562,6 +89338,7 @@ 3302768640,3302776831,NG 3302776832,3302785023,ZW 3302785024,3302793215,NG +3302793216,3302801407,ZA 3302801408,3302805503,NG 3302805504,3302809599,MW 3302809600,3302817791,NG @@ -86606,6 +89383,7 @@ 3302959872,3302960127,SC 3302960128,3302960383,LR 3302985728,3302987775,DJ +3303014400,3304062975,TN 3304062976,3304456191,SC 3304456192,3304521727,NG 3304521728,3304587263,SC @@ -86655,7 +89433,9 @@ 3315138560,3315204095,MA 3315204096,3315269631,ET 3315269632,3315286015,ZA -3315286016,3315288413,MU +3315286016,3315287807,MU +3315287808,3315288319,KE +3315288320,3315288413,MU 3315288414,3315288414,KE 3315288415,3315289343,MU 3315289344,3315289599,KE @@ -86884,7 +89664,8 @@ 3322354432,3322609663,US 3322609664,3322610687,SA 3322610688,3322683391,US -3322683392,3322691583,BR +3322683392,3322683647,AR +3322683648,3322691583,BR 3322691584,3322691839,US 3322691840,3322692095,SE 3322692096,3322698383,US @@ -87034,9 +89815,7 @@ 3324256256,3324260095,SA 3324260096,3324266495,US 3324266496,3324266751,AP -3324266752,3324267263,US -3324267264,3324267519,JP -3324267520,3324270079,US +3324266752,3324270079,US 3324270080,3324270591,EU 3324270592,3324277759,US 3324277760,3324278783,CA @@ -87059,7 +89838,9 @@ 3324526592,3324579839,US 3324582912,3324583935,CA 3324583936,3324587775,CL -3324587776,3324642303,US +3324587776,3324636671,US +3324636672,3324637183,NZ +3324637184,3324642303,US 3324642304,3324642559,CA 3324642560,3324645887,US 3324645888,3324646143,CA @@ -87220,7 +90001,9 @@ 3325226593,3325226593,US 3325226594,3325226751,CA 3325226752,3325227007,US -3325227008,3325229591,CA +3325227008,3325227575,CA +3325227576,3325227583,US +3325227584,3325229591,CA 3325229592,3325229599,US 3325229600,3325230319,CA 3325230320,3325230323,US @@ -87253,14 +90036,19 @@ 3325284864,3325285119,AU 3325285376,3325296383,US 3325296384,3325296639,CA -3325296640,3325304319,US -3325304320,3325304831,AS +3325296640,3325303807,US +3325303808,3325304575,AS +3325304576,3325304703,US +3325304704,3325304767,AS +3325304768,3325304831,US 3325304832,3325307647,CA 3325307648,3325307903,BB 3325307904,3325313023,CA 3325313024,3325337599,US 3325337600,3325338111,GB -3325338112,3325362175,US +3325338112,3325340671,US +3325340672,3325340927,CA +3325340928,3325362175,US 3325362176,3325427711,CA 3325427712,3325427967,US 3325427968,3325430527,MU @@ -87292,7 +90080,8 @@ 3325474560,3325478655,MU 3325478656,3325478911,ZA 3325478912,3325479423,US -3325479424,3325481471,ZA +3325479424,3325479679,MU +3325479680,3325481471,ZA 3325481472,3325481727,MU 3325481728,3325481983,US 3325481984,3325483007,CA @@ -87340,9 +90129,7 @@ 3325993984,3325994239,CA 3325994240,3325996799,US 3325996800,3325997055,CA -3325997056,3326191551,US -3326191552,3326191583,A1 -3326191584,3326349823,US +3325997056,3326349823,US 3326349824,3326350335,EC 3326350336,3326406655,US 3326406656,3326408703,CO @@ -87355,16 +90142,10 @@ 3326526720,3326613503,US 3326613504,3326615551,CA 3326615552,3326619647,US -3326619648,3326620415,CA -3326620416,3326620543,US -3326620544,3326621055,CA -3326621056,3326621311,US -3326621312,3326621439,CA -3326621440,3326621695,US -3326621696,3326621951,CA -3326621952,3326622207,US -3326622208,3326623743,CA -3326623744,3326631935,US +3326619648,3326622719,CA +3326622720,3326622975,US +3326622976,3326623487,CA +3326623488,3326631935,US 3326631936,3326640127,CA 3326640128,3326680831,US 3326680832,3326681087,CA @@ -87586,11 +90367,11 @@ 3331102464,3331102719,CA 3331102720,3331194879,US 3331194880,3331260415,AU -3331260416,3331352919,US +3331260416,3331269375,US +3331269376,3331269631,AU +3331269632,3331352919,US 3331352920,3331352920,A1 -3331352921,3331353087,US -3331353088,3331353599,A1 -3331353600,3331356671,US +3331352921,3331356671,US 3331356672,3331357183,BZ 3331357184,3331362815,US 3331362816,3331366911,CA @@ -87630,9 +90411,7 @@ 3331983104,3331983359,CA 3331983360,3331988479,US 3331988480,3331989503,CA -3331989504,3332003839,US -3332003840,3332005887,A2 -3332005888,3332028415,US +3331989504,3332028415,US 3332028416,3332030463,CA 3332030464,3332083967,US 3332083968,3332084223,AP @@ -87718,7 +90497,9 @@ 3332898816,3332899071,US 3332899072,3332906495,CA 3332906496,3332909567,US -3332909568,3332922879,CA +3332909568,3332909823,CA +3332909824,3332910079,US +3332910080,3332922879,CA 3332922880,3332923391,US 3332923392,3332925695,CA 3332925696,3332927487,US @@ -87750,9 +90531,10 @@ 3333385984,3333386239,JP 3333386240,3333396223,US 3333396224,3333396479,JP -3333396480,3333396689,US +3333396480,3333396689,GB 3333396690,3333396691,EU -3333396692,3333427967,US +3333396692,3333396735,GB +3333396736,3333427967,US 3333427968,3333428007,GB 3333428008,3333428008,EU 3333428009,3333428223,GB @@ -87797,7 +90579,9 @@ 3333801728,3333801983,CA 3333801984,3333825791,US 3333825792,3333826047,EU -3333826048,3333859839,US +3333826048,3333829631,US +3333829632,3333829887,IN +3333829888,3333859839,US 3333859840,3333860095,BM 3333860096,3333871103,US 3333871104,3333871359,CA @@ -87847,7 +90631,11 @@ 3335458816,3335460863,BM 3335460864,3335475199,US 3335475200,3335475455,DE -3335475456,3335573759,US +3335475456,3335524351,US +3335524352,3335524607,AU +3335524608,3335527167,US +3335527168,3335527423,DE +3335527424,3335573759,US 3335573760,3335574015,IN 3335574016,3335581695,US 3335581696,3335581951,EU @@ -87863,12 +90651,14 @@ 3336139776,3336140799,CA 3336140800,3336854015,US 3336854016,3336854271,CO -3336854272,3336990719,US +3336854272,3336896767,US +3336896768,3336897023,VE +3336897024,3336990719,US 3336990720,3336990975,CA 3336990976,3336991231,US -3336991232,3336991487,CA -3336991488,3336993023,US -3336993024,3336993535,CA +3336991232,3336991743,CA +3336991744,3336992767,US +3336992768,3336993535,CA 3336993536,3336993791,US 3336993792,3336994047,CA 3336994048,3337030655,US @@ -87890,9 +90680,7 @@ 3337060352,3337198703,US 3337198704,3337198707,CA 3337198708,3337289983,US -3337289984,3337293567,CA -3337293568,3337293823,US -3337293824,3337297919,CA +3337289984,3337297919,CA 3337297920,3337302015,US 3337302016,3337303551,CA 3337303552,3337304063,US @@ -87910,9 +90698,8 @@ 3337355008,3337650175,US 3337650176,3337650431,GB 3337650432,3337650943,US -3337650944,3337651455,CH -3337651456,3337651711,SG -3337651712,3337682943,CH +3337650944,3337651199,HK +3337651200,3337682943,CH 3337682944,3337892607,US 3337892608,3337892671,HK 3337892672,3337893119,US @@ -88064,15 +90851,15 @@ 3338825728,3338827775,AW 3338827776,3338912767,US 3338912768,3338913023,EC -3338913024,3338935039,US -3338935040,3338935295,GB -3338935296,3338964991,US +3338913024,3338964991,US 3338964992,3338965247,CA 3338965248,3338976767,US 3338976768,3338977023,CA 3338977024,3338993407,US 3338993408,3338993663,CA -3338993664,3339075583,US +3338993664,3339043327,US +3339043328,3339043583,CA +3339043584,3339075583,US 3339075584,3339076863,GB 3339076864,3339077631,JP 3339077632,3339077887,SG @@ -88113,7 +90900,9 @@ 3339184128,3339186175,CA 3339186176,3339261951,US 3339261952,3339263999,HK -3339264000,3339327999,US +3339264000,3339270399,US +3339270400,3339270655,CA +3339271168,3339327999,US 3339328512,3339329535,CA 3339329536,3339338239,US 3339338240,3339338495,CA @@ -88167,7 +90956,7 @@ 3340097536,3340098559,CA 3340098560,3340107775,US 3340107776,3340369919,CA -3340369920,3340386559,US +3340369920,3340386815,US 3340387328,3340388351,CA 3340388352,3340390399,US 3340390400,3340391423,CA @@ -88178,7 +90967,9 @@ 3340430080,3340452863,US 3340452864,3340453887,CA 3340453888,3340460031,US -3340460032,3340462079,PR +3340460032,3340461055,PR +3340461056,3340461311,US +3340461312,3340462079,PR 3340462080,3340466175,US 3340466176,3340467199,A2 3340467200,3340481535,US @@ -88195,7 +90986,7 @@ 3340694784,3340695039,CA 3340695040,3340851455,US 3340851456,3340851711,CA -3340851712,3340852479,US +3340851712,3340852735,US 3340852736,3340853247,CA 3340853248,3340857343,US 3340857344,3340858367,CA @@ -88249,12 +91040,13 @@ 3341521664,3341531135,CA 3341531136,3341533951,US 3341533952,3341534207,CA +3341534720,3341534975,US 3341534976,3341536767,CA 3341536768,3341546239,US 3341546240,3341547007,CA 3341547008,3341547519,CH -3341547520,3341549567,CA -3341549568,3341631999,US +3341547520,3341549311,CA +3341549312,3341631999,US 3341632000,3341632767,CA 3341632768,3341634815,US 3341634816,3341635071,CA @@ -88299,7 +91091,9 @@ 3341891072,3341891327,AU 3341891328,3342139391,US 3342139392,3342204927,CH -3342204928,3342487551,US +3342204928,3342470399,US +3342470400,3342470655,CA +3342471168,3342487551,US 3342487552,3342488575,CA 3342488576,3342496767,US 3342496768,3342497791,CA @@ -88312,8 +91106,7 @@ 3342516224,3342517247,CA 3342517248,3342526463,US 3342526464,3342528511,CA -3342528512,3342548991,US -3342551040,3342552063,US +3342528512,3342552063,US 3342552064,3342553087,CA 3342553088,3342565375,US 3342565376,3342567423,CA @@ -88329,20 +91122,30 @@ 3342603264,3342604799,US 3342604800,3342605311,CA 3342605312,3342605567,US -3342605568,3342629631,CA +3342605568,3342623743,CA +3342624000,3342624255,US +3342624256,3342627839,CA +3342627840,3342628095,US +3342628096,3342629631,CA 3342629632,3342629887,US -3342629888,3342663679,CA -3342663680,3342795007,US +3342629888,3342657535,CA +3342657536,3342657791,US +3342657792,3342663423,CA +3342663424,3342795007,US 3342795008,3342795263,AP 3342795264,3342831103,US 3342831104,3342831359,IN 3342831360,3342878967,US 3342878968,3342878975,EU -3342878976,3343013887,US +3342878976,3342879487,US +3342879488,3342879743,GB +3342879744,3343013887,US 3343013888,3343015935,CA 3343015936,3343055871,US 3343055872,3343056895,CA -3343056896,3343108863,US +3343056896,3343090588,US +3343090589,3343090589,MX +3343090590,3343108863,US 3343108864,3343109119,EU 3343109120,3343153151,US 3343153152,3343154943,CA @@ -88355,10 +91158,14 @@ 3343346176,3343346687,US 3343346688,3343355391,CA 3343355392,3343355903,US -3343355904,3343364095,CA +3343355904,3343359743,CA +3343359744,3343359999,US +3343360000,3343364095,CA 3343364096,3343365631,US -3343365632,3343372543,CA -3343372800,3343378823,US +3343365632,3343366655,CA +3343366656,3343366911,US +3343366912,3343372543,CA +3343372544,3343378823,US 3343378824,3343378839,SE 3343378840,3343379079,US 3343379080,3343379087,SE @@ -88388,30 +91195,35 @@ 3344168960,3344171263,US 3344171264,3344195583,CA 3344195584,3344203775,US -3344203776,3344236543,CA -3344236544,3344237055,US -3344237056,3344238591,CA +3344203776,3344236287,CA +3344236288,3344237055,US +3344237056,3344238335,CA +3344238336,3344238591,US 3344240640,3344242175,CA 3344242176,3344242687,US -3344242688,3344255999,CA -3344256000,3344261631,US +3344242688,3344252671,CA +3344252672,3344252927,US +3344252928,3344255999,CA +3344256000,3344261887,US 3344261888,3344266239,CA 3344266240,3344266751,US 3344266752,3344268543,CA 3344268544,3344269311,US -3344269312,3344288767,CA +3344269312,3344287743,CA +3344287744,3344287999,US +3344288000,3344288767,CA 3344288768,3344289791,PR 3344289792,3344292863,US 3344292864,3344296447,CA 3344296448,3344296959,US 3344296960,3344297983,GD -3344297984,3344299007,US +3344297984,3344299263,US 3344299264,3344299519,CA 3344299520,3344299775,US 3344299776,3344300543,CA 3344300544,3344300799,US -3344300800,3344302079,CA -3344302080,3344379903,US +3344300800,3344301823,CA +3344301824,3344379903,US 3344379904,3344380927,CA 3344380928,3344406527,US 3344406528,3344408575,CA @@ -88419,7 +91231,9 @@ 3344429056,3344431103,CA 3344431104,3344486399,US 3344486400,3344488447,NL -3344488448,3344633855,US +3344488448,3344534271,US +3344534272,3344534527,CA +3344534528,3344633855,US 3344633856,3344637951,CH 3344637952,3344649215,US 3344649216,3344650239,PR @@ -88431,7 +91245,9 @@ 3344660480,3344670719,US 3344670720,3344671743,GP 3344671744,3344676863,US -3344676864,3344677407,CA +3344676864,3344677247,CA +3344677248,3344677263,US +3344677264,3344677407,CA 3344677408,3344677423,US 3344677424,3344678911,CA 3344678912,3344681983,US @@ -88475,7 +91291,8 @@ 3345332640,3345332655,US 3345332656,3345332663,RO 3345332664,3345333247,US -3345333248,3345334271,MF +3345333248,3345333503,GP +3345333504,3345334271,MF 3345334272,3345334527,A1 3345334528,3345335295,US 3345335296,3345335551,A1 @@ -88572,7 +91389,7 @@ 3346525184,3346528255,US 3346528256,3346529279,PR 3346529280,3346530303,CA -3346530304,3346591231,US +3346530304,3346591487,US 3346591488,3346591743,CA 3346591744,3346663167,US 3346663168,3346663423,CA @@ -88583,9 +91400,7 @@ 3346793472,3346793983,US 3346794496,3346923519,US 3346923520,3346989055,CA -3346989056,3346998527,US -3346998528,3346998783,CA -3346998784,3347015647,US +3346989056,3347015647,US 3347015648,3347015663,AE 3347015664,3347016703,US 3347016704,3347017727,CA @@ -88617,7 +91432,9 @@ 3349545728,3349545983,US 3349545984,3349551103,CA 3349551104,3349553663,US -3349553664,3349608447,CA +3349553664,3349605375,CA +3349605376,3349605631,US +3349605632,3349608447,CA 3349608448,3349609471,US 3349609472,3349610239,CA 3349610240,3349614591,US @@ -88674,7 +91491,9 @@ 3350548736,3350548991,CA 3350548992,3350561279,US 3350561280,3350561535,AP -3350561536,3350593535,US +3350561536,3350574591,US +3350574848,3350575103,CA +3350575104,3350593535,US 3350593536,3350605823,CA 3350605824,3350606847,US 3350606848,3350607871,CA @@ -88687,7 +91506,9 @@ 3350628352,3350642687,US 3350642688,3350643711,TC 3350643712,3350645759,US -3350645760,3350646783,CA +3350645760,3350645887,CA +3350645888,3350646015,RU +3350646016,3350646783,CA 3350646784,3350648831,US 3350648832,3350650623,CA 3350650624,3350650631,US @@ -88697,9 +91518,7 @@ 3350814976,3350815231,US 3350815232,3350823423,CA 3350823424,3350823935,US -3350823936,3350825727,CA -3350825728,3350825983,GB -3350825984,3350834687,CA +3350823936,3350834687,CA 3350834688,3350835199,US 3350835200,3350836735,CA 3350836736,3350836991,US @@ -88722,8 +91541,7 @@ 3351004160,3351005183,CA 3351005184,3351015423,US 3351015424,3351016447,CA -3351016448,3351027711,US -3351029760,3351030783,US +3351016448,3351030783,US 3351030784,3351031807,CA 3351031808,3351034879,US 3351034880,3351035903,CA @@ -88741,7 +91559,8 @@ 3351072768,3351074815,US 3351074816,3351076863,CA 3351076864,3351080959,US -3351080960,3351081983,AG +3351080960,3351081727,AG +3351081728,3351081983,DM 3351081984,3351086079,US 3351086080,3351087103,CA 3351087104,3351103487,US @@ -88775,8 +91594,8 @@ 3351359488,3351372799,US 3351372800,3351373823,BM 3351373824,3351376127,US -3351376128,3351376383,PR -3351376384,3351380223,US +3351376128,3351376639,PR +3351376640,3351380223,US 3351380224,3351380479,CA 3351380480,3351380735,US 3351380736,3351381759,CA @@ -88963,9 +91782,9 @@ 3353335336,3353335337,NL 3353335338,3353653503,US 3353653504,3353653759,GB -3353653760,3353656831,US -3353656832,3353657087,BM -3353657088,3353722367,US +3353653760,3353714431,US +3353714432,3353714687,BE +3353714688,3353722367,US 3353722368,3353722623,GB 3353722624,3353726975,US 3353726976,3353727231,IN @@ -89052,7 +91871,9 @@ 3355260928,3355262719,CA 3355262720,3355272189,US 3355272190,3355272190,EU -3355272191,3355310591,US +3355272191,3355308287,US +3355308288,3355308543,GB +3355308544,3355310591,US 3355310592,3355311103,CA 3355311104,3355319295,US 3355319296,3355320319,CA @@ -89305,8 +92126,7 @@ 3356052480,3356053247,BR 3356053248,3356054015,CL 3356054016,3356054527,US -3356054528,3356056575,BR -3356056832,3356057087,BR +3356054528,3356057087,BR 3356057088,3356057343,CO 3356057344,3356057599,BR 3356057600,3356057855,EC @@ -89333,14 +92153,16 @@ 3356076288,3356078079,BR 3356078080,3356078335,EC 3356078336,3356079359,CL +3356079360,3356079615,AR 3356079616,3356080127,MX 3356080128,3356080383,BR 3356080384,3356080639,MX +3356080640,3356080895,BR 3356080896,3356082431,NI 3356082432,3356082687,CL 3356082688,3356082943,AR 3356082944,3356083967,CL -3356083968,3356084223,BR +3356083968,3356084479,BR 3356084480,3356084735,CL 3356084736,3356085247,BR 3356085248,3356085759,CL @@ -89374,13 +92196,18 @@ 3356102400,3356102655,PA 3356102656,3356105727,CL 3356105728,3356106751,SV -3356106752,3356109263,BR +3356106752,3356107975,HN +3356107976,3356107983,IS +3356107984,3356109119,HN +3356109120,3356109135,FR +3356109136,3356109263,HN 3356109264,3356109271,DE -3356109272,3356109495,BR +3356109272,3356109495,HN 3356109496,3356109503,IT -3356109504,3356109687,BR +3356109504,3356109687,HN 3356109688,3356109695,CA -3356109696,3356113919,BR +3356109696,3356110847,HN +3356110848,3356113919,BR 3356113920,3356114943,UY 3356114944,3356123135,PE 3356123136,3356131839,AR @@ -89497,7 +92324,8 @@ 3356290304,3356290559,SV 3356290560,3356291071,CR 3356291072,3356293119,TT -3356293120,3356295167,AW +3356293120,3356293375,BO +3356293376,3356295167,AW 3356295168,3356297215,CL 3356297216,3356299263,BR 3356299264,3356305663,MX @@ -89510,13 +92338,11 @@ 3356332032,3356334079,CU 3356334080,3356336127,BO 3356336128,3356336895,SV -3356336896,3356337663,HN -3356337664,3356337919,SV -3356337920,3356338175,HN +3356336896,3356338175,HN 3356338176,3356339967,SV 3356339968,3356341247,HN -3356341248,3356341759,SV -3356341760,3356342271,HN +3356341248,3356341503,SV +3356341504,3356342271,HN 3356342272,3356343039,SV 3356343040,3356343551,HN 3356343552,3356344319,SV @@ -89545,8 +92371,8 @@ 3356390656,3356391167,CL 3356391168,3356391423,PA 3356393472,3356413439,CL -3356413440,3356413951,CO -3356413952,3356419839,CL +3356413440,3356413823,CO +3356413824,3356419839,CL 3356419840,3356419967,CO 3356419968,3356420863,CL 3356420864,3356421375,CO @@ -89651,12 +92477,7 @@ 3357442392,3357442395,HN 3357442396,3357442559,GT 3357442560,3357442815,NI -3357442816,3357442847,GT -3357442848,3357442879,SV -3357442880,3357442959,GT -3357442960,3357442967,SV -3357442968,3357443007,GT -3357443008,3357443071,SV +3357442816,3357443071,SV 3357443072,3357443327,NI 3357443328,3357443583,GT 3357443584,3357444351,HN @@ -89731,12 +92552,8 @@ 3357477432,3357477543,AR 3357477544,3357477551,EC 3357477552,3357477887,AR -3357477888,3357478911,CO -3357478912,3357479063,AR -3357479064,3357479071,CO -3357479072,3357479135,AR -3357479136,3357479151,CO -3357479152,3357479183,AR +3357477888,3357479167,CO +3357479168,3357479183,AR 3357479184,3357479191,CO 3357479192,3357479215,AR 3357479216,3357479223,CO @@ -89752,7 +92569,9 @@ 3357480336,3357480343,CO 3357480344,3357480359,AR 3357480360,3357480367,CO -3357480368,3357480463,AR +3357480368,3357480407,AR +3357480408,3357480415,CO +3357480416,3357480463,AR 3357480464,3357480479,CO 3357480480,3357480511,AR 3357480512,3357480543,CO @@ -89776,7 +92595,9 @@ 3357559936,3357560063,VE 3357560064,3357560159,AR 3357560160,3357560167,VE -3357560168,3357560199,AR +3357560168,3357560175,AR +3357560176,3357560183,VE +3357560184,3357560199,AR 3357560200,3357560207,VE 3357560208,3357560247,AR 3357560248,3357560255,VE @@ -89856,8 +92677,7 @@ 3358133760,3358142719,AR 3358142720,3358142975,US 3358142976,3358143231,CO -3358143232,3358143295,VE -3358143296,3358143487,AR +3358143232,3358143487,VE 3358143488,3358143999,US 3358144000,3358144127,CL 3358144128,3358144255,AR @@ -89868,8 +92688,8 @@ 3358149704,3358149719,AR 3358149720,3358149727,CO 3358149728,3358150015,AR -3358150016,3358150399,CO -3358150400,3358150423,AR +3358150016,3358150143,CO +3358150144,3358150423,AR 3358150424,3358150431,CO 3358150432,3358150479,AR 3358150480,3358150655,CO @@ -89899,8 +92719,8 @@ 3358154752,3358158847,PE 3358158848,3358159159,AR 3358159160,3358159167,US -3358159168,3358159487,AR -3358159488,3358159615,EC +3358159168,3358159359,AR +3358159360,3358159615,EC 3358159616,3358159871,US 3358159872,3358160895,VE 3358160896,3358236671,AR @@ -89916,8 +92736,8 @@ 3358523904,3358524415,AR 3358524416,3358525951,VE 3358525952,3358526463,AR -3358526464,3358529535,VE -3358529536,3358530303,AR +3358526464,3358527487,VE +3358527488,3358530303,AR 3358530304,3358530943,VE 3358530944,3358531071,AR 3358531072,3358531583,VE @@ -89939,9 +92759,13 @@ 3358548224,3358548479,AR 3358548480,3358549759,VE 3358549760,3358550015,AR -3358550016,3358553599,VE +3358550016,3358552063,VE +3358552064,3358553087,AR +3358553088,3358553599,VE 3358553600,3358553855,AR -3358553856,3358556159,VE +3358553856,3358554879,VE +3358554880,3358555135,AR +3358555136,3358556159,VE 3358556160,3358558463,AR 3358558464,3358558591,PY 3358558592,3358559231,AR @@ -89951,31 +92775,7 @@ 3358562304,3358563327,PE 3358563328,3358564095,CO 3358564096,3358564351,MX -3358564352,3358564415,AR -3358564416,3358564447,VE -3358564448,3358564479,AR -3358564480,3358564511,VE -3358564512,3358564575,AR -3358564576,3358564607,VE -3358564608,3358564623,AR -3358564624,3358564719,VE -3358564720,3358564751,AR -3358564752,3358564767,VE -3358564768,3358564783,AR -3358564784,3358564807,VE -3358564808,3358564815,AR -3358564816,3358564839,VE -3358564840,3358564847,AR -3358564848,3358565183,VE -3358565184,3358565247,AR -3358565248,3358565311,VE -3358565312,3358565343,AR -3358565344,3358565375,VE -3358565376,3358566399,AR -3358566400,3358566847,VE -3358566848,3358566879,AR -3358566880,3358566911,VE -3358566912,3358566975,AR +3358564352,3358566975,AR 3358566976,3358567103,VE 3358567104,3358567167,AR 3358567168,3358567231,VE @@ -90084,9 +92884,7 @@ 3359520768,3359522815,US 3359522816,3359539199,NI 3359539200,3359571967,PE -3359571968,3359579647,AR -3359579648,3359579903,US -3359579904,3359582207,AR +3359571968,3359582207,AR 3359582208,3359584255,PA 3359584256,3359586303,AR 3359586304,3359588351,CL @@ -90097,7 +92895,9 @@ 3359621120,3359637503,EC 3359637504,3359789583,MX 3359789584,3359789599,US -3359789600,3359797247,MX +3359789600,3359789823,MX +3359789824,3359789887,US +3359789888,3359797247,MX 3359797248,3359801343,BR 3359801344,3359899647,MX 3359899648,3359916031,CL @@ -90117,34 +92917,24 @@ 3360120832,3360124927,CO 3360124928,3360125951,VE 3360125952,3360127999,BR -3360128000,3360129023,HN +3360128000,3360128319,HN +3360128320,3360128327,IT +3360128328,3360128543,HN +3360128544,3360128575,US +3360128576,3360129023,HN 3360129024,3360145407,VE 3360145408,3360153599,CL 3360153600,3360157695,AR 3360157696,3360159743,VE 3360159744,3360161791,BQ -3360161792,3360227327,CL -3360227328,3360228095,CO -3360228096,3360228991,CL -3360228992,3360229007,CO +3360161792,3360229007,CL 3360229008,3360229012,US 3360229013,3360229013,CL 3360229014,3360229023,US -3360229024,3360231423,CO -3360231424,3360231775,CL +3360229024,3360231775,CL 3360231776,3360231807,US -3360231808,3360231935,CL -3360231936,3360232447,CO -3360232448,3360232703,CL -3360232704,3360235263,CO -3360235264,3360235271,CL -3360235272,3360235487,CO -3360235488,3360235495,CL -3360235496,3360236303,CO -3360236304,3360236311,CL -3360236312,3360243711,CO -3360243712,3360243967,CL -3360243968,3360244479,CO +3360231808,3360244223,CL +3360244224,3360244479,CO 3360244480,3360244735,CL 3360244736,3360245759,CO 3360245760,3360246783,CL @@ -90220,8 +93010,8 @@ 3360692736,3360692799,AR 3360692800,3360692863,CO 3360692864,3360693247,AR -3360693248,3360693311,CO -3360693312,3360693343,AR +3360693248,3360693279,CO +3360693280,3360693343,AR 3360693344,3360693407,CO 3360693408,3360693423,AR 3360693424,3360693503,CO @@ -90260,8 +93050,8 @@ 3360708096,3360708223,AR 3360708224,3360708351,US 3360708352,3360708479,AR -3360708480,3360708735,US -3360708736,3360708991,AR +3360708480,3360708863,US +3360708864,3360708991,AR 3360708992,3360709247,US 3360709248,3360709631,AR 3360709632,3360709759,US @@ -90279,7 +93069,11 @@ 3360780304,3360780319,BR 3360780320,3360780399,AR 3360780400,3360780415,BR -3360780416,3360781839,AR +3360780416,3360780991,AR +3360780992,3360780995,BR +3360780996,3360781791,AR +3360781792,3360781795,MX +3360781796,3360781839,AR 3360781840,3360781847,DO 3360781848,3360781943,AR 3360781944,3360781947,MX @@ -90383,8 +93177,8 @@ 3362447360,3362448895,HN 3362448896,3362449151,SV 3362449152,3362449407,HN -3362449408,3362451199,SV -3362451200,3362451455,HN +3362449408,3362450431,SV +3362450432,3362451455,HN 3362451456,3362452479,AR 3362452480,3362452991,BO 3362452992,3362453247,HN @@ -90416,7 +93210,9 @@ 3362552144,3362552159,PR 3362552160,3362553023,AR 3362553024,3362553039,PR -3362553040,3362553247,AR +3362553040,3362553167,AR +3362553168,3362553183,DO +3362553184,3362553247,AR 3362553248,3362553263,CO 3362553264,3362553855,AR 3362553856,3362557951,PY @@ -90935,8 +93731,8 @@ 3389123584,3389123839,ID 3389123840,3389124351,AU 3389124352,3389124607,SG -3389124608,3389128703,PG -3389128704,3389129727,AU +3389124608,3389128447,PG +3389128448,3389129727,AU 3389129728,3389132799,NZ 3389132800,3389136895,AU 3389136896,3389142015,HK @@ -90968,7 +93764,9 @@ 3389214720,3389218815,NZ 3389218816,3389222911,AU 3389222912,3389223935,US -3389223936,3389227007,IN +3389223936,3389226239,IN +3389226240,3389226495,AU +3389226496,3389227007,IN 3389227008,3389227519,CN 3389227520,3389228031,PK 3389228032,3389228799,AU @@ -91022,6 +93820,7 @@ 3389326336,3389326847,TW 3389326848,3389327359,AU 3389327360,3389329407,TW +3389329408,3389333503,PH 3389333504,3389341695,BD 3389341696,3389345791,JP 3389345792,3389349887,TH @@ -91084,6 +93883,7 @@ 3389458432,3389460479,AU 3389460480,3389464575,JP 3389464576,3389469695,NZ +3389469696,3389470719,KH 3389471232,3389471487,IN 3389471744,3389472767,NZ 3389472768,3389480959,AU @@ -91138,6 +93938,7 @@ 3389600512,3389601791,CN 3389601792,3389602047,AU 3389602048,3389602815,CN +3389602816,3389603839,HK 3389604096,3389604351,AU 3389604352,3389604863,SG 3389605120,3389605375,ID @@ -91191,6 +93992,7 @@ 3389802496,3389802751,CN 3389802752,3389803263,TH 3389803264,3389803519,ID +3389803520,3389804543,TW 3389804544,3389805567,IN 3389805568,3389806079,CN 3389806080,3389807359,AU @@ -91221,6 +94023,7 @@ 3389847552,3389849599,NZ 3389849600,3389915135,JP 3389915136,3389916159,AU +3389916160,3389917183,HK 3389917184,3389919231,SG 3389919232,3389931519,NZ 3389931520,3389932031,CN @@ -91258,6 +94061,7 @@ 3389944832,3389945087,AU 3389945088,3389945343,TH 3389945344,3389945855,CN +3389945856,3389946879,IN 3389946880,3389947391,CN 3389947392,3389947647,AU 3389947648,3389947903,CN @@ -91280,8 +94084,7 @@ 3389957376,3389957631,KR 3389957632,3389957887,AU 3389957888,3389958399,NZ -3389958400,3389959167,CN -3389960192,3389960447,CN +3389958400,3389960447,CN 3389960448,3389962239,AU 3389962240,3389962751,CN 3389962752,3389963007,AU @@ -91377,7 +94180,9 @@ 3390447360,3390447615,ID 3390447616,3390455807,KR 3390455808,3390472191,JP -3390472192,3390480383,NC +3390472192,3390472703,NC +3390472704,3390472959,FR +3390472960,3390480383,NC 3390480384,3390484479,AU 3390484480,3390488575,GU 3390488576,3390492671,BD @@ -91476,6 +94281,7 @@ 3391725568,3391733759,TH 3391733760,3391734015,CN 3391734016,3391734783,AU +3391734784,3391736831,CN 3391736832,3391737855,IN 3391737856,3391741951,JP 3391741952,3391746047,IN @@ -91523,6 +94329,7 @@ 3391881216,3391885311,TH 3391885312,3391889407,CN 3391889408,3391893503,TH +3391893504,3391894527,CN 3391894528,3391895551,TH 3391895552,3391896575,IN 3391896576,3391897599,NZ @@ -91563,9 +94370,9 @@ 3391954944,3391971327,HK 3391971328,3391979519,AU 3391979520,3391979775,HK -3391979776,3391979955,JP +3391979776,3391979955,CN 3391979956,3391979957,AP -3391979958,3391980031,JP +3391979958,3391980031,CN 3391980032,3391980543,HK 3391980544,3391983615,MY 3391983616,3391984639,NP @@ -91649,6 +94456,7 @@ 3392385024,3392389119,BD 3392389120,3392401407,ID 3392401408,3392403455,SG +3392403456,3392404479,IN 3392404480,3392405503,ID 3392405504,3392406015,NP 3392406016,3392406527,IN @@ -91699,7 +94507,6 @@ 3392444928,3392445183,JP 3392445184,3392445439,NZ 3392445440,3392445695,ID -3392445696,3392445951,IN 3392445952,3392446463,AU 3392446464,3392450559,PH 3392450560,3392454655,JP @@ -91751,6 +94558,7 @@ 3392733184,3392741375,ID 3392741376,3392765951,PH 3392765952,3392782335,TH +3392788480,3392789503,CN 3392789504,3392790527,HK 3392790528,3392794623,JP 3392794624,3392798975,CN @@ -91766,6 +94574,7 @@ 3392823296,3392824319,KH 3392824320,3392824831,AU 3392824832,3392825343,IN +3392827392,3392828415,CN 3392828416,3392829439,JP 3392829440,3392830463,IN 3392830464,3392830719,ID @@ -92080,9 +94889,9 @@ 3394011136,3394027519,AU 3394027520,3394035711,JP 3394035712,3394039807,MY -3394039808,3394040319,SG -3394040320,3394040575,IN -3394040576,3394041855,SG +3394039808,3394040575,SG +3394040576,3394040831,IN +3394040832,3394041855,SG 3394041856,3394042879,AU 3394042880,3394043903,CN 3394043904,3394060287,HK @@ -92242,7 +95051,10 @@ 3394832384,3394834431,CN 3394834432,3394834559,HK 3394834560,3394834575,JP -3394834576,3394834687,HK +3394834576,3394834591,HK +3394834592,3394834599,JP +3394834600,3394834607,SG +3394834608,3394834687,HK 3394834688,3394834943,JP 3394834944,3394834959,HK 3394834960,3394834975,JP @@ -92264,8 +95076,10 @@ 3394838528,3394846719,NZ 3394846720,3394850815,IN 3394850816,3394854911,JP +3394854912,3394855935,CN 3394855936,3394856959,AU 3394856960,3394857983,IN +3394857984,3394859007,CN 3394859008,3394860031,JP 3394860032,3394860543,ID 3394860544,3394860799,IN @@ -92429,7 +95243,14 @@ 3397070848,3397074943,PH 3397074944,3397083135,HK 3397083136,3397087231,CN -3397091328,3397099519,GU +3397087232,3397088255,JP +3397088256,3397090303,CN +3397090304,3397091327,TW +3397091328,3397093375,GU +3397093376,3397093631,MP +3397093632,3397095679,GU +3397095680,3397095935,MP +3397095936,3397099519,GU 3397099520,3397103615,HK 3397103616,3397105663,LA 3397105664,3397107711,JP @@ -92509,8 +95330,9 @@ 3397337088,3397338375,HK 3397338376,3397338379,JP 3397338380,3397339647,HK -3397339648,3397339903,SG -3397339904,3397341183,HK +3397339648,3397339687,SG +3397339688,3397340927,HK +3397340928,3397341183,TH 3397341184,3397345279,JP 3397345280,3397349375,ID 3397349376,3397363711,CN @@ -92563,8 +95385,7 @@ 3397507840,3397508095,IN 3397508096,3397509119,PH 3397509120,3397510143,ID -3397510144,3397510911,FJ -3397510912,3397511167,AU +3397510144,3397511167,FJ 3397511168,3397512191,LK 3397512192,3397512447,KH 3397512448,3397512703,AU @@ -92616,12 +95437,13 @@ 3397738496,3397742591,MY 3397742592,3397746687,JP 3397746688,3397763071,TH +3397763072,3397771263,PH 3397771264,3397779455,TW 3397779456,3397781503,ID 3397781504,3397783551,BD 3397783552,3397785599,VN -3397785600,3397787647,TO -3397787648,3397791743,AU +3397785600,3397787391,TO +3397787392,3397791743,AU 3397791744,3397791999,NZ 3397792000,3397792767,AU 3397792768,3397793023,IN @@ -92639,7 +95461,9 @@ 3397845248,3397845503,AU 3397845504,3397846015,JP 3397846016,3397846271,AU -3397846272,3397857791,JP +3397846272,3397854719,JP +3397854720,3397854975,NZ +3397854976,3397857791,JP 3397857792,3397858559,AU 3397858560,3397861887,JP 3397861888,3397862399,PH @@ -92667,6 +95491,7 @@ 3397959680,3397963775,JP 3397963776,3397971967,CN 3397971968,3397974015,LA +3397974016,3397975039,CN 3397975040,3397976063,AU 3397976064,3397984255,ID 3397984256,3397992447,JP @@ -92700,6 +95525,7 @@ 3398180864,3398189055,IN 3398189056,3398205439,HK 3398207488,3398208511,IN +3398208512,3398209535,CN 3398213632,3398221823,TW 3398221824,3398230015,JP 3398230016,3398238207,HK @@ -92770,7 +95596,11 @@ 3398639904,3398639907,MY 3398639908,3398640671,AP 3398640672,3398640695,SG -3398640696,3398647807,AP +3398640696,3398642431,AP +3398642432,3398642687,AU +3398642688,3398646783,AP +3398646784,3398647039,AU +3398647040,3398647807,AP 3398647808,3398655999,IN 3398656000,3398668287,AU 3398668288,3398672383,CN @@ -92917,7 +95747,9 @@ 3399662592,3399663615,IN 3399663616,3399671807,ID 3399671808,3399679999,IN -3399680000,3399688191,HK +3399680000,3399680303,HK +3399680304,3399680319,DE +3399680320,3399688191,HK 3399688192,3399696383,SG 3399696384,3399712767,PK 3399712768,3399720959,KR @@ -92975,17 +95807,18 @@ 3399950336,3399954943,AU 3399954944,3399974911,US 3399974912,3399979007,HK -3399979008,3399983744,US +3399979008,3399982963,US +3399982964,3399982965,AP +3399982966,3399983744,US 3399983745,3399983745,SG 3399983746,3399991295,US 3399991296,3399995391,IN 3399995392,3399999487,KR -3399999488,3400000475,SG -3400000476,3400000479,US -3400000480,3400000487,AU -3400000488,3400002303,SG -3400002304,3400002367,HK -3400002368,3400006143,SG +3399999488,3400000255,SG +3400000256,3400000511,AU +3400000512,3400004607,SG +3400004608,3400004863,AU +3400004864,3400006143,SG 3400006144,3400006399,AP 3400006400,3400007679,SG 3400007680,3400024063,AU @@ -93064,6 +95897,10 @@ 3400343552,3400351743,TW 3400351744,3400359935,ID 3400359936,3400364031,JP +3400364032,3400365055,CN +3400365056,3400366079,US +3400366080,3400367103,CN +3400367104,3400368127,IN 3400368128,3400388607,AU 3400388608,3400392703,TH 3400392704,3400400895,CN @@ -93084,11 +95921,14 @@ 3400431616,3400431871,IN 3400431872,3400432127,HK 3400432128,3400432639,IN +3400432640,3400433663,CN 3400433664,3400435711,HK 3400435712,3400436223,BD 3400436224,3400441599,HK 3400441600,3400441855,AU -3400441856,3400450047,NZ +3400441856,3400446079,NZ +3400446080,3400446207,AU +3400446208,3400450047,NZ 3400450048,3400458239,JP 3400458240,3400466431,AU 3400466432,3400499199,MO @@ -93109,17 +95949,13 @@ 3400608768,3400609791,IN 3400609792,3400630271,JP 3400630272,3400646655,IN -3400646656,3400647935,SG -3400647936,3400648191,AU +3400646656,3400647679,SG +3400647680,3400648191,AU 3400648192,3400648677,SG 3400648678,3400648678,HK 3400648679,3400648815,SG 3400648816,3400648831,HK -3400648832,3400649943,SG -3400649944,3400649951,HK -3400649952,3400650143,SG -3400650144,3400650159,HK -3400650160,3400650409,SG +3400648832,3400650409,SG 3400650410,3400650410,AU 3400650411,3400650751,SG 3400650752,3400654847,AU @@ -93198,7 +96034,21 @@ 3401545728,3401547775,BD 3401547776,3401580543,IN 3401580544,3402629119,CN -3402629120,3405774847,JP +3402629120,3402917631,JP +3402917632,3402917785,US +3402917786,3402917786,JP +3402917787,3402917887,US +3402917888,3403081983,JP +3403081984,3403082239,US +3403082240,3404630783,JP +3404630784,3404631295,US +3404631296,3404632319,JP +3404632320,3404632575,US +3404632576,3404720639,JP +3404720640,3404720678,US +3404720679,3404720679,JP +3404720680,3404720895,US +3404720896,3405774847,JP 3405774848,3405775871,AU 3405775872,3405776895,CN 3405776896,3405777407,AU @@ -94054,8 +96904,8 @@ 3407377664,3407378943,AU 3407378944,3407379455,CN 3407379456,3407382015,AU -3407382016,3407382527,JP -3407382528,3407384831,AU +3407382016,3407382271,JP +3407382272,3407384831,AU 3407384832,3407385087,CN 3407385088,3407386623,AU 3407386624,3407387135,CN @@ -94800,9 +97650,8 @@ 3409871872,3409873663,AU 3409873664,3409873919,CN 3409873920,3409875967,AU -3409875968,3409876839,JP -3409876840,3409876847,AU -3409876848,3409876991,JP +3409875968,3409876735,JP +3409876736,3409876991,AU 3409876992,3409878015,TH 3409878016,3409879295,AU 3409879296,3409879551,CN @@ -95006,7 +97855,7 @@ 3411673088,3411674111,CN 3411674112,3411674623,IN 3411674624,3411675135,HK -3411675136,3411676159,CN +3411675136,3411677183,CN 3411677184,3411679231,JP 3411679232,3411681279,AU 3411681280,3411689471,KR @@ -95119,15 +97968,11 @@ 3412598784,3412602879,CN 3412602880,3412606975,NC 3412606976,3412615167,PH -3412615168,3412631551,JP -3412631552,3412639743,KR -3412639744,3412656127,JP +3412615168,3412656127,JP 3412656128,3412672511,HK 3412672512,3412675071,JP 3412675072,3412675327,US -3412675328,3412679679,JP -3412679680,3412679935,US -3412679936,3412680191,JP +3412675328,3412680191,JP 3412680192,3412680447,US 3412680448,3412680703,JP 3412680704,3412697087,CN @@ -95147,7 +97992,10 @@ 3413008384,3413016575,JP 3413016576,3413024767,AU 3413024768,3413032959,CN -3413032960,3413037055,AU +3413032960,3413033215,US +3413033216,3413035263,AU +3413035264,3413035519,US +3413035520,3413037055,AU 3413037056,3413041151,CN 3413041152,3413043199,JP 3413043200,3413043967,CN @@ -95160,6 +98008,7 @@ 3413106688,3413110783,PH 3413110784,3413112831,JP 3413112832,3413113855,IN +3413113856,3413114879,HK 3413114880,3413133311,JP 3413133312,3413135359,BD 3413135360,3413135615,AP @@ -95181,6 +98030,7 @@ 3413245952,3413251071,MY 3413251072,3413262335,JP 3413262336,3413263359,PH +3413263360,3413264383,IN 3413270528,3413278719,TH 3413278720,3413295103,NZ 3413295104,3413303295,JP @@ -95244,7 +98094,7 @@ 3413593600,3413593855,SG 3413593856,3413594111,KH 3413594112,3413595135,CN -3413595136,3413595391,NZ +3413595136,3413595391,AU 3413595392,3413595647,CN 3413595648,3413595903,AU 3413595904,3413596159,HK @@ -95380,7 +98230,9 @@ 3415195648,3415199743,NZ 3415199744,3415220223,AU 3415220224,3415224319,NZ -3415224320,3415228415,US +3415224320,3415224831,US +3415224832,3415225087,AU +3415225088,3415228415,US 3415228416,3415236607,KH 3415236608,3415244799,CN 3415244800,3415277567,TH @@ -95430,6 +98282,7 @@ 3415814656,3415815167,TH 3415815168,3415816191,IN 3415816192,3415817215,JP +3415817216,3415818239,MY 3415818240,3415822335,JP 3415822336,3415826431,MY 3415826432,3415834623,ID @@ -95494,9 +98347,9 @@ 3416474584,3416474599,AU 3416474600,3416474639,JP 3416474640,3416474647,NZ -3416474648,3416475439,JP -3416475440,3416475455,NZ -3416475456,3416482047,JP +3416474648,3416475391,JP +3416475392,3416475647,NZ +3416475648,3416482047,JP 3416482048,3416482055,SG 3416482056,3416489755,JP 3416489756,3416489759,AU @@ -95507,7 +98360,9 @@ 3416522752,3416588287,AU 3416588288,3416653823,JP 3416653824,3416667135,AU -3416667136,3416668159,US +3416667136,3416667647,US +3416667648,3416667903,AU +3416667904,3416668159,US 3416668160,3416686591,AU 3416686592,3416694783,SG 3416694784,3416702975,CN @@ -95710,6 +98565,7 @@ 3418184960,3418185727,AU 3418185728,3418189823,JP 3418189824,3418190847,CN +3418190848,3418191871,TH 3418191872,3418192895,ID 3418192896,3418193919,AU 3418193920,3418202111,KH @@ -95733,7 +98589,7 @@ 3418251264,3418255359,CN 3418255360,3418257407,ID 3418257408,3418257663,HK -3418257664,3418257919,AU +3418257664,3418257919,JP 3418257920,3418259455,HK 3418259456,3418267647,IN 3418267648,3418271743,VN @@ -95779,17 +98635,27 @@ 3418382336,3418390527,JP 3418390528,3418391039,AP 3418391040,3418391295,AU -3418391296,3418393793,AP +3418391296,3418392575,AP +3418392576,3418392831,AU +3418392832,3418393793,AP 3418393794,3418393794,JP 3418393795,3418393919,AP 3418393920,3418393927,AU 3418393928,3418394367,AP 3418394368,3418394623,TW -3418394624,3418399231,AP +3418394624,3418397695,AP +3418397696,3418397951,HK +3418397952,3418399231,AP 3418399232,3418399247,PH -3418399248,3418401455,AP +3418399248,3418400255,AP +3418400256,3418400511,AU +3418400512,3418400861,AP +3418400862,3418400862,SG +3418400863,3418401455,AP 3418401456,3418401459,TW -3418401460,3418406911,AP +3418401460,3418405887,AP +3418405888,3418406143,PH +3418406144,3418406911,AP 3418406912,3418423295,IN 3418423296,3418444091,HK 3418444092,3418444095,CN @@ -95858,8 +98724,12 @@ 3419209728,3419226111,VN 3419226112,3419234303,CN 3419234304,3419239423,JP -3419239424,3419239679,US -3419239680,3419242495,JP +3419239424,3419239935,US +3419239936,3419240449,JP +3419240450,3419240450,US +3419240451,3419241983,JP +3419241984,3419242239,US +3419242240,3419242495,JP 3419242496,3419275263,CN 3419275264,3419340799,AU 3419340800,3419344895,TW @@ -95877,7 +98747,11 @@ 3419412480,3419414527,PH 3419414528,3419422719,CN 3419422720,3419439103,AU -3419439104,3419470591,SG +3419439104,3419442463,SG +3419442464,3419442479,HK +3419442480,3419456767,SG +3419456768,3419457023,US +3419457024,3419470591,SG 3419470592,3419470847,AP 3419470848,3419471871,SG 3419471872,3419504639,TH @@ -95923,7 +98797,10 @@ 3419774976,3419783167,JP 3419783168,3419791359,PH 3419791360,3419873279,AU -3419873280,3419877375,AF +3419873280,3419873535,US +3419873536,3419873791,AF +3419873792,3419874047,US +3419874048,3419877375,AF 3419877376,3419877631,ID 3419877632,3419877887,KH 3419877888,3419878143,ID @@ -95979,9 +98856,7 @@ 3420323840,3420332031,TW 3420332032,3420337439,AU 3420337440,3420337471,SG -3420337472,3420366063,AU -3420366064,3420366079,TW -3420366080,3420366959,AU +3420337472,3420366959,AU 3420366960,3420366975,KR 3420366976,3420367359,AU 3420367360,3420367615,AP @@ -96018,8 +98893,8 @@ 3420454912,3422000533,KR 3422000534,3422000537,AP 3422000538,3422552063,KR -3422552064,3422850815,US -3422850816,3422851071,GB +3422552064,3422850559,US +3422850560,3422851071,GB 3422851072,3422955519,US 3422955520,3422956799,FR 3422956800,3423076351,US @@ -96146,16 +99021,16 @@ 3425173504,3425304575,CA 3425304576,3425471487,US 3425471488,3425472511,CA -3425472512,3425697791,US +3425472512,3425484543,US +3425484544,3425484799,GU +3425484800,3425697791,US 3425697792,3425699839,CA 3425699840,3425714175,US 3425714176,3425722367,CA 3425722368,3425828863,US 3425828864,3425846783,CA 3425846784,3425847039,EU -3425847040,3425869167,CA -3425869168,3425869183,US -3425869184,3425894399,CA +3425847040,3425894399,CA 3425894400,3426007807,US 3426007808,3426008063,EU 3426008064,3426013183,US @@ -96371,7 +99246,9 @@ 3428434944,3428435199,CA 3428435200,3428437503,US 3428437504,3428437759,MX -3428437760,3428582655,US +3428437760,3428582143,US +3428582144,3428582399,CA +3428582400,3428582655,US 3428582656,3428582911,CA 3428582912,3428585215,US 3428585216,3428585471,CA @@ -96451,9 +99328,7 @@ 3428646656,3428646911,CA 3428646912,3428660735,US 3428660736,3428661503,CA -3428661504,3428662271,US -3428662272,3428662527,A1 -3428662528,3428743167,US +3428661504,3428743167,US 3428743168,3428744191,CA 3428744192,3428752383,US 3428752384,3428753407,GH @@ -96471,7 +99346,9 @@ 3429892096,3429957631,CA 3429957632,3430073343,US 3430073344,3430073599,AP -3430073600,3430328831,US +3430073600,3430074111,US +3430074112,3430074367,AU +3430074368,3430328831,US 3430328832,3430329087,GH 3430329088,3430354943,US 3430354944,3430356991,PR @@ -96561,8 +99438,8 @@ 3431639040,3431641855,CA 3431641856,3431642623,US 3431642624,3431657471,CA -3431657472,3431658495,US -3431658496,3431661311,CA +3431657472,3431658751,US +3431658752,3431661311,CA 3431661312,3431745023,US 3431745024,3431745279,BE 3431745280,3431745791,US @@ -96613,7 +99490,9 @@ 3432606464,3432606719,GB 3432606720,3432613631,US 3432613632,3432613887,CA -3432613888,3432660991,US +3432613888,3432634111,US +3432634112,3432634367,CA +3432634368,3432660991,US 3432660992,3432663039,DE 3432663040,3432689151,US 3432689152,3432689663,CA @@ -96936,9 +99815,7 @@ 3449189376,3449189887,US 3449189888,3449190655,CA 3449190656,3449190911,US -3449190912,3449191167,CA -3449191168,3449191423,US -3449191424,3449191679,CA +3449190912,3449191679,CA 3449191680,3449192447,US 3449192448,3449195775,CA 3449195776,3449196031,US @@ -96979,10 +99856,14 @@ 3449575424,3449575679,AU 3449575680,3449582848,US 3449582849,3449582849,EU -3449582850,3449638911,US -3449638912,3449639167,GB -3449639168,3449639423,US -3449639424,3449639679,GB +3449582850,3449593855,US +3449593856,3449594111,AU +3449594112,3449599999,US +3449600000,3449600255,CA +3449600256,3449638911,US +3449638912,3449639186,GB +3449639187,3449639187,NL +3449639188,3449639679,GB 3449639680,3449639935,US 3449639936,3449640191,GB 3449640192,3449640447,NL @@ -96999,7 +99880,9 @@ 3449843200,3449843711,YE 3449843712,3449874687,US 3449874688,3449874943,AG -3449874944,3449923583,US +3449874944,3449884415,US +3449884416,3449884671,AS +3449884672,3449923583,US 3449923584,3449923839,ES 3449923840,3449974783,US 3449974784,3449976831,CA @@ -97046,7 +99929,9 @@ 3450852352,3450853375,CA 3450853376,3450935551,US 3450935552,3450935807,AP -3450935808,3450986495,US +3450935808,3450974335,US +3450974336,3450974463,GB +3450974464,3450986495,US 3450986496,3450986751,HK 3450986752,3451170303,US 3451170304,3451170559,VE @@ -97124,7 +100009,9 @@ 3452436480,3452502015,CA 3452502016,3452658431,US 3452658432,3452658687,HK -3452658688,3452678143,US +3452658688,3452663039,US +3452663040,3452663295,GB +3452663296,3452678143,US 3452678144,3452678399,EU 3452678400,3452715007,US 3452715008,3452723199,CA @@ -97227,7 +100114,9 @@ 3452813312,3452813567,US 3452813568,3452814079,CA 3452814080,3452814335,US -3452814336,3452816127,CA +3452814336,3452815359,CA +3452815360,3452815615,US +3452815616,3452816127,CA 3452816128,3452816511,US 3452816512,3452816527,CA 3452816528,3452816895,US @@ -97259,7 +100148,9 @@ 3452895232,3452895487,US 3452895488,3452902399,CA 3452902400,3452902655,US -3452902656,3452914175,CA +3452902656,3452912127,CA +3452912128,3452912383,US +3452912384,3452914175,CA 3452914176,3452914431,US 3452914432,3452919551,CA 3452919552,3452919807,US @@ -97421,7 +100312,9 @@ 3454808832,3454809087,US 3454809088,3454810111,CA 3454810112,3454810367,US -3454810368,3454814975,CA +3454810368,3454813951,CA +3454813952,3454814207,US +3454814208,3454814975,CA 3454814976,3454815231,US 3454815232,3454815743,CA 3454815744,3454816255,US @@ -97438,7 +100331,9 @@ 3454881792,3454883839,CA 3454883840,3454915071,US 3454915072,3454926591,CA -3454926592,3455035391,US +3454926592,3455017471,US +3455017472,3455017727,GB +3455017728,3455035391,US 3455035392,3455035903,AU 3455035904,3455096831,US 3455096832,3455097855,EC @@ -97560,7 +100455,9 @@ 3455713280,3455778815,CA 3455778816,3455871999,US 3455872000,3455872255,ZM -3455872256,3456303103,US +3455872256,3455903967,US +3455903968,3455903983,HK +3455903984,3456303103,US 3456303104,3456311295,JP 3456311296,3456360447,US 3456360448,3456364543,BG @@ -97737,14 +100634,17 @@ 3459455488,3459455743,US 3459455744,3459456511,CA 3459456512,3459456767,US -3459456768,3459458047,CA -3459458048,3459512319,US +3459456768,3459457279,CA +3459457280,3459457535,US +3459457536,3459457791,CA +3459457792,3459512319,US 3459512320,3459513855,CA 3459513856,3459592191,US 3459592192,3459596287,CA 3459596288,3459615743,US 3459615744,3459615999,CA -3459616512,3459616767,US +3459616000,3459616255,DM +3459616256,3459616767,US 3459616768,3459617791,CA 3459617792,3459617999,AP 3459618000,3459618000,ID @@ -97752,7 +100652,7 @@ 3459618048,3459618815,CA 3459618816,3459619071,AP 3459619072,3459620863,CA -3459620864,3459622911,US +3459620864,3459624959,US 3459624960,3459629055,BM 3459629056,3459686399,US 3459686400,3459688479,NL @@ -98013,7 +100913,9 @@ 3462634752,3462635007,SG 3462635008,3462635263,US 3462635264,3462635519,SG -3462635520,3462661375,US +3462635520,3462660295,US +3462660296,3462660303,GB +3462660304,3462661375,US 3462661376,3462661631,SG 3462661632,3463004159,US 3463004160,3463006207,CO @@ -98110,7 +101012,10 @@ 3464421632,3464421887,CA 3464421888,3464426495,US 3464426496,3464426751,GD -3464426752,3464548607,US +3464426752,3464428543,US +3464428800,3464429311,US +3464429312,3464429567,CA +3464429568,3464548607,US 3464548608,3464548863,LC 3464548864,3464549119,KN 3464549120,3464549375,VG @@ -98121,18 +101026,26 @@ 3464550144,3464550399,LC 3464550400,3464626175,US 3464626176,3464626687,CA -3464626688,3464627711,US +3464626688,3464627967,US 3464627968,3464628735,CA 3464628736,3464628991,US 3464628992,3464630271,CA 3464630272,3464631295,US 3464631296,3464642047,CA 3464642048,3464642559,US -3464642560,3464648703,CA +3464642560,3464642815,CA +3464642816,3464643071,US +3464643072,3464647935,CA +3464647936,3464648191,US +3464648192,3464648703,CA 3464648704,3464649215,US 3464649216,3464650239,CA -3464650240,3464664063,US -3464664064,3464691711,CA +3464650240,3464664319,US +3464664320,3464684543,CA +3464684544,3464684799,BL +3464684800,3464688383,CA +3464688384,3464688639,US +3464688640,3464691711,CA 3464691712,3464740863,US 3464740864,3464744959,PH 3464744960,3464769535,US @@ -98151,7 +101064,9 @@ 3465412608,3465412863,HK 3465412864,3465462783,US 3465462784,3465463039,GB -3465463040,3465510911,US +3465463040,3465468159,US +3465468160,3465468415,GB +3465468416,3465510911,US 3465510912,3465543679,JP 3465543680,3465962495,US 3465962496,3465962751,CA @@ -98169,8 +101084,8 @@ 3466072432,3466072439,CA 3466072440,3466072775,US 3466072776,3466072783,CA -3466072784,3466073055,US -3466073056,3466073087,CA +3466072784,3466072831,US +3466072832,3466073087,CA 3466073088,3466158079,US 3466158080,3466166271,PA 3466166272,3466290687,US @@ -98185,7 +101100,9 @@ 3466558208,3466558463,EC 3466558464,3466560255,US 3466560256,3466560511,GH -3466560512,3466734847,US +3466560512,3466714111,US +3466714112,3466714367,JP +3466714368,3466734847,US 3466734848,3466735103,RU 3466735104,3466756095,US 3466756096,3466772479,CA @@ -98344,7 +101261,9 @@ 3469176320,3469176575,MX 3469176576,3469186303,US 3469186304,3469186559,MX -3469186560,3469893631,US +3469186560,3469859583,US +3469859584,3469859839,CA +3469859840,3469893631,US 3469893632,3469901823,CA 3469901824,3469989887,US 3469989888,3469990399,CA @@ -98466,7 +101385,9 @@ 3475124224,3475243007,CA 3475243008,3475310847,US 3475310848,3475311103,DE -3475311104,3475589887,US +3475311104,3475358719,US +3475358720,3475358975,GB +3475358976,3475589887,US 3475589888,3475590143,EC 3475590144,3475670015,US 3475670016,3475670271,AG @@ -98485,7 +101406,7 @@ 3475882816,3475885951,US 3475885952,3475885983,CA 3475885984,3475896575,US -3475896576,3475896831,EU +3475896576,3475896831,FR 3475896832,3475897471,US 3475897472,3475897503,FR 3475897504,3475910847,US @@ -98509,7 +101430,9 @@ 3476349184,3476447231,US 3476447232,3476455423,CA 3476455424,3476545535,US -3476545536,3476547583,A2 +3476545536,3476546047,A2 +3476546048,3476547071,US +3476547072,3476547583,A2 3476547584,3476881407,US 3476881408,3476946943,CA 3476946944,3478114303,US @@ -98666,9 +101589,9 @@ 3481665536,3481731071,CA 3481731072,3481812991,US 3481812992,3481829375,CA -3481829376,3481843455,US -3481843456,3481843711,GB -3481843712,3481958271,US +3481829376,3481934591,US +3481934592,3481934847,CH +3481934848,3481958271,US 3481958272,3481958399,NL 3481958400,3481959020,US 3481959021,3481959021,GB @@ -98680,9 +101603,7 @@ 3481994240,3481994751,CA 3481994752,3481995007,US 3481995008,3481995263,CA -3481995264,3481995519,US -3481995520,3481995775,CA -3481995776,3481996031,US +3481995264,3481996031,US 3481996032,3481996287,CA 3481996288,3481996543,US 3481996544,3481997311,CA @@ -98756,7 +101677,9 @@ 3482040320,3482041087,US 3482041088,3482041343,CA 3482041344,3482041599,US -3482041600,3482042367,CA +3482041600,3482041855,CA +3482041856,3482042111,US +3482042112,3482042367,CA 3482042368,3482043903,US 3482043904,3482044927,CA 3482044928,3482045183,US @@ -98903,16 +101826,18 @@ 3485318144,3485327359,US 3485327360,3485335551,CA 3485335552,3485462527,US -3485462528,3485464575,VC -3485464576,3485464831,LC -3485464832,3485465599,VC -3485465600,3485466367,LC -3485466368,3485466623,VC +3485462528,3485465343,VC +3485465344,3485465599,LC +3485465600,3485466623,VC 3485466624,3485597695,US 3485597696,3485695999,CA 3485696000,3485959423,US 3485959424,3485960191,CA -3485960192,3486023679,US +3485960192,3485960703,US +3485960704,3485960959,CA +3485960960,3485970431,US +3485970432,3485970687,CA +3485970688,3486023679,US 3486023680,3486031871,CA 3486031872,3486269439,US 3486269440,3486285823,JM @@ -99117,8 +102042,9 @@ 3486702848,3487039487,US 3487039488,3487105023,CA 3487105024,3487172095,US -3487172096,3487172223,MX -3487172224,3487189247,US +3487172096,3487172351,MX +3487172352,3487188991,US +3487188992,3487189247,GB 3487189248,3487189503,DK 3487189504,3487197183,US 3487197184,3487197439,DK @@ -99128,7 +102054,9 @@ 3487236096,3487301631,CA 3487301632,3487706367,US 3487706368,3487706623,RU -3487706624,3487766527,US +3487706624,3487731199,US +3487731200,3487731455,CN +3487731456,3487766527,US 3487766528,3487768575,CA 3487768576,3487842303,US 3487842304,3487858687,CA @@ -99165,8 +102093,8 @@ 3488956416,3488989183,US 3488989184,3489005567,CA 3489005568,3489058047,US -3489058048,3489058063,GB -3489058064,3489136639,US +3489058048,3489058303,GB +3489058304,3489136639,US 3489136640,3489153535,MX 3489153536,3489154047,HN 3489154048,3489155583,MX @@ -99254,19 +102182,29 @@ 3492807156,3492807159,SE 3492807160,3492812759,US 3492812760,3492812763,JP -3492812764,3492820991,US -3492820992,3492821247,BE -3492821248,3492864767,US +3492812764,3492845823,US +3492845824,3492846079,CH +3492846080,3492864767,US 3492864768,3492865023,CA -3492865024,3492865279,US -3492865280,3492865535,GB -3492865536,3492877954,US +3492865024,3492867327,US +3492867328,3492867583,GB +3492867584,3492877954,US 3492877955,3492877955,CA -3492877956,3492906495,US +3492877956,3492893951,US +3492893952,3492893969,GB +3492893970,3492893971,US +3492893972,3492893983,GB +3492893984,3492894015,US +3492894016,3492894207,GB +3492894208,3492897023,US +3492897024,3492897279,GB +3492897280,3492906495,US 3492906496,3492906751,EU 3492906752,3492912127,US 3492912128,3492912383,GB -3492912384,3492926079,US +3492912384,3492921855,US +3492921856,3492922111,VI +3492922112,3492926079,US 3492926080,3492926095,EU 3492926096,3492933375,US 3492933376,3492933376,CA @@ -99278,27 +102216,19 @@ 3492957696,3492958207,VI 3492958208,3492960255,US 3492960256,3492960511,ES -3492960512,3492962559,US -3492962560,3492962815,GB -3492962816,3492965631,US -3492965632,3492965887,CA -3492965888,3492968191,US +3492960512,3492968191,US 3492968192,3492968447,GB 3492968448,3492969471,US 3492969472,3492969727,VI -3492969728,3492994815,US -3492994816,3492995071,GB -3492995072,3493011327,US -3493011328,3493011395,GB -3493011396,3493011396,US -3493011397,3493011455,GB -3493011456,3493029119,US -3493029120,3493029375,GB -3493029376,3493039359,US +3492969728,3492998911,US +3492998912,3492999167,GB +3492999168,3493009151,US +3493009152,3493009205,MX +3493009206,3493009206,US +3493009207,3493009407,MX +3493009408,3493039359,US 3493039360,3493039615,AR -3493039616,3493062911,US -3493062912,3493063167,DE -3493063168,3493069055,US +3493039616,3493069055,US 3493069056,3493069311,A2 3493069312,3493073151,US 3493073152,3493073407,BO @@ -99368,9 +102298,7 @@ 3494181632,3494181887,SN 3494181888,3494184959,US 3494184960,3494187007,CA -3494187008,3494191615,US -3494191616,3494191871,GB -3494191872,3494192383,US +3494187008,3494192383,US 3494192384,3494192639,JP 3494192640,3494197247,US 3494197248,3494198271,CA @@ -99398,7 +102326,9 @@ 3494359040,3494360063,CA 3494360064,3494361087,US 3494361088,3494362111,CA -3494362112,3494380543,US +3494362112,3494368255,US +3494368256,3494369279,CN +3494369280,3494380543,US 3494380544,3494381567,CA 3494381568,3494402559,US 3494402560,3494402815,GB @@ -99462,9 +102392,7 @@ 3494758400,3494776831,US 3494776832,3494777855,CA 3494777856,3494785023,US -3494785024,3494785535,MF -3494785536,3494785791,GP -3494785792,3494787071,MF +3494785024,3494787071,MF 3494787072,3494787327,A2 3494787328,3494787583,NG 3494787584,3494788095,A2 @@ -99527,6 +102455,7 @@ 3495215104,3495217151,VI 3495217152,3495219199,VC 3495219200,3495225343,US +3495225600,3495225855,US 3495225856,3495226111,GB 3495226624,3495226879,US 3495227392,3495251967,US @@ -99592,7 +102521,10 @@ 3495618560,3495619583,CA 3495619584,3495620607,US 3495620608,3495622655,CA -3495622656,3495673855,US +3495622656,3495651327,US +3495653376,3495654143,US +3495654144,3495654399,CA +3495654400,3495673855,US 3495673856,3495674879,MF 3495674880,3495675162,VG 3495675163,3495675163,US @@ -99626,7 +102558,9 @@ 3495864320,3495864831,DM 3495864832,3495865343,MF 3495865344,3495866367,US -3495866368,3495868415,LC +3495866368,3495867647,LC +3495867648,3495867903,VC +3495867904,3495868415,LC 3495868416,3495871487,US 3495871488,3495872511,CA 3495872512,3495881471,US @@ -99648,10 +102582,8 @@ 3496189952,3496190519,US 3496190520,3496190527,CA 3496190528,3496190719,US -3496190720,3496190735,CA -3496190736,3496190751,US -3496190752,3496190767,CA -3496190768,3496296447,US +3496190720,3496190975,CA +3496190976,3496296447,US 3496296448,3496312831,CA 3496312832,3496468479,US 3496468480,3496476671,CA @@ -99673,7 +102605,16 @@ 3497066496,3497082879,CA 3497082880,3497157375,US 3497157376,3497158143,A2 -3497158144,3497162495,US +3497158144,3497161735,US +3497161736,3497161743,MT +3497161744,3497161759,US +3497161760,3497161767,PT +3497161768,3497161775,MT +3497161776,3497161895,US +3497161896,3497161903,MT +3497161904,3497161935,US +3497161936,3497161943,MT +3497161944,3497162495,US 3497162496,3497162751,GB 3497162752,3497163007,NL 3497163008,3497163167,US @@ -99779,7 +102720,9 @@ 3502545664,3502545919,BS 3502545920,3502683135,US 3502683136,3502683391,MC -3502683392,3502993407,US +3502683392,3502718719,US +3502718720,3502718975,CA +3502718976,3502993407,US 3502993408,3502993919,NL 3502993920,3503206399,US 3503206400,3503206911,CR @@ -99812,7 +102755,9 @@ 3504207872,3504208127,CA 3504208128,3504223743,US 3504223744,3504223999,RO -3504224000,3504521215,US +3504224000,3504518399,US +3504518400,3504518655,CA +3504518656,3504521215,US 3504521216,3504521727,GU 3504521728,3504889343,US 3504889344,3504889855,PK @@ -99863,7 +102808,11 @@ 3507012608,3507012639,GR 3507012640,3507025407,US 3507025408,3507025663,IQ -3507025664,3507290111,US +3507025664,3507055103,US +3507055104,3507055359,CN +3507055360,3507060735,US +3507060736,3507060991,CN +3507060992,3507290111,US 3507290112,3507355647,AR 3507355648,3507427583,US 3507427584,3507427839,CA @@ -100086,8 +103035,8 @@ 3509532928,3509533439,CA 3509533440,3509534719,US 3509534720,3509535231,CA -3509535232,3509535743,US -3509535744,3509535999,CA +3509535232,3509535487,US +3509535488,3509535999,CA 3509536000,3509536255,US 3509536256,3509536767,CA 3509536768,3509537279,US @@ -100100,7 +103049,9 @@ 3509539968,3509540031,CA 3509540032,3509540607,US 3509540608,3509541503,CA -3509541504,3509542911,US +3509541504,3509541887,US +3509541888,3509542143,CA +3509542144,3509542911,US 3509542912,3509543167,CA 3509543168,3509543423,US 3509543424,3509543935,CA @@ -100143,9 +103094,7 @@ 3509565184,3509566463,CA 3509566464,3509567231,US 3509567232,3509569023,CA -3509569024,3509569535,US -3509569536,3509569791,CA -3509569792,3509572351,US +3509569024,3509572351,US 3509572352,3509573375,CA 3509573376,3509573439,US 3509573440,3509573455,CA @@ -100209,9 +103158,10 @@ 3510268928,3510269951,US 3510269952,3510270719,LY 3510270720,3510270975,SY -3510270976,3510284298,US -3510284299,3510284299,SG -3510284300,3510321151,US +3510270976,3510284287,US +3510284288,3510286335,SG +3510286336,3510288383,HK +3510288384,3510321151,US 3510321152,3510321663,VG 3510321664,3510321919,AG 3510321920,3510322175,KN @@ -100251,9 +103201,7 @@ 3510935552,3510943743,CA 3510943744,3511140351,US 3511140352,3511156735,CA -3511156736,3511258367,US -3511258368,3511258623,A1 -3511258624,3511812095,US +3511156736,3511812095,US 3511812096,3511844863,CA 3511844864,3512012095,US 3512012096,3512012159,GB @@ -100354,8 +103302,8 @@ 3512459520,3512459775,US 3512459776,3512460031,PR 3512460032,3512460287,US -3512460288,3512460543,PR -3512460544,3512461055,US +3512460288,3512460799,PR +3512460800,3512461055,US 3512461056,3512463103,PR 3512463104,3512463359,US 3512463360,3512464639,PR @@ -100413,7 +103361,11 @@ 3512594176,3512594431,MY 3512594432,3512647679,US 3512647680,3512655871,TT -3512655872,3512844287,US +3512655872,3512679511,US +3512679512,3512679515,HK +3512679516,3512680339,US +3512680340,3512680340,SG +3512680341,3512844287,US 3512844288,3512852479,CA 3512852480,3512931583,US 3512931584,3512931839,CA @@ -100461,16 +103413,14 @@ 3514724636,3514724636,UA 3514724637,3514826751,US 3514826752,3514843135,CA -3514843136,3514993919,US -3514993920,3514993983,GB +3514843136,3514993983,US 3514993984,3514993987,FR 3514993988,3514993991,DE 3514993992,3514994007,GB 3514994008,3514994023,DK -3514994024,3514994049,GB +3514994024,3514994049,US 3514994050,3514994050,EU -3514994051,3514994175,GB -3514994176,3515211775,US +3514994051,3515211775,US 3515211776,3515219967,CA 3515219968,3515222271,US 3515222272,3515224831,TR @@ -100551,18 +103501,20 @@ 3517385984,3517387263,CA 3517387264,3517387519,US 3517387520,3517387775,CA -3517387776,3517388287,US -3517388288,3517388799,CA +3517387776,3517388031,US +3517388032,3517388799,CA 3517388800,3517389311,US 3517389312,3517389567,CA 3517389568,3517389823,US -3517389824,3517391103,CA -3517391104,3517391871,US +3517389824,3517390335,CA +3517390336,3517390591,US +3517390592,3517391103,CA +3517391104,3517391359,US +3517391360,3517391615,CA +3517391616,3517391871,US 3517391872,3517392127,CA 3517392128,3517392383,US -3517392384,3517392639,CA -3517392640,3517392895,US -3517392896,3517393407,CA +3517392384,3517393407,CA 3517393408,3517394431,US 3517394432,3517394943,CA 3517394944,3517395199,US @@ -100768,7 +103720,9 @@ 3519877888,3519878143,CA 3519878144,3519878271,US 3519878272,3519878303,CA -3519878304,3519879727,US +3519878304,3519878655,US +3519878656,3519878911,CA +3519878912,3519879727,US 3519879728,3519879735,CA 3519879736,3519879935,US 3519879936,3519880447,CA @@ -100827,13 +103781,7 @@ 3521366784,3521367039,CY 3521367040,3521837055,US 3521837056,3521837311,SG -3521837312,3521888483,US -3521888484,3521888484,KW -3521888485,3521896927,US -3521896928,3521896935,NG -3521896936,3521899263,US -3521899264,3521899271,KW -3521899272,3521904639,US +3521837312,3521904639,US 3521904640,3521921023,JM 3521921024,3521965055,US 3521965056,3521966079,DE @@ -100875,7 +103823,9 @@ 3522174976,3522179071,BM 3522179072,3522195455,US 3522195456,3522199551,CA -3522199552,3522854911,US +3522199552,3522816767,US +3522816768,3522817023,CA +3522817024,3522854911,US 3522854912,3522871295,CA 3522871296,3522893823,US 3522893824,3522894847,CA @@ -101066,7 +104016,11 @@ 3534760960,3534761983,AU 3534761984,3534763775,HK 3534763776,3534764031,AP -3534764032,3534863443,HK +3534764032,3534787327,HK +3534787328,3534787583,TH +3534787584,3534852095,HK +3534852096,3534852351,AU +3534852352,3534863443,HK 3534863444,3534863444,CN 3534863445,3534867711,HK 3534867712,3534867967,AP @@ -101182,8 +104136,8 @@ 3557007360,3557015551,IT 3557015552,3557023743,DE 3557023744,3557027327,GB -3557027328,3557027583,NL -3557027584,3557028415,GB +3557027328,3557027455,NL +3557027456,3557028415,GB 3557028416,3557028479,BE 3557028480,3557031935,GB 3557031936,3557040127,IT @@ -101231,17 +104185,9 @@ 3557360128,3557360135,GB 3557360136,3557360263,JE 3557360264,3557360271,GB -3557360272,3557360743,JE -3557360744,3557360751,GB -3557360752,3557360863,JE -3557360864,3557360871,GB -3557360872,3557363583,JE -3557363584,3557363595,GB -3557363596,3557363631,JE -3557363632,3557363639,GB -3557363640,3557363703,JE -3557363704,3557363711,GB -3557363712,3557365791,JE +3557360272,3557364555,JE +3557364556,3557364556,GG +3557364557,3557365791,JE 3557365792,3557365799,GB 3557365800,3557367807,JE 3557367808,3557375999,DE @@ -101307,11 +104253,9 @@ 3557900288,3557916671,AT 3557916672,3557924863,NO 3557924864,3557925887,AX -3557925888,3557926399,FI -3557926400,3557926655,AX -3557926656,3557929471,FI -3557929472,3557929727,AX -3557929728,3557929983,FI +3557925888,3557927679,FI +3557927680,3557927935,AX +3557927936,3557929983,FI 3557929984,3557933055,AX 3557933056,3557941247,IT 3557941248,3557957631,DE @@ -101368,9 +104312,7 @@ 3558228480,3558228735,FR 3558228736,3558232063,RU 3558232064,3558232575,LB -3558232576,3558234623,RU -3558234624,3558234879,UA -3558234880,3558235647,RU +3558232576,3558235647,RU 3558235648,3558235903,LB 3558235904,3558236159,RU 3558236160,3558244351,GB @@ -101392,7 +104334,9 @@ 3558289976,3558289983,CZ 3558289984,3558291071,GB 3558291072,3558291135,DE -3558291136,3558292479,GB +3558291136,3558292255,GB +3558292256,3558292271,SE +3558292272,3558292479,GB 3558292480,3558292735,EU 3558292736,3558293055,GB 3558293056,3558293087,NL @@ -101486,7 +104430,9 @@ 3559055360,3559063551,AM 3559063552,3559079935,CH 3559079936,3559088127,JO -3559088128,3559089527,GB +3559088128,3559088383,GB +3559088384,3559088639,BE +3559088640,3559089527,GB 3559089528,3559089535,BE 3559089536,3559089935,GB 3559089936,3559089951,BE @@ -101513,7 +104459,9 @@ 3559153664,3559178239,GB 3559178240,3559186431,LB 3559186432,3559194623,RU -3559194624,3559200255,SE +3559194624,3559197439,SE +3559197440,3559197567,FI +3559197568,3559200255,SE 3559200256,3559200511,FI 3559200512,3559202815,SE 3559202816,3559211007,DE @@ -101713,7 +104661,6 @@ 3560669184,3560685567,CH 3560685568,3560693759,ES 3560693760,3560701951,PL -3560706048,3560710143,DE 3560710144,3560718335,CH 3560718336,3560726527,GM 3560726528,3560734719,DK @@ -101880,9 +104827,7 @@ 3561472000,3561480191,DE 3561480192,3561488383,GB 3561488384,3561496575,OM -3561496576,3561496831,GB -3561496832,3561497087,NL -3561497088,3561502719,GB +3561496576,3561502719,GB 3561502720,3561503743,NL 3561503744,3561504767,GB 3561504768,3561512959,DE @@ -101901,12 +104846,18 @@ 3561604352,3561604607,FR 3561604608,3561607391,GB 3561607392,3561607423,FR -3561607424,3561607935,GB -3561607936,3561608191,FR -3561608192,3561609215,GB -3561609216,3561609727,FR -3561609728,3561616383,GB -3561616384,3561616895,FR +3561607424,3561607723,GB +3561607724,3561607724,FR +3561607725,3561609215,GB +3561609216,3561609471,FR +3561609472,3561610495,GB +3561610496,3561610751,FR +3561610752,3561612543,GB +3561612544,3561612799,FR +3561612800,3561615871,GB +3561615872,3561616127,FR +3561616128,3561616639,GB +3561616640,3561616895,FR 3561616896,3561652223,GB 3561652224,3561668607,CH 3561668608,3561684991,RU @@ -101937,9 +104888,9 @@ 3561897984,3561906175,GB 3561906176,3561914367,DE 3561914368,3561922559,ES -3561922560,3561925023,GB -3561925024,3561925039,NL -3561925040,3561925343,GB +3561922560,3561924863,GB +3561924864,3561925119,NL +3561925120,3561925343,GB 3561925344,3561925375,NL 3561925376,3561929967,GB 3561929968,3561929983,NL @@ -102001,9 +104952,7 @@ 3562217472,3562225663,DE 3562225664,3562233855,NL 3562233856,3562242047,FI -3562242048,3562256127,FR -3562256128,3562256383,US -3562256384,3562258431,FR +3562242048,3562258431,FR 3562258432,3562283007,NL 3562283008,3562285055,IT 3562285056,3562287103,IE @@ -102226,7 +105175,9 @@ 3564129744,3564134399,IT 3564134400,3564142591,KG 3564142592,3564150783,DK -3564150784,3564158831,SE +3564150784,3564154943,SE +3564154944,3564154975,FI +3564154976,3564158831,SE 3564158832,3564158839,FI 3564158840,3564158975,SE 3564158976,3564175359,DE @@ -102259,7 +105210,8 @@ 3564453888,3564462079,DE 3564462080,3564470271,CH 3564470272,3564478463,IL -3564478464,3564486655,LU +3564478464,3564478719,AE +3564478720,3564486655,LU 3564486656,3564494847,CH 3564494848,3564503039,EU 3564503040,3564511231,JO @@ -102308,11 +105260,15 @@ 3564734744,3564734751,DE 3564734752,3564736535,GB 3564736536,3564736543,DE -3564736544,3564739345,GB +3564736544,3564738815,GB +3564738816,3564739071,DE +3564739072,3564739345,GB 3564739346,3564739346,DE 3564739347,3564739367,GB 3564739368,3564739375,DE -3564739376,3564740607,GB +3564739376,3564740095,GB +3564740096,3564740351,DE +3564740352,3564740607,GB 3564740608,3564748799,FR 3564748800,3564756991,GB 3564756992,3564765183,ES @@ -102357,12 +105313,15 @@ 3564889634,3564889634,NL 3564889635,3564891119,GB 3564891120,3564891135,NL -3564891136,3564895231,GB +3564891136,3564892671,GB +3564892672,3564892927,NL +3564892928,3564895231,GB 3564895232,3564895743,NL 3564895744,3564896255,GB 3564896256,3564904447,RU 3564904448,3564912639,DE -3564912640,3564920831,NL +3564912640,3564918783,NL +3564918784,3564920831,IT 3564920832,3564922111,DE 3564922112,3564929023,US 3564929024,3564937215,AT @@ -102370,7 +105329,9 @@ 3564945408,3564953599,GB 3564953600,3564954879,AT 3564954880,3564955903,GB -3564955904,3564958850,AT +3564955904,3564956671,AT +3564956672,3564956927,GB +3564956928,3564958850,AT 3564958851,3564958851,EU 3564958852,3564960959,AT 3564960960,3564960975,GB @@ -102473,21 +105434,7 @@ 3565755904,3565756151,EU 3565756152,3565756159,GB 3565756160,3565756415,EU -3565756416,3565760783,GB -3565760784,3565760791,EU -3565760792,3565760799,GB -3565760800,3565760807,EU -3565760808,3565760823,GB -3565760824,3565760831,EU -3565760832,3565760855,GB -3565760856,3565760863,EU -3565760864,3565760935,GB -3565760936,3565760943,EU -3565760944,3565760967,GB -3565760968,3565760975,EU -3565760976,3565761007,GB -3565761008,3565761015,EU -3565761016,3565761279,GB +3565756416,3565761279,GB 3565761280,3565761343,EU 3565761344,3565761535,GB 3565761536,3565761543,EU @@ -102726,7 +105673,9 @@ 3567173632,3567239167,GB 3567239168,3567241215,NL 3567241216,3567241471,EU -3567241472,3567255551,NL +3567241472,3567246591,NL +3567246592,3567246847,GB +3567246848,3567255551,NL 3567255552,3567321087,PL 3567321088,3567353855,GB 3567353856,3567386623,CH @@ -102734,10 +105683,14 @@ 3567388352,3567388383,DE 3567388384,3567388543,GB 3567388544,3567388607,DE -3567388608,3567389695,GB -3567389696,3567390975,DE -3567390976,3567394815,GB -3567394816,3567395071,BE +3567388608,3567388927,GB +3567388928,3567389183,DE +3567389184,3567389439,GB +3567389440,3567390975,DE +3567390976,3567391231,GB +3567391232,3567391487,DE +3567391488,3567394815,GB +3567394816,3567395071,IE 3567395072,3567403007,GB 3567403008,3567419391,IT 3567419392,3567427583,SA @@ -102786,7 +105739,9 @@ 3567586816,3567587327,EU 3567587328,3567591423,GB 3567591424,3567599615,IT -3567599616,3567615999,NL +3567599616,3567603199,NL +3567603200,3567603455,DK +3567603456,3567615999,NL 3567616000,3567616767,A2 3567616768,3567617023,US 3567617024,3567618047,A2 @@ -102809,7 +105764,9 @@ 3567673344,3567681535,AT 3567681536,3567714303,ES 3567714304,3567715327,GB -3567715328,3567716351,EU +3567715328,3567715583,EU +3567715584,3567715839,GB +3567715840,3567716351,EU 3567716352,3567717375,GB 3567717376,3567718399,EU 3567718400,3567718655,US @@ -103037,7 +105994,17 @@ 3574531632,3574531639,GB 3574531640,3574594559,SE 3574594560,3574595583,GB -3574595584,3574603775,FR +3574595584,3574596607,FR +3574596608,3574596863,GP +3574596864,3574598143,FR +3574598144,3574598399,MQ +3574598400,3574598655,FR +3574598656,3574598911,MQ +3574598912,3574599423,FR +3574599424,3574599679,MQ +3574599680,3574601215,FR +3574601216,3574601471,GP +3574601472,3574603775,FR 3574603776,3574611967,BG 3574611968,3574628351,HU 3574628352,3574661119,GR @@ -103047,7 +106014,9 @@ 3574792192,3574824959,CZ 3574824960,3574830079,GB 3574830080,3574831103,NL -3574831104,3574857727,GB +3574831104,3574842367,GB +3574842368,3574842623,NL +3574842624,3574857727,GB 3574857728,3574923263,DE 3574923264,3574939647,RU 3574939648,3574941375,SE @@ -103363,12 +106332,8 @@ 3576091408,3576091423,GB 3576091424,3576091455,EU 3576091456,3576091479,GB -3576091480,3576091967,EU -3576091968,3576091983,GB -3576091984,3576091999,EU -3576092000,3576092031,GB -3576092032,3576092127,EU -3576092128,3576092159,GB +3576091480,3576091903,EU +3576091904,3576092159,GB 3576092160,3576092863,EU 3576092864,3576092895,GB 3576092896,3576093063,EU @@ -103394,9 +106359,13 @@ 3576241992,3576241999,FR 3576242000,3576242383,GB 3576242384,3576242391,FR -3576242392,3576251711,GB +3576242392,3576250111,GB +3576250112,3576250367,FR +3576250368,3576251711,GB 3576251712,3576251775,FR -3576251776,3576253807,GB +3576251776,3576252415,GB +3576252416,3576252671,FR +3576252672,3576253807,GB 3576253808,3576253815,FR 3576253816,3576254511,GB 3576254512,3576254527,FR @@ -103407,8 +106376,8 @@ 3576254784,3576260607,GB 3576260608,3576260623,FR 3576260624,3576260863,GB -3576260864,3576260871,FR -3576260872,3576263919,GB +3576260864,3576261119,FR +3576261120,3576263919,GB 3576263920,3576263935,FR 3576263936,3576264255,GB 3576264256,3576264263,FR @@ -103440,11 +106409,34 @@ 3577000192,3577020415,GB 3577020416,3577085951,NL 3577085952,3577151487,DE -3577151488,3577157119,FR -3577157120,3577157375,RE -3577157376,3577164073,FR +3577151488,3577151743,RE +3577151744,3577153023,FR +3577153024,3577153279,RE +3577153280,3577154303,FR +3577154304,3577154815,RE +3577154816,3577155327,FR +3577155328,3577155839,RE +3577155840,3577156095,FR +3577156096,3577156607,RE +3577156608,3577157375,FR +3577157376,3577157631,RE +3577157632,3577157887,FR +3577157888,3577158143,RE +3577158144,3577158399,FR +3577158400,3577158655,RE +3577158656,3577159423,FR +3577159424,3577159679,RE +3577159680,3577159935,FR +3577159936,3577160447,RE +3577160448,3577161983,FR +3577161984,3577162751,RE +3577162752,3577163007,FR +3577163008,3577163263,RE +3577163264,3577164073,FR 3577164074,3577164074,RE -3577164075,3577167871,FR +3577164075,3577166079,FR +3577166080,3577166335,RE +3577166336,3577167871,FR 3577167872,3577184255,ET 3577184256,3577217023,CH 3577217024,3577282559,FR @@ -103466,7 +106458,9 @@ 3577641200,3577641215,FR 3577641216,3577641471,EU 3577641472,3577641983,FR -3577641984,3577650047,EU +3577641984,3577642495,EU +3577642496,3577642751,FR +3577642752,3577650047,EU 3577650048,3577650063,NL 3577650064,3577663487,EU 3577663488,3577664511,SE @@ -103510,7 +106504,9 @@ 3579019264,3579052031,DK 3579052032,3579117567,NL 3579117568,3579183103,RU -3579183104,3579193759,GB +3579183104,3579193607,GB +3579193608,3579193615,NL +3579193616,3579193759,GB 3579193760,3579193775,NL 3579193776,3579197311,GB 3579197312,3579197439,US @@ -103600,9 +106596,7 @@ 3580340224,3580344319,LT 3580344320,3580354559,SE 3580354560,3580362751,LT -3580362752,3580473871,GB -3580473872,3580473887,IE -3580473888,3580624895,GB +3580362752,3580624895,GB 3580624896,3580626943,RU 3580626944,3580628991,PL 3580628992,3580631039,RU @@ -103613,7 +106607,12 @@ 3580641280,3580643327,FR 3580643328,3580645375,UA 3580645376,3580647423,PL -3580647424,3580649471,DE +3580647424,3580647679,GB +3580647680,3580647935,DE +3580647936,3580648027,GB +3580648028,3580648028,DE +3580648029,3580648447,GB +3580648448,3580649471,DE 3580649472,3580651519,SE 3580651520,3580653567,NL 3580653568,3580655615,PL @@ -103663,7 +106662,9 @@ 3581258752,3581280255,EU 3581280256,3581411327,BE 3581411328,3581673471,GB -3581673472,3581935615,NL +3581673472,3581922047,NL +3581922048,3581922303,GB +3581922304,3581935615,NL 3581935616,3581943807,RU 3581943808,3581951999,FR 3581952000,3581960191,TR @@ -103721,7 +106722,9 @@ 3582238720,3582251319,NL 3582251320,3582251327,FI 3582251328,3582255103,NL -3582255104,3582263039,KW +3582255104,3582258687,KW +3582258688,3582258943,US +3582258944,3582263039,KW 3582263040,3582263295,A2 3582263296,3582271487,ME 3582271488,3582279679,NL @@ -103729,9 +106732,7 @@ 3582287872,3582296063,DE 3582296064,3582304255,GB 3582304256,3582312447,UA -3582312448,3582313855,JE -3582313856,3582313871,GB -3582313872,3582320639,JE +3582312448,3582320639,JE 3582320640,3582328831,CH 3582328832,3582337023,HU 3582337024,3582345215,PT @@ -103835,7 +106836,9 @@ 3583123456,3583131647,PL 3583131648,3583139839,SE 3583139840,3583148031,DE -3583148032,3583160319,GB +3583148032,3583157503,GB +3583157504,3583157759,IE +3583157760,3583160319,GB 3583160320,3583161343,DE 3583161344,3583164415,GB 3583164416,3583172607,PT @@ -103867,7 +106870,9 @@ 3583361024,3583369215,IT 3583369216,3583377407,ES 3583377408,3583385599,AT -3583385600,3583393791,DK +3583385600,3583390207,DK +3583390208,3583390463,LV +3583390464,3583393791,DK 3583393792,3583401983,RU 3583401984,3583410175,KE 3583410176,3583418367,SE @@ -103914,9 +106919,8 @@ 3583742976,3583743487,PL 3583743488,3583743615,EU 3583743616,3583743743,GB -3583743744,3583743976,EU -3583743977,3583743977,IE -3583743978,3583744127,EU +3583743744,3583743999,IE +3583744000,3583744127,EU 3583744128,3583744255,PL 3583744256,3583744319,EU 3583744320,3583744447,GB @@ -104089,7 +107093,9 @@ 3584925696,3584933887,CH 3584933888,3584937983,NO 3584937984,3584942079,NL -3584942080,3584950271,DK +3584942080,3584943103,DK +3584943104,3584943359,SE +3584943360,3584950271,DK 3584950272,3584958463,UA 3584958464,3584966655,DE 3584966656,3584971263,DK @@ -104237,7 +107243,10 @@ 3585900544,3585906687,NO 3585906688,3585907711,CZ 3585907712,3585908735,NO -3585908736,3585916927,GP +3585908736,3585910015,GP +3585910016,3585910271,MQ +3585910272,3585916671,GP +3585916672,3585916927,MQ 3585916928,3585925119,IT 3585925120,3585933311,CH 3585933312,3585941503,NL @@ -104249,7 +107258,15 @@ 3585982464,3585998847,RU 3585998848,3586007039,ES 3586007040,3586015231,LT -3586015232,3586023423,FR +3586015232,3586022687,FR +3586022688,3586022688,GB +3586022689,3586022689,TN +3586022690,3586022690,SE +3586022691,3586022691,BE +3586022692,3586022692,DK +3586022693,3586022693,DE +3586022694,3586022694,IT +3586022695,3586023423,FR 3586023424,3586031615,IS 3586031616,3586039807,IE 3586039808,3586047999,GB @@ -104265,7 +107282,9 @@ 3586162688,3586179071,FI 3586179072,3586195455,ES 3586195456,3586203647,RU -3586203648,3586205695,KE +3586203648,3586204159,KE +3586204160,3586204671,ZM +3586204672,3586205695,KE 3586205696,3586207743,BW 3586207744,3586207999,ZA 3586208000,3586208255,A2 @@ -104392,30 +107411,30 @@ 3587193600,3587194879,DE 3587194880,3587211263,GB 3587211264,3587219455,AT -3587219456,3587222271,RU -3587222272,3587222527,RO -3587222528,3587227647,RU -3587227648,3587231231,GB +3587219456,3587227647,RU +3587227648,3587230719,GB +3587230720,3587230975,NL +3587230976,3587231231,GB 3587231232,3587231263,NL 3587231264,3587233087,GB 3587233088,3587233095,NL 3587233096,3587234191,GB 3587234192,3587234207,NL -3587234208,3587237631,GB -3587237632,3587237887,NL +3587234208,3587236095,GB +3587236096,3587236351,NL +3587236352,3587237375,GB +3587237376,3587237887,NL 3587237888,3587238487,GB 3587238488,3587238495,NL 3587238496,3587239487,GB 3587239488,3587239495,NL 3587239496,3587239583,GB 3587239584,3587239599,NL -3587239600,3587239711,GB -3587239712,3587239727,NL -3587239728,3587239791,GB -3587239792,3587239799,NL -3587239800,3587242671,GB -3587242672,3587242679,DE -3587242680,3587244031,GB +3587239600,3587239679,GB +3587239680,3587240191,NL +3587240192,3587242495,GB +3587242496,3587242751,NL +3587242752,3587244031,GB 3587244032,3587260415,IT 3587260416,3587284991,DE 3587284992,3587291135,EU @@ -104438,10 +107457,8 @@ 3587423744,3587424255,BE 3587424256,3587440639,DE 3587440640,3587445759,SE -3587445760,3587445823,FI -3587445824,3587445983,SE -3587445984,3587445999,FI -3587446000,3587446071,SE +3587445760,3587446015,FI +3587446016,3587446071,SE 3587446072,3587446079,FI 3587446080,3587446143,SE 3587446144,3587446271,FI @@ -104566,9 +107583,8 @@ 3588997120,3589013503,AT 3589013504,3589021695,ES 3589021696,3589029887,SA -3589029888,3589030119,GB -3589030120,3589030127,NL -3589030128,3589031055,GB +3589029888,3589030143,NL +3589030144,3589031055,GB 3589031056,3589031056,NL 3589031057,3589034239,GB 3589034240,3589034495,EU @@ -104594,9 +107610,15 @@ 3589341184,3589373951,PL 3589373952,3589390335,DE 3589390336,3589423103,RU -3589423104,3589430591,GB +3589423104,3589426175,GB +3589426176,3589426431,IT +3589426432,3589430591,GB 3589430592,3589430655,ES -3589430656,3589435759,GB +3589430656,3589432831,GB +3589432832,3589433087,CH +3589433088,3589433855,GB +3589433856,3589434111,IE +3589434112,3589435759,GB 3589435760,3589435763,ES 3589435764,3589439487,GB 3589439488,3589455871,SE @@ -104608,13 +107630,15 @@ 3589537792,3589545983,FR 3589545984,3589554175,DE 3589554176,3589570559,PS -3589570560,3589580543,GB -3589580544,3589580799,NL -3589580800,3589582975,GB +3589570560,3589578751,GB +3589578752,3589579007,NL +3589579008,3589580543,GB +3589580544,3589581055,NL +3589581056,3589582975,GB 3589582976,3589583103,NL 3589583104,3589586943,GB 3589586944,3589587199,DE -3589587200,3589587455,RS +3589587200,3589587455,NL 3589587456,3589587967,CH 3589587968,3589599231,RS 3589599232,3589601279,SE @@ -104747,7 +107771,7 @@ 3624288000,3624288255,US 3624288256,3624290303,IN 3624290304,3624292351,CA -3624292352,3624292607,MF +3624292352,3624292607,GP 3624292608,3624295423,US 3624295424,3624295679,CA 3624295680,3624295935,US @@ -104769,11 +107793,7 @@ 3624357888,3624358143,KN 3624358144,3624359679,US 3624359680,3624360703,CW -3624360704,3624374447,US -3624374448,3624374455,ES -3624374456,3624375871,US -3624375872,3624375879,NL -3624375880,3624376247,US +3624360704,3624376247,US 3624376248,3624376263,ES 3624376264,3624376287,US 3624376288,3624376295,GB @@ -104810,7 +107830,7 @@ 3624587264,3624591359,JM 3624591360,3624592383,US 3624592384,3624593919,CA -3624594176,3624714239,US +3624593920,3624714239,US 3624714240,3624722431,SG 3624722432,3624730623,US 3624730624,3624796159,CA @@ -104819,9 +107839,7 @@ 3624833024,3624845311,US 3624845312,3624849407,AU 3624849408,3624984575,US -3624984576,3624986367,CA -3624986368,3624986399,US -3624986400,3624992767,CA +3624984576,3624992767,CA 3624992768,3625058303,US 3625058304,3625091071,CA 3625091072,3625116927,US @@ -104849,7 +107867,9 @@ 3625574400,3625577983,A2 3625577984,3625631743,US 3625631744,3625639935,CA -3625639936,3626091519,US +3625639936,3625961983,US +3625961984,3625962239,GB +3625962240,3626091519,US 3626091520,3626092031,AR 3626092032,3626270719,US 3626270720,3626287103,CA @@ -104881,7 +107901,11 @@ 3627532288,3627544575,CA 3627544576,3627659263,US 3627659264,3627663359,CA -3627663360,3627679743,US +3627663360,3627667561,US +3627667562,3627667562,CA +3627667563,3627667564,US +3627667565,3627667565,CA +3627667566,3627679743,US 3627679744,3627712511,CA 3627712512,3627753471,US 3627753472,3627753727,AR @@ -104970,7 +107994,9 @@ 3628834816,3628843007,CA 3628843008,3628848639,US 3628848640,3628848895,EU -3628848896,3629187071,US +3628848896,3628850687,US +3628850688,3628850943,AU +3628850944,3629187071,US 3629187072,3629195263,CA 3629195264,3629199359,US 3629199360,3629201439,CA @@ -104981,9 +108007,11 @@ 3629201496,3629201499,US 3629201500,3629201503,CA 3629201504,3629201507,US -3629201508,3629201919,CA -3629201920,3629202175,US -3629202176,3629203199,CA +3629201508,3629201935,CA +3629201936,3629201939,US +3629201940,3629202103,CA +3629202104,3629202107,US +3629202108,3629203199,CA 3629203200,3629318143,US 3629318144,3629326335,CA 3629326336,3629539327,US @@ -105080,9 +108108,9 @@ 3630102784,3630103807,CA 3630103808,3630104063,US 3630104064,3630104575,CA -3630104576,3630108159,US -3630108160,3630108415,CA -3630108416,3630141951,US +3630104576,3630134015,US +3630134016,3630134271,CA +3630134272,3630141951,US 3630141952,3630142207,CA 3630142208,3630148095,US 3630148096,3630148607,CA @@ -105091,12 +108119,14 @@ 3630149120,3630151679,US 3630151680,3630152191,CA 3630152192,3630152703,US -3630152704,3630153215,CA -3630153216,3630156287,US +3630152704,3630152959,CA +3630152960,3630156287,US 3630156288,3630156543,CA 3630156544,3630157311,US 3630157312,3630157567,CA -3630157568,3630159615,US +3630157568,3630158079,US +3630158080,3630158335,CA +3630158336,3630159615,US 3630159616,3630159871,CA 3630159872,3630160127,US 3630160128,3630160383,CA @@ -105155,11 +108185,12 @@ 3631665152,3631667199,CA 3631667200,3631667455,US 3631667456,3631668735,CA -3631668736,3631668991,US -3631668992,3631669247,CA +3631668736,3631669247,US 3631669248,3631669807,A2 3631669808,3631669823,EC -3631669824,3631670527,A2 +3631669824,3631670015,A2 +3631670016,3631670271,US +3631670272,3631670527,A2 3631670528,3631670783,NG 3631670784,3631671039,EC 3631671040,3631671295,US @@ -105169,13 +108200,7 @@ 3631672064,3631672575,PY 3631672576,3631672831,NG 3631672832,3631677439,A2 -3631677440,3631822815,US -3631822816,3631822831,AU -3631822832,3631825647,US -3631825648,3631825663,NZ -3631825664,3631829023,US -3631829024,3631829039,IN -3631829040,3631841279,US +3631677440,3631841279,US 3631841280,3631874047,CA 3631874048,3631939583,US 3631939584,3632005119,CA @@ -105301,7 +108326,9 @@ 3634759936,3634880511,US 3634880512,3634888703,CA 3634888704,3634913279,US -3634913280,3634921471,CA +3634913280,3634915663,CA +3634915664,3634915679,US +3634915680,3634921471,CA 3634921472,3634925567,US 3634925568,3634929663,CA 3634929664,3635109887,US @@ -105320,9 +108347,7 @@ 3635527680,3635527935,PR 3635527936,3635528959,US 3635528960,3635529215,PR -3635529216,3635529711,US -3635529712,3635529719,CO -3635529720,3635529983,US +3635529216,3635529983,US 3635529984,3635530751,PR 3635530752,3635531007,US 3635531008,3635531263,PR @@ -105368,7 +108393,9 @@ 3635752192,3635752447,CA 3635752448,3635752703,US 3635752704,3635754239,CA -3635754240,3635755007,US +3635754240,3635754362,US +3635754363,3635754363,CA +3635754364,3635755007,US 3635755008,3635755519,CA 3635755520,3635755775,US 3635755776,3635760895,CA @@ -105377,9 +108404,7 @@ 3635762688,3635762943,US 3635762944,3635763199,CA 3635763200,3635763455,US -3635763456,3635764991,CA -3635764992,3635765247,US -3635765248,3635765759,CA +3635763456,3635765759,CA 3635765760,3635768575,US 3635768576,3635771391,CA 3635771392,3635771647,US @@ -105533,7 +108558,9 @@ 3638697984,3638706175,CA 3638706176,3638874111,US 3638874112,3638878207,CA -3638878208,3638984703,US +3638878208,3638880511,US +3638880512,3638880767,CA +3638880768,3638984703,US 3638984704,3638985983,GT 3638985984,3638986239,HN 3638986240,3638992895,GT @@ -105571,7 +108598,9 @@ 3639400448,3639401471,RS 3639401472,3639402239,A2 3639402240,3639402495,GH -3639402496,3639525375,US +3639402496,3639513239,US +3639513240,3639513243,AE +3639513244,3639525375,US 3639529472,3639533567,US 3639533568,3639537663,CA 3639537664,3639550207,US @@ -105672,7 +108701,9 @@ 3639678896,3639678911,CL 3639678912,3639678927,CO 3639678928,3639678935,CL -3639678936,3639679359,CO +3639678936,3639679231,CO +3639679232,3639679247,CL +3639679248,3639679359,CO 3639679360,3639679383,CL 3639679384,3639679455,CO 3639679456,3639679463,CL @@ -105781,7 +108812,9 @@ 3641311232,3641315327,DE 3641315328,3641319423,DK 3641319424,3641323519,RU -3641323520,3641331711,DE +3641323520,3641324543,DE +3641324544,3641324799,AT +3641324800,3641331711,DE 3641331712,3641335807,ES 3641335808,3641343999,SE 3641344000,3641352191,GB @@ -105789,7 +108822,9 @@ 3641356536,3641356543,CM 3641356544,3641357983,A2 3641357984,3641358015,SL -3641358016,3641360383,A2 +3641358016,3641359615,A2 +3641359616,3641359871,US +3641359872,3641360383,A2 3641360384,3641368575,RO 3641368576,3641372671,GB 3641372672,3641376767,BG @@ -106429,7 +109464,9 @@ 3647209472,3647602687,NL 3647602688,3647733759,RU 3647733760,3647864831,FR -3647864832,3647890687,DE +3647864832,3647880703,DE +3647880704,3647880959,PL +3647880960,3647890687,DE 3647890688,3647890943,EU 3647890944,3647916799,DE 3647916800,3647917055,SE @@ -106437,7 +109474,9 @@ 3647947264,3647947519,US 3647947520,3647949567,DE 3647949568,3647949823,EU -3647949824,3647964159,DE +3647949824,3647963135,DE +3647963136,3647963391,BE +3647963392,3647964159,DE 3647964160,3647964287,ES 3647964288,3647964439,DE 3647964440,3647964447,ES @@ -106482,9 +109521,9 @@ 3647977472,3647978495,GB 3647978496,3647979007,DE 3647979008,3647979071,IT -3647979072,3647980223,DE -3647980224,3647980239,FR -3647980240,3647980383,DE +3647979072,3647980031,DE +3647980032,3647980287,FR +3647980288,3647980383,DE 3647980384,3647980415,FR 3647980416,3647980543,DE 3647980544,3647981567,GB @@ -106492,7 +109531,9 @@ 3647982592,3647983615,IT 3647983616,3647984031,DE 3647984032,3647984047,NL -3647984048,3647986431,DE +3647984048,3647984127,DE +3647984128,3647984383,NL +3647984384,3647986431,DE 3647986432,3647986687,ES 3647986688,3647987647,DE 3647987648,3647987655,ES @@ -106671,9 +109712,7 @@ 3649841152,3649843199,GB 3649843200,3649847817,NL 3649847818,3649855487,DE -3649855488,3649856511,GB -3649856512,3649856767,US -3649856768,3649857791,GB +3649855488,3649857791,GB 3649857792,3649858047,IN 3649858048,3649859071,GB 3649859072,3649859327,US @@ -106812,7 +109851,9 @@ 3650560000,3650564095,GB 3650564096,3650568191,SE 3650568192,3650572287,RU -3650572288,3650576383,DE +3650572288,3650575103,DE +3650575104,3650575167,AT +3650575168,3650576383,DE 3650576384,3650580479,GB 3650580480,3650584575,CH 3650584576,3650588671,RU @@ -106821,7 +109862,9 @@ 3650600960,3650605055,SE 3650605056,3650610175,DE 3650610176,3650611711,RU -3650611712,3650611835,LB +3650611712,3650611782,LB +3650611783,3650611783,RU +3650611784,3650611835,LB 3650611836,3650611836,RU 3650611837,3650611866,LB 3650611867,3650611867,RU @@ -106836,17 +109879,15 @@ 3650682880,3650748415,PL 3650748416,3650879487,GB 3650879488,3650912255,RO -3650912256,3650915327,GB -3650915328,3650915583,FR -3650915584,3650916393,GB +3650912256,3650916393,GB 3650916394,3650916394,FR -3650916395,3650920447,GB -3650920448,3650920457,FR -3650920458,3650920458,GB -3650920459,3650920703,FR -3650920704,3650920895,GB +3650916395,3650920703,GB +3650920704,3650920895,LB 3650920896,3650920927,GR -3650920928,3650922799,GB +3650920928,3650920959,LB +3650920960,3650920991,GB +3650920992,3650921007,IL +3650921008,3650922799,GB 3650922800,3650922815,FR 3650922816,3650926335,GB 3650926336,3650926591,DE @@ -106854,15 +109895,13 @@ 3650929664,3650929847,GB 3650929848,3650929855,FR 3650929856,3650929863,DE -3650929864,3650932943,GB +3650929864,3650930431,GB +3650930432,3650930687,DE +3650930688,3650932943,GB 3650932944,3650932975,IT 3650932976,3650939607,GB 3650939608,3650939615,TR -3650939616,3650940927,GB -3650940928,3650941177,NL -3650941178,3650941178,GB -3650941179,3650941183,NL -3650941184,3650945023,GB +3650939616,3650945023,GB 3650945024,3651010559,DK 3651010560,3651076095,GB 3651076096,3651108863,DE @@ -106928,7 +109967,9 @@ 3651272704,3651338239,CH 3651338240,3651350783,GB 3651350784,3651351039,EU -3651351040,3651403775,GB +3651351040,3651353087,GB +3651353088,3651353343,FR +3651353344,3651403775,GB 3651403776,3651534847,AE 3651534848,3651600383,NL 3651600384,3651665919,FR @@ -107045,7 +110086,11 @@ 3652149248,3652153343,DE 3652153344,3652157439,SE 3652157440,3652165631,RU -3652165632,3652173823,FR +3652165632,3652170751,FR +3652170752,3652171007,MQ +3652171008,3652172031,FR +3652172032,3652172287,RE +3652172288,3652173823,FR 3652173824,3652177919,AT 3652177920,3652182015,CY 3652182016,3652190207,DE @@ -107054,9 +110099,15 @@ 3653238784,3653369855,CH 3653369856,3653373951,IT 3653373952,3653378047,NL -3653378048,3653378674,DE +3653378048,3653378559,DE +3653378560,3653378569,DK +3653378570,3653378570,DE +3653378571,3653378655,DK +3653378656,3653378656,DE +3653378657,3653378674,DK 3653378675,3653378675,EU -3653378676,3653382143,DE +3653378676,3653378815,DK +3653378816,3653382143,DE 3653382144,3653386239,CH 3653386240,3653390335,DE 3653390336,3653394431,FR @@ -107170,9 +110221,11 @@ 3659628544,3659661311,JP 3659661312,3659792383,TW 3659792384,3660054527,KR -3660054528,3660097279,JP -3660097280,3660097535,US -3660097536,3660578815,JP +3660054528,3660097535,JP +3660097536,3660097791,US +3660097792,3660102143,JP +3660102144,3660102399,US +3660102400,3660578815,JP 3660578816,3661103103,KR 3661103104,3663986687,CN 3663986688,3663987711,AU @@ -107330,7 +110383,30 @@ 3701293056,3701301247,AU 3701301248,3701305343,ID 3701305344,3701309439,TW -3701309440,3701473279,JP +3701309440,3701374975,JP +3701374976,3701375999,IN +3701376000,3701377023,HK +3701377024,3701380095,IN +3701380096,3701381119,KH +3701381120,3701390335,IN +3701390336,3701391359,AU +3701391360,3701392383,IN +3701392384,3701393407,HK +3701393408,3701394431,MY +3701394432,3701395455,BD +3701395456,3701396479,HK +3701396480,3701397503,NZ +3701397504,3701398527,JP +3701398528,3701399551,MV +3701399552,3701400575,HK +3701400576,3701401599,TW +3701401600,3701402623,BD +3701402624,3701403647,BT +3701403648,3701404671,CN +3701404672,3701405695,HK +3701405696,3701406719,JP +3701406720,3701407743,HK +3701407744,3701473279,JP 3701473280,3704619007,CN 3704619008,3705667583,JP 3705667584,3705929727,IN @@ -107483,8 +110559,7 @@ 3743120384,3743121407,JP 3743121408,3743125503,MY 3743125504,3743129599,ID -3743129600,3743129855,MY -3743129856,3743130623,HK +3743129600,3743130623,HK 3743130624,3743130879,SG 3743130880,3743131135,HK 3743131136,3743133695,SG diff --git a/installer/resources/geoipv6.dat.gz b/installer/resources/geoipv6.dat.gz index c19c99b8884678b96787e47e694a06b42acd6a96..ccce489fdb9b52029ff044c4680c388f4c52609c 100644 Binary files a/installer/resources/geoipv6.dat.gz and b/installer/resources/geoipv6.dat.gz differ diff --git a/installer/resources/hosts.txt b/installer/resources/hosts.txt index bc698afe9a0731ee341ce35ec17ba953dceed707..34987b08f82e4edbfc264d7e4053d565bf1ad4d3 100644 --- a/installer/resources/hosts.txt +++ b/installer/resources/hosts.txt @@ -361,3 +361,6 @@ mtn.i2p-projekt.i2p=I6Ha4I7rgR0JyExQnN~4sZz5CfRqdN7o-2t1i2YOExd2CxC4MHHz3nJ5KgBI tracker.thebland.i2p=gzBtMSRcMD6b36PmPCQWZhh30fYm2Ww2r4tRSref4N2T4~cnXK3DjJOuJwao2jRK4bZwX2Rkyjw849xrFMqaR3SdPe3-K61B~Kr9Uo1KLdm3~oahOWFmCaIlipPs-i3jdTT~721YUcYB09n4PGrDq5KZSOOBlLZKulJficO58QRUlDpva4OCCRrX9EUCoAavOciKpvKtnGwl6AiPFu8WnmEeGQ861vjdirjfkHWNp3gj9IjGuxJNcgyHi51BWYZM6il~LJTcbA4zuZn~qudHIx9uzUtO-t08yzSRrmfVwVVVru6-~BBX0ipADi9UGZjyB-PJEKKjizUPxSp2OCmiOlQ2iXpKs2j8yfjHJbn-eWKpIh4jfpNigy6AbDfzFivkvm8lt8CleYf-p3~SHdqIL0iEaacxi5BAU4Baj5yS818kPQP4hEEMMtq4WnKjl4IW64swXSg1wlVBTiKDJzzQGK20jySBuPxhEbd6sfAeirzn585g5EqeV8DLqsMfe5pZBQAEAAEAAA== opentracker.dg2.i2p=WSUjGXhqHr7TsBizCO0qV~Kk7G1-suPPSSyMs4AnLQ8wRlWWZ~9rl7AzS0tFG4Dbbl8Te0wtZmQeMhcartbJ3TY-TBnviFqA8zP-sEQf5UK0BA5zzrtpB7NnUo-65B61cVbqG51-p9cJZ~Crre0LEZm5bJs8P3J~oH3b3BJ0YXtuv0ccBgj~OAf1g8ZrHr431XLq8WPRkzAVEIDhFdiSCYAz8XTArNN7OnPUUCjZcw92Oqf9wajg0eXqnThDFbrCx54h0UKM7sVDqRnoXbuGVLTPVvmIOnwuwZrn4X60GMLW38Dg-38qSfJL61FIbn5HfK-VTjCOuC16PtvJAPS1qUBWa-Y3j3aGK3BpHQnlOl-XNB~tJU0GBzRvEnOPFbtqXw38LyTCsvXcY31C~sNC~jedATUfPSZK-UBeN6RkR5BQiXBV-YkzUvTM4s~oXXgw9WFe9DdEWP-XR9~2G1Qe-GkcRAKUXmTAzVnRjlHEDR0lLMfxDwe3OfZuBzM9Gda9AAAA i2pnews.i2p=XHS99uhrvijk3KxU438LjNf-SMXXiNXsbV8uwHFXdqsDsHPZRdc6LH-hEMGWDR5g2b65KLlSm8plFrTusR-yxBfGHtZLa9vhXCwWXXbUlBe7Ty6NlwY7GmJItBKPO09BbUa0oJ5jITjLM1mVxeHShAZs8IMlLJjYaeYycDdaUInuPrng51~ySeiiKKxHa3qJkFOuPgQQiCXqy-9Qhi7t9j16iXzWWZ5yN7XcE9i1J7UQix66ntwILTnTAYBelNbONPiSJzKq-BiXj13bI3~liBgckJGf1a1dU8lOuAemtB-XM36cUcg~LQ6iHMuxK-AE8UDQHTNma6E0TxlK5DizV34UgiJ2CxRB5n8BBrZQEvIjYOExXyt6gbopL-aer1qrL1zoIKoMbGon5P4GV~f8NyClJKHXSS2NW7FV-kZbmA0WSLAxecyBfSLStIlw01gtnb2OAQt6OkMQ693N2-L~IJMg4f1lWK4Pv0bIqJUrHZS8YyeWbb4Y~pto6hkd0kgRBQAEAAEAAA== +exchanged.i2p=rLFzsOqsfSmJZvg6xvl~ctUulYWwGaM8K~rGs-e4WXkKePTCMOpU8l6LIU-wwDOiUZ7Ve8Y-zWPBVYQjH8~~lgT-BJ81zjP5I6H051KOVaXDChdx5F99mZu0sEjnYoFX484QHsUkFc5GUypqhpv1iwWwdPL7bVNzr1fS6sIZvq7tYWEOymbnifxk2jC0BnjultNPCq1wiI2Y-G66iOHDvuLu5f7RvNGJYlpw0UYNv6g8jUu3gXYjDRMBD5OIxFUJaksfmml2CiaGjrPfXKEXBR4q1CogVruq3r~447VHb32f52aeYszcslNzQjYyFCdipnAi5JiNTFpzTZPMEglt2J3KZYB3SMCmxSLktFI7376c7mT7EbMIFFv1GrmcUy9oIyYasbb82Sec9y0nJ9ahZt0x3iGokAYekXKXq-rGPzgFeBwfuCHzQnLzm1akVyJHoGDdaG0QHJfqfW1sY3F2n1xaWrnKcqIz2ypemxVnTMFKQqm2pdG-dMsXNYiGmZtaBQAEAAcAAA== +i2pwiki.i2p=Zr1YUKIKooxymZRqLvtfSYuZggqv5txkLE8Ks~FTh3A8JDmhOV8C82dUBKJhzst~Pcbqz7rXc~TPyrqasaQ~LioAji~WLSs8PpmCLVF83edhYpx75Fp23ELboEszHduhKWuibVchPLNa-6nP4F0Ttcr4krTlphe3KveNfZDAbm511zFFlNzPcY4PqOdCRBrp7INiWkVwQxwGWO7jiNYTYa5x4QXJmxIN1YOiNRYQST7THz1aV6219ThsfT9FE5JtiX-epli6PF5ZX9TcVSjHUKZnr8uJLXfh5T4RMVNe1n~KXutMUZwxpFE0scOIez9vhDFd7t0HPIsQUsv7MUBzrz4FM9qol7UUPueSGDRgTOOfXMfj4BDsouiWQC4GcSmH3SflR0Ith9QWKC4u3XYvB7Tw-70QWBEV53hUo6I8YKidV13WgeN9JI3KWTYkMyX-TYjmY9y2q6Xd-Maszv4Tb~NzxQs9CNdu0W-JRSUFOqzgt3l4cx0K1pmx4p0tM5dLBQAEAAEAAA== +lenta.i2p=DnW8NqbKilYLcIx5g5CG4mWVHkzrCkl0MbV4a5rGJku4BSs7HjvzjZpCoXWFky9JCUlHzjFotMETxQBhaKl0Q46vu-plKQ4BLnYyo45p7j2lTiejWvV4SDuXU4IAdmug27i~Jl4N44zwe9KYy~gMfY1Vsgv4bH9ov7X7l2iS-bycfcd9nE7JfycwFc4e0XU-dx7xf~tHw7I5--25dp-SsRX3-UYz4ygb58aD8UsKfQaFZtMy4x~Z1ufNEftuekb1HH9g2Rhhq8Bl62ad8PWSDa9Ne-SkCQsqTYjrCsvMY2DMvWgmZxI1hJYqzjRdFV6JEprrr~CJgHGJXr~KdnZhX12Vm4bKisZK847wBm42CoBQBT5HRzDkeflkbsliirRuKSUxVYMoZ1vic~avPZZl~pvIKZsz-YtiKha4vjCNE1zD-tHIS~2qq4uEO546Ol9pNokPaNttV6r7D2-zurEDx~9grJ8LhBozTxtdTdfZv2OqN4bVhrE7xUrxe0flIFKEAAAA diff --git a/installer/resources/i2prouter b/installer/resources/i2prouter index afee6b721f98f89fa83fc031c138558397e42c79..5d20179245a6f5f5660e057f8ae875c8daf39db6 100644 --- a/installer/resources/i2prouter +++ b/installer/resources/i2prouter @@ -1287,7 +1287,7 @@ installsystemd() { cat << EOF >> "$SYSTEMD_SERVICE" [Unit] Description=$APP_LONG_NAME -After= local-fs.target network.target +After= local-fs.target network.target time-sync.target [Service] Type=forking diff --git a/installer/resources/themes/console/images/exchanged.png b/installer/resources/themes/console/images/exchanged.png new file mode 100644 index 0000000000000000000000000000000000000000..0e72a2c8eb4c029882416035b86e87b0b3cc17eb Binary files /dev/null and b/installer/resources/themes/console/images/exchanged.png differ diff --git a/installer/resources/themes/console/images/i2pwiki_logo.png b/installer/resources/themes/console/images/i2pwiki_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..c08805eada7af7796a740385b4587d6618daecca Binary files /dev/null and b/installer/resources/themes/console/images/i2pwiki_logo.png differ diff --git a/installer/resources/themes/console/images/lenta_main_logo.png b/installer/resources/themes/console/images/lenta_main_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..c43be5f4ae9f3ab2d7aa9590d6ca475ae7bf648d Binary files /dev/null and b/installer/resources/themes/console/images/lenta_main_logo.png differ diff --git a/installer/resources/wrapper.config b/installer/resources/wrapper.config index 8ed9410d86ebf1e3cef2fb20f6b6f718b0bfeffd..3601991da1e608cec7e2973f61c4b43e09283062 100644 --- a/installer/resources/wrapper.config +++ b/installer/resources/wrapper.config @@ -285,3 +285,10 @@ wrapper.ntservice.starttype=AUTO_START # Allow the service to interact with the desktop. wrapper.ntservice.interactive=false +# http://wrapper.tanukisoftware.com/doc/english/prop-check-deadlock.html +# requires wrapper 3.5.0 or higher +# interval is seconds +wrapper.check.deadlock=TRUE +wrapper.check.deadlock.interval=3699 +wrapper.check.deadlock.action=DUMP,RESTART +wrapper.check.deadlock.output=FULL diff --git a/installer/tools/java/src/net/i2p/router/networkdb/kademlia/BundleRouterInfos.java b/installer/tools/java/src/net/i2p/router/networkdb/kademlia/BundleRouterInfos.java index f916e976f1ce30b261652692a1cb68bfe5a4b6bc..cab5991d3356e38bfee18f32f4cb1f51677c49a6 100644 --- a/installer/tools/java/src/net/i2p/router/networkdb/kademlia/BundleRouterInfos.java +++ b/installer/tools/java/src/net/i2p/router/networkdb/kademlia/BundleRouterInfos.java @@ -24,6 +24,7 @@ import java.util.Properties; import gnu.getopt.Getopt; import net.i2p.I2PAppContext; +import net.i2p.data.DataFormatException; import net.i2p.data.Hash; import net.i2p.data.router.RouterAddress; import net.i2p.data.router.RouterInfo; @@ -109,7 +110,9 @@ public class BundleRouterInfos { RouterInfo ri = new RouterInfo(); ri.readBytes(fis, true); // true = verify sig on read me = ri.getIdentity().getHash(); - } catch (Exception e) { + } catch (IOException e) { + //System.out.println("Can't determine our identity"); + } catch (DataFormatException e) { //System.out.println("Can't determine our identity"); } finally { if (fis != null) try { fis.close(); } catch (IOException ioe) {} @@ -209,7 +212,9 @@ public class BundleRouterInfos { copied++; else System.out.println("Failed copy of " + file + " to " + toDir); - } catch (Exception e) { + } catch (IOException e) { + System.out.println("Skipping bad " + file); + } catch (DataFormatException e) { System.out.println("Skipping bad " + file); } finally { if (fis != null) try { fis.close(); } catch (IOException ioe) {} diff --git a/router/java/src/net/i2p/data/i2np/DatabaseSearchReplyMessage.java b/router/java/src/net/i2p/data/i2np/DatabaseSearchReplyMessage.java index 4a5c946385772afd169e6ff7f19f3e8d161034c4..1df280349ef78e11a141b438257f815ef1e02ab1 100644 --- a/router/java/src/net/i2p/data/i2np/DatabaseSearchReplyMessage.java +++ b/router/java/src/net/i2p/data/i2np/DatabaseSearchReplyMessage.java @@ -68,7 +68,7 @@ public class DatabaseSearchReplyMessage extends FastI2NPMessageImpl { curIndex += Hash.HASH_LENGTH; //_key = new Hash(keyData); - int num = (int)DataHelper.fromLong(data, curIndex, 1); + int num = data[curIndex] & 0xff; curIndex++; _peerHashes.clear(); diff --git a/router/java/src/net/i2p/data/i2np/DeliveryInstructions.java b/router/java/src/net/i2p/data/i2np/DeliveryInstructions.java index 9669d6f91fa5f176dffaf2049bfb9a56ac1345a6..5f59415124134a6511efdfd22dee7ebd35324a12 100644 --- a/router/java/src/net/i2p/data/i2np/DeliveryInstructions.java +++ b/router/java/src/net/i2p/data/i2np/DeliveryInstructions.java @@ -209,7 +209,7 @@ public class DeliveryInstructions extends DataStructureImpl { public int readBytes(byte data[], int offset) throws DataFormatException { int cur = offset; - long flags = DataHelper.fromLong(data, cur, 1); + int flags = data[cur] & 0xff; cur++; //if (_log.shouldLog(Log.DEBUG)) // _log.debug("Read flags: " + flags + " mode: " + flagMode(flags)); diff --git a/router/java/src/net/i2p/data/i2np/FastI2NPMessageImpl.java b/router/java/src/net/i2p/data/i2np/FastI2NPMessageImpl.java index 564d0f7262bf2ecb2a1c253079bb0f0e2833eda1..912a9e2b9eff5dda42d0a2c3bb93c154b559e163 100644 --- a/router/java/src/net/i2p/data/i2np/FastI2NPMessageImpl.java +++ b/router/java/src/net/i2p/data/i2np/FastI2NPMessageImpl.java @@ -85,7 +85,7 @@ public abstract class FastI2NPMessageImpl extends I2NPMessageImpl { throw new I2NPMessageException("Payload is too short " + maxLen); int cur = offset; if (type < 0) { - type = (int)DataHelper.fromLong(data, cur, 1); + type = data[cur] & 0xff; cur++; } _uniqueId = DataHelper.fromLong(data, cur, 4); diff --git a/router/java/src/net/i2p/data/i2np/GarlicClove.java b/router/java/src/net/i2p/data/i2np/GarlicClove.java index 628874d8175649cf8daa1d7d265777a6fce113f8..d19435321e0e1f42c005af894894ff0c4c44447c 100644 --- a/router/java/src/net/i2p/data/i2np/GarlicClove.java +++ b/router/java/src/net/i2p/data/i2np/GarlicClove.java @@ -158,7 +158,7 @@ public class GarlicClove extends DataStructureImpl { if (m.length <= 0) throw new RuntimeException("foo, returned 0 length"); out.write(m); - } catch (Exception e) { + } catch (RuntimeException e) { throw new DataFormatException("Unable to write the clove: " + _msg + " to " + out, e); } DataHelper.writeLong(out, 4, _cloveId); @@ -187,7 +187,7 @@ public class GarlicClove extends DataStructureImpl { byte m[] = _msg.toByteArray(); System.arraycopy(m, 0, rv, offset, m.length); offset += m.length; - } catch (Exception e) { throw new RuntimeException("Unable to write: " + _msg + ": " + e.getMessage()); } + } catch (RuntimeException e) { throw new RuntimeException("Unable to write: " + _msg + ": " + e.getMessage()); } DataHelper.toLong(rv, offset, 4, _cloveId); offset += 4; DataHelper.toDate(rv, offset, _expiration.getTime()); diff --git a/router/java/src/net/i2p/data/i2np/I2NPMessageHandler.java b/router/java/src/net/i2p/data/i2np/I2NPMessageHandler.java index fe1225f74fca8cda0b3038fbfdd533414bd851a7..224918ef48eca9a7a0f45df9f6e4d1cb6ebcc40d 100644 --- a/router/java/src/net/i2p/data/i2np/I2NPMessageHandler.java +++ b/router/java/src/net/i2p/data/i2np/I2NPMessageHandler.java @@ -59,7 +59,7 @@ public class I2NPMessageHandler { _lastSize = msg.readBytes(in, type, _messageBuffer); } catch (I2NPMessageException ime) { throw ime; - } catch (Exception e) { + } catch (RuntimeException e) { if (_log.shouldLog(Log.WARN)) _log.warn("Error reading the stream", e); throw new I2NPMessageException("Unknown error reading the " + msg.getClass().getSimpleName(), e); @@ -109,7 +109,7 @@ public class I2NPMessageHandler { public int readMessage(byte data[], int offset, int maxLen) throws I2NPMessageException { int cur = offset; // we will assume that maxLen is >= 1 here. It's checked to be >= 16 in readBytes() - int type = (int)DataHelper.fromLong(data, cur, 1); + int type = data[cur] & 0xff; cur++; _lastReadBegin = System.currentTimeMillis(); I2NPMessage msg = I2NPMessageImpl.createMessage(_context, type); @@ -131,7 +131,7 @@ public class I2NPMessageHandler { cur += _lastSize; } catch (I2NPMessageException ime) { throw ime; - } catch (Exception e) { + } catch (RuntimeException e) { if (_log.shouldLog(Log.WARN)) _log.warn("Error reading the stream", e); throw new I2NPMessageException("Unknown error reading the " + msg.getClass().getSimpleName(), e); diff --git a/router/java/src/net/i2p/data/i2np/I2NPMessageImpl.java b/router/java/src/net/i2p/data/i2np/I2NPMessageImpl.java index 5f14c3fef71738f0c3a931c49739d5c69fe664a6..062e310b12dbef001379b990b49289a7a8169025 100644 --- a/router/java/src/net/i2p/data/i2np/I2NPMessageImpl.java +++ b/router/java/src/net/i2p/data/i2np/I2NPMessageImpl.java @@ -197,7 +197,7 @@ public abstract class I2NPMessageImpl extends DataStructureImpl implements I2NPM throw new I2NPMessageException("Payload is too short " + maxLen); int cur = offset; if (type < 0) { - type = (int)DataHelper.fromLong(data, cur, 1); + type = data[cur] & 0xff; cur++; } _uniqueId = DataHelper.fromLong(data, cur, 4); @@ -413,7 +413,7 @@ public abstract class I2NPMessageImpl extends DataStructureImpl implements I2NPM */ public static I2NPMessage fromRawByteArray(I2PAppContext ctx, byte buffer[], int offset, int len, I2NPMessageHandler handler) throws I2NPMessageException { - int type = (int)DataHelper.fromLong(buffer, offset, 1); + int type = buffer[offset] & 0xff; offset++; I2NPMessage msg = createMessage(ctx, type); if (msg == null) diff --git a/router/java/src/net/i2p/data/i2np/I2NPMessageReader.java b/router/java/src/net/i2p/data/i2np/I2NPMessageReader.java index f253cfed22a46660292a60fa43cdd47685bd011b..d23a489d60964cbf7f3b37ddd0e139fecec9df51 100644 --- a/router/java/src/net/i2p/data/i2np/I2NPMessageReader.java +++ b/router/java/src/net/i2p/data/i2np/I2NPMessageReader.java @@ -163,7 +163,7 @@ public class I2NPMessageReader { _log.warn("IO Error handling message", ioe); _listener.disconnected(I2NPMessageReader.this); cancelRunner(); - } catch (Exception e) { + } catch (RuntimeException e) { _log.log(Log.CRIT, "error reading msg!", e); _listener.readError(I2NPMessageReader.this, e); _listener.disconnected(I2NPMessageReader.this); diff --git a/router/java/src/net/i2p/data/i2np/VariableTunnelBuildMessage.java b/router/java/src/net/i2p/data/i2np/VariableTunnelBuildMessage.java index b33cba76147a962916f89804c27f3e77961ab85b..52aa565de7262ad973a84e44b24def0c247aac34 100644 --- a/router/java/src/net/i2p/data/i2np/VariableTunnelBuildMessage.java +++ b/router/java/src/net/i2p/data/i2np/VariableTunnelBuildMessage.java @@ -29,7 +29,7 @@ public class VariableTunnelBuildMessage extends TunnelBuildMessage { @Override public void readMessage(byte[] data, int offset, int dataSize, int type) throws I2NPMessageException { // message type will be checked in super() - int r = (int)DataHelper.fromLong(data, offset, 1); + int r = data[offset] & 0xff; if (r <= 0 || r > MAX_RECORD_COUNT) throw new I2NPMessageException("Bad record count " + r); RECORD_COUNT = r; diff --git a/router/java/src/net/i2p/data/i2np/VariableTunnelBuildReplyMessage.java b/router/java/src/net/i2p/data/i2np/VariableTunnelBuildReplyMessage.java index 368104a2adc9df4a34f8730ab24766964ee89c3c..575f5563002a1a424713537d96a27549e5382a62 100644 --- a/router/java/src/net/i2p/data/i2np/VariableTunnelBuildReplyMessage.java +++ b/router/java/src/net/i2p/data/i2np/VariableTunnelBuildReplyMessage.java @@ -31,7 +31,7 @@ public class VariableTunnelBuildReplyMessage extends TunnelBuildReplyMessage { @Override public void readMessage(byte[] data, int offset, int dataSize, int type) throws I2NPMessageException { // message type will be checked in super() - int r = (int)DataHelper.fromLong(data, offset, 1); + int r = data[offset] & 0xff; if (r <= 0 || r > MAX_RECORD_COUNT) throw new I2NPMessageException("Bad record count " + r); RECORD_COUNT = r; diff --git a/router/java/src/net/i2p/data/router/RouterInfo.java b/router/java/src/net/i2p/data/router/RouterInfo.java index 24667108e823149d00ddbdd4bc8a7cf16d4a3799..f2f9cdb7f51b346cccfc8d25dda1e2dd0f203177 100644 --- a/router/java/src/net/i2p/data/router/RouterInfo.java +++ b/router/java/src/net/i2p/data/router/RouterInfo.java @@ -339,7 +339,7 @@ public class RouterInfo extends DatabaseEntry { // WARNING this sort algorithm cannot be changed, as it must be consistent // network-wide. The signature is not checked at readin time, but only // later, and the hashes are stored in a Set, not a List. - peers = (Collection<Hash>) SortHelper.sortStructures(peers); + peers = SortHelper.sortStructures(peers); for (Hash peerHash : peers) { peerHash.writeBytes(out); } @@ -724,7 +724,10 @@ public class RouterInfo extends DatabaseEntry { System.err.println("Router info " + args[i] + " is invalid"); fail = true; } - } catch (Exception e) { + } catch (IOException e) { + System.err.println("Error reading " + args[i] + ": " + e); + fail = true; + } catch (DataFormatException e) { System.err.println("Error reading " + args[i] + ": " + e); fail = true; } finally { diff --git a/router/java/src/net/i2p/data/router/SortHelper.java b/router/java/src/net/i2p/data/router/SortHelper.java index 0c40fa3edab3716f53e4e19797c411e96ab82ff5..c7cea3c6f438d9621ed20c2c61e34ee6b284bded 100644 --- a/router/java/src/net/i2p/data/router/SortHelper.java +++ b/router/java/src/net/i2p/data/router/SortHelper.java @@ -31,12 +31,11 @@ class SortHelper { * WARNING - this sort order must be consistent network-wide, so while the order is arbitrary, * it cannot be changed. * Why? Just because it has to be consistent so signing will work. - * How to spec as returning the same type as the param? * DEPRECATED - Only used by RouterInfo. * * @return a new list */ - public static List<? extends DataStructure> sortStructures(Collection<? extends DataStructure> dataStructures) { + public static <T extends DataStructure> List<T> sortStructures(Collection<T> dataStructures) { if (dataStructures == null) return Collections.emptyList(); // This used to use Hash.toString(), which is insane, since a change to toString() @@ -52,7 +51,7 @@ class SortHelper { //for (DataStructure struct : tm.values()) { // rv.add(struct); //} - ArrayList<DataStructure> rv = new ArrayList<DataStructure>(dataStructures); + ArrayList<T> rv = new ArrayList<T>(dataStructures); sortStructureList(rv); return rv; } diff --git a/router/java/src/net/i2p/router/CommSystemFacade.java b/router/java/src/net/i2p/router/CommSystemFacade.java index e9c050762fea74a5a99fc6bfc46f5c9419af2624..2b96255b96ae1972789a627651403e691e5733c9 100644 --- a/router/java/src/net/i2p/router/CommSystemFacade.java +++ b/router/java/src/net/i2p/router/CommSystemFacade.java @@ -48,7 +48,7 @@ public abstract class CommSystemFacade implements Service { public boolean haveInboundCapacity(int pct) { return true; } public boolean haveOutboundCapacity(int pct) { return true; } public boolean haveHighOutboundCapacity() { return true; } - public List getMostRecentErrorMessages() { return Collections.emptyList(); } + public List<String> getMostRecentErrorMessages() { return Collections.emptyList(); } /** * Median clock skew of connected peers in seconds, or null if we cannot answer. diff --git a/router/java/src/net/i2p/router/InNetMessagePool.java b/router/java/src/net/i2p/router/InNetMessagePool.java index fb4c2a632c2f85f87fbabee70c8d0db853794a09..bfd3d696ea73c666416e2f52a9111e05aaa601fa 100644 --- a/router/java/src/net/i2p/router/InNetMessagePool.java +++ b/router/java/src/net/i2p/router/InNetMessagePool.java @@ -434,7 +434,7 @@ public class InNetMessagePool implements Service { } catch (OutOfMemoryError oome) { throw oome; - } catch (Exception e) { + } catch (RuntimeException e) { if (_log.shouldLog(Log.CRIT)) _log.log(Log.CRIT, "Error in the tunnel gateway dispatcher", e); } @@ -467,7 +467,7 @@ public class InNetMessagePool implements Service { } catch (OutOfMemoryError oome) { throw oome; - } catch (Exception e) { + } catch (RuntimeException e) { if (_log.shouldLog(Log.CRIT)) _log.log(Log.CRIT, "Error in the tunnel data dispatcher", e); } diff --git a/router/java/src/net/i2p/router/JobQueue.java b/router/java/src/net/i2p/router/JobQueue.java index b08bf90587d7db2effeecab79c44c985c672778d..141f348bf04d459762b5d849c9a5bb48e1a4d60b 100644 --- a/router/java/src/net/i2p/router/JobQueue.java +++ b/router/java/src/net/i2p/router/JobQueue.java @@ -341,7 +341,7 @@ public class JobQueue { public void startup() { _alive = true; I2PThread pumperThread = new I2PThread(_pumper, "Job Queue Pumper", true); - //pumperThread.setPriority(I2PThread.NORM_PRIORITY+1); + pumperThread.setPriority(Thread.NORM_PRIORITY + 1); pumperThread.start(); } @@ -522,6 +522,7 @@ public class JobQueue { _context.clock().addUpdateListener(this); ((RouterClock) _context.clock()).addShiftListener(this); } + public void run() { try { while (_alive) { @@ -591,10 +592,11 @@ public class JobQueue { } catch (InterruptedException ie) {} } // while (_alive) } catch (Throwable t) { - _context.clock().removeUpdateListener(this); - ((RouterClock) _context.clock()).removeShiftListener(this); if (_log.shouldLog(Log.ERROR)) _log.error("pumper killed?!", t); + } finally { + _context.clock().removeUpdateListener(this); + ((RouterClock) _context.clock()).removeShiftListener(this); } } @@ -605,8 +607,20 @@ public class JobQueue { } } + /** + * Clock shift listener. + * Only adjust timings for negative shifts. + * For positive shifts, just wake up the pumper. + * @since 0.9.23 + */ public void clockShift(long delta) { - offsetChanged(delta); + if (delta < 0) { + offsetChanged(delta); + } else { + synchronized (_jobLock) { + _jobLock.notifyAll(); + } + } } } diff --git a/router/java/src/net/i2p/router/JobQueueRunner.java b/router/java/src/net/i2p/router/JobQueueRunner.java index 9cf23f99875ed5955948d1bb9c871d84a25c6f4d..ecc4cd954a7937d2372a1cf2dc0ee800184d02d0 100644 --- a/router/java/src/net/i2p/router/JobQueueRunner.java +++ b/router/java/src/net/i2p/router/JobQueueRunner.java @@ -21,6 +21,7 @@ class JobQueueRunner extends I2PThread { _id = id; _keepRunning = true; _log = _context.logManager().getLog(JobQueueRunner.class); + setPriority(NORM_PRIORITY + 1); // all createRateStat in JobQueue //_state = 1; } diff --git a/router/java/src/net/i2p/router/JobTiming.java b/router/java/src/net/i2p/router/JobTiming.java index f934f1556d4c595893f68e40432bded72245a6ce..c9c0efb03abe03e916bf82dae16c3aef7e39ff0d 100644 --- a/router/java/src/net/i2p/router/JobTiming.java +++ b/router/java/src/net/i2p/router/JobTiming.java @@ -16,7 +16,7 @@ import net.i2p.util.Clock; * * For use by the router only. Not to be used by applications or plugins. */ -public class JobTiming implements Clock.ClockUpdateListener, RouterClock.ClockShiftListener { +public class JobTiming implements Clock.ClockUpdateListener { private volatile long _start; private volatile long _actualStart; private volatile long _actualEnd; @@ -82,8 +82,4 @@ public class JobTiming implements Clock.ClockUpdateListener, RouterClock.ClockSh if (_actualEnd != 0) _actualEnd += delta; } - - public void clockShift(long delta) { - offsetChanged(delta); - } } diff --git a/router/java/src/net/i2p/router/Router.java b/router/java/src/net/i2p/router/Router.java index 0bad3ecedd8b375ff2f62fb2b88972edb2c29073..a6e37ae444c57c682625b920d460e8da4a1172bd 100644 --- a/router/java/src/net/i2p/router/Router.java +++ b/router/java/src/net/i2p/router/Router.java @@ -9,6 +9,7 @@ package net.i2p.router; */ import java.io.File; +import java.io.IOException; import java.util.Collection; import java.util.Collections; import java.util.List; @@ -487,6 +488,9 @@ public class Router implements RouterClock.ClockShiftListener { /** * Our current router info. * Warning, may be null if called very early. + * + * Warning - risk of deadlock - do not call while holding locks + * */ public RouterInfo getRouterInfo() { synchronized (_routerInfoLock) { @@ -497,6 +501,9 @@ public class Router implements RouterClock.ClockShiftListener { /** * Caller must ensure info is valid - no validation done here. * Not for external use. + * + * Warning - risk of deadlock - do not call while holding locks + * */ public void setRouterInfo(RouterInfo info) { synchronized (_routerInfoLock) { @@ -611,6 +618,7 @@ public class Router implements RouterClock.ClockShiftListener { * This is synchronized with saveConfig(). * Not for external use. */ + @SuppressWarnings({ "unchecked", "rawtypes" }) public void readConfig() { synchronized(_configFileLock) { String f = getConfigFilename(); @@ -647,7 +655,7 @@ public class Router implements RouterClock.ClockShiftListener { //else // System.err.println("WARNING: Configuration file " + filename + " does not exist"); } - } catch (Exception ioe) { + } catch (IOException ioe) { if (log != null) log.error("Error loading the router configuration from " + filename, ioe); else @@ -804,6 +812,9 @@ public class Router implements RouterClock.ClockShiftListener { * Rebuild and republish our routerInfo since something significant * has changed. * Not for external use. + * + * Warning - risk of deadlock - do not call while holding locks + * */ public void rebuildRouterInfo(boolean blockingRebuild) { if (_log.shouldLog(Log.INFO)) @@ -957,6 +968,11 @@ public class Router implements RouterClock.ClockShiftListener { } } + /* + * + * Warning - risk of deadlock - do not call while holding locks + * + */ public boolean isHidden() { RouterInfo ri; synchronized (_routerInfoLock) { @@ -1140,7 +1156,7 @@ public class Router implements RouterClock.ClockShiftListener { _log.warn("Running shutdown task " + task.getClass()); try { //task.run(); - Thread t = new Thread(task, "Shutdown task " + task.getClass().getName()); + Thread t = new I2PAppThread(task, "Shutdown task " + task.getClass().getName()); t.setDaemon(true); t.start(); try { @@ -1350,7 +1366,7 @@ public class Router implements RouterClock.ClockShiftListener { ordered.putAll(_config); DataHelper.storeProps(ordered, new File(_configFilename)); } - } catch (Exception ioe) { + } catch (IOException ioe) { // warning, _log will be null when called from constructor if (_log != null) _log.error("Error saving the config to " + _configFilename, ioe); @@ -1391,6 +1407,7 @@ public class Router implements RouterClock.ClockShiftListener { * @return success * @since 0.8.13 */ + @SuppressWarnings({ "unchecked", "rawtypes" }) public boolean saveConfig(Map toAdd, Collection<String> toRemove) { synchronized(_configFileLock) { if (toAdd != null) @@ -1452,7 +1469,7 @@ public class Router implements RouterClock.ClockShiftListener { ((RouterClock) _context.clock()).removeShiftListener(this); // Let's not stop accepting tunnels, etc //_started = _context.clock().now(); - Thread t = new Thread(new Restarter(_context), "Router Restart"); + Thread t = new I2PThread(new Restarter(_context), "Router Restart"); t.setPriority(Thread.NORM_PRIORITY + 1); t.start(); } diff --git a/router/java/src/net/i2p/router/RouterContext.java b/router/java/src/net/i2p/router/RouterContext.java index 87bc22b0b25a9f0c14f8034f3c1f74dd0161b22d..2698faa0cc8fabd8062b4ea31bbefc5c2435e077 100644 --- a/router/java/src/net/i2p/router/RouterContext.java +++ b/router/java/src/net/i2p/router/RouterContext.java @@ -261,6 +261,9 @@ public class RouterContext extends I2PAppContext { /** * Convenience method for getting the router hash. * Equivalent to context.router().getRouterInfo().getIdentity().getHash() + * + * Warning - risk of deadlock - do not call while holding locks + * * @return may be null if called very early */ public Hash routerHash() { diff --git a/router/java/src/net/i2p/router/RouterThrottleImpl.java b/router/java/src/net/i2p/router/RouterThrottleImpl.java index aafdea9fd6fddc2a1e54033ac9a54ca67a8c54c2..9d0d0ddcebb680c514ccc2fcd976aa4c5395589c 100644 --- a/router/java/src/net/i2p/router/RouterThrottleImpl.java +++ b/router/java/src/net/i2p/router/RouterThrottleImpl.java @@ -276,7 +276,7 @@ class RouterThrottleImpl implements RouterThrottle { // ok, we're not hosed, but can we handle the bandwidth requirements // of another tunnel? - rs = _context.statManager().getRate("tunnel.participatingMessageCount"); + rs = _context.statManager().getRate("tunnel.participatingMessageCountAvgPerTunnel"); r = null; double messagesPerTunnel = DEFAULT_MESSAGES_PER_TUNNEL_ESTIMATE; if (rs != null) { diff --git a/router/java/src/net/i2p/router/RouterVersion.java b/router/java/src/net/i2p/router/RouterVersion.java index ea17ad55f3270be34b24fd56bd0b1495da601896..7ca1a3ec2c4e6b0a58a1f89cf73e6cb3036dcf84 100644 --- a/router/java/src/net/i2p/router/RouterVersion.java +++ b/router/java/src/net/i2p/router/RouterVersion.java @@ -18,7 +18,7 @@ public class RouterVersion { /** deprecated */ public final static String ID = "Monotone"; public final static String VERSION = CoreVersion.VERSION; - public final static long BUILD = 15; + public final static long BUILD = 10; /** for example "-test" */ public final static String EXTRA = ""; diff --git a/router/java/src/net/i2p/router/StatisticsManager.java b/router/java/src/net/i2p/router/StatisticsManager.java index 30e063b7bad6fe05752ff368ee13ef8c4c16b81a..74dae778aaa827876a4d942545003619a4e8b440 100644 --- a/router/java/src/net/i2p/router/StatisticsManager.java +++ b/router/java/src/net/i2p/router/StatisticsManager.java @@ -30,6 +30,10 @@ public class StatisticsManager implements Service { private final RouterContext _context; public final static String PROP_PUBLISH_RANKINGS = "router.publishPeerRankings"; + private static final String PROP_CONTACT_NAME = "netdb.contact"; + private static final String PROP_FAMILY_NAME = "netdb.family.name"; + private static final String PROP_FAMILY_KEY = "netdb.family.key"; + private static final String PROP_FAMILY_SIG = "netdb.family.sig"; /** enhance anonymity by only including build stats one out of this many times */ private static final int RANDOM_INCLUDE_STATS = 16; @@ -161,6 +165,21 @@ public class StatisticsManager implements Service { stats.setProperty("netdb.knownLeaseSets", String.valueOf(ls)); } + String contact = _context.getProperty(PROP_CONTACT_NAME); + if (contact != null) + stats.setProperty("contact", contact); + String family = _context.getProperty(PROP_FAMILY_NAME); + if (family != null) { + stats.setProperty("family", family); + // TODO + //String key = _context.getProperty(PROP_FAMILY_KEY); + //if (key != null) { + // get privkey + // sign something + // add b64 sig + //} + } + return stats; } diff --git a/router/java/src/net/i2p/router/client/ClientMessageEventListener.java b/router/java/src/net/i2p/router/client/ClientMessageEventListener.java index 8db9da336e155a75e16834cf83b3fac6fc987cfe..d5697571e0981cddfbf463472550ef340f157595 100644 --- a/router/java/src/net/i2p/router/client/ClientMessageEventListener.java +++ b/router/java/src/net/i2p/router/client/ClientMessageEventListener.java @@ -196,7 +196,6 @@ class ClientMessageEventListener implements I2CPMessageReader.I2CPMessageEventLi private void handleSetDate(SetDateMessage message) { //_context.clock().setNow(message.getDate().getTime()); } - /** * Handle a CreateSessionMessage. @@ -378,6 +377,7 @@ class ClientMessageEventListener implements I2CPMessageReader.I2CPMessageEventLi // do this instead: if (sid != null && message.getNonce() > 0) { MessageStatusMessage status = new MessageStatusMessage(); + status.setMessageId(_runner.getNextMessageId()); status.setSessionId(sid.getSessionId()); status.setSize(0); status.setNonce(message.getNonce()); @@ -461,7 +461,7 @@ class ClientMessageEventListener implements I2CPMessageReader.I2CPMessageEventLi } /** override for testing */ - protected void handleCreateLeaseSet(CreateLeaseSetMessage message) { + protected void handleCreateLeaseSet(CreateLeaseSetMessage message) { if ( (message.getLeaseSet() == null) || (message.getPrivateKey() == null) || (message.getSigningPrivateKey() == null) ) { if (_log.shouldLog(Log.ERROR)) _log.error("Null lease set granted: " + message); diff --git a/router/java/src/net/i2p/router/dummy/VMCommSystem.java b/router/java/src/net/i2p/router/dummy/VMCommSystem.java index 13b8aff0a244c6b748e8a240548e541c3d80eb90..29f232370e72983399e1655026531252f183b464 100644 --- a/router/java/src/net/i2p/router/dummy/VMCommSystem.java +++ b/router/java/src/net/i2p/router/dummy/VMCommSystem.java @@ -8,6 +8,7 @@ import java.util.Map; import net.i2p.data.Hash; import net.i2p.data.i2np.I2NPMessage; +import net.i2p.data.i2np.I2NPMessageException; import net.i2p.data.i2np.I2NPMessageHandler; import net.i2p.router.CommSystemFacade; import net.i2p.router.JobImpl; @@ -121,7 +122,7 @@ public class VMCommSystem extends CommSystemFacade { ReceiveJob.this.getContext().statManager().addRateData("transport.receiveMessageLarge", 1, 1); _ctx.inNetMessagePool().add(msg, null, _from); - } catch (Exception e) { + } catch (I2NPMessageException e) { _log.error("Error reading/formatting a VM message? Something is not right...", e); } } diff --git a/router/java/src/net/i2p/router/message/GarlicMessageParser.java b/router/java/src/net/i2p/router/message/GarlicMessageParser.java index df83702a28780516928043e53b87530db4aea483..ef0e5f0b7afe7f41ea3556eddafa2d1d6da46f64 100644 --- a/router/java/src/net/i2p/router/message/GarlicMessageParser.java +++ b/router/java/src/net/i2p/router/message/GarlicMessageParser.java @@ -75,7 +75,7 @@ public class GarlicMessageParser { private CloveSet readCloveSet(byte data[]) throws DataFormatException { int offset = 0; - int numCloves = (int)DataHelper.fromLong(data, offset, 1); + int numCloves = data[offset] & 0xff; offset++; if (_log.shouldLog(Log.DEBUG)) _log.debug("# cloves to read: " + numCloves); diff --git a/router/java/src/net/i2p/router/message/OutboundClientMessageOneShotJob.java b/router/java/src/net/i2p/router/message/OutboundClientMessageOneShotJob.java index 8a517a806f1a7296e50f2f0f94105e5ea0ec971b..fd45bc7520fe01c2df19026c03262bad5f76ee5f 100644 --- a/router/java/src/net/i2p/router/message/OutboundClientMessageOneShotJob.java +++ b/router/java/src/net/i2p/router/message/OutboundClientMessageOneShotJob.java @@ -949,15 +949,19 @@ public class OutboundClientMessageOneShotJob extends JobImpl { if (_outTunnel.getLength() > 0) size = ((size + 1023) / 1024) * 1024; // messages are in ~1KB blocks - for (int i = 0; i < _outTunnel.getLength(); i++) { + // skip ourselves at first hop + for (int i = 1; i < _outTunnel.getLength(); i++) { getContext().profileManager().tunnelTestSucceeded(_outTunnel.getPeer(i), sendTime); getContext().profileManager().tunnelDataPushed(_outTunnel.getPeer(i), sendTime, size); } _outTunnel.incrementVerifiedBytesTransferred(size); } - if (_inTunnel != null) - for (int i = 0; i < _inTunnel.getLength(); i++) + if (_inTunnel != null) { + // skip ourselves at last hop + for (int i = 0; i < _inTunnel.getLength() - 1; i++) { getContext().profileManager().tunnelTestSucceeded(_inTunnel.getPeer(i), sendTime); + } + } } public void setMessage(I2NPMessage msg) {} diff --git a/router/java/src/net/i2p/router/networkdb/kademlia/IterativeSearchJob.java b/router/java/src/net/i2p/router/networkdb/kademlia/IterativeSearchJob.java index 55464735e2c84ea4cf0668ccd00aba8c9648bb10..68c2c23fcc5bb37cc668faed485aac79eec02c8a 100644 --- a/router/java/src/net/i2p/router/networkdb/kademlia/IterativeSearchJob.java +++ b/router/java/src/net/i2p/router/networkdb/kademlia/IterativeSearchJob.java @@ -71,7 +71,7 @@ class IterativeSearchJob extends FloodSearchJob { private static Hash _alwaysQueryHash; /** Max number of peers to query */ private final int _totalSearchLimit; - + private static final int MAX_NON_FF = 3; /** Max number of peers to query */ private static final int TOTAL_SEARCH_LIMIT = 6; @@ -84,6 +84,10 @@ class IterativeSearchJob extends FloodSearchJob { * Longer than the typ. response time of 1.0 - 1.5 sec, but short enough that we move * on to another peer quickly. */ + private final long _singleSearchTime; + /** + * The default single search time + */ private static final long SINGLE_SEARCH_TIME = 3*1000; /** the actual expire time for a search message */ private static final long SINGLE_SEARCH_MSG_TIME = 10*1000; @@ -92,6 +96,10 @@ class IterativeSearchJob extends FloodSearchJob { * For now, we don't do concurrent, but we keep SINGLE_SEARCH_TIME very short, * so we have effective concurrency in that we fail a search quickly. */ + private final int _maxConcurrent; + /** + * The default _maxConcurrent + */ private static final int MAX_CONCURRENT = 1; public static final String PROP_ENCRYPT_RI = "router.encryptRouterLookups"; @@ -125,8 +133,11 @@ class IterativeSearchJob extends FloodSearchJob { _expiration = _timeoutMs + ctx.clock().now(); _rkey = ctx.routingKeyGenerator().getRoutingKey(key); _toTry = new TreeSet<Hash>(new XORComparator<Hash>(_rkey)); - _totalSearchLimit = (facade.floodfillEnabled() && ctx.router().getUptime() > 30*60*1000) ? + int totalSearchLimit = (facade.floodfillEnabled() && ctx.router().getUptime() > 30*60*1000) ? TOTAL_SEARCH_LIMIT_WHEN_FF : TOTAL_SEARCH_LIMIT; + _totalSearchLimit = ctx.getProperty("netdb.searchLimit", totalSearchLimit); + _singleSearchTime = ctx.getProperty("netdb.singleSearchTime", SINGLE_SEARCH_TIME); + _maxConcurrent = ctx.getProperty("netdb.maxConcurrent", MAX_CONCURRENT); _unheardFrom = new HashSet<Hash>(CONCURRENT_SEARCHES); _failedPeers = new HashSet<Hash>(_totalSearchLimit); _sentTime = new ConcurrentHashMap<Hash, Long>(_totalSearchLimit); @@ -187,11 +198,17 @@ class IterativeSearchJob extends FloodSearchJob { floodfillPeers.add(iter.next()); } } - _toTry.addAll(floodfillPeers); - // don't ask ourselves or the target - _toTry.remove(getContext().routerHash()); - _toTry.remove(_key); - if (_toTry.isEmpty()) { + final boolean empty; + // outside sync to avoid deadlock + final Hash us = getContext().routerHash(); + synchronized(this) { + _toTry.addAll(floodfillPeers); + // don't ask ourselves or the target + _toTry.remove(us); + _toTry.remove(_key); + empty = _toTry.isEmpty(); + } + if (empty) { if (_log.shouldLog(Log.WARN)) _log.warn(getJobId() + ": ISJ for " + _key + " had no peers to send to"); // no floodfill peers, fail @@ -227,23 +244,26 @@ class IterativeSearchJob extends FloodSearchJob { } while (true) { Hash peer; + final int done, pend; synchronized (this) { if (_dead) return; - int pend = _unheardFrom.size(); - if (pend >= MAX_CONCURRENT) - return; - int done = _failedPeers.size(); - if (done >= _totalSearchLimit) { - failed(); - return; - } - // even if pend and todo are empty, we don't fail, as there may be more peers - // coming via newPeerToTry() - if (done + pend >= _totalSearchLimit) + pend = _unheardFrom.size(); + if (pend >= _maxConcurrent) return; + done = _failedPeers.size(); + } + if (done >= _totalSearchLimit) { + failed(); + return; + } + // even if pend and todo are empty, we don't fail, as there may be more peers + // coming via newPeerToTry() + if (done + pend >= _totalSearchLimit) + return; + synchronized(this) { if (_alwaysQueryHash != null && - !_unheardFrom.contains(_alwaysQueryHash) && - !_failedPeers.contains(_alwaysQueryHash)) { + !_unheardFrom.contains(_alwaysQueryHash) && + !_failedPeers.contains(_alwaysQueryHash)) { // For testing or local networks... we will // pretend that the specified router is floodfill, and always closest-to-the-key. // May be set after startup but can't be changed or unset later. @@ -404,7 +424,7 @@ class IterativeSearchJob extends FloodSearchJob { // The timeout job is always run (never cancelled) // Note that the timeout is much shorter than the message expiration (see above) Job j = new IterativeTimeoutJob(getContext(), peer, this); - long expire = Math.min(_expiration, now + SINGLE_SEARCH_TIME); + long expire = Math.min(_expiration, now + _singleSearchTime); j.getTiming().setStartAfter(expire); getContext().jobQueue().addJob(j); @@ -513,12 +533,14 @@ class IterativeSearchJob extends FloodSearchJob { _facade.lookupFailed(_key); getContext().messageRegistry().unregisterPending(_out); int tries; + final List<Hash> unheard; synchronized(this) { tries = _unheardFrom.size() + _failedPeers.size(); - // blame the unheard-from (others already blamed in failed() above) - for (Hash h : _unheardFrom) - getContext().profileManager().dbLookupFailed(h); + unheard = new ArrayList<Hash>(_unheardFrom); } + // blame the unheard-from (others already blamed in failed() above) + for (Hash h : unheard) + getContext().profileManager().dbLookupFailed(h); long time = System.currentTimeMillis() - _created; if (_log.shouldLog(Log.INFO)) { long timeRemaining = _expiration - getContext().clock().now(); diff --git a/router/java/src/net/i2p/router/networkdb/kademlia/KademliaNetworkDatabaseFacade.java b/router/java/src/net/i2p/router/networkdb/kademlia/KademliaNetworkDatabaseFacade.java index 35864c5543bf812cff27241db1869012e30302ea..794638708b2980e1acdbb6324114b38dae0c26a4 100644 --- a/router/java/src/net/i2p/router/networkdb/kademlia/KademliaNetworkDatabaseFacade.java +++ b/router/java/src/net/i2p/router/networkdb/kademlia/KademliaNetworkDatabaseFacade.java @@ -274,7 +274,7 @@ public class KademliaNetworkDatabaseFacade extends NetworkDatabaseFacade { //_ds = new TransientDataStore(); // _exploreKeys = new HashSet(64); _dbDir = dbDir; - _negativeCache = new NegativeLookupCache(); + _negativeCache = new NegativeLookupCache(_context); createHandlers(); diff --git a/router/java/src/net/i2p/router/networkdb/kademlia/NegativeLookupCache.java b/router/java/src/net/i2p/router/networkdb/kademlia/NegativeLookupCache.java index 1915caf4ee56d890e237ef9082061291c0aa23ab..d9164225d44a9f151b27f78a494b5e84bc63d360 100644 --- a/router/java/src/net/i2p/router/networkdb/kademlia/NegativeLookupCache.java +++ b/router/java/src/net/i2p/router/networkdb/kademlia/NegativeLookupCache.java @@ -4,6 +4,7 @@ import java.util.Map; import net.i2p.data.Destination; import net.i2p.data.Hash; +import net.i2p.router.RouterContext; import net.i2p.util.LHMCache; import net.i2p.util.ObjectCounter; import net.i2p.util.SimpleTimer; @@ -17,15 +18,18 @@ import net.i2p.util.SimpleTimer2; class NegativeLookupCache { private final ObjectCounter<Hash> counter; private final Map<Hash, Destination> badDests; - + private final int _maxFails; + private static final int MAX_FAILS = 3; private static final int MAX_BAD_DESTS = 128; private static final long CLEAN_TIME = 2*60*1000; - public NegativeLookupCache() { + public NegativeLookupCache(RouterContext context) { this.counter = new ObjectCounter<Hash>(); this.badDests = new LHMCache<Hash, Destination>(MAX_BAD_DESTS); - SimpleTimer2.getInstance().addPeriodicEvent(new Cleaner(), CLEAN_TIME); + this._maxFails = context.getProperty("netdb.negativeCache.maxFails",MAX_FAILS); + final long cleanTime = context.getProperty("netdb.negativeCache.cleanupInterval", CLEAN_TIME); + SimpleTimer2.getInstance().addPeriodicEvent(new Cleaner(), cleanTime); } public void lookupFailed(Hash h) { @@ -33,7 +37,7 @@ class NegativeLookupCache { } public boolean isCached(Hash h) { - if (counter.count(h) >= MAX_FAILS) + if (counter.count(h) >= _maxFails) return true; synchronized(badDests) { return badDests.get(h) != null; diff --git a/router/java/src/net/i2p/router/networkdb/kademlia/PersistentDataStore.java b/router/java/src/net/i2p/router/networkdb/kademlia/PersistentDataStore.java index c3c413930ad068245f516647d11af620b4311828..f915b03f730baeb7d206de5033ec201aaf470a50 100644 --- a/router/java/src/net/i2p/router/networkdb/kademlia/PersistentDataStore.java +++ b/router/java/src/net/i2p/router/networkdb/kademlia/PersistentDataStore.java @@ -44,8 +44,10 @@ import net.i2p.util.SecureFileOutputStream; * Write out keys to disk when we get them and periodically read ones we don't know * about into memory, with newly read routers are also added to the routing table. * + * Public only for access to static methods by startup classes + * */ -class PersistentDataStore extends TransientDataStore { +public class PersistentDataStore extends TransientDataStore { private final File _dbDir; private final KademliaNetworkDatabaseFacade _facade; private final Writer _writer; @@ -541,7 +543,7 @@ class PersistentDataStore extends TransientDataStore { if (_log.shouldLog(Log.INFO)) _log.info("Unable to read the router reference in " + _routerFile.getName(), ioe); corrupt = true; - } catch (Exception e) { + } catch (RuntimeException e) { // key certificate problems, etc., don't let one bad RI kill the whole thing if (_log.shouldLog(Log.INFO)) _log.info("Unable to read the router reference in " + _routerFile.getName(), e); @@ -630,7 +632,25 @@ class PersistentDataStore extends TransientDataStore { return ROUTERINFO_PREFIX + b64 + ROUTERINFO_SUFFIX; return DIR_PREFIX + b64.charAt(0) + File.separatorChar + ROUTERINFO_PREFIX + b64 + ROUTERINFO_SUFFIX; } + + /** + * The persistent RI file for a hash. + * This is available before the netdb subsystem is running, so we can delete our old RI. + * + * @return non-null, should be absolute, does not necessarily exist + * @since 0.9.23 + */ + public static File getRouterInfoFile(RouterContext ctx, Hash hash) { + String b64 = hash.toBase64(); + File dir = new File(ctx.getRouterDir(), ctx.getProperty(KademliaNetworkDatabaseFacade.PROP_DB_DIR, KademliaNetworkDatabaseFacade.DEFAULT_DB_DIR)); + if (ctx.getBooleanProperty(PROP_FLAT)) + return new File(dir, ROUTERINFO_PREFIX + b64 + ROUTERINFO_SUFFIX); + return new File(dir, DIR_PREFIX + b64.charAt(0) + File.separatorChar + ROUTERINFO_PREFIX + b64 + ROUTERINFO_SUFFIX); + } + /** + * Package private for installer BundleRouterInfos + */ static Hash getRouterInfoHash(String filename) { return getHash(filename, ROUTERINFO_PREFIX, ROUTERINFO_SUFFIX); } @@ -646,7 +666,7 @@ class PersistentDataStore extends TransientDataStore { return null; Hash h = Hash.create(b); return h; - } catch (Exception e) { + } catch (RuntimeException e) { // static //_log.warn("Unable to fetch the key from [" + filename + "]", e); return null; diff --git a/router/java/src/net/i2p/router/networkdb/reseed/ReseedChecker.java b/router/java/src/net/i2p/router/networkdb/reseed/ReseedChecker.java index d6fc00f4e6a9fe343edeca80ab29dd119f516fef..25cd334ac8670b02dd720f820e8e239f0223d43c 100644 --- a/router/java/src/net/i2p/router/networkdb/reseed/ReseedChecker.java +++ b/router/java/src/net/i2p/router/networkdb/reseed/ReseedChecker.java @@ -3,7 +3,7 @@ package net.i2p.router.networkdb.reseed; import java.io.File; import java.io.InputStream; import java.io.IOException; -import java.net.URL; +import java.net.URI; import java.util.concurrent.atomic.AtomicBoolean; import net.i2p.data.DataHelper; @@ -131,7 +131,7 @@ public class ReseedChecker { * @throws IllegalArgumentException if it doesn't end with zip or su3 * @since 0.9.19 */ - public boolean requestReseed(URL url) throws IllegalArgumentException { + public boolean requestReseed(URI url) throws IllegalArgumentException { if (_inProgress.compareAndSet(false, true)) { Reseeder reseeder = new Reseeder(_context, this); try { diff --git a/router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java b/router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java index 59e69725316d18332739f837fba1354105fc9231..e3617c6692146cdff9ff18d8130ff7e48858f7ea 100644 --- a/router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java +++ b/router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java @@ -7,10 +7,8 @@ import java.io.FileOutputStream; import java.io.InputStream; import java.io.IOException; import java.io.OutputStream; -import java.net.MalformedURLException; import java.net.URI; import java.net.URISyntaxException; -import java.net.URL; import java.util.Arrays; import java.util.ArrayList; import java.util.Collections; @@ -88,8 +86,7 @@ public class Reseeder { /** @since 0.8.2 */ public static final String DEFAULT_SSL_SEED_URL = "https://reseed.i2p-projekt.de/" + "," + // Only HTTPS - //"https://netdb.rows.io:444/" + "," + // Only HTTPS and SU3 (v3) support - "https://i2pseed.zarrenspry.info/" + "," + // Only HTTPS and SU3 (v3) support + //"https://i2pseed.zarrenspry.info/" + "," + // Only HTTPS and SU3 (v3) support "https://i2p.mooo.com/netDb/" + "," + "https://netdb.i2p2.no/" + "," + // Only SU3 (v3) support, SNI required "https://us.reseed.i2p2.no:444/" + "," + @@ -153,7 +150,7 @@ public class Reseeder { * @throws IllegalArgumentException if it doesn't end with zip or su3 * @since 0.9.19 */ - void requestReseed(URL url) throws IllegalArgumentException { + void requestReseed(URI url) throws IllegalArgumentException { ReseedRunner reseedRunner = new ReseedRunner(url); // set to daemon so it doesn't hang a shutdown Thread reseed = new I2PAppThread(reseedRunner, "Reseed", true); @@ -239,7 +236,7 @@ public class Reseeder { /** bytes per sec for each su3 downloaded */ private final List<Long> _bandwidths; private static final int MAX_DATE_SETS = 2; - private final URL _url; + private final URI _url; /** * Start a reseed from the default URL list @@ -256,7 +253,7 @@ public class Reseeder { * @throws IllegalArgumentException if it doesn't end with zip or su3 * @since 0.9.19 */ - public ReseedRunner(URL url) throws IllegalArgumentException { + public ReseedRunner(URI url) throws IllegalArgumentException { String lc = url.getPath().toLowerCase(Locale.US); if (!(lc.endsWith(".zip") || lc.endsWith(".su3"))) throw new IllegalArgumentException("Reseed URL must end with .zip or .su3"); @@ -412,7 +409,7 @@ public class Reseeder { * @return count of routerinfos successfully fetched, or -1 if no valid URLs */ private int reseed(boolean echoStatus) { - List<URL> URLList = new ArrayList<URL>(); + List<URI> URLList = new ArrayList<URI>(); String URLs = _context.getProperty(PROP_RESEED_URL); boolean defaulted = URLs == null; boolean SSLDisable = _context.getBooleanProperty(PROP_SSL_DISABLE); @@ -429,29 +426,29 @@ public class Reseeder { if (!u.endsWith("/")) u = u + '/'; try { - URLList.add(new URL(u)); - } catch (MalformedURLException mue) {} + URLList.add(new URI(u)); + } catch (URISyntaxException mue) {} } Collections.shuffle(URLList, _context.random()); if (!SSLDisable && !SSLRequired) { // put the non-SSL at the end of the SSL - List<URL> URLList2 = new ArrayList<URL>(); + List<URI> URLList2 = new ArrayList<URI>(); tok = new StringTokenizer(DEFAULT_SEED_URL, " ,"); while (tok.hasMoreTokens()) { String u = tok.nextToken().trim(); if (!u.endsWith("/")) u = u + '/'; try { - URLList2.add(new URL(u)); - } catch (MalformedURLException mue) {} + URLList2.add(new URI(u)); + } catch (URISyntaxException mue) {} } Collections.shuffle(URLList2, _context.random()); URLList.addAll(URLList2); } } else { // custom list given - List<URL> SSLList = new ArrayList<URL>(); - List<URL> nonSSLList = new ArrayList<URL>(); + List<URI> SSLList = new ArrayList<URI>(); + List<URI> nonSSLList = new ArrayList<URI>(); StringTokenizer tok = new StringTokenizer(URLs, " ,"); while (tok.hasMoreTokens()) { // format tokens @@ -461,12 +458,12 @@ public class Reseeder { // check if ssl or not then add to respective list if (u.startsWith("https")) { try { - SSLList.add(new URL(u)); - } catch (MalformedURLException mue) {} + SSLList.add(new URI(u)); + } catch (URISyntaxException mue) {} } else { try { - nonSSLList.add(new URL(u)); - } catch (MalformedURLException mue) {} + nonSSLList.add(new URI(u)); + } catch (URISyntaxException mue) {} } } // shuffle lists @@ -482,8 +479,8 @@ public class Reseeder { } if (!isSNISupported()) { try { - URLList.remove(new URL("https://netdb.i2p2.no/")); - } catch (MalformedURLException mue) {} + URLList.remove(new URI("https://netdb.i2p2.no/")); + } catch (URISyntaxException mue) {} } if (URLList.isEmpty()) { System.out.println("No valid reseed URLs"); @@ -501,19 +498,19 @@ public class Reseeder { * @param echoStatus apparently always false * @return count of routerinfos successfully fetched */ - private int reseed(List<URL> URLList, boolean echoStatus) { + private int reseed(List<URI> URLList, boolean echoStatus) { int total = 0; for (int i = 0; i < URLList.size() && _isRunning; i++) { if (_context.router().gracefulShutdownInProgress()) { System.out.println("Reseed aborted, shutdown in progress"); return total; } - URL url = URLList.get(i); + URI url = URLList.get(i); int dl = 0; if (ENABLE_SU3) { try { - dl = reseedSU3(new URL(url.toString() + SU3_FILENAME), echoStatus); - } catch (MalformedURLException mue) {} + dl = reseedSU3(new URI(url.toString() + SU3_FILENAME), echoStatus); + } catch (URISyntaxException mue) {} } if (ENABLE_NON_SU3) { if (dl <= 0) @@ -557,7 +554,7 @@ public class Reseeder { * @param echoStatus apparently always false * @return count of routerinfos successfully fetched **/ - private int reseedOne(URL seedURL, boolean echoStatus) { + private int reseedOne(URI seedURL, boolean echoStatus) { try { // Don't use context clock as we may be adjusting the time final long timeLimit = System.currentTimeMillis() + MAX_TIME_PER_HOST; @@ -628,7 +625,7 @@ public class Reseeder { if (fetched % 60 == 0) System.out.println(); } - } catch (Exception e) { + } catch (RuntimeException e) { if (_log.shouldLog(Log.INFO)) _log.info("Failed fetch", e); errors++; @@ -659,7 +656,7 @@ public class Reseeder { * @return count of routerinfos successfully fetched * @since 0.9.14 **/ - public int reseedSU3(URL seedURL, boolean echoStatus) { + public int reseedSU3(URI seedURL, boolean echoStatus) { return reseedSU3OrZip(seedURL, true, echoStatus); } @@ -673,7 +670,7 @@ public class Reseeder { * @return count of routerinfos successfully fetched * @since 0.9.19 **/ - public int reseedZip(URL seedURL, boolean echoStatus) { + public int reseedZip(URI seedURL, boolean echoStatus) { return reseedSU3OrZip(seedURL, false, echoStatus); } @@ -687,7 +684,7 @@ public class Reseeder { * @return count of routerinfos successfully fetched * @since 0.9.19 **/ - private int reseedSU3OrZip(URL seedURL, boolean isSU3, boolean echoStatus) { + private int reseedSU3OrZip(URI seedURL, boolean isSU3, boolean echoStatus) { int fetched = 0; int errors = 0; File contentRaw = null; @@ -869,7 +866,7 @@ public class Reseeder { if (ourHash != null && DataHelper.eq(hash, ourHash.getData())) return false; - URL url = new URL(seedURL + (seedURL.endsWith("/") ? "" : "/") + ROUTERINFO_PREFIX + peer + ROUTERINFO_SUFFIX); + URI url = new URI(seedURL + (seedURL.endsWith("/") ? "" : "/") + ROUTERINFO_PREFIX + peer + ROUTERINFO_SUFFIX); byte data[] = readURL(url); if (data == null || data.length <= 0) @@ -878,7 +875,7 @@ public class Reseeder { } /** @return null on error */ - private byte[] readURL(URL url) throws IOException { + private byte[] readURL(URI url) throws IOException { ByteArrayOutputStream baos = new ByteArrayOutputStream(4*1024); EepGet get; boolean ssl = url.toString().startsWith("https"); @@ -923,7 +920,7 @@ public class Reseeder { * @return null on error * @since 0.9.14 */ - private File fetchURL(URL url) throws IOException { + private File fetchURL(URI url) throws IOException { File out = new File(_context.getTempDir(), "reseed-" + _context.random().nextInt() + ".tmp"); EepGet get; boolean ssl = url.toString().startsWith("https"); diff --git a/router/java/src/net/i2p/router/peermanager/DBHistory.java b/router/java/src/net/i2p/router/peermanager/DBHistory.java index b2b46faca3dae1f8b8739dc7121bb182e1d4444d..7106b10e06b89cff52346d5fed487224451a2906 100644 --- a/router/java/src/net/i2p/router/peermanager/DBHistory.java +++ b/router/java/src/net/i2p/router/peermanager/DBHistory.java @@ -16,17 +16,17 @@ import net.i2p.util.Log; public class DBHistory { private final Log _log; private final RouterContext _context; - private long _successfulLookups; - private long _failedLookups; + //private long _successfulLookups; + //private long _failedLookups; private RateStat _failedLookupRate; private RateStat _invalidReplyRate; - private long _lookupReplyNew; - private long _lookupReplyOld; - private long _lookupReplyDuplicate; - private long _lookupReplyInvalid; - private long _lookupsReceived; - private long _avgDelayBetweenLookupsReceived; - private long _lastLookupReceived; + //private long _lookupReplyNew; + //private long _lookupReplyOld; + //private long _lookupReplyDuplicate; + //private long _lookupReplyInvalid; + //private long _lookupsReceived; + //private long _avgDelayBetweenLookupsReceived; + //private long _lastLookupReceived; private long _lastLookupSuccessful; private long _lastLookupFailed; private long _lastStoreSuccessful; @@ -39,49 +39,68 @@ public class DBHistory { _context = context; _log = context.logManager().getLog(DBHistory.class); _statGroup = statGroup; - _lastLookupReceived = -1; + //_lastLookupReceived = -1; createRates(statGroup); } /** how many times we have sent them a db lookup and received the value back from them - * @deprecated unused */ - public long getSuccessfulLookups() { return _successfulLookups; } + //public long getSuccessfulLookups() { return _successfulLookups; } + /** how many times we have sent them a db lookup and not received the value or a lookup reply - * @deprecated unused */ - public long getFailedLookups() { return _failedLookups; } + //public long getFailedLookups() { return _failedLookups; } + /** how many peers that we have never seen before did lookups provide us with? - * @deprecated unused */ - public long getLookupReplyNew() { return _lookupReplyNew; } + //public long getLookupReplyNew() { return _lookupReplyNew; } + /** how many peers that we have already seen did lookups provide us with? - * @deprecated unused */ - public long getLookupReplyOld() { return _lookupReplyOld; } + //public long getLookupReplyOld() { return _lookupReplyOld; } + /** how many peers that we explicitly asked the peer not to send us did they reply with? - * @deprecated unused */ - public long getLookupReplyDuplicate() { return _lookupReplyDuplicate; } + //public long getLookupReplyDuplicate() { return _lookupReplyDuplicate; } + /** how many peers that were incorrectly formatted / expired / otherwise illegal did lookups provide us with? - * @deprecated unused */ - public long getLookupReplyInvalid() { return _lookupReplyInvalid; } + //public long getLookupReplyInvalid() { return _lookupReplyInvalid; } + /** how many lookups this peer has sent us? - * @deprecated unused */ - public long getLookupsReceived() { return _lookupsReceived; } + //public long getLookupsReceived() { return _lookupsReceived; } + /** how frequently do they send us lookup requests? - * @deprecated unused */ - public long getAvgDelayBetweenLookupsReceived() { return _avgDelayBetweenLookupsReceived; } + //public long getAvgDelayBetweenLookupsReceived() { return _avgDelayBetweenLookupsReceived; } + /** when did they last send us a request? - * @deprecated unused */ - public long getLastLookupReceived() { return _lastLookupReceived; } + // public long getLastLookupReceived() { return _lastLookupReceived; } + + /** + * Not persisted until 0.9.24 + * @since 0.7.8 + */ public long getLastLookupSuccessful() { return _lastLookupSuccessful; } + + /** + * Not persisted until 0.9.24 + * @since 0.7.8 + */ public long getLastLookupFailed() { return _lastLookupFailed; } + + /** + * Not persisted until 0.9.24 + * @since 0.7.8 + */ public long getLastStoreSuccessful() { return _lastStoreSuccessful; } + + /** + * Not persisted until 0.9.24 + * @since 0.7.8 + */ public long getLastStoreFailed() { return _lastStoreFailed; } /** how many times have they sent us data we didn't ask for and that we've never seen? */ @@ -103,8 +122,8 @@ public class DBHistory { * */ public void lookupSuccessful() { - _successfulLookups++; - _failedLookupRate.addData(0, 0); + //_successfulLookups++; + _failedLookupRate.addData(0); _context.statManager().addRateData("peer.failedLookupRate", 0); _lastLookupSuccessful = _context.clock().now(); } @@ -113,8 +132,8 @@ public class DBHistory { * Note that the peer failed to respond to the db lookup in any way */ public void lookupFailed() { - _failedLookups++; - _failedLookupRate.addData(1, 0); + //_failedLookups++; + _failedLookupRate.addData(1); _context.statManager().addRateData("peer.failedLookupRate", 1); _lastLookupFailed = _context.clock().now(); } @@ -123,22 +142,25 @@ public class DBHistory { * Note that we successfully stored to a floodfill peer and verified the result * by asking another floodfill peer * + * @since 0.7.8 */ public void storeSuccessful() { // Fixme, redefined this to include both lookup and store fails, // need to fix the javadocs - _failedLookupRate.addData(0, 0); + _failedLookupRate.addData(0); _context.statManager().addRateData("peer.failedLookupRate", 0); _lastStoreSuccessful = _context.clock().now(); } /** * Note that floodfill verify failed + * + * @since 0.7.8 */ public void storeFailed() { // Fixme, redefined this to include both lookup and store fails, // need to fix the javadocs - _failedLookupRate.addData(1, 0); + _failedLookupRate.addData(1); _lastStoreFailed = _context.clock().now(); } @@ -152,19 +174,21 @@ public class DBHistory { * themselves if they don't know anyone else) */ public void lookupReply(int newPeers, int oldPeers, int invalid, int duplicate) { - _lookupReplyNew += newPeers; - _lookupReplyOld += oldPeers; - _lookupReplyInvalid += invalid; - _lookupReplyDuplicate += duplicate; + //_lookupReplyNew += newPeers; + //_lookupReplyOld += oldPeers; + //_lookupReplyInvalid += invalid; + //_lookupReplyDuplicate += duplicate; if (invalid > 0) { - _invalidReplyRate.addData(invalid, 0); + _invalidReplyRate.addData(invalid); } } + /** * Note that the peer sent us a lookup * */ +/**** public void lookupReceived() { long now = _context.clock().now(); long delay = now - _lastLookupReceived; @@ -179,6 +203,8 @@ public class DBHistory { _avgDelayBetweenLookupsReceived = _avgDelayBetweenLookupsReceived - (delay / _lookupsReceived); } } +****/ + /** * Note that the peer sent us a data point without us asking for it * @param wasNew whether we already knew about this data point or not @@ -190,15 +216,15 @@ public class DBHistory { _unpromptedDbStoreOld++; } - public void setSuccessfulLookups(long num) { _successfulLookups = num; } - public void setFailedLookups(long num) { _failedLookups = num; } - public void setLookupReplyNew(long num) { _lookupReplyNew = num; } - public void setLookupReplyOld(long num) { _lookupReplyOld = num; } - public void setLookupReplyInvalid(long num) { _lookupReplyInvalid = num; } - public void setLookupReplyDuplicate(long num) { _lookupReplyDuplicate = num; } - public void setLookupsReceived(long num) { _lookupsReceived = num; } - public void setAvgDelayBetweenLookupsReceived(long ms) { _avgDelayBetweenLookupsReceived = ms; } - public void setLastLookupReceived(long when) { _lastLookupReceived = when; } + //public void setSuccessfulLookups(long num) { _successfulLookups = num; } + //public void setFailedLookups(long num) { _failedLookups = num; } + //public void setLookupReplyNew(long num) { _lookupReplyNew = num; } + //public void setLookupReplyOld(long num) { _lookupReplyOld = num; } + //public void setLookupReplyInvalid(long num) { _lookupReplyInvalid = num; } + //public void setLookupReplyDuplicate(long num) { _lookupReplyDuplicate = num; } + //public void setLookupsReceived(long num) { _lookupsReceived = num; } + //public void setAvgDelayBetweenLookupsReceived(long ms) { _avgDelayBetweenLookupsReceived = ms; } + //public void setLastLookupReceived(long when) { _lastLookupReceived = when; } public void setUnpromptedDbStoreNew(long num) { _unpromptedDbStoreNew = num; } public void setUnpromptedDbStoreOld(long num) { _unpromptedDbStoreOld = num; } @@ -217,17 +243,22 @@ public class DBHistory { buf.append("#################").append(NL); buf.append("# DB history").append(NL); buf.append("###").append(NL); - add(buf, "successfulLookups", _successfulLookups, "How many times have they successfully given us what we wanted when looking for it?"); - add(buf, "failedLookups", _failedLookups, "How many times have we sent them a db lookup and they didn't reply?"); - add(buf, "lookupsReceived", _lookupsReceived, "How many lookups have they sent us?"); - add(buf, "lookupReplyDuplicate", _lookupReplyDuplicate, "How many of their reply values to our lookups were something we asked them not to send us?"); - add(buf, "lookupReplyInvalid", _lookupReplyInvalid, "How many of their reply values to our lookups were invalid (expired, forged, corrupted)?"); - add(buf, "lookupReplyNew", _lookupReplyNew, "How many of their reply values to our lookups were brand new to us?"); - add(buf, "lookupReplyOld", _lookupReplyOld, "How many of their reply values to our lookups were something we had seen before?"); + //add(buf, "successfulLookups", _successfulLookups, "How many times have they successfully given us what we wanted when looking for it?"); + //add(buf, "failedLookups", _failedLookups, "How many times have we sent them a db lookup and they didn't reply?"); + //add(buf, "lookupsReceived", _lookupsReceived, "How many lookups have they sent us?"); + //add(buf, "lookupReplyDuplicate", _lookupReplyDuplicate, "How many of their reply values to our lookups were something we asked them not to send us?"); + //add(buf, "lookupReplyInvalid", _lookupReplyInvalid, "How many of their reply values to our lookups were invalid (expired, forged, corrupted)?"); + //add(buf, "lookupReplyNew", _lookupReplyNew, "How many of their reply values to our lookups were brand new to us?"); + //add(buf, "lookupReplyOld", _lookupReplyOld, "How many of their reply values to our lookups were something we had seen before?"); add(buf, "unpromptedDbStoreNew", _unpromptedDbStoreNew, "How times have they sent us something we didn't ask for and hadn't seen before?"); add(buf, "unpromptedDbStoreOld", _unpromptedDbStoreOld, "How times have they sent us something we didn't ask for but have seen before?"); - add(buf, "lastLookupReceived", _lastLookupReceived, "When was the last time they send us a lookup? (milliseconds since the epoch)"); - add(buf, "avgDelayBetweenLookupsReceived", _avgDelayBetweenLookupsReceived, "How long is it typically between each db lookup they send us? (in milliseconds)"); + //add(buf, "lastLookupReceived", _lastLookupReceived, "When was the last time they send us a lookup? (milliseconds since the epoch)"); + //add(buf, "avgDelayBetweenLookupsReceived", _avgDelayBetweenLookupsReceived, "How long is it typically between each db lookup they send us? (in milliseconds)"); + // following 4 weren't persisted until 0.9.24 + add(buf, "lastLookupSuccessful", _lastLookupSuccessful, "When was the last time a lookup from them succeeded? (milliseconds since the epoch)"); + add(buf, "lastLookupFailed", _lastLookupFailed, "When was the last time a lookup from them failed? (milliseconds since the epoch)"); + add(buf, "lastStoreSuccessful", _lastStoreSuccessful, "When was the last time a store to them succeeded? (milliseconds since the epoch)"); + add(buf, "lastStoreFailed", _lastStoreFailed, "When was the last time a store to them failed? (milliseconds since the epoch)"); out.write(buf.toString().getBytes("UTF-8")); _failedLookupRate.store(out, "dbHistory.failedLookupRate"); _invalidReplyRate.store(out, "dbHistory.invalidReplyRate"); @@ -240,17 +271,22 @@ public class DBHistory { public void load(Properties props) { - _successfulLookups = getLong(props, "dbHistory.successfulLookups"); - _failedLookups = getLong(props, "dbHistory.failedLookups"); - _lookupsReceived = getLong(props, "dbHistory.lookupsReceived"); - _lookupReplyDuplicate = getLong(props, "dbHistory.lookupReplyDuplicate"); - _lookupReplyInvalid = getLong(props, "dbHistory.lookupReplyInvalid"); - _lookupReplyNew = getLong(props, "dbHistory.lookupReplyNew"); - _lookupReplyOld = getLong(props, "dbHistory.lookupReplyOld"); + //_successfulLookups = getLong(props, "dbHistory.successfulLookups"); + //_failedLookups = getLong(props, "dbHistory.failedLookups"); + //_lookupsReceived = getLong(props, "dbHistory.lookupsReceived"); + //_lookupReplyDuplicate = getLong(props, "dbHistory.lookupReplyDuplicate"); + //_lookupReplyInvalid = getLong(props, "dbHistory.lookupReplyInvalid"); + //_lookupReplyNew = getLong(props, "dbHistory.lookupReplyNew"); + //_lookupReplyOld = getLong(props, "dbHistory.lookupReplyOld"); _unpromptedDbStoreNew = getLong(props, "dbHistory.unpromptedDbStoreNew"); _unpromptedDbStoreOld = getLong(props, "dbHistory.unpromptedDbStoreOld"); - _lastLookupReceived = getLong(props, "dbHistory.lastLookupReceived"); - _avgDelayBetweenLookupsReceived = getLong(props, "dbHistory.avgDelayBetweenLookupsReceived"); + //_lastLookupReceived = getLong(props, "dbHistory.lastLookupReceived"); + //_avgDelayBetweenLookupsReceived = getLong(props, "dbHistory.avgDelayBetweenLookupsReceived"); + // following 4 weren't persisted until 0.9.24 + _lastLookupSuccessful = getLong(props, "dbHistory.lastLookupSuccessful"); + _lastLookupFailed = getLong(props, "dbHistory.lastLookupFailed"); + _lastStoreSuccessful = getLong(props, "dbHistory.lastStoreSuccessful"); + _lastStoreFailed = getLong(props, "dbHistory.lastStoreFailed"); try { _failedLookupRate.load(props, "dbHistory.failedLookupRate", true); _log.debug("Loading dbHistory.failedLookupRate"); @@ -266,7 +302,7 @@ public class DBHistory { } } - private void createRates(String statGroup) { + private synchronized void createRates(String statGroup) { if (_failedLookupRate == null) _failedLookupRate = new RateStat("dbHistory.failedLookupRate", "How often does this peer to respond to a lookup?", statGroup, new long[] { 10*60*1000l, 60*60*1000l, 24*60*60*1000l }); if (_invalidReplyRate == null) @@ -276,14 +312,6 @@ public class DBHistory { } private final static long getLong(Properties props, String key) { - String val = props.getProperty(key); - if (val != null) { - try { - return Long.parseLong(val); - } catch (NumberFormatException nfe) { - return 0; - } - } - return 0; + return ProfilePersistenceHelper.getLong(props, key); } } diff --git a/router/java/src/net/i2p/router/peermanager/PeerManager.java b/router/java/src/net/i2p/router/peermanager/PeerManager.java index 8061a251775c3bddfaf66c59ac4ae772b93d396d..b3cc3643b029881c435b6239de036407b15525c9 100644 --- a/router/java/src/net/i2p/router/peermanager/PeerManager.java +++ b/router/java/src/net/i2p/router/peermanager/PeerManager.java @@ -165,7 +165,7 @@ class PeerManager { * @since 0.8.8 */ private void loadProfilesInBackground() { - (new Thread(new ProfileLoader())).start(); + (new I2PThread(new ProfileLoader())).start(); } /** diff --git a/router/java/src/net/i2p/router/peermanager/PeerProfile.java b/router/java/src/net/i2p/router/peermanager/PeerProfile.java index 059ac96cbf53cef08ca3ad2f85581b6ceafb8dc7..3a6c02fa79206cd6038af69ed98977089e2d4987 100644 --- a/router/java/src/net/i2p/router/peermanager/PeerProfile.java +++ b/router/java/src/net/i2p/router/peermanager/PeerProfile.java @@ -24,6 +24,9 @@ import net.i2p.util.Log; * Once it becomes necessary, we can simply compact the poorly performing profiles * (keeping only the most basic data) and maintain hundreds of thousands of profiles * in memory. Beyond that size, we can simply eject the peers (e.g. keeping the best 100,000). + * + * TODO most of the methods should be synchronized. + * */ public class PeerProfile { @@ -37,7 +40,7 @@ public class PeerProfile { private long _lastSentToSuccessfully; private long _lastFailedSend; private long _lastHeardFrom; - private double _tunnelTestResponseTimeAvg; + private float _tunnelTestResponseTimeAvg; // periodic rates //private RateStat _sendSuccessSize = null; //private RateStat _receiveSize = null; @@ -46,17 +49,20 @@ public class PeerProfile { private RateStat _tunnelTestResponseTime; private RateStat _dbIntroduction; // calculation bonuses - private long _speedBonus; - private long _capacityBonus; - private long _integrationBonus; + // ints to save some space + private int _speedBonus; + private int _capacityBonus; + private int _integrationBonus; // calculation values - private double _speedValue; - private double _capacityValue; - private double _integrationValue; + // floats to save some space + private float _speedValue; + private float _capacityValue; + private float _integrationValue; private boolean _isFailing; // new calculation values, to be updated - private double _speedValueNew; - private double _capacityValueNew; + // floats to save some space + private float _speedValueNew; + private float _capacityValueNew; // are we in coalescing state? private boolean _coalescing; // good vs bad behavior @@ -67,6 +73,24 @@ public class PeerProfile { private boolean _expandedDB; //private int _consecutiveBanlists; private final int _distance; + + /** keep track of the fastest 3 throughputs */ + private static final int THROUGHPUT_COUNT = 3; + /** + * fastest 1 minute throughput, in bytes per minute, ordered with fastest + * first. this is not synchronized, as we don't *need* perfection, and we only + * reorder/insert values on coallesce + */ + private final float _peakThroughput[] = new float[THROUGHPUT_COUNT]; + private volatile long _peakThroughputCurrentTotal; + private final float _peakTunnelThroughput[] = new float[THROUGHPUT_COUNT]; + /** total number of bytes pushed through a single tunnel in a 1 minute period */ + private final float _peakTunnel1mThroughput[] = new float[THROUGHPUT_COUNT]; + /** once a day, on average, cut the measured throughtput values in half */ + /** let's try once an hour times 3/4 */ + private static final int DROP_PERIOD_MINUTES = 60; + private static final float DEGRADE_FACTOR = 0.75f; + private long _lastCoalesceDate = System.currentTimeMillis(); /** * Countries with more than about a 2% share of the netdb. @@ -81,6 +105,8 @@ public class PeerProfile { } /** + * Caller should call setLastHeardAbout() and setFirstHeardAbout() + * * @param peer non-null */ public PeerProfile(RouterContext context, Hash peer) { @@ -88,15 +114,18 @@ public class PeerProfile { } /** + * Caller should call setLastHeardAbout() and setFirstHeardAbout() + * * @param peer non-null * @param expand must be true (see below) */ private PeerProfile(RouterContext context, Hash peer, boolean expand) { - _context = context; - _log = context.logManager().getLog(PeerProfile.class); if (peer == null) throw new NullPointerException(); + _context = context; + _log = context.logManager().getLog(PeerProfile.class); _peer = peer; + _firstHeardAbout = _context.clock().now(); // this is always true, and there are several places in the router that will NPE // if it is false, so all need to be fixed before we can have non-expanded profiles if (expand) @@ -191,14 +220,36 @@ public class PeerProfile { /** * When did we first hear about this peer? - * Currently unused, candidate for removal. + * @return greater than zero, set to now in consturctor */ - public long getFirstHeardAbout() { return _firstHeardAbout; } - public void setFirstHeardAbout(long when) { _firstHeardAbout = when; } + public synchronized long getFirstHeardAbout() { return _firstHeardAbout; } + + /** + * Set when did we first heard about this peer, only if older. + * Package private, only set by profile management subsystem. + */ + synchronized void setFirstHeardAbout(long when) { + if (when < _firstHeardAbout) + _firstHeardAbout = when; + } - /** when did we last hear about this peer? */ - public long getLastHeardAbout() { return _lastHeardAbout; } - public void setLastHeardAbout(long when) { _lastHeardAbout = when; } + /** + * when did we last hear about this peer? + * @return 0 if unset + */ + public synchronized long getLastHeardAbout() { return _lastHeardAbout; } + + /** + * Set when did we last hear about this peer, only if unset or newer + * Also sets FirstHeardAbout if earlier + */ + public synchronized void setLastHeardAbout(long when) { + if (_lastHeardAbout <= 0 || when > _lastHeardAbout) + _lastHeardAbout = when; + // this is called by netdb PersistentDataStore, so fixup first heard + if (when < _firstHeardAbout) + _firstHeardAbout = when; + } /** when did we last send to this peer successfully? */ public long getLastSendSuccessful() { return _lastSentToSuccessfully; } @@ -244,24 +295,24 @@ public class PeerProfile { * written to disk to affect how the algorithm ranks speed. Negative values are * penalties */ - public long getSpeedBonus() { return _speedBonus; } - public void setSpeedBonus(long bonus) { _speedBonus = bonus; } + public int getSpeedBonus() { return _speedBonus; } + public void setSpeedBonus(int bonus) { _speedBonus = bonus; } /** * extra factor added to the capacity ranking - this can be updated in the profile * written to disk to affect how the algorithm ranks capacity. Negative values are * penalties */ - public long getCapacityBonus() { return _capacityBonus; } - public void setCapacityBonus(long bonus) { _capacityBonus = bonus; } + public int getCapacityBonus() { return _capacityBonus; } + public void setCapacityBonus(int bonus) { _capacityBonus = bonus; } /** * extra factor added to the integration ranking - this can be updated in the profile * written to disk to affect how the algorithm ranks integration. Negative values are * penalties */ - public long getIntegrationBonus() { return _integrationBonus; } - public void setIntegrationBonus(long bonus) { _integrationBonus = bonus; } + public int getIntegrationBonus() { return _integrationBonus; } + public void setIntegrationBonus(int bonus) { _integrationBonus = bonus; } /** * How fast is the peer, taking into consideration both throughput and latency. @@ -269,26 +320,26 @@ public class PeerProfile { * (or measured) max rates, allowing this speed to reflect the speed /available/. * */ - public double getSpeedValue() { return _speedValue; } + public float getSpeedValue() { return _speedValue; } /** * How many tunnels do we think this peer can handle over the next hour? * */ - public double getCapacityValue() { return _capacityValue; } + public float getCapacityValue() { return _capacityValue; } /** * How well integrated into the network is this peer (as measured by how much they've * told us that we didn't already know). Higher numbers means better integrated * */ - public double getIntegrationValue() { return _integrationValue; } + public float getIntegrationValue() { return _integrationValue; } /** * is this peer actively failing (aka not worth touching)? * deprecated - unused - always false */ public boolean getIsFailing() { return _isFailing; } - public double getTunnelTestTimeAverage() { return _tunnelTestResponseTimeAvg; } - void setTunnelTestTimeAverage(double avg) { _tunnelTestResponseTimeAvg = avg; } + public float getTunnelTestTimeAverage() { return _tunnelTestResponseTimeAvg; } + void setTunnelTestTimeAverage(float avg) { _tunnelTestResponseTimeAvg = avg; } void updateTunnelTestTimeAverage(long ms) { if (_tunnelTestResponseTimeAvg <= 0) @@ -296,42 +347,32 @@ public class PeerProfile { // weighted since we want to let the average grow quickly and shrink slowly if (ms < _tunnelTestResponseTimeAvg) - _tunnelTestResponseTimeAvg = 0.95*_tunnelTestResponseTimeAvg + .05*ms; + _tunnelTestResponseTimeAvg = 0.95f * _tunnelTestResponseTimeAvg + .05f * ms; else - _tunnelTestResponseTimeAvg = 0.75*_tunnelTestResponseTimeAvg + .25*ms; + _tunnelTestResponseTimeAvg = 0.75f * _tunnelTestResponseTimeAvg + .25f * ms; if (_log.shouldLog(Log.INFO)) _log.info("Updating tunnel test time for " + _peer.toBase64().substring(0,6) + " to " + _tunnelTestResponseTimeAvg + " via " + ms); } - /** keep track of the fastest 3 throughputs */ - private static final int THROUGHPUT_COUNT = 3; - /** - * fastest 1 minute throughput, in bytes per minute, ordered with fastest - * first. this is not synchronized, as we don't *need* perfection, and we only - * reorder/insert values on coallesce - */ - private final double _peakThroughput[] = new double[THROUGHPUT_COUNT]; - private volatile long _peakThroughputCurrentTotal; - public double getPeakThroughputKBps() { - double rv = 0; + public float getPeakThroughputKBps() { + float rv = 0; for (int i = 0; i < THROUGHPUT_COUNT; i++) rv += _peakThroughput[i]; - rv /= (60d*1024d*THROUGHPUT_COUNT); + rv /= (60 * 1024 * THROUGHPUT_COUNT); return rv; } - public void setPeakThroughputKBps(double kBps) { + public void setPeakThroughputKBps(float kBps) { _peakThroughput[0] = kBps*60*1024; //for (int i = 0; i < THROUGHPUT_COUNT; i++) // _peakThroughput[i] = kBps*60; } void dataPushed(int size) { _peakThroughputCurrentTotal += size; } - private final double _peakTunnelThroughput[] = new double[THROUGHPUT_COUNT]; /** the tunnel pushed that much data in its lifetime */ void tunnelDataTransferred(long tunnelByteLifetime) { - double lowPeak = _peakTunnelThroughput[THROUGHPUT_COUNT-1]; + float lowPeak = _peakTunnelThroughput[THROUGHPUT_COUNT-1]; if (tunnelByteLifetime > lowPeak) { synchronized (_peakTunnelThroughput) { for (int i = 0; i < THROUGHPUT_COUNT; i++) { @@ -345,22 +386,20 @@ public class PeerProfile { } } } - public double getPeakTunnelThroughputKBps() { - double rv = 0; + public float getPeakTunnelThroughputKBps() { + float rv = 0; for (int i = 0; i < THROUGHPUT_COUNT; i++) rv += _peakTunnelThroughput[i]; - rv /= (10d*60d*1024d*THROUGHPUT_COUNT); + rv /= (10 * 60 * 1024 * THROUGHPUT_COUNT); return rv; } - public void setPeakTunnelThroughputKBps(double kBps) { - _peakTunnelThroughput[0] = kBps*60d*10d*1024d; + public void setPeakTunnelThroughputKBps(float kBps) { + _peakTunnelThroughput[0] = kBps * (60 * 10 * 1024); } - /** total number of bytes pushed through a single tunnel in a 1 minute period */ - private final double _peakTunnel1mThroughput[] = new double[THROUGHPUT_COUNT]; /** the tunnel pushed that much data in a 1 minute period */ void dataPushed1m(int size) { - double lowPeak = _peakTunnel1mThroughput[THROUGHPUT_COUNT-1]; + float lowPeak = _peakTunnel1mThroughput[THROUGHPUT_COUNT-1]; if (size > lowPeak) { synchronized (_peakTunnel1mThroughput) { for (int i = 0; i < THROUGHPUT_COUNT; i++) { @@ -388,14 +427,14 @@ public class PeerProfile { * through this peer. Ever. Except that the peak values are cut in half * once a day by coalesceThroughput(). This seems way too seldom. */ - public double getPeakTunnel1mThroughputKBps() { - double rv = 0; + public float getPeakTunnel1mThroughputKBps() { + float rv = 0; for (int i = 0; i < THROUGHPUT_COUNT; i++) rv += _peakTunnel1mThroughput[i]; - rv /= (60d*1024d*THROUGHPUT_COUNT); + rv /= (60 * 1024 * THROUGHPUT_COUNT); return rv; } - public void setPeakTunnel1mThroughputKBps(double kBps) { + public void setPeakTunnel1mThroughputKBps(float kBps) { _peakTunnel1mThroughput[0] = kBps*60*1024; } @@ -429,7 +468,7 @@ public class PeerProfile { * repeatedly * */ - public void expandProfile() { + public synchronized void expandProfile() { String group = (null == _peer ? "profileUnknown" : _peer.toBase64().substring(0,6)); //if (_sendSuccessSize == null) // _sendSuccessSize = new RateStat("sendSuccessSize", "How large successfully sent messages are", group, new long[] { 5*60*1000l, 60*60*1000l }); @@ -468,17 +507,12 @@ public class PeerProfile { _expandedDB = true; } - /** once a day, on average, cut the measured throughtput values in half */ - /** let's try once an hour times 3/4 */ - private static final int DROP_PERIOD_MINUTES = 60; - private static final double DEGRADE_FACTOR = 0.75; - private long _lastCoalesceDate = System.currentTimeMillis(); private void coalesceThroughput() { long now = System.currentTimeMillis(); long measuredPeriod = now - _lastCoalesceDate; if (measuredPeriod >= 60*1000) { long tot = _peakThroughputCurrentTotal; - double lowPeak = _peakThroughput[THROUGHPUT_COUNT-1]; + float lowPeak = _peakThroughput[THROUGHPUT_COUNT-1]; if (tot > lowPeak) { for (int i = 0; i < THROUGHPUT_COUNT; i++) { if (tot > _peakThroughput[i]) { @@ -562,9 +596,9 @@ public class PeerProfile { _capacityValue = _capacityValueNew; } - private double calculateSpeed() { return SpeedCalculator.calc(this); } - private double calculateCapacity() { return CapacityCalculator.calc(this); } - private double calculateIntegration() { return IntegrationCalculator.calc(this); } + private float calculateSpeed() { return (float) SpeedCalculator.calc(this); } + private float calculateCapacity() { return (float) CapacityCalculator.calc(this); } + private float calculateIntegration() { return (float) IntegrationCalculator.calc(this); } /** deprecated - unused - always false */ private boolean calculateIsFailing() { return false; } /** deprecated - unused - always false */ diff --git a/router/java/src/net/i2p/router/peermanager/ProfileManagerImpl.java b/router/java/src/net/i2p/router/peermanager/ProfileManagerImpl.java index d6911b8e753ebfe5f29a4f57ace5c5403074c070..b0a9c7785d3d50fe21277512c83cf28b5f16f31b 100644 --- a/router/java/src/net/i2p/router/peermanager/ProfileManagerImpl.java +++ b/router/java/src/net/i2p/router/peermanager/ProfileManagerImpl.java @@ -222,8 +222,8 @@ public class ProfileManagerImpl implements ProfileManager { data.setLastHeardFrom(_context.clock().now()); if (!data.getIsExpandedDB()) return; - DBHistory hist = data.getDBHistory(); - hist.lookupReceived(); + //DBHistory hist = data.getDBHistory(); + //hist.lookupReceived(); } /** @@ -313,8 +313,7 @@ public class ProfileManagerImpl implements ProfileManager { public void heardAbout(Hash peer, long when) { PeerProfile data = getProfile(peer); //if (data == null) return; - if (when > data.getLastHeardAbout()) - data.setLastHeardAbout(when); + data.setLastHeardAbout(when); } /** @@ -340,7 +339,6 @@ public class ProfileManagerImpl implements ProfileManager { PeerProfile prof = _context.profileOrganizer().getProfile(peer); if (prof == null) { prof = new PeerProfile(_context, peer); - prof.setFirstHeardAbout(_context.clock().now()); _context.profileOrganizer().addProfile(prof); } return prof; diff --git a/router/java/src/net/i2p/router/peermanager/ProfileOrganizer.java b/router/java/src/net/i2p/router/peermanager/ProfileOrganizer.java index 87f751bdcb725ceb2ba8786f3f5a245c01f2124f..ea800858bc93bfe779cd6825ea5fb87268ee8868 100644 --- a/router/java/src/net/i2p/router/peermanager/ProfileOrganizer.java +++ b/router/java/src/net/i2p/router/peermanager/ProfileOrganizer.java @@ -156,6 +156,11 @@ public class ProfileOrganizer { * Blocking if a reorganize is happening. */ public PeerProfile getProfile(Hash peer) { + if (peer.equals(_us)) { + if (_log.shouldWarn()) + _log.warn("Who wanted our own profile?", new Exception("I did")); + return null; + } getReadLock(); try { return locked_getProfile(peer); @@ -168,6 +173,11 @@ public class ProfileOrganizer { * @since 0.8.12 */ public PeerProfile getProfileNonblocking(Hash peer) { + if (peer.equals(_us)) { + if (_log.shouldWarn()) + _log.warn("Who wanted our own profile?", new Exception("I did")); + return null; + } if (tryReadLock()) { try { return locked_getProfile(peer); @@ -184,6 +194,11 @@ public class ProfileOrganizer { if (profile == null) return null; Hash peer = profile.getPeer(); + if (peer.equals(_us)) { + if (_log.shouldWarn()) + _log.warn("Who added our own profile?", new Exception("I did")); + return null; + } if (_log.shouldLog(Log.DEBUG)) _log.debug("New profile created for " + peer); diff --git a/router/java/src/net/i2p/router/peermanager/ProfilePersistenceHelper.java b/router/java/src/net/i2p/router/peermanager/ProfilePersistenceHelper.java index 305d0f343454323036ee3f1c51371f544866a5ec..f978194d3867a3fec8eb02b52fc3a9c8f3a8ff32 100644 --- a/router/java/src/net/i2p/router/peermanager/ProfilePersistenceHelper.java +++ b/router/java/src/net/i2p/router/peermanager/ProfilePersistenceHelper.java @@ -48,12 +48,12 @@ class ProfilePersistenceHelper { private static final String B64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-~"; /** - * If we haven't been able to get a message through to the peer in 3 days, + * If we haven't been able to get a message through to the peer in this much time, * drop the profile. They may reappear, but if they do, their config may * have changed (etc). * */ - private static final long EXPIRE_AGE = 3*24*60*60*1000; + private static final long EXPIRE_AGE = 15*24*60*60*1000; private final File _profileDir; private Hash _us; @@ -170,7 +170,7 @@ class ProfilePersistenceHelper { } /** @since 0.8.5 */ - private static void add(StringBuilder buf, String name, double val, String description) { + private static void add(StringBuilder buf, String name, float val, String description) { buf.append("# ").append(name).append(NL).append("# ").append(description).append(NL); buf.append(name).append('=').append(val).append(NL).append(NL); } @@ -263,29 +263,29 @@ class ProfilePersistenceHelper { file.delete(); } - profile.setCapacityBonus(getLong(props, "capacityBonus")); - profile.setIntegrationBonus(getLong(props, "integrationBonus")); - profile.setSpeedBonus(getLong(props, "speedBonus")); + profile.setCapacityBonus((int) getLong(props, "capacityBonus")); + profile.setIntegrationBonus((int) getLong(props, "integrationBonus")); + profile.setSpeedBonus((int) getLong(props, "speedBonus")); profile.setLastHeardAbout(getLong(props, "lastHeardAbout")); profile.setFirstHeardAbout(getLong(props, "firstHeardAbout")); profile.setLastSendSuccessful(getLong(props, "lastSentToSuccessfully")); profile.setLastSendFailed(getLong(props, "lastFailedSend")); profile.setLastHeardFrom(getLong(props, "lastHeardFrom")); - profile.setTunnelTestTimeAverage(getDouble(props, "tunnelTestTimeAverage")); - profile.setPeakThroughputKBps(getDouble(props, "tunnelPeakThroughput")); - profile.setPeakTunnelThroughputKBps(getDouble(props, "tunnelPeakTunnelThroughput")); - profile.setPeakTunnel1mThroughputKBps(getDouble(props, "tunnelPeakTunnel1mThroughput")); + profile.setTunnelTestTimeAverage(getFloat(props, "tunnelTestTimeAverage")); + profile.setPeakThroughputKBps(getFloat(props, "tunnelPeakThroughput")); + profile.setPeakTunnelThroughputKBps(getFloat(props, "tunnelPeakTunnelThroughput")); + profile.setPeakTunnel1mThroughputKBps(getFloat(props, "tunnelPeakTunnel1mThroughput")); profile.getTunnelHistory().load(props); // In the interest of keeping the in-memory profiles small, // don't load the DB info at all unless there is something interesting there // (i.e. floodfills) - // It seems like we do one or two lookups as a part of handshaking? - // Not sure, to be researched. - if (getLong(props, "dbHistory.successfulLookups") > 1 || - getLong(props, "dbHistory.failedlLokups") > 1) { + if (getLong(props, "dbHistory.lastLookupSuccessful") > 0 || + getLong(props, "dbHistory.lastLookupFailed") > 0 || + getLong(props, "dbHistory.lastStoreSuccessful") > 0 || + getLong(props, "dbHistory.lastStoreFailed") > 0) { profile.expandDBProfile(); profile.getDBHistory().load(props); profile.getDbIntroduction().load(props, "dbIntroduction", true); @@ -300,37 +300,87 @@ class ProfilePersistenceHelper { if (_log.shouldLog(Log.DEBUG)) _log.debug("Loaded the profile for " + peer.toBase64() + " from " + file.getName()); + fixupFirstHeardAbout(profile); return profile; - } catch (Exception e) { + } catch (IOException e) { if (_log.shouldLog(Log.WARN)) _log.warn("Error loading properties from " + file.getAbsolutePath(), e); file.delete(); return null; } } + + /** + * First heard about wasn't always set correctly before, + * set it to the minimum of all recorded timestamps. + * + * @since 0.9.24 + */ + private void fixupFirstHeardAbout(PeerProfile p) { + long min = Long.MAX_VALUE; + long t = p.getLastHeardAbout(); + if (t > 0 && t < min) min = t; + t = p.getLastSendSuccessful(); + if (t > 0 && t < min) min = t; + t = p.getLastSendFailed(); + if (t > 0 && t < min) min = t; + t = p.getLastHeardFrom(); + if (t > 0 && t < min) min = t; + // the first was never used and the last 4 were never persisted + //DBHistory dh = p.getDBHistory(); + //if (dh != null) { + // t = dh.getLastLookupReceived(); + // if (t > 0 && t < min) min = t; + // t = dh.getLastLookupSuccessful(); + // if (t > 0 && t < min) min = t; + // t = dh.getLastLookupFailed(); + // if (t > 0 && t < min) min = t; + // t = dh.getLastStoreSuccessful(); + // if (t > 0 && t < min) min = t; + // t = dh.getLastStoreFailed(); + // if (t > 0 && t < min) min = t; + //} + TunnelHistory th = p.getTunnelHistory(); + if (th != null) { + t = th.getLastAgreedTo(); + if (t > 0 && t < min) min = t; + t = th.getLastRejectedCritical(); + if (t > 0 && t < min) min = t; + t = th.getLastRejectedBandwidth(); + if (t > 0 && t < min) min = t; + t = th.getLastRejectedTransient(); + if (t > 0 && t < min) min = t; + t = th.getLastRejectedProbabalistic(); + if (t > 0 && t < min) min = t; + t = th.getLastFailed(); + if (t > 0 && t < min) min = t; + } + long fha = p.getFirstHeardAbout(); + if (min > 0 && min < Long.MAX_VALUE && (fha <= 0 || min < fha)) { + p.setFirstHeardAbout(min); + if (_log.shouldDebug()) + _log.debug("Fixed up the FHA time for " + p.getPeer().toBase64() + " to " + (new Date(min))); + } + } - private final static long getLong(Properties props, String key) { + static long getLong(Properties props, String key) { String val = props.getProperty(key); if (val != null) { try { return Long.parseLong(val); - } catch (NumberFormatException nfe) { - return 0; - } + } catch (NumberFormatException nfe) {} } return 0; } - private final static double getDouble(Properties props, String key) { + private final static float getFloat(Properties props, String key) { String val = props.getProperty(key); if (val != null) { try { - return Double.parseDouble(val); - } catch (NumberFormatException nfe) { - return 0.0; - } + return Float.parseFloat(val); + } catch (NumberFormatException nfe) {} } - return 0.0; + return 0.0f; } private void loadProps(Properties props, File file) throws IOException { @@ -369,7 +419,7 @@ class ProfilePersistenceHelper { return null; Hash h = Hash.create(b); return h; - } catch (Exception dfe) { + } catch (RuntimeException dfe) { _log.warn("Invalid base64 [" + key + "]", dfe); return null; } diff --git a/router/java/src/net/i2p/router/peermanager/TunnelHistory.java b/router/java/src/net/i2p/router/peermanager/TunnelHistory.java index 37e91b3f297a53005d6e8046e02fd3fb0796af3f..64e21a6e884b63cefc8fb89d2784773d3d469f85 100644 --- a/router/java/src/net/i2p/router/peermanager/TunnelHistory.java +++ b/router/java/src/net/i2p/router/peermanager/TunnelHistory.java @@ -89,10 +89,10 @@ public class TunnelHistory { _lifetimeRejected.incrementAndGet(); if (severity >= TUNNEL_REJECT_CRIT) { _lastRejectedCritical = _context.clock().now(); - _rejectRate.addData(1, 1); + _rejectRate.addData(1); } else if (severity >= TUNNEL_REJECT_BANDWIDTH) { _lastRejectedBandwidth = _context.clock().now(); - _rejectRate.addData(1, 1); + _rejectRate.addData(1); } else if (severity >= TUNNEL_REJECT_TRANSIENT_OVERLOAD) { _lastRejectedTransient = _context.clock().now(); // dont increment the reject rate in this case @@ -108,7 +108,7 @@ public class TunnelHistory { */ public void incrementFailed(int pct) { _lifetimeFailed.incrementAndGet(); - _failRate.addData(pct, 1); + _failRate.addData(pct); _lastFailed = _context.clock().now(); } @@ -190,14 +190,6 @@ public class TunnelHistory { } private final static long getLong(Properties props, String key) { - String val = props.getProperty(key); - if (val != null) { - try { - return Long.parseLong(val); - } catch (NumberFormatException nfe) { - return 0; - } - } - return 0; + return ProfilePersistenceHelper.getLong(props, key); } } diff --git a/router/java/src/net/i2p/router/startup/LoadClientAppsJob.java b/router/java/src/net/i2p/router/startup/LoadClientAppsJob.java index 3fbfc381f0d0db87838f0f738dd6fdb4e618ddae..67ab0095193dda2b0812ec4290022810f3b4145d 100644 --- a/router/java/src/net/i2p/router/startup/LoadClientAppsJob.java +++ b/router/java/src/net/i2p/router/startup/LoadClientAppsJob.java @@ -123,7 +123,7 @@ public class LoadClientAppsJob extends JobImpl { for (int i = 0; i < data.length; i++) { switch (data[i]) { case '\'': - case '\"': + case '"': if (isQuoted) { String str = buf.toString().trim(); if (str.length() > 0) @@ -207,7 +207,7 @@ public class LoadClientAppsJob extends JobImpl { if (args == null) args = new String[0]; Class<?> cls = Class.forName(className, true, cl); - Method method = cls.getMethod("main", new Class[] { String[].class }); + Method method = cls.getMethod("main", String[].class); method.invoke(cls, new Object[] { args }); } @@ -287,7 +287,7 @@ public class LoadClientAppsJob extends JobImpl { ClientApp app = (ClientApp) con.newInstance(conArgs); mgr.addAndStart(app, _args); } else { - Method method = cls.getMethod("main", new Class[] { String[].class }); + Method method = cls.getMethod("main", String[].class); method.invoke(cls, new Object[] { _args }); } } catch (Throwable t) { diff --git a/router/java/src/net/i2p/router/startup/LoadRouterInfoJob.java b/router/java/src/net/i2p/router/startup/LoadRouterInfoJob.java index 75977e0ab1ec1ba3d027d9532f2569843ee5c1ea..9564f642d98b1a5a3d385c45304c4314364fad89 100644 --- a/router/java/src/net/i2p/router/startup/LoadRouterInfoJob.java +++ b/router/java/src/net/i2p/router/startup/LoadRouterInfoJob.java @@ -20,6 +20,7 @@ import net.i2p.crypto.SigType; import net.i2p.data.Certificate; import net.i2p.data.DataFormatException; import net.i2p.data.DataHelper; +import net.i2p.data.Hash; import net.i2p.data.PrivateKey; import net.i2p.data.PublicKey; import net.i2p.data.SigningPrivateKey; @@ -30,6 +31,7 @@ import net.i2p.data.router.RouterPrivateKeyFile; import net.i2p.router.JobImpl; import net.i2p.router.Router; import net.i2p.router.RouterContext; +import net.i2p.router.networkdb.kademlia.PersistentDataStore; import net.i2p.util.Log; /** @@ -112,9 +114,9 @@ class LoadRouterInfoJob extends JobImpl { boolean sigTypeChanged = stype != cstype; if (sigTypeChanged && getContext().getProperty(CreateRouterInfoJob.PROP_ROUTER_SIGTYPE) == null) { // Not explicitly configured, and default has changed - // Give a 10% chance of rekeying for each restart - // TODO reduce from 20 to ~3 (i.e. increase probability) in future release - if (getContext().random().nextInt(20) > 0) { + // Give a 25% chance of rekeying for each restart + // TODO reduce to ~3 (i.e. increase probability) in future release + if (getContext().random().nextInt(4) > 0) { sigTypeChanged = false; if (_log.shouldWarn()) _log.warn("Deferring RI rekey from " + stype + " to " + cstype); @@ -122,9 +124,18 @@ class LoadRouterInfoJob extends JobImpl { } if (sigTypeChanged || shouldRebuild(privkey)) { + if (_us != null) { + Hash h = _us.getIdentity().getHash(); + _log.logAlways(Log.WARN, "Deleting old router identity " + h.toBase64()); + // the netdb hasn't started yet, but we want to delete the RI + File f = PersistentDataStore.getRouterInfoFile(getContext(), h); + f.delete(); + // the banlist can be called at any time + getContext().banlist().banlistRouterForever(h, "Our previous identity"); + _us = null; + } if (sigTypeChanged) _log.logAlways(Log.WARN, "Rebuilding RouterInfo with new signature type " + cstype); - _us = null; // windows... close before deleting if (fis1 != null) { try { fis1.close(); } catch (IOException ioe) {} diff --git a/router/java/src/net/i2p/router/startup/RebuildRouterInfoJob.java b/router/java/src/net/i2p/router/startup/RebuildRouterInfoJob.java index ef0826cf5fbcb99525f687249bd0319c581260ed..a3302ae408d5e4d5fef9e2e48d2aab59dbc2ba5d 100644 --- a/router/java/src/net/i2p/router/startup/RebuildRouterInfoJob.java +++ b/router/java/src/net/i2p/router/startup/RebuildRouterInfoJob.java @@ -98,7 +98,13 @@ class RebuildRouterInfoJob extends JobImpl { KeyData kd = LoadRouterInfoJob.readKeyData(keyFile, keyFile2); info = new RouterInfo(); info.setIdentity(kd.routerIdentity); - } catch (Exception e) { + } catch (DataFormatException e) { + _log.log(Log.CRIT, "Error reading in the key data from " + keyFile.getAbsolutePath(), e); + keyFile.delete(); + keyFile2.delete(); + rebuildRouterInfo(alreadyRunning); + return; + } catch (IOException e) { _log.log(Log.CRIT, "Error reading in the key data from " + keyFile.getAbsolutePath(), e); keyFile.delete(); keyFile2.delete(); diff --git a/router/java/src/net/i2p/router/startup/WorkingDir.java b/router/java/src/net/i2p/router/startup/WorkingDir.java index 8e3a19c93fdfe3a3d984687326a7f97b9c63df82..a7ca9f3303045343be4e4c5c4db3fd0f9406c61a 100644 --- a/router/java/src/net/i2p/router/startup/WorkingDir.java +++ b/router/java/src/net/i2p/router/startup/WorkingDir.java @@ -211,7 +211,7 @@ public class WorkingDir { String[] files = dir.list(); if (files == null) return false; - String migrated[] = MIGRATE_BASE.split(","); + String migrated[] = DataHelper.split(MIGRATE_BASE, ","); for (String file: files) { for (int i = 0; i < migrated.length; i++) { if (file.equals(migrated[i])) @@ -282,7 +282,7 @@ public class WorkingDir { private static boolean migrate(String list, File olddir, File todir) { boolean rv = true; - String files[] = list.split(","); + String files[] = DataHelper.split(list, ","); for (int i = 0; i < files.length; i++) { File from = new File(olddir, files[i]); if (!copy(from, todir)) { diff --git a/router/java/src/net/i2p/router/tasks/CryptoChecker.java b/router/java/src/net/i2p/router/tasks/CryptoChecker.java index e022931ff1c3dc3960564512c9ee10435b0d7ba9..49bd84da52715c33dc909921de263f8a06c9e400 100644 --- a/router/java/src/net/i2p/router/tasks/CryptoChecker.java +++ b/router/java/src/net/i2p/router/tasks/CryptoChecker.java @@ -5,6 +5,7 @@ import java.security.NoSuchAlgorithmException; import javax.crypto.Cipher; import javax.crypto.spec.SecretKeySpec; +import net.i2p.crypto.CryptoCheck; import net.i2p.crypto.SigType; import net.i2p.router.RouterContext; import net.i2p.util.Log; @@ -57,7 +58,7 @@ public class CryptoChecker { log.logAlways(Log.WARN, s); System.out.println(s); } - if (!isUnlimited()) { + if (!CryptoCheck.isUnlimited()) { s = "Please consider installing the Java Cryptography Unlimited Strength Jurisdiction Policy Files from "; //if (SystemVersion.isJava8()) // s += JRE8; @@ -79,28 +80,6 @@ public class CryptoChecker { } } - /** - * Copied from CryptixAESEngine - */ - private static boolean isUnlimited() { - try { - if (Cipher.getMaxAllowedKeyLength("AES") < 256) - return false; - } catch (NoSuchAlgorithmException e) { - return false; - } catch (NoSuchMethodError e) { - // JamVM, gij - try { - Cipher cipher = Cipher.getInstance("AES/CBC/NoPadding"); - SecretKeySpec key = new SecretKeySpec(new byte[32], "AES"); - cipher.init(Cipher.ENCRYPT_MODE, key); - } catch (GeneralSecurityException gse) { - return false; - } - } - return true; - } - public static void main(String[] args) { warnUnavailableCrypto(null); } diff --git a/router/java/src/net/i2p/router/time/Zones.java b/router/java/src/net/i2p/router/time/Zones.java index 85d5e388e4569da46e7b43265a1b1cd71c2ede0e..d04c67408ee7f191e7781faccf255f0a48b7fbc1 100644 --- a/router/java/src/net/i2p/router/time/Zones.java +++ b/router/java/src/net/i2p/router/time/Zones.java @@ -10,6 +10,7 @@ import java.util.Locale; import java.util.Map; import net.i2p.I2PAppContext; +import net.i2p.data.DataHelper; import net.i2p.router.transport.GeoIP; /** @@ -105,7 +106,7 @@ class Zones { try { if (line.charAt(0) == '#') continue; - String[] s = line.split(","); + String[] s = DataHelper.split(line, ","); String ucContinent = s[1].toUpperCase(Locale.US).trim(); String zone = _continentToZone.get(ucContinent); if (zone == null) diff --git a/router/java/src/net/i2p/router/transport/GeoIP.java b/router/java/src/net/i2p/router/transport/GeoIP.java index 3213be64ee12d86ef19e1b3a249f5a1163e4e5aa..6a204016428903afc4a4a8089e7f856a101a0cdc 100644 --- a/router/java/src/net/i2p/router/transport/GeoIP.java +++ b/router/java/src/net/i2p/router/transport/GeoIP.java @@ -17,6 +17,7 @@ import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.atomic.AtomicBoolean; import net.i2p.I2PAppContext; +import net.i2p.data.DataHelper; import net.i2p.data.Hash; import net.i2p.router.Router; import net.i2p.router.RouterContext; @@ -209,7 +210,7 @@ public class GeoIP { if (line.charAt(0) == '#') { continue; } - String[] s = line.split(","); + String[] s = DataHelper.split(line, ","); String lc = s[0].toLowerCase(Locale.US); _codeToName.put(lc, s[1]); _codeCache.put(lc, lc); @@ -274,7 +275,7 @@ public class GeoIP { if (buf.charAt(0) == '#') { continue; } - String[] s = buf.split(","); + String[] s = DataHelper.split(buf, ","); long ip1 = Long.parseLong(s[0]); long ip2 = Long.parseLong(s[1]); while (idx < search.length && search[idx].longValue() < ip1) { diff --git a/router/java/src/net/i2p/router/transport/GeoIPv6.java b/router/java/src/net/i2p/router/transport/GeoIPv6.java index b93e3f004f9536c471811a90cd553ea353c51c9d..af3120480a46607c77feddc03b36c2b3d72a3232 100644 --- a/router/java/src/net/i2p/router/transport/GeoIPv6.java +++ b/router/java/src/net/i2p/router/transport/GeoIPv6.java @@ -170,7 +170,7 @@ class GeoIPv6 { if (buf.charAt(0) == '#') { continue; } - String[] s = buf.split(","); + String[] s = DataHelper.split(buf, ","); String ips1 = s[0].replace("\"", "").trim(); String ips2 = s[1].replace("\"", "").trim(); byte[] ip1 = InetAddress.getByName(ips1).getAddress(); diff --git a/router/java/src/net/i2p/router/transport/OutboundMessageRegistry.java b/router/java/src/net/i2p/router/transport/OutboundMessageRegistry.java index 012107e6c9b69f7242358fd5cb2e53b65a2797ac..9a5661b5f252d2cd3e6f2e72dbb19e52e2457626 100644 --- a/router/java/src/net/i2p/router/transport/OutboundMessageRegistry.java +++ b/router/java/src/net/i2p/router/transport/OutboundMessageRegistry.java @@ -96,6 +96,7 @@ public class OutboundMessageRegistry { * @return non-null List of OutNetMessage describing messages that were waiting for * the payload */ + @SuppressWarnings("unchecked") public List<OutNetMessage> getOriginalMessages(I2NPMessage message) { List<MessageSelector> matchedSelectors = null; List<MessageSelector> removedSelectors = null; @@ -193,6 +194,7 @@ public class OutboundMessageRegistry { /** * @param allowEmpty is msg.getMessage() allowed to be null? */ + @SuppressWarnings("unchecked") private void registerPending(OutNetMessage msg, boolean allowEmpty) { if ( (!allowEmpty) && (msg.getMessage() == null) ) throw new IllegalArgumentException("OutNetMessage doesn't contain an I2NPMessage? Impossible?"); @@ -229,6 +231,7 @@ public class OutboundMessageRegistry { /** * @param msg may be be null */ + @SuppressWarnings("unchecked") public void unregisterPending(OutNetMessage msg) { if (msg == null) return; MessageSelector sel = msg.getReplySelector(); @@ -255,6 +258,7 @@ public class OutboundMessageRegistry { public void renderStatusHTML(Writer out) throws IOException {} private class CleanupTask extends SimpleTimer2.TimedEvent { + /** LOCKING: _selectors */ private long _nextExpire; public CleanupTask() { @@ -262,6 +266,7 @@ public class OutboundMessageRegistry { _nextExpire = -1; } + @SuppressWarnings("unchecked") public void timeReached() { long now = _context.clock().now(); List<MessageSelector> removing = new ArrayList<MessageSelector>(8); @@ -321,21 +326,28 @@ public class OutboundMessageRegistry { if (log) { int e = removing.size(); - int r = _selectors.size(); + int r; + synchronized(_selectors) { + r = _selectors.size(); + } int a = _activeMessages.size(); if (r > 0 || e > 0 || a > 0) _log.debug("Expired: " + e + " remaining: " + r + " active: " + a); } - if (_nextExpire <= now) - _nextExpire = now + 10*1000; - schedule(_nextExpire - now); + synchronized(_selectors) { + if (_nextExpire <= now) + _nextExpire = now + 10*1000; + schedule(_nextExpire - now); + } } public void scheduleExpiration(MessageSelector sel) { long now = _context.clock().now(); - if ( (_nextExpire <= now) || (sel.getExpiration() < _nextExpire) ) { - _nextExpire = sel.getExpiration(); - reschedule(_nextExpire - now); + synchronized(_selectors) { + if ( (_nextExpire <= now) || (sel.getExpiration() < _nextExpire) ) { + _nextExpire = sel.getExpiration(); + reschedule(_nextExpire - now); + } } } } diff --git a/router/java/src/net/i2p/router/transport/TransportUtil.java b/router/java/src/net/i2p/router/transport/TransportUtil.java index ecc36cf5db0ac4a04a7dba24d7b565dfef9cb93f..c583a21e3d238a7bc6606c47511f2868a16c0bed 100644 --- a/router/java/src/net/i2p/router/transport/TransportUtil.java +++ b/router/java/src/net/i2p/router/transport/TransportUtil.java @@ -98,7 +98,7 @@ public abstract class TransportUtil { */ public static boolean isIPv6(RouterAddress addr) { // do this the fast way, without calling getIP() to parse the host string - String host = addr.getOption(RouterAddress.PROP_HOST); + String host = addr.getHost(); return host != null && host.contains(":"); } diff --git a/router/java/src/net/i2p/router/transport/UPnP.java b/router/java/src/net/i2p/router/transport/UPnP.java index baec7ab6215d34a3e48846fa202b2e034333afb6..58cc32c75b905100c54e88555a47b97d3e560dfd 100644 --- a/router/java/src/net/i2p/router/transport/UPnP.java +++ b/router/java/src/net/i2p/router/transport/UPnP.java @@ -4,9 +4,9 @@ package net.i2p.router.transport; import java.net.InetAddress; -import java.net.MalformedURLException; import java.net.UnknownHostException; -import java.net.URL; +import java.net.URI; +import java.net.URISyntaxException; import java.util.Collections; import java.util.HashMap; import java.util.HashSet; @@ -19,6 +19,7 @@ import java.util.concurrent.atomic.AtomicInteger; import net.i2p.I2PAppContext; import net.i2p.data.DataHelper; import net.i2p.util.Addresses; +import net.i2p.util.I2PThread; import net.i2p.util.Log; import net.i2p.util.Translate; @@ -223,7 +224,7 @@ class UPnP extends ControlPoint implements DeviceChangeListener, EventListener { boolean ignore = false; String toIgnore = _context.getProperty(PROP_IGNORE); if (toIgnore != null) { - String[] ignores = toIgnore.split("[,; \r\n\t]"); + String[] ignores = DataHelper.split(toIgnore, "[,; \r\n\t]"); for (int i = 0; i < ignores.length; i++) { if (ignores[i].equals(udn)) { ignore = true; @@ -475,7 +476,7 @@ class UPnP extends ControlPoint implements DeviceChangeListener, EventListener { ServiceStateTable table; try { table = serv.getServiceStateTable(); - } catch (Exception e) { + } catch (RuntimeException e) { // getSCPDNode() returns null, // NPE at org.cybergarage.upnp.Service.getServiceStateTable(Service.java:526) sb.append(" : no state"); @@ -822,17 +823,17 @@ class UPnP extends ControlPoint implements DeviceChangeListener, EventListener { String him = _router.getURLBase(); if (him != null && him.length() > 0) { try { - URL url = new URL(him); + URI url = new URI(him); hisIP = url.getHost(); - } catch (MalformedURLException mue) {} + } catch (URISyntaxException use) {} } if (hisIP == null) { him = _router.getLocation(); if (him != null && him.length() > 0) { try { - URL url = new URL(him); + URI url = new URI(him); hisIP = url.getHost(); - } catch (MalformedURLException mue) {} + } catch (URISyntaxException use) {} } } if (hisIP == null) @@ -994,7 +995,7 @@ class UPnP extends ControlPoint implements DeviceChangeListener, EventListener { } if (_log.shouldLog(Log.INFO)) _log.info("Starting thread to forward " + portsToForwardNow.size() + " ports"); - Thread t = new Thread(new RegisterPortsThread(portsToForwardNow)); + Thread t = new I2PThread(new RegisterPortsThread(portsToForwardNow)); t.setName("UPnP Port Opener " + __id.incrementAndGet()); t.setDaemon(true); t.start(); @@ -1034,7 +1035,7 @@ class UPnP extends ControlPoint implements DeviceChangeListener, EventListener { private void unregisterPorts(Set<ForwardPort> portsToForwardNow) { if (_log.shouldLog(Log.INFO)) _log.info("Starting thread to un-forward " + portsToForwardNow.size() + " ports"); - Thread t = new Thread(new UnregisterPortsThread(portsToForwardNow)); + Thread t = new I2PThread(new UnregisterPortsThread(portsToForwardNow)); t.setName("UPnP Port Closer " + __id.incrementAndGet()); t.setDaemon(true); t.start(); diff --git a/router/java/src/net/i2p/router/transport/UPnPManager.java b/router/java/src/net/i2p/router/transport/UPnPManager.java index 370ba813e812db6020157bb3fdef4634c2d2c985..cd9963b06751f6044861fbe21abc75fbfacb8ff5 100644 --- a/router/java/src/net/i2p/router/transport/UPnPManager.java +++ b/router/java/src/net/i2p/router/transport/UPnPManager.java @@ -88,7 +88,7 @@ class UPnPManager { _isRunning = _upnp.runPlugin(); if (_log.shouldLog(Log.INFO)) _log.info("UPnP runPlugin took " + (_context.clock().now() - b)); - } catch (Exception e) { + } catch (RuntimeException e) { // NPE in UPnP (ticket #728), can't let it bring us down if (!_errorLogged) { _log.error("UPnP error, please report", e); @@ -233,7 +233,17 @@ class UPnPManager { public void portForwardStatus(Map<ForwardPort,ForwardPortStatus> statuses) { if (_log.shouldLog(Log.DEBUG)) _log.debug("UPnP Callback:"); + // Let's not have two of these running at once. + // Deadlock reported in ticket #1699 + // and the locking isn't foolproof in UDPTransport. + // UPnP runs the callbacks in a thread, so we can block. + // There is only one UPnPCallback, so lock on this + synchronized(this) { + locked_PFS(statuses); + } + } + private void locked_PFS(Map<ForwardPort,ForwardPortStatus> statuses) { byte[] ipaddr = null; DetectedIP[] ips = _upnp.getAddress(); if (ips != null) { @@ -244,6 +254,7 @@ class UPnPManager { _log.debug("External address: " + ip.publicAddress + " type: " + ip.natType); if (!ip.publicAddress.equals(_detectedAddress)) { _detectedAddress = ip.publicAddress; + // deadlock path 1 _manager.externalAddressReceived(SOURCE_UPNP, _detectedAddress.getAddress(), 0); } ipaddr = ip.publicAddress.getAddress(); @@ -269,6 +280,7 @@ class UPnPManager { else continue; boolean success = fps.status >= ForwardPortStatus.MAYBE_SUCCESS; + // deadlock path 2 _manager.forwardPortStatus(style, ipaddr, fp.portNumber, fps.externalPort, success, fps.reasonString); } } diff --git a/router/java/src/net/i2p/router/transport/crypto/DHSessionKeyBuilder.java b/router/java/src/net/i2p/router/transport/crypto/DHSessionKeyBuilder.java index ad9a3e43d8a2f1cee7e313be517594902d6d93ff..1b09e2d621ed5fe80ff6cd9dc287c460d5810b5d 100644 --- a/router/java/src/net/i2p/router/transport/crypto/DHSessionKeyBuilder.java +++ b/router/java/src/net/i2p/router/transport/crypto/DHSessionKeyBuilder.java @@ -505,9 +505,10 @@ public class DHSessionKeyBuilder { break; long curCalc = System.currentTimeMillis() - curStart; // for some relief... - try { - Thread.sleep(Math.min(200, Math.max(10, _calcDelay + (curCalc * 3)))); - } catch (InterruptedException ie) { // nop + if (!interrupted()) { + try { + Thread.sleep(Math.min(200, Math.max(10, _calcDelay + (curCalc * 3)))); + } catch (InterruptedException ie) {} } } } @@ -541,6 +542,8 @@ public class DHSessionKeyBuilder { if (_log.shouldLog(Log.INFO)) _log.info("No more builders, creating one now"); _context.statManager().addRateData("crypto.DHEmpty", 1); builder = precalc(); + // stop sleeping, wake up, make some more + this.interrupt(); } return builder; } diff --git a/router/java/src/net/i2p/router/transport/ntcp/EventPumper.java b/router/java/src/net/i2p/router/transport/ntcp/EventPumper.java index 053d4a3730dd4ebbd72ee55d93536ca1c2cfe864..dcc2226c4ef6be6d5e27b94b2d26fd12f95cd582 100644 --- a/router/java/src/net/i2p/router/transport/ntcp/EventPumper.java +++ b/router/java/src/net/i2p/router/transport/ntcp/EventPumper.java @@ -335,7 +335,7 @@ class EventPumper implements Runnable { con.close(); key.cancel(); } - } catch (Exception ke) { + } catch (IOException ke) { _log.error("Error closing key " + key + " on pumper shutdown", ke); } } @@ -344,7 +344,7 @@ class EventPumper implements Runnable { if (_log.shouldLog(Log.DEBUG)) _log.debug("Closing down the event pumper with no selection keys remaining"); } - } catch (Exception e) { + } catch (IOException e) { _log.error("Error closing keys on pumper shutdown", e); } _wantsConRegister.clear(); diff --git a/router/java/src/net/i2p/router/transport/ntcp/NTCPConnection.java b/router/java/src/net/i2p/router/transport/ntcp/NTCPConnection.java index 703ee5050a3b6d9314dfe9af3944fb7247c29b52..37504a111a936291f2557a5a101db1f587b80947 100644 --- a/router/java/src/net/i2p/router/transport/ntcp/NTCPConnection.java +++ b/router/java/src/net/i2p/router/transport/ntcp/NTCPConnection.java @@ -463,7 +463,7 @@ class NTCPConnection implements Closeable { _transport.afterSend(msg, successful, allowRequeue, msg.getLifetime()); if (_consecutiveBacklog > 10) { // waaay too backlogged boolean wantsWrite = false; - try { wantsWrite = ( (_conKey.interestOps() & SelectionKey.OP_WRITE) != 0); } catch (Exception e) {} + try { wantsWrite = ( (_conKey.interestOps() & SelectionKey.OP_WRITE) != 0); } catch (RuntimeException e) {} if (_log.shouldLog(Log.WARN)) { int blocks = _writeBufs.size(); _log.warn("Too backlogged for too long (" + _consecutiveBacklog + " messages for " + DataHelper.formatDuration(queueTime()) + ", sched? " + wantsWrite + ", blocks: " + blocks + ") sending to " + _remotePeer.calculateHash()); @@ -521,7 +521,7 @@ class NTCPConnection implements Closeable { + ", wantsWrite? " + (0 != (_conKey.interestOps()&SelectionKey.OP_WRITE)) + ", currentOut set? " + currentOutboundSet + ", writeBufs: " + writeBufs + " on " + toString()); - } catch (Exception e) {} // java.nio.channels.CancelledKeyException + } catch (RuntimeException e) {} // java.nio.channels.CancelledKeyException } //_context.statManager().addRateData("ntcp.sendBacklogTime", queueTime); return true; diff --git a/router/java/src/net/i2p/router/transport/udp/ACKSender.java b/router/java/src/net/i2p/router/transport/udp/ACKSender.java index 8e608ab136f938d1439864dc1eaecb0dbf828904..60976d285b199c4551c5f01422e9be6decbf8161 100644 --- a/router/java/src/net/i2p/router/transport/udp/ACKSender.java +++ b/router/java/src/net/i2p/router/transport/udp/ACKSender.java @@ -148,7 +148,7 @@ class ACKSender implements Runnable { try { // bulk operations may throw an exception _peersToACK.addAll(notYet); - } catch (Exception e) {} + } catch (RuntimeException e) {} if (_log.shouldLog(Log.DEBUG)) _log.debug("sleeping, pending size = " + notYet.size()); notYet.clear(); diff --git a/router/java/src/net/i2p/router/transport/udp/EstablishmentManager.java b/router/java/src/net/i2p/router/transport/udp/EstablishmentManager.java index 89076f9ce34d48726df5b412e0b1b5b3584a939a..77fdd78ba1367f1909dfa1a23a73e70af0bf383c 100644 --- a/router/java/src/net/i2p/router/transport/udp/EstablishmentManager.java +++ b/router/java/src/net/i2p/router/transport/udp/EstablishmentManager.java @@ -29,6 +29,7 @@ import net.i2p.router.util.DecayingBloomFilter; import net.i2p.util.Addresses; import net.i2p.util.I2PThread; import net.i2p.util.Log; +import net.i2p.util.VersionComparator; /** * Coordinate the establishment of new sessions - both inbound and outbound. @@ -126,6 +127,19 @@ class EstablishmentManager { /** for the DSM and or netdb store */ private static final int DATA_MESSAGE_TIMEOUT = 10*1000; + /** + * Java I2P has always parsed the length of the extended options field, + * but i2pd hasn't recognized it until this release. + * No matter, the options weren't defined until this release anyway. + * +********************************************************************************************************** + * FIXME 0.9.23 for testing, change to 0.9.24 for release + * + */ + private static final String VERSION_ALLOW_EXTENDED_OPTIONS = "0.9.23"; + private static final String PROP_DISABLE_EXT_OPTS = "i2np.udp.disableExtendedOptions"; + + public EstablishmentManager(RouterContext ctx, UDPTransport transport) { _context = ctx; _log = ctx.logManager().getLog(EstablishmentManager.class); @@ -356,8 +370,16 @@ class EstablishmentManager { _transport.failed(msg, "Peer has bad key, cannot establish"); return; } + boolean allowExtendedOptions = VersionComparator.comp(toRouterInfo.getVersion(), + VERSION_ALLOW_EXTENDED_OPTIONS) >= 0 + && !_context.getBooleanProperty(PROP_DISABLE_EXT_OPTS); + // w/o ext options, it's always 'requested', no need to set + // don't ask if they are indirect + boolean requestIntroduction = allowExtendedOptions && !isIndirect && + _transport.introducersMaybeRequired(); state = new OutboundEstablishState(_context, maybeTo, to, - toIdentity, + toIdentity, allowExtendedOptions, + requestIntroduction, sessionKey, addr, _transport.getDHFactory()); OutboundEstablishState oldState = _outboundStates.putIfAbsent(to, state); boolean isNew = oldState == null; @@ -477,7 +499,9 @@ class EstablishmentManager { // Don't offer to relay to privileged ports. // Only offer for an IPv4 session. // TODO if already we have their RI, only offer if they need it (no 'C' cap) - if (_transport.canIntroduce() && state.getSentPort() >= 1024 && + // if extended options, only if they asked for it + if (state.isIntroductionRequested() && + _transport.canIntroduce() && state.getSentPort() >= 1024 && state.getSentIP().length == 4) { // ensure > 0 long tag = 1 + _context.random().nextLong(MAX_TAG_VALUE); diff --git a/router/java/src/net/i2p/router/transport/udp/InboundEstablishState.java b/router/java/src/net/i2p/router/transport/udp/InboundEstablishState.java index 590aa29ed24523b226ee993a6e1c6638ef19b7f3..332282c24d55a54ddf3151d9fd8d0615b912fcdf 100644 --- a/router/java/src/net/i2p/router/transport/udp/InboundEstablishState.java +++ b/router/java/src/net/i2p/router/transport/udp/InboundEstablishState.java @@ -62,6 +62,8 @@ class InboundEstablishState { private final Queue<OutNetMessage> _queuedMessages; // count for backoff private int _createdSentCount; + // default true + private boolean _introductionRequested = true; public enum InboundState { /** nothin known yet */ @@ -150,6 +152,12 @@ class InboundEstablishState { if (_bobIP == null) _bobIP = new byte[req.readIPSize()]; req.readIP(_bobIP, 0); + byte[] ext = req.readExtendedOptions(); + if (ext != null && ext.length >= UDPPacket.SESS_REQ_MIN_EXT_OPTIONS_LENGTH) { + _introductionRequested = (ext[1] & (byte) UDPPacket.SESS_REQ_EXT_FLAG_REQUEST_RELAY_TAG) != 0; + if (_log.shouldInfo()) + _log.info("got sess req. w/ ext. options, need intro? " + _introductionRequested + ' ' + this); + } if (_log.shouldLog(Log.DEBUG)) _log.debug("Receive sessionRequest, BobIP = " + Addresses.toString(_bobIP)); if (_currentState == InboundState.IB_STATE_UNKNOWN) @@ -160,6 +168,12 @@ class InboundEstablishState { public synchronized boolean sessionRequestReceived() { return _receivedX != null; } public synchronized byte[] getReceivedX() { return _receivedX; } public synchronized byte[] getReceivedOurIP() { return _bobIP; } + /** + * True (default) if no extended options in session request, + * or value of flag bit in the extended options. + * @since 0.9.24 + */ + public synchronized boolean isIntroductionRequested() { return _introductionRequested; } /** * Generates session key and mac key. diff --git a/router/java/src/net/i2p/router/transport/udp/IntroductionManager.java b/router/java/src/net/i2p/router/transport/udp/IntroductionManager.java index 9bc2bfd72a29f33f4ccaf9a49e57c901311b34c7..5e644ec244e14950fff27e3ab0a4b4dec20fb3bf 100644 --- a/router/java/src/net/i2p/router/transport/udp/IntroductionManager.java +++ b/router/java/src/net/i2p/router/transport/udp/IntroductionManager.java @@ -3,6 +3,7 @@ package net.i2p.router.transport.udp; import java.net.InetAddress; import java.net.UnknownHostException; import java.util.ArrayList; +import java.util.Arrays; import java.util.Collections; import java.util.HashSet; import java.util.List; @@ -440,12 +441,33 @@ class IntroductionManager { // and we don't read it here. // FIXME implement for getting Alice's IPv4 in RelayRequest sent over IPv6? // or is that just too easy to spoof? - if (!isValid(alice.getIP(), alice.getPort()) || ipSize != 0 || port != 0) { - if (_log.shouldLog(Log.WARN)) { - byte ip[] = new byte[ipSize]; - rrReader.readIP(ip, 0); - _log.warn("Bad relay req from " + alice + " for " + Addresses.toString(ip, port)); + byte[] aliceIP = alice.getIP(); + int alicePort = alice.getPort(); + if (!isValid(alice.getIP(), alice.getPort())) { + if (_log.shouldWarn()) + _log.warn("Bad relay req from " + alice + " for " + Addresses.toString(aliceIP, alicePort)); + _context.statManager().addRateData("udp.relayBadIP", 1); + return; + } + // prior to 0.9.24 we rejected any non-zero-length ip + // here we reject anything different + // TODO relay request over IPv6 + if (ipSize != 0) { + byte ip[] = new byte[ipSize]; + rrReader.readIP(ip, 0); + if (!Arrays.equals(aliceIP, ip)) { + if (_log.shouldWarn()) + _log.warn("Bad relay req from " + alice + " for " + Addresses.toString(ip, port)); + _context.statManager().addRateData("udp.relayBadIP", 1); + return; } + } + // prior to 0.9.24 we rejected any nonzero port + // here we reject anything different + // TODO relay request over IPv6 + if (port != 0 && port != alicePort) { + if (_log.shouldWarn()) + _log.warn("Bad relay req from " + alice + " for " + Addresses.toString(aliceIP, port)); _context.statManager().addRateData("udp.relayBadIP", 1); return; } diff --git a/router/java/src/net/i2p/router/transport/udp/MessageReceiver.java b/router/java/src/net/i2p/router/transport/udp/MessageReceiver.java index 1b6bb03c0bad03e658e3057312802d0b33e95abe..d2a3b0414b8d0ececb504af05e0b3952a2a46a2e 100644 --- a/router/java/src/net/i2p/router/transport/udp/MessageReceiver.java +++ b/router/java/src/net/i2p/router/transport/udp/MessageReceiver.java @@ -243,7 +243,7 @@ class MessageReceiver { } _context.messageHistory().droppedInboundMessage(state.getMessageId(), state.getFrom(), "error: " + ime.toString() + ": " + state.toString()); return null; - } catch (Exception e) { + } catch (RuntimeException e) { // e.g. AIOOBE if (_log.shouldLog(Log.WARN)) _log.warn("Error handling a message: " + state, e); diff --git a/router/java/src/net/i2p/router/transport/udp/OutboundEstablishState.java b/router/java/src/net/i2p/router/transport/udp/OutboundEstablishState.java index 63497b5ea3a596f7f4733701d5ee13d5588d5d7b..d849bb836b31356675e0349e639706aa43ed458d 100644 --- a/router/java/src/net/i2p/router/transport/udp/OutboundEstablishState.java +++ b/router/java/src/net/i2p/router/transport/udp/OutboundEstablishState.java @@ -56,6 +56,8 @@ class OutboundEstablishState { private RemoteHostId _remoteHostId; private final RemoteHostId _claimedAddress; private final RouterIdentity _remotePeer; + private final boolean _allowExtendedOptions; + private final boolean _needIntroduction; private final SessionKey _introKey; private final Queue<OutNetMessage> _queuedMessages; private OutboundState _currentState; @@ -107,12 +109,17 @@ class OutboundEstablishState { * @param claimedAddress an IP/port based RemoteHostId, or null if unknown * @param remoteHostId non-null, == claimedAddress if direct, or a hash-based one if indirect * @param remotePeer must have supported sig type + * @param allowExtenededOptions are we allowed to send extended options to Bob? + * @param needIntroduction should we ask Bob to be an introducer for us? + ignored unless allowExtendedOptions is true * @param introKey Bob's introduction key, as published in the netdb * @param addr non-null */ public OutboundEstablishState(RouterContext ctx, RemoteHostId claimedAddress, RemoteHostId remoteHostId, - RouterIdentity remotePeer, SessionKey introKey, UDPAddress addr, + RouterIdentity remotePeer, boolean allowExtendedOptions, + boolean needIntroduction, + SessionKey introKey, UDPAddress addr, DHSessionKeyBuilder.Factory dh) { _context = ctx; _log = ctx.logManager().getLog(OutboundEstablishState.class); @@ -125,6 +132,8 @@ class OutboundEstablishState { } _claimedAddress = claimedAddress; _remoteHostId = remoteHostId; + _allowExtendedOptions = allowExtendedOptions; + _needIntroduction = needIntroduction; _remotePeer = remotePeer; _introKey = introKey; _queuedMessages = new LinkedBlockingQueue<OutNetMessage>(); @@ -157,6 +166,19 @@ class OutboundEstablishState { /** @return -1 if unset */ public long getIntroNonce() { return _introductionNonce; } + + /** + * Are we allowed to send extended options to this peer? + * @since 0.9.24 + */ + public boolean isExtendedOptionsAllowed() { return _allowExtendedOptions; } + + /** + * Should we ask this peer to be an introducer for us? + * Ignored unless allowExtendedOptions is true + * @since 0.9.24 + */ + public boolean needIntroduction() { return _needIntroduction; } /** * Queue a message to be sent after the session is established. diff --git a/router/java/src/net/i2p/router/transport/udp/PacketBuilder.java b/router/java/src/net/i2p/router/transport/udp/PacketBuilder.java index 3029f96c39de4fab539fb555a68a0aa3a7e6acd7..0f7e0ac80458f15576befbbc410033a36a98f214 100644 --- a/router/java/src/net/i2p/router/transport/udp/PacketBuilder.java +++ b/router/java/src/net/i2p/router/transport/udp/PacketBuilder.java @@ -57,10 +57,11 @@ to the various messages - a one byte flag and a four byte sending timestamp (*seconds* since the unix epoch). The flag byte contains the following bitfields:</p> <pre> - bits 0-3: payload type - bit 4: rekey? - bit 5: extended options included - bits 6-7: reserved +Bit order: 76543210 + bits 7-4: payload type + bit 3: rekey? + bit 2: extended options included + bits 1-0: reserved </pre> <p>If the rekey flag is set, 64 bytes of keying material follow the @@ -166,6 +167,19 @@ class PacketBuilder { private static final String PROP_PADDING = "i2np.udp.padding"; private static final boolean DEFAULT_ENABLE_PADDING = true; + /** + * The nine message types, 0-8, shifted to bits 7-4 for convenience + */ + private static final byte SESSION_REQUEST_FLAG_BYTE = UDPPacket.PAYLOAD_TYPE_SESSION_REQUEST << 4; + private static final byte SESSION_CREATED_FLAG_BYTE = UDPPacket.PAYLOAD_TYPE_SESSION_CREATED << 4; + private static final byte SESSION_CONFIRMED_FLAG_BYTE = UDPPacket.PAYLOAD_TYPE_SESSION_CONFIRMED << 4; + private static final byte PEER_RELAY_REQUEST_FLAG_BYTE = UDPPacket.PAYLOAD_TYPE_RELAY_REQUEST << 4; + private static final byte PEER_RELAY_RESPONSE_FLAG_BYTE = UDPPacket.PAYLOAD_TYPE_RELAY_RESPONSE << 4; + private static final byte PEER_RELAY_INTRO_FLAG_BYTE = UDPPacket.PAYLOAD_TYPE_RELAY_INTRO << 4; + private static final byte DATA_FLAG_BYTE = UDPPacket.PAYLOAD_TYPE_DATA << 4; + private static final byte PEER_TEST_FLAG_BYTE = UDPPacket.PAYLOAD_TYPE_TEST << 4; + private static final byte SESSION_DESTROY_FLAG_BYTE = (byte) (UDPPacket.PAYLOAD_TYPE_SESSION_DESTROY << 4); + /** * @param transport may be null for unit testing only */ @@ -332,7 +346,7 @@ class PacketBuilder { int availableForExplicitAcks = availableForAcks; // make the packet - UDPPacket packet = buildPacketHeader((byte)(UDPPacket.PAYLOAD_TYPE_DATA << 4)); + UDPPacket packet = buildPacketHeader(DATA_FLAG_BYTE); DatagramPacket pkt = packet.getPacket(); byte data[] = pkt.getData(); int off = HEADER_SIZE; @@ -573,7 +587,7 @@ class PacketBuilder { * @param ackBitfields list of ACKBitfield instances to either fully or partially ACK */ public UDPPacket buildACK(PeerState peer, List<ACKBitfield> ackBitfields) { - UDPPacket packet = buildPacketHeader((byte)(UDPPacket.PAYLOAD_TYPE_DATA << 4)); + UDPPacket packet = buildPacketHeader(DATA_FLAG_BYTE); DatagramPacket pkt = packet.getPacket(); byte data[] = pkt.getData(); int off = HEADER_SIZE; @@ -667,12 +681,6 @@ class PacketBuilder { return packet; } - /** - * full flag info for a sessionCreated message. this can be fixed, - * since we never rekey on startup, and don't need any extended options - */ - private static final byte SESSION_CREATED_FLAG_BYTE = (UDPPacket.PAYLOAD_TYPE_SESSION_CREATED << 4); - /** * Build a new SessionCreated packet for the given peer, encrypting it * as necessary. @@ -768,12 +776,6 @@ class PacketBuilder { return packet; } - /** - * full flag info for a sessionRequest message. this can be fixed, - * since we never rekey on startup, and don't need any extended options - */ - private static final byte SESSION_REQUEST_FLAG_BYTE = (UDPPacket.PAYLOAD_TYPE_SESSION_REQUEST << 4); - /** * Build a new SessionRequest packet for the given peer, encrypting it * as necessary. @@ -781,10 +783,23 @@ class PacketBuilder { * @return ready to send packet, or null if there was a problem */ public UDPPacket buildSessionRequestPacket(OutboundEstablishState state) { - UDPPacket packet = buildPacketHeader(SESSION_REQUEST_FLAG_BYTE); + int off = HEADER_SIZE; + byte[] options; + boolean ext = state.isExtendedOptionsAllowed(); + if (ext) { + options = new byte[UDPPacket.SESS_REQ_MIN_EXT_OPTIONS_LENGTH]; + boolean intro = state.needIntroduction(); + if (intro) + options[1] = (byte) UDPPacket.SESS_REQ_EXT_FLAG_REQUEST_RELAY_TAG; + if (_log.shouldInfo()) + _log.info("send sess req. w/ ext. options, need intro? " + intro + ' ' + state); + off += UDPPacket.SESS_REQ_MIN_EXT_OPTIONS_LENGTH + 1; + } else { + options = null; + } + UDPPacket packet = buildPacketHeader(SESSION_REQUEST_FLAG_BYTE, options); DatagramPacket pkt = packet.getPacket(); byte data[] = pkt.getData(); - int off = HEADER_SIZE; byte toIP[] = state.getSentIP(); if (!_transport.isValid(toIP)) { @@ -854,13 +869,6 @@ class PacketBuilder { return packets; } - - /** - * full flag info for a sessionConfirmed message. this can be fixed, - * since we never rekey on startup, and don't need any extended options - */ - private static final byte SESSION_CONFIRMED_FLAG_BYTE = (UDPPacket.PAYLOAD_TYPE_SESSION_CONFIRMED << 4); - /** * Build a new SessionConfirmed packet for the given peer * @@ -1018,7 +1026,7 @@ class PacketBuilder { * @since 0.9.2 */ private UDPPacket buildSessionDestroyPacket(SessionKey cipherKey, SessionKey macKey, InetAddress addr, int port) { - UDPPacket packet = buildPacketHeader((byte)(UDPPacket.PAYLOAD_TYPE_SESSION_DESTROY << 4)); + UDPPacket packet = buildPacketHeader(SESSION_DESTROY_FLAG_BYTE); int off = HEADER_SIZE; // no body in this message @@ -1034,12 +1042,6 @@ class PacketBuilder { return packet; } - /** - * full flag info for a peerTest message. this can be fixed, - * since we never rekey on test, and don't need any extended options - */ - private static final byte PEER_TEST_FLAG_BYTE = (UDPPacket.PAYLOAD_TYPE_TEST << 4); - /** * Build a packet as if we are Alice and we either want Bob to begin a * peer test or Charlie to finish a peer test. @@ -1197,12 +1199,6 @@ class PacketBuilder { packet.setMessageType(TYPE_TCB); return packet; } - - /** - * full flag info for a relay request message. this can be fixed, - * since we never rekey on relay request, and don't need any extended options - */ - private static final byte PEER_RELAY_REQUEST_FLAG_BYTE = (UDPPacket.PAYLOAD_TYPE_RELAY_REQUEST << 4); // specify these if we know what our external receive ip/port is and if its different // from what bob is going to think @@ -1330,12 +1326,6 @@ class PacketBuilder { return packet; } - /** - * full flag info for a relay intro message. this can be fixed, - * since we never rekey on relay request, and don't need any extended options - */ - private static final byte PEER_RELAY_INTRO_FLAG_BYTE = (UDPPacket.PAYLOAD_TYPE_RELAY_INTRO << 4); - UDPPacket buildRelayIntro(RemoteHostId alice, PeerState charlie, UDPPacketReader.RelayRequestReader request) { UDPPacket packet = buildPacketHeader(PEER_RELAY_INTRO_FLAG_BYTE); DatagramPacket pkt = packet.getPacket(); @@ -1370,12 +1360,6 @@ class PacketBuilder { packet.setMessageType(TYPE_INTRO); return packet; } - - /** - * full flag info for a relay response message. this can be fixed, - * since we never rekey on relay response, and don't need any extended options - */ - private static final byte PEER_RELAY_RESPONSE_FLAG_BYTE = (UDPPacket.PAYLOAD_TYPE_RELAY_RESPONSE << 4); UDPPacket buildRelayResponse(RemoteHostId alice, PeerState charlie, long nonce, SessionKey cipherKey, SessionKey macKey) { @@ -1462,24 +1446,50 @@ class PacketBuilder { /** * Create a new packet and add the flag byte and the time stamp. * Caller should add data starting at HEADER_SIZE. - * At this point, adding support for extended options and rekeying is unlikely, - * but if we do, we'll have to change this. + * Does not include extended options or rekeying. * * @param flagByte contains type and flags * @since 0.8.1 */ private UDPPacket buildPacketHeader(byte flagByte) { + return buildPacketHeader(flagByte, null); + } + + /** + * Create a new packet and add the flag byte and the time stamp. + * Caller should add data starting at HEADER_SIZE. + * (if extendedOptions != null, at HEADER_SIZE + 1 + extendedOptions.length) + * Does not include rekeying. + * + * @param flagByte contains type and flags + * @param extendedOptions May be null. If non-null, we will add the associated flag here. + * 255 bytes max. + * @since 0.9.24 + */ + private UDPPacket buildPacketHeader(byte flagByte, byte[] extendedOptions) { UDPPacket packet = UDPPacket.acquire(_context, false); byte data[] = packet.getPacket().getData(); Arrays.fill(data, 0, data.length, (byte)0x0); int off = UDPPacket.MAC_SIZE + UDPPacket.IV_SIZE; // header + if (extendedOptions != null) + flagByte |= UDPPacket.HEADER_FLAG_EXTENDED_OPTIONS; data[off] = flagByte; off++; + // Note, this is unsigned, so we're good until February 2106 long now = (_context.clock().now() + 500) / 1000; DataHelper.toLong(data, off, 4, now); - // todo: add support for rekeying and extended options + // todo: add support for rekeying + // extended options + if (extendedOptions != null) { + off+= 4; + int len = extendedOptions.length; + if (len > 255) + throw new IllegalArgumentException(); + data[off++] = (byte) len; + System.arraycopy(extendedOptions, 0, data, off, len); + } return packet; } diff --git a/router/java/src/net/i2p/router/transport/udp/PacketHandler.java b/router/java/src/net/i2p/router/transport/udp/PacketHandler.java index 736171b807fada6168c8d62c6b53b98f8c177de7..1f5f990bce0fe04fdd9c009dce629f8a1fc75fe2 100644 --- a/router/java/src/net/i2p/router/transport/udp/PacketHandler.java +++ b/router/java/src/net/i2p/router/transport/udp/PacketHandler.java @@ -215,7 +215,7 @@ class PacketHandler { _state = 5; handlePacket(_reader, packet); _state = 6; - } catch (Exception e) { + } catch (RuntimeException e) { _state = 7; if (_log.shouldLog(Log.ERROR)) _log.error("Crazy error handling a packet: " + packet, e); diff --git a/router/java/src/net/i2p/router/transport/udp/PacketPusher.java b/router/java/src/net/i2p/router/transport/udp/PacketPusher.java index f28ee96450360ba618761ccf55d79563dba01313..5c770175c22baf102f32fab3084a9277cc6dcb91 100644 --- a/router/java/src/net/i2p/router/transport/udp/PacketPusher.java +++ b/router/java/src/net/i2p/router/transport/udp/PacketPusher.java @@ -43,7 +43,7 @@ class PacketPusher implements Runnable { send(packets.get(i)); } } - } catch (Exception e) { + } catch (RuntimeException e) { _log.error("SSU Output Queue Error", e); } } diff --git a/router/java/src/net/i2p/router/transport/udp/TimedWeightedPriorityMessageQueue.java b/router/java/src/net/i2p/router/transport/udp/TimedWeightedPriorityMessageQueue.java index 193c1751fb6b67f5e2e926087280de95dfaa1aa6..c6dbdb8e222c9d6f5622de488418abfb3ea6adda 100644 --- a/router/java/src/net/i2p/router/transport/udp/TimedWeightedPriorityMessageQueue.java +++ b/router/java/src/net/i2p/router/transport/udp/TimedWeightedPriorityMessageQueue.java @@ -57,6 +57,7 @@ class TimedWeightedPriorityMessageQueue implements MessageQueue, OutboundMessage * specifically, this means how many messages in this queue * should be pulled off in a row before moving on to the next. */ + @SuppressWarnings({ "unchecked", "rawtypes" }) public TimedWeightedPriorityMessageQueue(RouterContext ctx, int[] priorityLimits, int[] weighting, FailedListener lsnr) { _context = ctx; _log = ctx.logManager().getLog(TimedWeightedPriorityMessageQueue.class); diff --git a/router/java/src/net/i2p/router/transport/udp/UDPAddress.java b/router/java/src/net/i2p/router/transport/udp/UDPAddress.java index 3d22e41b72f0222da863dc24cccd96941cc1b8fa..2765418c8320f3186b8a2df9e840298bdd8bbd29 100644 --- a/router/java/src/net/i2p/router/transport/udp/UDPAddress.java +++ b/router/java/src/net/i2p/router/transport/udp/UDPAddress.java @@ -68,7 +68,7 @@ class UDPAddress { _introKey = null; return; } - _host = addr.getOption(PROP_HOST); + _host = addr.getHost(); _port = addr.getPort(); try { String mtu = addr.getOption(PROP_MTU); diff --git a/router/java/src/net/i2p/router/transport/udp/UDPPacket.java b/router/java/src/net/i2p/router/transport/udp/UDPPacket.java index e2e1b3f592ae0926306ef2e50f754e467170ac6c..238ec16fd2a347862b58a25b7e30fb186414f11a 100644 --- a/router/java/src/net/i2p/router/transport/udp/UDPPacket.java +++ b/router/java/src/net/i2p/router/transport/udp/UDPPacket.java @@ -85,18 +85,38 @@ class UDPPacket implements CDQEntry { public static final int PAYLOAD_TYPE_RELAY_INTRO = 5; public static final int PAYLOAD_TYPE_DATA = 6; public static final int PAYLOAD_TYPE_TEST = 7; - public static final int MAX_PAYLOAD_TYPE = PAYLOAD_TYPE_TEST; /** @since 0.8.1 */ public static final int PAYLOAD_TYPE_SESSION_DESTROY = 8; + public static final int MAX_PAYLOAD_TYPE = PAYLOAD_TYPE_SESSION_DESTROY; + // various flag fields for use in the header + /** + * Defined in the spec from the beginning, Unused + * @since 0.9.24 + */ + public static final byte HEADER_FLAG_REKEY = (1 << 3); + /** + * Defined in the spec from the beginning, Used starting in 0.9.24 + * @since 0.9.24 + */ + public static final byte HEADER_FLAG_EXTENDED_OPTIONS = (1 << 2); + + // Extended options for session request + public static final int SESS_REQ_MIN_EXT_OPTIONS_LENGTH = 2; + // bytes 0-1 are flags + /** + * set to 1 to request a session tag, i.e. we want him to be an introducer for us + */ + public static final int SESS_REQ_EXT_FLAG_REQUEST_RELAY_TAG = 0x01; + // various flag fields for use in the data packets public static final byte DATA_FLAG_EXPLICIT_ACK = (byte)(1 << 7); public static final byte DATA_FLAG_ACK_BITFIELDS = (1 << 6); - // unused + /** unused */ public static final byte DATA_FLAG_ECN = (1 << 4); public static final byte DATA_FLAG_WANT_ACKS = (1 << 3); public static final byte DATA_FLAG_WANT_REPLY = (1 << 2); - // unused + /** unused */ public static final byte DATA_FLAG_EXTENDED = (1 << 1); public static final byte BITFIELD_CONTINUATION = (byte)(1 << 7); diff --git a/router/java/src/net/i2p/router/transport/udp/UDPPacketReader.java b/router/java/src/net/i2p/router/transport/udp/UDPPacketReader.java index adacea03f906f7c38057a7330d6a4b82a6d50e00..c7c9d90cc0bdcf75030d31c9b961b1f7e01f26ef 100644 --- a/router/java/src/net/i2p/router/transport/udp/UDPPacketReader.java +++ b/router/java/src/net/i2p/router/transport/udp/UDPPacketReader.java @@ -67,33 +67,68 @@ class UDPPacketReader { return (_message[_payloadBeginOffset] & 0xFF) >>> 4; } - /** does this packet include rekeying data? */ - public boolean readRekeying() { - return (_message[_payloadBeginOffset] & (1 << 3)) != 0; + /** + * Does this packet include rekeying data in the header? + * Unused, should always be false. + */ + public boolean isRekeyingIncluded() { + return (_message[_payloadBeginOffset] & UDPPacket.HEADER_FLAG_REKEY) != 0; } - public boolean readExtendedOptionsIncluded() { - return (_message[_payloadBeginOffset] & (1 << 2)) != 0; + /** + * Does this packet include extended options in the header? + */ + public boolean isExtendedOptionsIncluded() { + return (_message[_payloadBeginOffset] & UDPPacket.HEADER_FLAG_EXTENDED_OPTIONS) != 0; } /** @return seconds */ public long readTimestamp() { + // Note, this is unsigned, so we're good until February 2106 return DataHelper.fromLong(_message, _payloadBeginOffset + 1, 4); } - public void readKeyingMaterial(byte target[], int targetOffset) { - if (!readRekeying()) - throw new IllegalStateException("This packet is not rekeying!"); - System.arraycopy(_message, _payloadBeginOffset + 1 + 4, target, targetOffset, KEYING_MATERIAL_LENGTH); + /** + * Returns rekeying data (64 bytes), or null if none. + * Unused, should always return null. + * + * @deprecated unused + */ + @Deprecated + public byte[] readKeyingMaterial() { + if (!isRekeyingIncluded()) + return null; + byte[] rv = new byte[KEYING_MATERIAL_LENGTH]; + System.arraycopy(_message, _payloadBeginOffset + 1 + 4, rv, 0, KEYING_MATERIAL_LENGTH); + return rv; + } + + /** + * Returns extended option data, 0-255 bytes, or null if none. + * Returned array does NOT include the length byte. + * + * @return extended options or null if none is included + * @since 0.9.24 + */ + public byte[] readExtendedOptions() { + if (!isExtendedOptionsIncluded()) + return null; + int offset = _payloadBeginOffset + 1 + 4; + if (isRekeyingIncluded()) + offset += KEYING_MATERIAL_LENGTH; + int optionsSize = _message[offset++] & 0xff; + byte[] rv = new byte[optionsSize]; + System.arraycopy(_message, offset, rv, 0, optionsSize); + return rv; } /** index into the message where the body begins */ private int readBodyOffset() { int offset = _payloadBeginOffset + 1 + 4; - if (readRekeying()) + if (isRekeyingIncluded()) offset += KEYING_MATERIAL_LENGTH; - if (readExtendedOptionsIncluded()) { - int optionsSize = (int)DataHelper.fromLong(_message, offset, 1); + if (isExtendedOptionsIncluded()) { + int optionsSize = _message[offset] & 0xff; offset += optionsSize + 1; } return offset; @@ -142,8 +177,26 @@ class UDPPacketReader { /* ------- Begin Reader Classes ------- */ + /** + * Base + * + * @since 0.9.24 + */ + public abstract class Reader { + /** + * Returns extended option data from the header, 0-255 bytes, or null if none. + * Returned array does NOT include the length byte. + * + * @return extended options or null if none is included + * @since 0.9.24 + */ + public byte[] readExtendedOptions() { + return UDPPacketReader.this.readExtendedOptions(); + } + } + /** Help read the SessionRequest payload */ - public class SessionRequestReader { + public class SessionRequestReader extends Reader { public static final int X_LENGTH = 256; public void readX(byte target[], int targetOffset) { int readOffset = readBodyOffset(); @@ -152,20 +205,20 @@ class UDPPacketReader { public int readIPSize() { int offset = readBodyOffset() + X_LENGTH; - return (int)DataHelper.fromLong(_message, offset, 1); + return _message[offset] & 0xff; } /** what IP bob is reachable on */ public void readIP(byte target[], int targetOffset) { int offset = readBodyOffset() + X_LENGTH; - int size = (int)DataHelper.fromLong(_message, offset, 1); + int size = _message[offset] & 0xff; offset++; System.arraycopy(_message, offset, target, targetOffset, size); } } /** Help read the SessionCreated payload */ - public class SessionCreatedReader { + public class SessionCreatedReader extends Reader { public static final int Y_LENGTH = 256; public void readY(byte target[], int targetOffset) { int readOffset = readBodyOffset(); @@ -175,13 +228,13 @@ class UDPPacketReader { /** sizeof(IP) */ public int readIPSize() { int offset = readBodyOffset() + Y_LENGTH; - return (int)DataHelper.fromLong(_message, offset, 1); + return _message[offset] & 0xff; } /** what IP do they think we are coming on? */ public void readIP(byte target[], int targetOffset) { int offset = readBodyOffset() + Y_LENGTH; - int size = (int)DataHelper.fromLong(_message, offset, 1); + int size = _message[offset] & 0xff; offset++; System.arraycopy(_message, offset, target, targetOffset, size); } @@ -220,7 +273,7 @@ class UDPPacketReader { } /** parse out the confirmed message */ - public class SessionConfirmedReader { + public class SessionConfirmedReader extends Reader { /** which fragment is this? */ public int readCurrentFragmentNum() { int readOffset = readBodyOffset(); @@ -273,7 +326,7 @@ class UDPPacketReader { } /** parse out the data message */ - public class DataReader { + public class DataReader extends Reader { /** * @return the data size, NOT including IP header, UDP header, IV, or MAC @@ -307,7 +360,7 @@ class UDPPacketReader { public int readACKCount() { if (!readACKsIncluded()) return 0; int off = readBodyOffset() + 1; - return (int)DataHelper.fromLong(_message, off, 1); + return _message[off] & 0xff; } public long readACK(int index) { @@ -322,12 +375,12 @@ class UDPPacketReader { if (!readACKBitfieldsIncluded()) return null; int off = readBodyOffset() + 1; if (readACKsIncluded()) { - int numACKs = (int)DataHelper.fromLong(_message, off, 1); + int numACKs = _message[off] & 0xff; off++; off += 4 * numACKs; } - int numBitfields = (int)DataHelper.fromLong(_message, off, 1); + int numBitfields = _message[off] & 0xff; off++; PacketACKBitfield rv[] = new PacketACKBitfield[numBitfields]; @@ -341,12 +394,12 @@ class UDPPacketReader { public int readFragmentCount() throws DataFormatException { int off = readBodyOffset() + 1; if (readACKsIncluded()) { - int numACKs = (int)DataHelper.fromLong(_message, off, 1); + int numACKs = _message[off] & 0xff; off++; off += 4 * numACKs; } if (readACKBitfieldsIncluded()) { - int numBitfields = (int)DataHelper.fromLong(_message, off, 1); + int numBitfields = _message[off] & 0xff; off++; for (int i = 0; i < numBitfields; i++) { @@ -355,7 +408,7 @@ class UDPPacketReader { } } if (readExtendedDataIncluded()) { - int size = (int)DataHelper.fromLong(_message, off, 1); + int size = _message[off] & 0xff; off++; off += size; } @@ -397,12 +450,12 @@ class UDPPacketReader { private int getFragmentBegin(int fragmentNum) throws DataFormatException { int off = readBodyOffset() + 1; if (readACKsIncluded()) { - int numACKs = (int)DataHelper.fromLong(_message, off, 1); + int numACKs = _message[off] & 0xff; off++; off += 4 * numACKs; } if (readACKBitfieldsIncluded()) { - int numBitfields = (int)DataHelper.fromLong(_message, off, 1); + int numBitfields = _message[off] & 0xff; off++; PacketACKBitfield bf[] = new PacketACKBitfield[numBitfields]; @@ -412,7 +465,7 @@ class UDPPacketReader { } } if (readExtendedDataIncluded()) { - int size = (int)DataHelper.fromLong(_message, off, 1); + int size = _message[off] & 0xff; off++; off += size; } @@ -443,7 +496,7 @@ class UDPPacketReader { buf.append(" "); int off = readBodyOffset() + 1; if (readACKsIncluded()) { - int numACKs = (int)DataHelper.fromLong(_message, off, 1); + int numACKs = _message[off] & 0xff; off++; buf.append("with ACKs for "); for (int i = 0; i < numACKs; i++) { @@ -452,7 +505,7 @@ class UDPPacketReader { } } if (readACKBitfieldsIncluded()) { - int numBitfields = (int)DataHelper.fromLong(_message, off, 1); + int numBitfields = _message[off] & 0xff; off++; buf.append("with partial ACKs for "); @@ -468,7 +521,7 @@ class UDPPacketReader { } } if (readExtendedDataIncluded()) { - int size = (int)DataHelper.fromLong(_message, off, 1); + int size = _message[off] & 0xff; off++; buf.append("with extended size of "); buf.append(size); @@ -476,7 +529,7 @@ class UDPPacketReader { off += size; } - int numFragments = (int)DataHelper.fromLong(_message, off, 1); + int numFragments = _message[off] & 0xff; off++; buf.append("with fragmentCount of "); buf.append(numFragments); @@ -506,8 +559,7 @@ class UDPPacketReader { buf.append(" payload: "); int off = getFragmentBegin(0); // first fragment - off += 4; // messageId - off++; // fragment info + off += 4 + 1; // messageId + fragment info int size = ((int)DataHelper.fromLong(_message, off, 2)) & 0x3FFF; off += 2; buf.append(Base64.encode(_message, off, size)); @@ -610,7 +662,7 @@ class UDPPacketReader { } /** Help read the PeerTest payload */ - public class PeerTestReader { + public class PeerTestReader extends Reader { private static final int NONCE_LENGTH = 4; public long readNonce() { @@ -620,13 +672,13 @@ class UDPPacketReader { public int readIPSize() { int offset = readBodyOffset() + NONCE_LENGTH; - return (int)DataHelper.fromLong(_message, offset, 1); + return _message[offset] & 0xff; } /** what IP Alice is reachable on */ public void readIP(byte target[], int targetOffset) { int offset = readBodyOffset() + NONCE_LENGTH; - int size = (int)DataHelper.fromLong(_message, offset, 1); + int size = _message[offset] & 0xff; offset++; System.arraycopy(_message, offset, target, targetOffset, size); } @@ -634,7 +686,7 @@ class UDPPacketReader { /** what IP Alice is reachable on */ public int readPort() { int offset = readBodyOffset() + NONCE_LENGTH; - int size = (int)DataHelper.fromLong(_message, offset, 1); + int size = _message[offset] & 0xff; offset++; offset += size; // skip the IP return (int)DataHelper.fromLong(_message, offset, 2); @@ -643,16 +695,15 @@ class UDPPacketReader { /** what Alice's intro key is (if known - if unknown, the key is INVALID_KEY) */ public void readIntroKey(byte target[], int targetOffset) { int offset = readBodyOffset() + NONCE_LENGTH; - int size = (int)DataHelper.fromLong(_message, offset, 1); - offset++; + int size = _message[offset] & 0xff; + offset += 1 + 2; // skip the size + port offset += size; // skip the IP - offset += 2; // skip the port System.arraycopy(_message, offset, target, targetOffset, SessionKey.KEYSIZE_BYTES); } } /** Help read the RelayRequest payload */ - public class RelayRequestReader { + public class RelayRequestReader extends Reader { public long readTag() { long rv = DataHelper.fromLong(_message, readBodyOffset(), 4); if (_log.shouldLog(Log.DEBUG)) @@ -661,7 +712,7 @@ class UDPPacketReader { } public int readIPSize() { int offset = readBodyOffset() + 4; - int rv = (int)DataHelper.fromLong(_message, offset, 1); + int rv = _message[offset] & 0xff; if (_log.shouldLog(Log.DEBUG)) _log.debug("read alice ip size: " + rv); return rv; @@ -670,7 +721,7 @@ class UDPPacketReader { /** what IP Alice is reachable on */ public void readIP(byte target[], int targetOffset) { int offset = readBodyOffset() + 4; - int size = (int)DataHelper.fromLong(_message, offset, 1); + int size = _message[offset] & 0xff; offset++; System.arraycopy(_message, offset, target, targetOffset, size); if (_log.shouldLog(Log.DEBUG)) @@ -678,7 +729,7 @@ class UDPPacketReader { } public int readPort() { int offset = readBodyOffset() + 4; - offset += DataHelper.fromLong(_message, offset, 1); + offset += _message[offset] & 0xff; offset++; int rv = (int)DataHelper.fromLong(_message, offset, 2); if (_log.shouldLog(Log.DEBUG)) @@ -689,10 +740,9 @@ class UDPPacketReader { /** unused */ public int readChallengeSize() { int offset = readBodyOffset() + 4; - offset += DataHelper.fromLong(_message, offset, 1); - offset++; - offset += 2; - int rv = (int)DataHelper.fromLong(_message, offset, 1); + offset += _message[offset] & 0xff; + offset += 1 + 2; + int rv = _message[offset] & 0xff; if (_log.shouldLog(Log.DEBUG)) _log.debug("read challenge size: " + rv); return rv; @@ -701,10 +751,9 @@ class UDPPacketReader { /** unused */ public void readChallengeSize(byte target[], int targetOffset) { int offset = readBodyOffset() + 4; - offset += DataHelper.fromLong(_message, offset, 1); - offset++; - offset += 2; - int sz = (int)DataHelper.fromLong(_message, offset, 1); + offset += _message[offset] & 0xff; + offset += 1 + 2; + int sz = _message[offset] & 0xff; offset++; System.arraycopy(_message, offset, target, targetOffset, sz); if (_log.shouldLog(Log.DEBUG)) @@ -712,10 +761,9 @@ class UDPPacketReader { } public void readAliceIntroKey(byte target[], int targetOffset) { int offset = readBodyOffset() + 4; - offset += DataHelper.fromLong(_message, offset, 1); - offset++; - offset += 2; - int sz = (int)DataHelper.fromLong(_message, offset, 1); + offset += _message[offset] & 0xff; + offset += 1 + 2; + int sz = _message[offset] & 0xff; offset++; offset += sz; System.arraycopy(_message, offset, target, targetOffset, SessionKey.KEYSIZE_BYTES); @@ -725,10 +773,9 @@ class UDPPacketReader { } public long readNonce() { int offset = readBodyOffset() + 4; - offset += DataHelper.fromLong(_message, offset, 1); - offset++; - offset += 2; - int sz = (int)DataHelper.fromLong(_message, offset, 1); + offset += _message[offset] & 0xff; + offset += 1 + 2; + int sz = _message[offset] & 0xff; offset++; offset += sz; offset += SessionKey.KEYSIZE_BYTES; @@ -740,22 +787,22 @@ class UDPPacketReader { } /** Help read the RelayIntro payload */ - public class RelayIntroReader { + public class RelayIntroReader extends Reader { public int readIPSize() { int offset = readBodyOffset(); - return (int)DataHelper.fromLong(_message, offset, 1); + return _message[offset] & 0xff; } /** what IP Alice is reachable on */ public void readIP(byte target[], int targetOffset) { int offset = readBodyOffset(); - int size = (int)DataHelper.fromLong(_message, offset, 1); + int size = _message[offset] & 0xff; offset++; System.arraycopy(_message, offset, target, targetOffset, size); } public int readPort() { int offset = readBodyOffset(); - offset += DataHelper.fromLong(_message, offset, 1); + offset += _message[offset] & 0xff; offset++; return (int)DataHelper.fromLong(_message, offset, 2); } @@ -763,19 +810,17 @@ class UDPPacketReader { /** unused */ public int readChallengeSize() { int offset = readBodyOffset(); - offset += DataHelper.fromLong(_message, offset, 1); - offset++; - offset += 2; - return (int)DataHelper.fromLong(_message, offset, 1); + offset += _message[offset] & 0xff; + offset += 1 + 2; + return _message[offset] & 0xff; } /** unused */ public void readChallengeSize(byte target[], int targetOffset) { int offset = readBodyOffset(); - offset += DataHelper.fromLong(_message, offset, 1); - offset++; - offset += 2; - int sz = (int)DataHelper.fromLong(_message, offset, 1); + offset += _message[offset] & 0xff; + offset += 1 + 2; + int sz = _message[offset] & 0xff; offset++; System.arraycopy(_message, offset, target, targetOffset, sz); } @@ -783,22 +828,22 @@ class UDPPacketReader { /** Help read the RelayResponse payload */ - public class RelayResponseReader { + public class RelayResponseReader extends Reader { public int readCharlieIPSize() { int offset = readBodyOffset(); - return (int)DataHelper.fromLong(_message, offset, 1); + return _message[offset] & 0xff; } /** what IP charlie is reachable on */ public void readCharlieIP(byte target[], int targetOffset) { int offset = readBodyOffset(); - int size = (int)DataHelper.fromLong(_message, offset, 1); + int size = _message[offset] & 0xff; offset++; System.arraycopy(_message, offset, target, targetOffset, size); } /** what port charlie is reachable on */ public int readCharliePort() { int offset = readBodyOffset(); - offset += DataHelper.fromLong(_message, offset, 1); + offset += _message[offset] & 0xff; offset++; return (int)DataHelper.fromLong(_message, offset, 2); } @@ -806,41 +851,36 @@ class UDPPacketReader { /** @deprecated unused */ public int readAliceIPSize() { int offset = readBodyOffset(); - offset += DataHelper.fromLong(_message, offset, 1); - offset++; - offset += 2; - return (int)DataHelper.fromLong(_message, offset, 1); + offset += _message[offset] & 0xff; + offset += 1 + 2; + return _message[offset] & 0xff; } /** @deprecated unused */ public void readAliceIP(byte target[], int targetOffset) { int offset = readBodyOffset(); - offset += DataHelper.fromLong(_message, offset, 1); - offset++; - offset += 2; - int sz = (int)DataHelper.fromLong(_message, offset, 1); + offset += _message[offset] & 0xff; + offset += 1 + 2; + int sz = _message[offset] & 0xff; offset++; System.arraycopy(_message, offset, target, targetOffset, sz); } /** @deprecated unused */ public int readAlicePort() { int offset = readBodyOffset(); - offset += DataHelper.fromLong(_message, offset, 1); - offset++; - offset += 2; - int sz = (int)DataHelper.fromLong(_message, offset, 1); + offset += _message[offset] & 0xff; + offset += 1 + 2; + int sz = _message[offset] & 0xff; offset++; offset += sz; return (int)DataHelper.fromLong(_message, offset, 2); } public long readNonce() { int offset = readBodyOffset(); - offset += DataHelper.fromLong(_message, offset, 1); - offset++; - offset += 2; - int sz = (int)DataHelper.fromLong(_message, offset, 1); - offset++; + offset += _message[offset] & 0xff; + offset += 1 + 2; + int sz = _message[offset] & 0xff; + offset += 1 + 2; // sz + port offset += sz; - offset += 2; return DataHelper.fromLong(_message, offset, 4); } } diff --git a/router/java/src/net/i2p/router/transport/udp/UDPTransport.java b/router/java/src/net/i2p/router/transport/udp/UDPTransport.java index 223f655f5acf194b7001aaa0ca936b13f9d7b8cd..f6a94d7fb81a178b94ad90e9f09ec7d34a44b923 100644 --- a/router/java/src/net/i2p/router/transport/udp/UDPTransport.java +++ b/router/java/src/net/i2p/router/transport/udp/UDPTransport.java @@ -340,7 +340,7 @@ public class UDPTransport extends TransportImpl implements TimedWeightedPriority List<InetAddress> bindToAddrs = new ArrayList<InetAddress>(4); if (bindTo != null) { - String[] bta = bindTo.split("[,; \r\n\t]"); + String[] bta = DataHelper.split(bindTo, "[,; \r\n\t]"); for (int i = 0; i < bta.length; i++) { String bt = bta[i]; if (bt.length() <= 0) @@ -993,6 +993,7 @@ public class UDPTransport extends TransportImpl implements TimedWeightedPriority // save PROP_EXTERNAL_PORT _context.router().saveConfig(changes, null); } + // deadlock thru here ticket #1699 _context.router().rebuildRouterInfo(); } _testEvent.forceRunImmediately(); @@ -1895,7 +1896,7 @@ public class UDPTransport extends TransportImpl implements TimedWeightedPriority if (explicitAddressSpecified()) { host = _context.getProperty(PROP_EXTERNAL_HOST); if (host != null) { - String[] hosts = host.split("[,; \r\n\t]"); + String[] hosts = DataHelper.split(host, "[,; \r\n\t]"); RouterAddress rv = null; for (int i = 0; i < hosts.length; i++) { String h = hosts[i]; @@ -2115,6 +2116,7 @@ public class UDPTransport extends TransportImpl implements TimedWeightedPriority * @since 0.9.18 */ private RouterAddress getCurrentExternalAddress(boolean isIPv6) { + // deadlock thru here ticket #1699 synchronized (_rebuildLock) { return isIPv6 ? _currentOurV6Address : _currentOurV4Address; } @@ -2214,6 +2216,7 @@ public class UDPTransport extends TransportImpl implements TimedWeightedPriority if (_log.shouldLog(Log.DEBUG)) _log.debug("Require introducers, because our status is " + status); return true; + default: if (!allowDirectUDP()) { if (_log.shouldLog(Log.DEBUG)) @@ -2224,6 +2227,30 @@ public class UDPTransport extends TransportImpl implements TimedWeightedPriority } } + /** + * MIGHT we require introducers? + * This is like introducersRequired, but if we aren't sure, this returns true. + * Used only by EstablishmentManager. + * + * @since 0.9.24 + */ + boolean introducersMaybeRequired() { + Status status = getReachabilityStatus(); + switch (status) { + case REJECT_UNSOLICITED: + case DIFFERENT: + case IPV4_FIREWALLED_IPV6_OK: + case IPV4_FIREWALLED_IPV6_UNKNOWN: + case IPV4_UNKNOWN_IPV6_OK: + case IPV4_UNKNOWN_IPV6_FIREWALLED: + case UNKNOWN: + return true; + + default: + return !allowDirectUDP(); + } + } + /** * For EstablishmentManager * @since 0.9.3 diff --git a/router/java/src/net/i2p/router/tunnel/BuildReplyHandler.java b/router/java/src/net/i2p/router/tunnel/BuildReplyHandler.java index 2196a851e6e543256b1af596b4e31e09e76e2e0c..8514d6db1ac0c7444617ce0453a2671f8c7a6041 100644 --- a/router/java/src/net/i2p/router/tunnel/BuildReplyHandler.java +++ b/router/java/src/net/i2p/router/tunnel/BuildReplyHandler.java @@ -120,7 +120,7 @@ public class BuildReplyHandler { return -1; } else { SimpleByteCache.release(h); - int rv = (int)DataHelper.fromLong(data, TunnelBuildReplyMessage.RECORD_SIZE - 1, 1); + int rv = data[TunnelBuildReplyMessage.RECORD_SIZE - 1] & 0xff; if (log.shouldLog(Log.DEBUG)) log.debug(reply.getUniqueId() + ": Verified: " + rv + " for record " + recordNum + "/" + hop); return rv; diff --git a/router/java/src/net/i2p/router/tunnel/FragmentHandler.java b/router/java/src/net/i2p/router/tunnel/FragmentHandler.java index 6e0d0675fcbd0740534edb0924b743570f4d33d2..eef1327123e575ac198e1d2bf46cd27539afceef 100644 --- a/router/java/src/net/i2p/router/tunnel/FragmentHandler.java +++ b/router/java/src/net/i2p/router/tunnel/FragmentHandler.java @@ -340,7 +340,7 @@ class FragmentHandler { offset += 4; } if (extended) { - int extendedSize = (int)DataHelper.fromLong(preprocessed, offset, 1); + int extendedSize = preprocessed[offset] & 0xff; offset++; offset += extendedSize; // we don't interpret these yet, but skip them for now } diff --git a/router/java/src/net/i2p/router/tunnel/HopConfig.java b/router/java/src/net/i2p/router/tunnel/HopConfig.java index 447f6a0834aaeb216de0d0182f3e63d0436a4fc9..3045c337154de826def3c0dbcb2e74b06bf813ab 100644 --- a/router/java/src/net/i2p/router/tunnel/HopConfig.java +++ b/router/java/src/net/i2p/router/tunnel/HopConfig.java @@ -26,6 +26,7 @@ public class HopConfig { // these 4 were longs, let's save some space // 2 billion * 1KB / 10 minutes = 3 GBps in a single tunnel + // we use synchronization instead of an AtomicInteger here to save space private int _messagesProcessed; private int _oldMessagesProcessed; //private int _messagesSent; @@ -50,12 +51,14 @@ public class HopConfig { public void setReceiveTunnelId(byte id[]) { _receiveTunnelId = id; } public void setReceiveTunnelId(TunnelId id) { _receiveTunnelId = DataHelper.toLong(4, id.getTunnelId()); } - /** what is the previous peer in the tunnel (if any)? */ + /** what is the previous peer in the tunnel (null if gateway) */ public Hash getReceiveFrom() { return _receiveFrom; } public void setReceiveFrom(Hash from) { _receiveFrom = from; } - /** what is the next tunnel ID we are sending to? */ + /** what is the next tunnel ID we are sending to? (null if endpoint) */ public byte[] getSendTunnelId() { return _sendTunnelId; } + + /** what is the next tunnel we are sending to? (null if endpoint) */ public TunnelId getSendTunnel() { if (_sendTunnel == null) _sendTunnel = getTunnel(_sendTunnelId); @@ -70,7 +73,7 @@ public class HopConfig { return new TunnelId(DataHelper.fromLong(id, 0, id.length)); } - /** what is the next peer in the tunnel (if any)? */ + /** what is the next peer in the tunnel (null if endpoint) */ public Hash getSendTo() { return _sendTo; } public void setSendTo(Hash to) { _sendTo = to; } @@ -125,12 +128,29 @@ public class HopConfig { /** * Take note of a message being pumped through this tunnel. * "processed" is for incoming and "sent" is for outgoing (could be dropped in between) + * We use synchronization instead of an AtomicInteger here to save space. */ - public void incrementProcessedMessages() { _messagesProcessed++; } + public synchronized void incrementProcessedMessages() { _messagesProcessed++; } + + public synchronized int getProcessedMessagesCount() { return _messagesProcessed; } - public int getProcessedMessagesCount() { return _messagesProcessed; } + /** + * This returns the number of processed messages since + * the last time getAndResetRecentMessagesCount() was called. + * As of 0.9.23, does NOT reset the count, see getAndResetRecentMessagesCount(). + */ + public synchronized int getRecentMessagesCount() { + return _messagesProcessed - _oldMessagesProcessed; + } - public int getRecentMessagesCount() { + /** + * This returns the number of processed messages since the last time this was called, + * and resets the count. It should only be called by code that updates the router stats. + * See TunnelDispatcher.updateParticipatingStats(). + * + * @since 0.9.23 + */ + synchronized int getAndResetRecentMessagesCount() { int rv = _messagesProcessed - _oldMessagesProcessed; _oldMessagesProcessed = _messagesProcessed; return rv; @@ -169,8 +189,9 @@ public class HopConfig { } buf.append(" exp. ").append(TunnelCreatorConfig.format(_expiration)); - if (_messagesProcessed > 0) - buf.append(" used ").append(_messagesProcessed).append("KB"); + int messagesProcessed = getProcessedMessagesCount(); + if (messagesProcessed > 0) + buf.append(" used ").append(messagesProcessed).append("KB"); return buf.toString(); } } diff --git a/router/java/src/net/i2p/router/tunnel/PumpedTunnelGateway.java b/router/java/src/net/i2p/router/tunnel/PumpedTunnelGateway.java index 614c7faab9bcca51bd59c1d0e3df3eb95b302373..4f1f82d87d8175e5f2ca0bc25c42c94db79527a0 100644 --- a/router/java/src/net/i2p/router/tunnel/PumpedTunnelGateway.java +++ b/router/java/src/net/i2p/router/tunnel/PumpedTunnelGateway.java @@ -58,6 +58,7 @@ class PumpedTunnelGateway extends TunnelGateway { * @param receiver this receives the encrypted message and forwards it off * to the first hop */ + @SuppressWarnings({ "unchecked", "rawtypes" }) public PumpedTunnelGateway(RouterContext context, QueuePreprocessor preprocessor, Sender sender, Receiver receiver, TunnelGatewayPumper pumper) { super(context, preprocessor, sender, receiver); diff --git a/router/java/src/net/i2p/router/tunnel/TunnelCreatorConfig.java b/router/java/src/net/i2p/router/tunnel/TunnelCreatorConfig.java index 9340477c6f4efb37d15e63ff17e3318cc9f20c57..758d2096b99a5042f0201577c772075239207ff0 100644 --- a/router/java/src/net/i2p/router/tunnel/TunnelCreatorConfig.java +++ b/router/java/src/net/i2p/router/tunnel/TunnelCreatorConfig.java @@ -30,16 +30,32 @@ public class TunnelCreatorConfig implements TunnelInfo { private long _replyMessageId; private final boolean _isInbound; private int _messagesProcessed; - private volatile long _verifiedBytesTransferred; + private long _verifiedBytesTransferred; private boolean _failed; private int _failures; private boolean _reused; private int _priority; + //private static final int THROUGHPUT_COUNT = 3; + // Fastest 1 minute throughput, in bytes per minute, ordered with fastest first. + //private final double _peakThroughput[] = new double[THROUGHPUT_COUNT]; + private long _peakThroughputCurrentTotal; + private long _peakThroughputLastCoallesce = System.currentTimeMillis(); + // Make configurable? - but can't easily get to pool options from here + private static final int MAX_CONSECUTIVE_TEST_FAILURES = 3; + private static final SimpleDateFormat _fmt = new SimpleDateFormat("HH:mm:ss", Locale.UK); + /** + * For exploratory only (null destination) + * @param length 1 minimum (0 hop is length 1) + */ public TunnelCreatorConfig(RouterContext ctx, int length, boolean isInbound) { this(ctx, length, isInbound, null); } + /** + * @param length 1 minimum (0 hop is length 1) + * @param destination null for exploratory + */ public TunnelCreatorConfig(RouterContext ctx, int length, boolean isInbound, Hash destination) { _context = ctx; if (length <= 0) @@ -131,10 +147,14 @@ public class TunnelCreatorConfig implements TunnelInfo { public void setReplyMessageId(long id) { _replyMessageId = id; } /** take note of a message being pumped through this tunnel */ - public void incrementProcessedMessages() { _messagesProcessed++; } - public int getProcessedMessagesCount() { return _messagesProcessed; } + public synchronized void incrementProcessedMessages() { _messagesProcessed++; } + public synchronized int getProcessedMessagesCount() { return _messagesProcessed; } - public void incrementVerifiedBytesTransferred(int bytes) { + /** + * This calls profile manager tunnelDataPushed1m() for each peer + * @return null for exploratory + */ + public synchronized void incrementVerifiedBytesTransferred(int bytes) { _verifiedBytesTransferred += bytes; _peakThroughputCurrentTotal += bytes; long now = System.currentTimeMillis(); @@ -144,38 +164,34 @@ public class TunnelCreatorConfig implements TunnelInfo { double normalized = tot * 60d*1000d / timeSince; _peakThroughputLastCoallesce = now; _peakThroughputCurrentTotal = 0; - if (_context != null) - for (int i = 0; i < _peers.length; i++) + if (_context != null) { + // skip ourselves + int start = _isInbound ? 0 : 1; + int end = _isInbound ? _peers.length - 1 : _peers.length; + for (int i = start; i < end; i++) { _context.profileManager().tunnelDataPushed1m(_peers[i], (int)normalized); + } + } } } - public long getVerifiedBytesTransferred() { return _verifiedBytesTransferred; } + public synchronized long getVerifiedBytesTransferred() { return _verifiedBytesTransferred; } - private static final int THROUGHPUT_COUNT = 3; - /** - * fastest 1 minute throughput, in bytes per minute, ordered with fastest - * first. - */ - private final double _peakThroughput[] = new double[THROUGHPUT_COUNT]; - private volatile long _peakThroughputCurrentTotal; - private volatile long _peakThroughputLastCoallesce = System.currentTimeMillis(); - public double getPeakThroughputKBps() { +/**** unused + public synchronized double getPeakThroughputKBps() { double rv = 0; for (int i = 0; i < THROUGHPUT_COUNT; i++) rv += _peakThroughput[i]; rv /= (60d*1024d*THROUGHPUT_COUNT); return rv; } - public void setPeakThroughputKBps(double kBps) { + + public synchronized void setPeakThroughputKBps(double kBps) { _peakThroughput[0] = kBps*60*1024; //for (int i = 0; i < THROUGHPUT_COUNT; i++) // _peakThroughput[i] = kBps*60; } - - - // Make configurable? - but can't easily get to pool options from here - private static final int MAX_CONSECUTIVE_TEST_FAILURES = 3; +****/ /** * The tunnel failed a test, so (maybe) stop using it @@ -264,11 +280,10 @@ public class TunnelCreatorConfig implements TunnelInfo { return buf.toString(); } - private static final SimpleDateFormat _fmt = new SimpleDateFormat("HH:mm:ss", Locale.UK); - private String getExpirationString() { return format(_expiration); } + static String format(long date) { Date d = new Date(date); synchronized (_fmt) { diff --git a/router/java/src/net/i2p/router/tunnel/TunnelDispatcher.java b/router/java/src/net/i2p/router/tunnel/TunnelDispatcher.java index 4e945b9db101e488059bbb809d21c7969fc9a72f..6c80375ed826bc9fbce81f2bf513c9030b29aaff 100644 --- a/router/java/src/net/i2p/router/tunnel/TunnelDispatcher.java +++ b/router/java/src/net/i2p/router/tunnel/TunnelDispatcher.java @@ -163,9 +163,14 @@ public class TunnelDispatcher implements Service { ctx.statManager().createRateStat("tunnel.participatingMessageDropped", "Dropped for exceeding share limit", "Tunnels", new long[] { 60*1000l, 60*10*1000l }); + // count for console ctx.statManager().createRequiredRateStat("tunnel.participatingMessageCount", "Number of 1KB participating messages", "Tunnels", new long[] { 60*1000l, 60*10*1000l, 60*60*1000l }); + // estimate for RouterThrottleImpl + ctx.statManager().createRequiredRateStat("tunnel.participatingMessageCountAvgPerTunnel", + "Estimate of participating messages per tunnel lifetime", "Tunnels", + new long[] { 60*1000l }); ctx.statManager().createRateStat("tunnel.ownedMessageCount", "How many messages are sent through a tunnel we created (period == failures)?", "Tunnels", new long[] { 60*1000l, 10*60*1000l, 60*60*1000l }); @@ -452,7 +457,8 @@ public class TunnelDispatcher implements Service { _inboundGateways.remove(recvId); } else { // update stats based off getCompleteCount() + getFailedCount() - for (int i = 0; i < cfg.getLength(); i++) { + // skip last hop (us) + for (int i = 0; i < cfg.getLength() - 1; i++) { Hash peer = cfg.getPeer(i); PeerProfile profile = _context.profileOrganizer().getProfile(peer); if (profile != null) { @@ -711,7 +717,7 @@ public class TunnelDispatcher implements Service { long tooYoung = _context.clock().now() - 60*1000; long tooOld = tooYoung - 9*60*1000; for (HopConfig cfg : _participatingConfig.values()) { - long c = cfg.getRecentMessagesCount(); + long c = cfg.getAndResetRecentMessagesCount(); bw += c; //bwOut += cfg.getRecentSentMessagesCount(); long created = cfg.getCreation(); @@ -720,9 +726,15 @@ public class TunnelDispatcher implements Service { tcount++; count += c; } + // This is an estimate of the average number of participating messages per tunnel + // in a tunnel lifetime, used only by RouterThrottleImpl + // 10 minutes / 50 seconds = 12 if (tcount > 0) - count = count * 30 / tcount; - _context.statManager().addRateData("tunnel.participatingMessageCount", count, ms); + count = count * (10*60*1000 / ms) / tcount; + _context.statManager().addRateData("tunnel.participatingMessageCountAvgPerTunnel", count, ms); + // This is a straight count of the total participating messages, used in the router console + _context.statManager().addRateData("tunnel.participatingMessageCount", bw, ms); + // Bandwidth in bits per second _context.statManager().addRateData("tunnel.participatingBandwidth", bw*1024/(ms/1000), ms); // moved to FIFOBandwidthRefiller //_context.statManager().addRateData("tunnel.participatingBandwidthOut", bwOut*1024/(ms/1000), ms); diff --git a/router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java b/router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java index 5b2bdfb2a1a7f2a0d00a05cf152c49da4aa4d844..0848bbe1bbe251fa116a814f677e6b93c7737edd 100644 --- a/router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java +++ b/router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java @@ -213,7 +213,7 @@ class BuildHandler implements Runnable { while (_isRunning && !_manager.isShutdown()) { try { handleInboundRequest(); - } catch (Exception e) { + } catch (RuntimeException e) { _log.log(Log.CRIT, "B0rked in the tunnel handler", e); } } @@ -795,7 +795,8 @@ class BuildHandler implements Runnable { cfg.setIVKey(req.readIVKey()); cfg.setLayerKey(req.readLayerKey()); if (isInGW) { - cfg.setReceiveFrom(null); + // default + //cfg.setReceiveFrom(null); } else { if (state.fromHash != null) { cfg.setReceiveFrom(state.fromHash); @@ -808,8 +809,9 @@ class BuildHandler implements Runnable { } cfg.setReceiveTunnelId(DataHelper.toLong(4, ourId)); if (isOutEnd) { - cfg.setSendTo(null); - cfg.setSendTunnelId(null); + // default + //cfg.setSendTo(null); + //cfg.setSendTunnelId(null); } else { cfg.setSendTo(nextPeer); cfg.setSendTunnelId(DataHelper.toLong(4, nextId)); diff --git a/router/java/src/net/i2p/router/tunnel/pool/TunnelPool.java b/router/java/src/net/i2p/router/tunnel/pool/TunnelPool.java index a1dae253c88a97260ac93a8cb764b3b8a61e963b..aaf24387cc738bfb6ea8819180175f442332e7dd 100644 --- a/router/java/src/net/i2p/router/tunnel/pool/TunnelPool.java +++ b/router/java/src/net/i2p/router/tunnel/pool/TunnelPool.java @@ -1168,7 +1168,7 @@ public class TunnelPool { int j = peers.size() - 1 - i; cfg.setPeer(j, peers.get(i)); HopConfig hop = cfg.getConfig(j); - hop.setCreation(_context.clock().now()); + hop.setCreation(now); hop.setExpiration(expiration); hop.setIVKey(_context.keyGenerator().generateSessionKey()); hop.setLayerKey(_context.keyGenerator().generateSessionKey()); diff --git a/router/java/src/net/i2p/router/util/EventLog.java b/router/java/src/net/i2p/router/util/EventLog.java index 1cad4b9b4700d7ff866ff2b1e5196d675f4e1c01..14f829dbef2a98568383eb14ec9827c90470f1a0 100644 --- a/router/java/src/net/i2p/router/util/EventLog.java +++ b/router/java/src/net/i2p/router/util/EventLog.java @@ -13,6 +13,7 @@ import java.util.SortedMap; import java.util.TreeMap; import net.i2p.I2PAppContext; +import net.i2p.data.DataHelper; import net.i2p.util.SecureFileOutputStream; /** @@ -125,7 +126,7 @@ public class EventLog { String line = null; while ( (line = br.readLine()) != null) { try { - String[] s = line.split(" ", 3); + String[] s = DataHelper.split(line, " ", 3); if (!s[1].equals(event)) continue; long time = Long.parseLong(s[0]); @@ -167,7 +168,7 @@ public class EventLog { String line = null; while ( (line = br.readLine()) != null) { try { - String[] s = line.split(" ", 2); + String[] s = DataHelper.split(line, " ", 2); if (s.length < 2) continue; long time = Long.parseLong(s[0]); diff --git a/router/java/src/net/i2p/router/util/RouterPasswordManager.java b/router/java/src/net/i2p/router/util/RouterPasswordManager.java index 97ef2468dbd815a7c70346e31f7e06d3f29406a7..3c2fb9b7d687cb5ff81c0f64d929fe7555147bbd 100644 --- a/router/java/src/net/i2p/router/util/RouterPasswordManager.java +++ b/router/java/src/net/i2p/router/util/RouterPasswordManager.java @@ -158,13 +158,7 @@ public class RouterPasswordManager extends PasswordManager { String pfx = realm; if (user != null && user.length() > 0) pfx += '.' + user; - byte[] salt = new byte[SALT_LENGTH]; - _context.random().nextBytes(salt); - byte[] pwHash = _context.keyGenerator().generateSessionKey(salt, DataHelper.getUTF8(pw)).getData(); - byte[] shashBytes = new byte[SHASH_LENGTH]; - System.arraycopy(salt, 0, shashBytes, 0, SALT_LENGTH); - System.arraycopy(pwHash, 0, shashBytes, SALT_LENGTH, SessionKey.KEYSIZE_BYTES); - String shash = Base64.encode(shashBytes); + String shash = createHash(pw); Map<String, String> toAdd = Collections.singletonMap(pfx + PROP_SHASH, shash); List<String> toDel = new ArrayList<String>(4); toDel.add(pfx + PROP_PW);