Compare commits

..

33 Commits

Author SHA1 Message Date
c4588e673a 0.4.2 2015-11-19 06:12:16 +00:00
d1ef0161d9 Updated translation strings 2015-11-19 05:00:04 +00:00
ebacda4751 Remove SU3 files with "ant clean" 2015-11-19 04:43:27 +00:00
70cb8a778a Make contact's text field editable, display it in address book (#1667) 2015-11-18 11:09:14 +00:00
413ca2326d Updated translations 2015-11-17 09:31:15 +00:00
2e7ff07988 Updated translations 2015-11-15 06:20:45 +00:00
3ce9e87c60 AIOOBE fixes 2015-11-15 05:26:55 +00:00
11d679f5fd NPE fix 2015-11-15 05:04:12 +00:00
0835cfa793 Remove unused imports 2015-11-15 04:57:59 +00:00
035a4b609a CME fix 2015-11-15 04:49:08 +00:00
5b5aaae565 Fix Date format string for Java 6 and Android (ticket #1644) 2015-11-01 21:18:33 +00:00
1f6a407509 Updated translations 2015-11-01 11:12:51 +00:00
428aabe996 Added kay to contributors list 2015-11-01 11:12:42 +00:00
134c6ffb09 Removed HH's Bote address from FAQ (ticket #1642) 2015-11-01 11:12:06 +00:00
e35616ca1e Updated translations 2015-11-01 10:35:38 +00:00
767611f2c3 Fix migrator 2015-11-01 10:24:42 +00:00
92ae32cbb8 Use Notifications API to notify user of new emails 2015-11-01 04:13:27 +00:00
732a868581 Theme fixes, include NotoSans font 2015-10-18 11:03:34 +00:00
61ab5290be Added reminder 2015-10-17 13:38:27 +00:00
ca88452f01 Copy over code from I2P's CryptoCheck so I don't have to bump min-i2p-version 2015-10-17 13:37:20 +00:00
cb23a49234 Use I2P's test for unlimited crypto 2015-10-17 13:33:00 +00:00
2cf86f5f71 Linkify my name on about page 2015-10-17 13:21:34 +00:00
43196e5f08 Tweaked background color 2015-10-17 13:18:15 +00:00
187cfe77f2 Material theme improvements 2015-10-17 13:01:26 +00:00
172bd92aab Updated translations 2015-10-17 03:10:25 +00:00
245af96a99 Added notification and guide about unlimited strength crypto policy files 2015-10-17 02:36:03 +00:00
5cedc505c5 Implement snackbar 2015-10-17 00:32:54 +00:00
0d138b0b3d Material design: tweaked sidebar dimensions and style 2015-10-06 08:10:17 +00:00
0e6de14a63 Fixed JavaDoc generation 2015-09-28 12:20:00 +00:00
1e9a8e0e62 merge of '59904abe9efefe8ad0524f7992af7d78b0a02647'
and '62ca447c6d28866636b9699e1d361af029b8e2fa'
2015-09-28 12:16:38 +00:00
dev
30beafd36f Fixed #1661 and #1663.
Fix supplied by kay@mail.i2p.
2015-09-22 03:06:29 +00:00
dev
692f8334c2 Applied patch fixing a NPE when network and dht aren't present.
Patch supplied by kay@mail.i2p in #1662.
2015-09-22 02:53:15 +00:00
dev
40afba4093 Applied replacing _() with _t() from kay@mail.i2p in #1665. 2015-09-22 02:50:40 +00:00
72 changed files with 1652 additions and 757 deletions

View File

@ -12,13 +12,15 @@
<property name="junit.filename" value="junit-4.8.1.jar"/>
<property name="junit.url" value="http://sourceforge.net/projects/junit/files/junit/4.8.1/junit-4.8.1.jar/download"/>
<property name="bytebuddy.filename" value="byte-buddy-0.6.14.jar"/>
<property name="bytebuddy.url" value="https://search.maven.org/remotecontent?filepath=net/bytebuddy/byte-buddy/0.6.14/byte-buddy-0.6.14.jar" />
<property name="mockito.filename" value="mockito-core-2.0.31-beta.jar"/>
<property name="mockito.url" value="https://bintray.com/artifact/download/szczepiq/maven/org/mockito/mockito-core/2.0.31-beta/mockito-core-2.0.31-beta.jar"/>
<!-- Just the main jMock .jar, the .zip contains this and dependencies -->
<property name="jmock.filename" value="jmock-2.6.0.jar"/>
<property name="jmock.archive" value="jmock-2.6.0-jars.zip"/>
<property name="jmockcp" value="${lib}/jmock-2.6.0.jar:${lib}/hamcrest-core-1.3.jar:${lib}/hamcrest-library-1.3.jar:${lib}/jmock-legacy-2.6.0.jar:${lib}/cglib-nodep-2.2.3.jar:${lib}/objenesis-1.0.jar"/>
<property name="jmock.url" value="http://jmock.org/downloads/${jmock.archive}"/>
<property name="jmock.url" value="http://www.jmock.org/downloads/${jmock.archive}"/>
<!-- Dependencies -->
<!-- Local -->
@ -248,7 +250,7 @@
<lib file="${lib}/${bcprov.filename}"/>
<lib file="${lib}/${ntruenc.filename}"/>
<lib file="${lib}/${scrypt.filename}"/>
<lib file="${lib}/${lzma.filename"/>
<lib file="${lib}/${lzma.filename}"/>
<lib file="${lib}/${gmss.filename}"/>
<lib file="${lib}/${jcommon.filename}" />
<lib file="${lib}/${jfreechart.filename}" />
@ -652,6 +654,8 @@
<target name="junit" depends="compile">
<available property="junitexists" file="${lib}/${junit.filename}" type="file"/>
<ant target="downloadjunit"/>
<available property="bytebuddyexists" file="${lib}/${bytebuddy.filename}" type="file"/>
<ant target="downloadbytebuddy"/>
<available property="mockitoexists" file="${lib}/${mockito.filename}" type="file"/>
<ant target="downloadmockito"/>
<available property="jmockexists" file="${lib}/${jmock.filename}" type="file"/>
@ -660,6 +664,7 @@
<path id="junitcp">
<pathelement location="${lib}/${junit.filename}"/>
<pathelement location="${lib}/${mockito.filename}"/>
<pathelement location="${lib}/${bytebuddy.filename}"/>
<pathelement path="${jmockcp}"/>
<pathelement location="./ant_build/classes"/>
<path refid="cp"/>
@ -707,6 +712,16 @@
<get src="${junit.url}" verbose="true" dest="${lib}/${junit.filename}"/>
</target>
<target name="downloadbytebuddy" unless="bytebuddyexists">
<input message="ByteBuddy not found, download now?" validargs="y,n" addproperty="userinput.bytebuddy"/>
<fail message="OK, aborting build." >
<condition>
<equals arg1="${userinput.bytebuddy}" arg2="n"/>
</condition>
</fail>
<get src="${bytebuddy.url}" verbose="true" dest="${lib}/${bytebuddy.filename}"/>
</target>
<target name="downloadmockito" unless="mockitoexists">
<input message="Mockito not found, download now?" validargs="y,n" addproperty="userinput.mockito"/>
<fail message="OK, aborting build." >
@ -896,7 +911,7 @@
</java>
<javadoc
sourcepath="src"
sourcepath="src/main/java"
destdir="javadoc"
classpathref="cp"
windowtitle="I2P-Bote"
@ -921,6 +936,8 @@
<delete dir="plugin/plugin.tmp" />
<delete file="i2pbote.xpi2p" />
<delete file="i2pbote-update.xpi2p" />
<delete file="i2pbote.su3" />
<delete file="i2pbote-update.su3" />
<delete file="src.zip" />
<delete file="i2pinstall.exe" />
<delete dir="javadoc" />

View File

@ -1,6 +1,18 @@
I2P-Bote Version History
------------------------
0.4.2 (Released on Nov 19, 2015)
* Added UI notification and guide about unlimited strength crypto policy files
* New: desktop notification when a new email arrives (only when JS enabled)
* Fixed bugs:
o AIOOBE on empty packets (ticket #1603)
o Crashing with Java 6 (ticket #1644)
o NPE when network and DHT aren't present (ticket #1662)
o Couldn't edit contact's text field (ticket #1667)
o Migrator running incorrectly (ticket #1693)
o CME when checking email (ticket #1703)
o NPE when checking email in text browser before init (ticket #1704)
0.4.1 (Released on Sep 12, 2015)
* Fixed bugs:
o ConcurrentModificationException errors in logs

View File

@ -7,8 +7,8 @@ msgid ""
msgstr ""
"Project-Id-Version: I2P\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-09-12 14:28+0000\n"
"PO-Revision-Date: 2015-08-05 01:52+0000\n"
"POT-Creation-Date: 2015-11-19 04:55+0000\n"
"PO-Revision-Date: 2015-11-19 04:44+0000\n"
"Last-Translator: str4d <str4d@i2pmail.org>\n"
"Language-Team: Arabic (http://www.transifex.com/otf/I2P/language/ar/)\n"
"Language: ar\n"
@ -30,35 +30,35 @@ msgstr ""
msgid "Vanilla"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:516
#: src/main/java/i2p/bote/I2PBote.java:519
msgid "No identity matches the sender/from field: "
msgstr "لا توجد هوية متوافقة مع المرسل:"
#: src/main/java/i2p/bote/I2PBote.java:721
#: src/main/java/i2p/bote/I2PBote.java:726
msgid "Checking password"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:724
#: src/main/java/i2p/bote/I2PBote.java:729
msgid "The old password is not correct."
msgstr "كلمة المرور القديمة غير صحيحة."
#: src/main/java/i2p/bote/I2PBote.java:726
#: src/main/java/i2p/bote/I2PBote.java:731
msgid "The new password and the confirmation password do not match."
msgstr "كلمة المرور الجديدة والتأكيد غير صالحة."
#: src/main/java/i2p/bote/I2PBote.java:733
#: src/main/java/i2p/bote/I2PBote.java:738
msgid "Re-encrypting identities"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:736
#: src/main/java/i2p/bote/I2PBote.java:741
msgid "Re-encrypting addressbook"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:739
#: src/main/java/i2p/bote/I2PBote.java:744
msgid "Re-encrypting folder"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:743
#: src/main/java/i2p/bote/I2PBote.java:748
msgid "Updating password file"
msgstr ""
@ -146,60 +146,64 @@ msgstr "(ﻻشئ)"
msgid "(S)"
msgstr "(S)"
#: src/main/java/i2p/bote/util/GeneralHelper.java:101
#: src/main/java/i2p/bote/util/GeneralHelper.java:125
msgid "Not set."
msgstr " غير مدخل"
#: src/main/java/i2p/bote/util/GeneralHelper.java:151
#: src/main/java/i2p/bote/util/GeneralHelper.java:175
msgid "Invalid ID number for CryptoImplementation: "
msgstr "Invalid ID number for CryptoImplementation: "
#: src/main/java/i2p/bote/web/JSPHelper.java:236
#: src/main/java/i2p/bote/web/JSPHelper.java:241
msgid "Queued"
msgstr "قائمة الانتظار"
#: src/main/java/i2p/bote/web/JSPHelper.java:238
#: src/main/java/i2p/bote/web/JSPHelper.java:243
msgid "Sending"
msgstr "جاري ارسال"
#: src/main/java/i2p/bote/web/JSPHelper.java:240
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#, java-format
msgid "Sent to {0} out of {1} recipients"
msgstr "مرسل الى {0} من {1} المستلمين"
#: src/main/java/i2p/bote/web/JSPHelper.java:243
#: src/main/java/i2p/bote/web/JSPHelper.java:248
msgid "Email sent"
msgstr ""
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#: src/main/java/i2p/bote/web/JSPHelper.java:250
msgid "Gateway disabled"
msgstr "البوابة ممنوعة"
#: src/main/java/i2p/bote/web/JSPHelper.java:247
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#, java-format
msgid "No identity matches the sender/from field: {0}"
msgstr ""
#: src/main/java/i2p/bote/web/JSPHelper.java:250
#: src/main/java/i2p/bote/web/JSPHelper.java:255
#, java-format
msgid "Invalid recipient address: {0}"
msgstr "عنوان غير صحيح: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#: src/main/java/i2p/bote/web/JSPHelper.java:257
#, java-format
msgid "Error creating email packets: {0}"
msgstr "خطأ في ارسال البريد: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:254
#: src/main/java/i2p/bote/web/JSPHelper.java:259
#, java-format
msgid "Error while sending email: {0}"
msgstr "خطأ في ارسال البريد: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:256
#: src/main/java/i2p/bote/web/JSPHelper.java:261
#, java-format
msgid "Error saving email metadata: {0}"
msgstr ""
#: src/main/java/i2p/bote/web/JSPHelper.java:282
msgid "New email received"
msgstr ""
#: src/main/java/i2p/bote/web/PeerInfoTag.java:88
#: src/main/java/i2p/bote/web/PeerInfoTag.java:194
msgid "Kademlia Peers:"
@ -409,6 +413,16 @@ msgstr "الأسئلة المكررة"
msgid "About"
msgstr "حول البرنامج"
#: src/main/webapp/header.jsp
msgid ""
"For I2P-Bote to function properly, you must download the JCE Unlimited "
"Strength Jurisdiction Policy files and move them into this folder:"
msgstr ""
#: src/main/webapp/header.jsp
msgid "Guide"
msgstr ""
#: src/main/webapp/clearPasswordCache.jsp
msgid "Password Cleared"
msgstr "مسح كلمة السر"
@ -706,6 +720,10 @@ msgstr "دفتر العناوين فارغ."
msgid "Name"
msgstr "اسم"
#: src/main/webapp/addressBook.jsp
msgid "Text"
msgstr ""
#: src/main/webapp/addressBook.jsp
msgid "Email Destination"
msgstr "بريد الإلكتروني للمتلقي"
@ -1184,6 +1202,10 @@ msgstr ""
msgid "Code fixes, translation updates from tx"
msgstr "اصلاحات بالكود و ترجمة من tx"
#: src/main/webapp/about.jsp
msgid "Code fixes"
msgstr ""
#: src/main/webapp/setPassword.jsp
msgid "Set Password"
msgstr "حدد كلمة السر"

View File

@ -6,8 +6,8 @@ msgid ""
msgstr ""
"Project-Id-Version: I2P\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-09-12 14:28+0000\n"
"PO-Revision-Date: 2015-08-05 01:52+0000\n"
"POT-Creation-Date: 2015-11-19 04:55+0000\n"
"PO-Revision-Date: 2015-11-19 04:44+0000\n"
"Last-Translator: str4d <str4d@i2pmail.org>\n"
"Language-Team: Czech (http://www.transifex.com/otf/I2P/language/cs/)\n"
"Language: cs\n"
@ -28,35 +28,35 @@ msgstr ""
msgid "Vanilla"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:516
#: src/main/java/i2p/bote/I2PBote.java:519
msgid "No identity matches the sender/from field: "
msgstr "Žádná identita neodpovídá poli odesílatel/od:"
#: src/main/java/i2p/bote/I2PBote.java:721
#: src/main/java/i2p/bote/I2PBote.java:726
msgid "Checking password"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:724
#: src/main/java/i2p/bote/I2PBote.java:729
msgid "The old password is not correct."
msgstr "Staré heslo je špatně zadané."
#: src/main/java/i2p/bote/I2PBote.java:726
#: src/main/java/i2p/bote/I2PBote.java:731
msgid "The new password and the confirmation password do not match."
msgstr "Nové heslo a jeho potvrzení se neshodují."
#: src/main/java/i2p/bote/I2PBote.java:733
#: src/main/java/i2p/bote/I2PBote.java:738
msgid "Re-encrypting identities"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:736
#: src/main/java/i2p/bote/I2PBote.java:741
msgid "Re-encrypting addressbook"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:739
#: src/main/java/i2p/bote/I2PBote.java:744
msgid "Re-encrypting folder"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:743
#: src/main/java/i2p/bote/I2PBote.java:748
msgid "Updating password file"
msgstr ""
@ -144,60 +144,64 @@ msgstr "(žádný)"
msgid "(S)"
msgstr "(S)"
#: src/main/java/i2p/bote/util/GeneralHelper.java:101
#: src/main/java/i2p/bote/util/GeneralHelper.java:125
msgid "Not set."
msgstr "Nenastaveno"
#: src/main/java/i2p/bote/util/GeneralHelper.java:151
#: src/main/java/i2p/bote/util/GeneralHelper.java:175
msgid "Invalid ID number for CryptoImplementation: "
msgstr "Neplatné číslo ID pro CryptoImplementaci:"
#: src/main/java/i2p/bote/web/JSPHelper.java:236
#: src/main/java/i2p/bote/web/JSPHelper.java:241
msgid "Queued"
msgstr "Ve frontě"
#: src/main/java/i2p/bote/web/JSPHelper.java:238
#: src/main/java/i2p/bote/web/JSPHelper.java:243
msgid "Sending"
msgstr "Odesílám"
#: src/main/java/i2p/bote/web/JSPHelper.java:240
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#, java-format
msgid "Sent to {0} out of {1} recipients"
msgstr "Odesláno {0} z {1} příjemců."
#: src/main/java/i2p/bote/web/JSPHelper.java:243
#: src/main/java/i2p/bote/web/JSPHelper.java:248
msgid "Email sent"
msgstr "Email byl odeslán"
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#: src/main/java/i2p/bote/web/JSPHelper.java:250
msgid "Gateway disabled"
msgstr "Brána vypnuta"
#: src/main/java/i2p/bote/web/JSPHelper.java:247
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#, java-format
msgid "No identity matches the sender/from field: {0}"
msgstr ""
#: src/main/java/i2p/bote/web/JSPHelper.java:250
#: src/main/java/i2p/bote/web/JSPHelper.java:255
#, java-format
msgid "Invalid recipient address: {0}"
msgstr "Neplatný příjemce: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#: src/main/java/i2p/bote/web/JSPHelper.java:257
#, java-format
msgid "Error creating email packets: {0}"
msgstr "Chyba při vyváření emailových paketů: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:254
#: src/main/java/i2p/bote/web/JSPHelper.java:259
#, java-format
msgid "Error while sending email: {0}"
msgstr "Chyba při odesílání emailu: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:256
#: src/main/java/i2p/bote/web/JSPHelper.java:261
#, java-format
msgid "Error saving email metadata: {0}"
msgstr "Error při ukládání emailovůch metadat: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:282
msgid "New email received"
msgstr ""
#: src/main/java/i2p/bote/web/PeerInfoTag.java:88
#: src/main/java/i2p/bote/web/PeerInfoTag.java:194
msgid "Kademlia Peers:"
@ -407,6 +411,16 @@ msgstr ""
msgid "About"
msgstr "O programu"
#: src/main/webapp/header.jsp
msgid ""
"For I2P-Bote to function properly, you must download the JCE Unlimited "
"Strength Jurisdiction Policy files and move them into this folder:"
msgstr ""
#: src/main/webapp/header.jsp
msgid "Guide"
msgstr ""
#: src/main/webapp/clearPasswordCache.jsp
msgid "Password Cleared"
msgstr ""
@ -704,6 +718,10 @@ msgstr "Adresář je prázný."
msgid "Name"
msgstr "Jméno"
#: src/main/webapp/addressBook.jsp
msgid "Text"
msgstr ""
#: src/main/webapp/addressBook.jsp
msgid "Email Destination"
msgstr "Destinace emailu"
@ -1188,6 +1206,10 @@ msgstr ""
msgid "Code fixes, translation updates from tx"
msgstr ""
#: src/main/webapp/about.jsp
msgid "Code fixes"
msgstr ""
#: src/main/webapp/setPassword.jsp
msgid "Set Password"
msgstr "Zadat heslo"

View File

@ -5,6 +5,7 @@
# blabla <blabla@trash-mail.com>, 2012
# D.A. Loader <>, 2012
# ducki2p <ducki2p@gmail.com>, 2011
# Ettore Atalan <atalanttore@googlemail.com>, 2015
# HungryHobo <HungryHobo@i2pmail.org>, 2012-2013
# HungryHobo <HungryHobo@i2pmail.org>, 2013
# HungryHobo <HungryHobo@i2pmail.org>, 2012
@ -16,9 +17,9 @@ msgid ""
msgstr ""
"Project-Id-Version: I2P\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-09-12 14:28+0000\n"
"PO-Revision-Date: 2015-08-21 21:11+0000\n"
"Last-Translator: Lars Schimmer <echelon@i2pmail.org>\n"
"POT-Creation-Date: 2015-11-19 04:55+0000\n"
"PO-Revision-Date: 2015-11-19 04:44+0000\n"
"Last-Translator: str4d <str4d@i2pmail.org>\n"
"Language-Team: German (http://www.transifex.com/otf/I2P/language/de/)\n"
"Language: de\n"
"MIME-Version: 1.0\n"
@ -38,35 +39,35 @@ msgstr "hellblau"
msgid "Vanilla"
msgstr "Vanille"
#: src/main/java/i2p/bote/I2PBote.java:516
#: src/main/java/i2p/bote/I2PBote.java:519
msgid "No identity matches the sender/from field: "
msgstr "Keine Mailidentität stimmt mit diesem Absenderfeld (\"Von\") überein:"
#: src/main/java/i2p/bote/I2PBote.java:721
#: src/main/java/i2p/bote/I2PBote.java:726
msgid "Checking password"
msgstr "Prüfe Passwort"
#: src/main/java/i2p/bote/I2PBote.java:724
#: src/main/java/i2p/bote/I2PBote.java:729
msgid "The old password is not correct."
msgstr "Das alte Kennwort ist leider nicht korrekt."
#: src/main/java/i2p/bote/I2PBote.java:726
#: src/main/java/i2p/bote/I2PBote.java:731
msgid "The new password and the confirmation password do not match."
msgstr "Das neue Kennwort und die Kennwortbestätigung stimmen nicht überein."
#: src/main/java/i2p/bote/I2PBote.java:733
#: src/main/java/i2p/bote/I2PBote.java:738
msgid "Re-encrypting identities"
msgstr "Verschlüssele Identitäten"
#: src/main/java/i2p/bote/I2PBote.java:736
#: src/main/java/i2p/bote/I2PBote.java:741
msgid "Re-encrypting addressbook"
msgstr "Verschlüssele Adressbuch"
#: src/main/java/i2p/bote/I2PBote.java:739
#: src/main/java/i2p/bote/I2PBote.java:744
msgid "Re-encrypting folder"
msgstr "Verschlüssele Verzeichnis"
#: src/main/java/i2p/bote/I2PBote.java:743
#: src/main/java/i2p/bote/I2PBote.java:748
msgid "Updating password file"
msgstr "Aktualisiere Passwortdatei"
@ -156,60 +157,64 @@ msgstr "-"
msgid "(S)"
msgstr "(S)"
#: src/main/java/i2p/bote/util/GeneralHelper.java:101
#: src/main/java/i2p/bote/util/GeneralHelper.java:125
msgid "Not set."
msgstr "nicht festgelegt"
#: src/main/java/i2p/bote/util/GeneralHelper.java:151
#: src/main/java/i2p/bote/util/GeneralHelper.java:175
msgid "Invalid ID number for CryptoImplementation: "
msgstr "ungültige Identnummer für CryptoImplementation:"
#: src/main/java/i2p/bote/web/JSPHelper.java:236
#: src/main/java/i2p/bote/web/JSPHelper.java:241
msgid "Queued"
msgstr "in Warteschlange"
#: src/main/java/i2p/bote/web/JSPHelper.java:238
#: src/main/java/i2p/bote/web/JSPHelper.java:243
msgid "Sending"
msgstr "Wird verschickt"
#: src/main/java/i2p/bote/web/JSPHelper.java:240
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#, java-format
msgid "Sent to {0} out of {1} recipients"
msgstr "An {0} von {1} Empfängern verschickt"
#: src/main/java/i2p/bote/web/JSPHelper.java:243
#: src/main/java/i2p/bote/web/JSPHelper.java:248
msgid "Email sent"
msgstr "Mail verschickt"
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#: src/main/java/i2p/bote/web/JSPHelper.java:250
msgid "Gateway disabled"
msgstr "Durchleitung deaktiviert"
#: src/main/java/i2p/bote/web/JSPHelper.java:247
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#, java-format
msgid "No identity matches the sender/from field: {0}"
msgstr "Keine Identität für das Abender-/Von-Feld gefunden: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:250
#: src/main/java/i2p/bote/web/JSPHelper.java:255
#, java-format
msgid "Invalid recipient address: {0}"
msgstr "Ungültige Empfängeradresse: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#: src/main/java/i2p/bote/web/JSPHelper.java:257
#, java-format
msgid "Error creating email packets: {0}"
msgstr "Fehler beim Erstellen der Mailpakete: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:254
#: src/main/java/i2p/bote/web/JSPHelper.java:259
#, java-format
msgid "Error while sending email: {0}"
msgstr "Fehler beim Verschicken der Mail: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:256
#: src/main/java/i2p/bote/web/JSPHelper.java:261
#, java-format
msgid "Error saving email metadata: {0}"
msgstr "Fehler beim Speichern der Metadaten: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:282
msgid "New email received"
msgstr "Neue E-Mail erhalten"
#: src/main/java/i2p/bote/web/PeerInfoTag.java:88
#: src/main/java/i2p/bote/web/PeerInfoTag.java:194
msgid "Kademlia Peers:"
@ -421,6 +426,19 @@ msgstr "FAQ"
msgid "About"
msgstr "Über I2P-Bote"
#: src/main/webapp/header.jsp
msgid ""
"For I2P-Bote to function properly, you must download the JCE Unlimited "
"Strength Jurisdiction Policy files and move them into this folder:"
msgstr ""
"Damit I2P-Bote richtig funktioniert, sollten Sie die \"JCE Unlimited "
"Strength Jurisdiction Policy\"-Datei herunterladen und in folgendes "
"Verzeichnis verschieben:"
#: src/main/webapp/header.jsp
msgid "Guide"
msgstr "Handbuch"
#: src/main/webapp/clearPasswordCache.jsp
msgid "Password Cleared"
msgstr "Kennwortspeicher geleert"
@ -725,6 +743,11 @@ msgstr "Das Adressbuch ist leer."
msgid "Name"
msgstr "Name"
#: src/main/webapp/addressBook.jsp
#, fuzzy
msgid "Text"
msgstr "Text:"
#: src/main/webapp/addressBook.jsp
msgid "Email Destination"
msgstr "Bote-Adresse"
@ -1225,6 +1248,10 @@ msgstr "Alpha-Tests"
msgid "Code fixes, translation updates from tx"
msgstr "Fehlerbehebungen, Aktualisierungen der Übersetzungen aus Transifex"
#: src/main/webapp/about.jsp
msgid "Code fixes"
msgstr ""
#: src/main/webapp/setPassword.jsp
msgid "Set Password"
msgstr "Kennwort setzen"

View File

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: I2P\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-09-12 14:28+0000\n"
"POT-Creation-Date: 2015-11-19 04:55+0000\n"
"PO-Revision-Date: 2015-02-14 22:33+0000\n"
"Last-Translator: str4d <str4d@i2pmail.org>\n"
"Language-Team: English (http://www.transifex.com/projects/p/I2P/language/"
@ -29,35 +29,35 @@ msgstr "Light Blue"
msgid "Vanilla"
msgstr "Vanilla"
#: src/main/java/i2p/bote/I2PBote.java:516
#: src/main/java/i2p/bote/I2PBote.java:519
msgid "No identity matches the sender/from field: "
msgstr "No identity matches the sender/from field: "
#: src/main/java/i2p/bote/I2PBote.java:721
#: src/main/java/i2p/bote/I2PBote.java:726
msgid "Checking password"
msgstr "Checking password"
#: src/main/java/i2p/bote/I2PBote.java:724
#: src/main/java/i2p/bote/I2PBote.java:729
msgid "The old password is not correct."
msgstr "The old password is not correct."
#: src/main/java/i2p/bote/I2PBote.java:726
#: src/main/java/i2p/bote/I2PBote.java:731
msgid "The new password and the confirmation password do not match."
msgstr "The new password and the confirmation password do not match."
#: src/main/java/i2p/bote/I2PBote.java:733
#: src/main/java/i2p/bote/I2PBote.java:738
msgid "Re-encrypting identities"
msgstr "Re-encrypting identities"
#: src/main/java/i2p/bote/I2PBote.java:736
#: src/main/java/i2p/bote/I2PBote.java:741
msgid "Re-encrypting addressbook"
msgstr "Re-encrypting addressbook"
#: src/main/java/i2p/bote/I2PBote.java:739
#: src/main/java/i2p/bote/I2PBote.java:744
msgid "Re-encrypting folder"
msgstr "Re-encrypting folder"
#: src/main/java/i2p/bote/I2PBote.java:743
#: src/main/java/i2p/bote/I2PBote.java:748
msgid "Updating password file"
msgstr "Updating password file"
@ -146,60 +146,65 @@ msgstr "(None)"
msgid "(S)"
msgstr "(S)"
#: src/main/java/i2p/bote/util/GeneralHelper.java:101
#: src/main/java/i2p/bote/util/GeneralHelper.java:125
msgid "Not set."
msgstr "Not set."
#: src/main/java/i2p/bote/util/GeneralHelper.java:151
#: src/main/java/i2p/bote/util/GeneralHelper.java:175
msgid "Invalid ID number for CryptoImplementation: "
msgstr "Invalid ID number for CryptoImplementation: "
#: src/main/java/i2p/bote/web/JSPHelper.java:236
#: src/main/java/i2p/bote/web/JSPHelper.java:241
msgid "Queued"
msgstr "Queued"
#: src/main/java/i2p/bote/web/JSPHelper.java:238
#: src/main/java/i2p/bote/web/JSPHelper.java:243
msgid "Sending"
msgstr "Sending"
#: src/main/java/i2p/bote/web/JSPHelper.java:240
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#, java-format
msgid "Sent to {0} out of {1} recipients"
msgstr "Sent to {0} out of {1} recipients"
#: src/main/java/i2p/bote/web/JSPHelper.java:243
#: src/main/java/i2p/bote/web/JSPHelper.java:248
msgid "Email sent"
msgstr "Email sent"
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#: src/main/java/i2p/bote/web/JSPHelper.java:250
msgid "Gateway disabled"
msgstr "Gateway disabled"
#: src/main/java/i2p/bote/web/JSPHelper.java:247
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#, java-format
msgid "No identity matches the sender/from field: {0}"
msgstr "No identity matches the sender/from field: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:250
#: src/main/java/i2p/bote/web/JSPHelper.java:255
#, java-format
msgid "Invalid recipient address: {0}"
msgstr "Invalid recipient address: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#: src/main/java/i2p/bote/web/JSPHelper.java:257
#, java-format
msgid "Error creating email packets: {0}"
msgstr "Error creating email packets: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:254
#: src/main/java/i2p/bote/web/JSPHelper.java:259
#, java-format
msgid "Error while sending email: {0}"
msgstr "Error while sending email: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:256
#: src/main/java/i2p/bote/web/JSPHelper.java:261
#, java-format
msgid "Error saving email metadata: {0}"
msgstr "Error saving email metadata: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:282
#, fuzzy
msgid "New email received"
msgstr "New Email Identity"
#: src/main/java/i2p/bote/web/PeerInfoTag.java:88
#: src/main/java/i2p/bote/web/PeerInfoTag.java:194
msgid "Kademlia Peers:"
@ -409,6 +414,17 @@ msgstr "FAQ"
msgid "About"
msgstr "About"
#: src/main/webapp/header.jsp
msgid ""
"For I2P-Bote to function properly, you must download the JCE Unlimited "
"Strength Jurisdiction Policy files and move them into this folder:"
msgstr ""
#: src/main/webapp/header.jsp
#, fuzzy
msgid "Guide"
msgstr "User Guide"
#: src/main/webapp/clearPasswordCache.jsp
msgid "Password Cleared"
msgstr "Password Cleared"
@ -715,6 +731,11 @@ msgstr "The address book is empty."
msgid "Name"
msgstr "Name"
#: src/main/webapp/addressBook.jsp
#, fuzzy
msgid "Text"
msgstr "Text:"
#: src/main/webapp/addressBook.jsp
msgid "Email Destination"
msgstr "Email Destination"
@ -1212,6 +1233,10 @@ msgstr "Alpha testing"
msgid "Code fixes, translation updates from tx"
msgstr "Code fixes, translation updates from tx"
#: src/main/webapp/about.jsp
msgid "Code fixes"
msgstr ""
#: src/main/webapp/setPassword.jsp
msgid "Set Password"
msgstr "Set Password"

View File

@ -22,9 +22,9 @@ msgid ""
msgstr ""
"Project-Id-Version: I2P\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-09-12 14:28+0000\n"
"PO-Revision-Date: 2015-08-09 07:14+0000\n"
"Last-Translator: blabla <blabla@trash-mail.com>\n"
"POT-Creation-Date: 2015-11-19 04:55+0000\n"
"PO-Revision-Date: 2015-11-19 04:44+0000\n"
"Last-Translator: str4d <str4d@i2pmail.org>\n"
"Language-Team: Spanish (http://www.transifex.com/otf/I2P/language/es/)\n"
"Language: es\n"
"MIME-Version: 1.0\n"
@ -44,35 +44,35 @@ msgstr "Celeste"
msgid "Vanilla"
msgstr "Vainilla"
#: src/main/java/i2p/bote/I2PBote.java:516
#: src/main/java/i2p/bote/I2PBote.java:519
msgid "No identity matches the sender/from field: "
msgstr "No existe ninguna identidad que concuerde con el campo remitente:"
#: src/main/java/i2p/bote/I2PBote.java:721
#: src/main/java/i2p/bote/I2PBote.java:726
msgid "Checking password"
msgstr "Comprobando contraseña"
#: src/main/java/i2p/bote/I2PBote.java:724
#: src/main/java/i2p/bote/I2PBote.java:729
msgid "The old password is not correct."
msgstr "La contraseña antigua no es correcta."
#: src/main/java/i2p/bote/I2PBote.java:726
#: src/main/java/i2p/bote/I2PBote.java:731
msgid "The new password and the confirmation password do not match."
msgstr "La nueva contraseña y la confirmación de ésta no coinciden."
#: src/main/java/i2p/bote/I2PBote.java:733
#: src/main/java/i2p/bote/I2PBote.java:738
msgid "Re-encrypting identities"
msgstr "Volviendo a cifrar identidades"
#: src/main/java/i2p/bote/I2PBote.java:736
#: src/main/java/i2p/bote/I2PBote.java:741
msgid "Re-encrypting addressbook"
msgstr "Volviendo a cifrar libreta de direcciones"
#: src/main/java/i2p/bote/I2PBote.java:739
#: src/main/java/i2p/bote/I2PBote.java:744
msgid "Re-encrypting folder"
msgstr "Volviendo a cifrar carpeta"
#: src/main/java/i2p/bote/I2PBote.java:743
#: src/main/java/i2p/bote/I2PBote.java:748
msgid "Updating password file"
msgstr "Actualizando fichero de contraseña"
@ -162,62 +162,66 @@ msgstr "(Ninguno)"
msgid "(S)"
msgstr "(S)"
#: src/main/java/i2p/bote/util/GeneralHelper.java:101
#: src/main/java/i2p/bote/util/GeneralHelper.java:125
msgid "Not set."
msgstr "No establecido."
#: src/main/java/i2p/bote/util/GeneralHelper.java:151
#: src/main/java/i2p/bote/util/GeneralHelper.java:175
msgid "Invalid ID number for CryptoImplementation: "
msgstr ""
"Número de identificación ('ID') no válido para la interfaz "
"CryptoImplementation:"
#: src/main/java/i2p/bote/web/JSPHelper.java:236
#: src/main/java/i2p/bote/web/JSPHelper.java:241
msgid "Queued"
msgstr "En cola"
#: src/main/java/i2p/bote/web/JSPHelper.java:238
#: src/main/java/i2p/bote/web/JSPHelper.java:243
msgid "Sending"
msgstr "Enviando"
#: src/main/java/i2p/bote/web/JSPHelper.java:240
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#, java-format
msgid "Sent to {0} out of {1} recipients"
msgstr "Enviado a {0} de {1} destinatarios"
#: src/main/java/i2p/bote/web/JSPHelper.java:243
#: src/main/java/i2p/bote/web/JSPHelper.java:248
msgid "Email sent"
msgstr "Correo enviado"
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#: src/main/java/i2p/bote/web/JSPHelper.java:250
msgid "Gateway disabled"
msgstr "Pasarela ('gateway') desactivada"
#: src/main/java/i2p/bote/web/JSPHelper.java:247
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#, java-format
msgid "No identity matches the sender/from field: {0}"
msgstr "Ninguna identidad coincide con el campo remitente/desde: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:250
#: src/main/java/i2p/bote/web/JSPHelper.java:255
#, java-format
msgid "Invalid recipient address: {0}"
msgstr "Dirección del destinatario no válida: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#: src/main/java/i2p/bote/web/JSPHelper.java:257
#, java-format
msgid "Error creating email packets: {0}"
msgstr "Error al crear paquetes de correo electrónico: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:254
#: src/main/java/i2p/bote/web/JSPHelper.java:259
#, java-format
msgid "Error while sending email: {0}"
msgstr "Error al enviar correo eletrónico: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:256
#: src/main/java/i2p/bote/web/JSPHelper.java:261
#, java-format
msgid "Error saving email metadata: {0}"
msgstr "Error guardando metadatos de correo: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:282
msgid "New email received"
msgstr ""
#: src/main/java/i2p/bote/web/PeerInfoTag.java:88
#: src/main/java/i2p/bote/web/PeerInfoTag.java:194
msgid "Kademlia Peers:"
@ -429,6 +433,16 @@ msgstr "Preguntas frecuentes (FAQ)"
msgid "About"
msgstr "Acerca de"
#: src/main/webapp/header.jsp
msgid ""
"For I2P-Bote to function properly, you must download the JCE Unlimited "
"Strength Jurisdiction Policy files and move them into this folder:"
msgstr ""
#: src/main/webapp/header.jsp
msgid "Guide"
msgstr ""
#: src/main/webapp/clearPasswordCache.jsp
msgid "Password Cleared"
msgstr "Contraseña borrada"
@ -735,6 +749,11 @@ msgstr "La libreta de direcciones está vacía."
msgid "Name"
msgstr "Nombre"
#: src/main/webapp/addressBook.jsp
#, fuzzy
msgid "Text"
msgstr "Texto:"
#: src/main/webapp/addressBook.jsp
msgid "Email Destination"
msgstr "Destino de correo"
@ -1243,6 +1262,10 @@ msgstr ""
"Reparaciones de código, actualización de traducciones desde tx (cliente de "
"línea de comandos Transifex)"
#: src/main/webapp/about.jsp
msgid "Code fixes"
msgstr ""
#: src/main/webapp/setPassword.jsp
msgid "Set Password"
msgstr "Establecer contraseña"

View File

@ -1,12 +1,13 @@
# Translators:
# Translators:
# Jorma Karvonen <karvonen.jorma@gmail.com>, 2015
# outolumo <outolumo@gmail.com>, 2015
msgid ""
msgstr ""
"Project-Id-Version: I2P\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-09-12 14:28+0000\n"
"PO-Revision-Date: 2015-08-05 01:52+0000\n"
"POT-Creation-Date: 2015-11-19 04:56+0000\n"
"PO-Revision-Date: 2015-11-19 04:44+0000\n"
"Last-Translator: str4d <str4d@i2pmail.org>\n"
"Language-Team: Finnish (http://www.transifex.com/otf/I2P/language/fi/)\n"
"Language: fi\n"
@ -25,37 +26,37 @@ msgstr "Vaaleansininen"
#: src/main/java/i2p/bote/Configuration.java:70
msgid "Vanilla"
msgstr ""
msgstr "Vanilja"
#: src/main/java/i2p/bote/I2PBote.java:516
#: src/main/java/i2p/bote/I2PBote.java:519
msgid "No identity matches the sender/from field: "
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:721
#: src/main/java/i2p/bote/I2PBote.java:726
msgid "Checking password"
msgstr "Tarkistetaan salasana"
#: src/main/java/i2p/bote/I2PBote.java:724
#: src/main/java/i2p/bote/I2PBote.java:729
msgid "The old password is not correct."
msgstr "Vanha salasana ei ole oikea."
#: src/main/java/i2p/bote/I2PBote.java:726
#: src/main/java/i2p/bote/I2PBote.java:731
msgid "The new password and the confirmation password do not match."
msgstr "Uusi salasana ja vahvistussalasana eivät täsmää."
#: src/main/java/i2p/bote/I2PBote.java:733
#: src/main/java/i2p/bote/I2PBote.java:738
msgid "Re-encrypting identities"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:736
#: src/main/java/i2p/bote/I2PBote.java:741
msgid "Re-encrypting addressbook"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:739
#: src/main/java/i2p/bote/I2PBote.java:744
msgid "Re-encrypting folder"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:743
#: src/main/java/i2p/bote/I2PBote.java:748
msgid "Updating password file"
msgstr "Päivitetään salasanatiedosto"
@ -143,60 +144,64 @@ msgstr "(EI mitään)"
msgid "(S)"
msgstr ""
#: src/main/java/i2p/bote/util/GeneralHelper.java:101
#: src/main/java/i2p/bote/util/GeneralHelper.java:125
msgid "Not set."
msgstr "Ei ole asetettu."
#: src/main/java/i2p/bote/util/GeneralHelper.java:151
#: src/main/java/i2p/bote/util/GeneralHelper.java:175
msgid "Invalid ID number for CryptoImplementation: "
msgstr ""
#: src/main/java/i2p/bote/web/JSPHelper.java:236
#: src/main/java/i2p/bote/web/JSPHelper.java:241
msgid "Queued"
msgstr "Laitettu jonoon"
#: src/main/java/i2p/bote/web/JSPHelper.java:238
#: src/main/java/i2p/bote/web/JSPHelper.java:243
msgid "Sending"
msgstr "Lähetetään"
#: src/main/java/i2p/bote/web/JSPHelper.java:240
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#, java-format
msgid "Sent to {0} out of {1} recipients"
msgstr ""
#: src/main/java/i2p/bote/web/JSPHelper.java:243
#: src/main/java/i2p/bote/web/JSPHelper.java:248
msgid "Email sent"
msgstr "Sähköposti lähetetty"
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#: src/main/java/i2p/bote/web/JSPHelper.java:250
msgid "Gateway disabled"
msgstr "Yhdyskäytävä otettu pois käytöstä"
#: src/main/java/i2p/bote/web/JSPHelper.java:247
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#, java-format
msgid "No identity matches the sender/from field: {0}"
msgstr ""
#: src/main/java/i2p/bote/web/JSPHelper.java:250
#: src/main/java/i2p/bote/web/JSPHelper.java:255
#, java-format
msgid "Invalid recipient address: {0}"
msgstr "Virheellinen vastaanottajaosoite: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#: src/main/java/i2p/bote/web/JSPHelper.java:257
#, java-format
msgid "Error creating email packets: {0}"
msgstr ""
#: src/main/java/i2p/bote/web/JSPHelper.java:254
#: src/main/java/i2p/bote/web/JSPHelper.java:259
#, java-format
msgid "Error while sending email: {0}"
msgstr "Virhe lähetetttäessä sähköpostiviestiä: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:256
#: src/main/java/i2p/bote/web/JSPHelper.java:261
#, java-format
msgid "Error saving email metadata: {0}"
msgstr "Virhe tallennettaessa sähköpostimetatietoja: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:282
msgid "New email received"
msgstr ""
#: src/main/java/i2p/bote/web/PeerInfoTag.java:88
#: src/main/java/i2p/bote/web/PeerInfoTag.java:194
msgid "Kademlia Peers:"
@ -406,6 +411,16 @@ msgstr "UKK"
msgid "About"
msgstr "Ohjelmasta"
#: src/main/webapp/header.jsp
msgid ""
"For I2P-Bote to function properly, you must download the JCE Unlimited "
"Strength Jurisdiction Policy files and move them into this folder:"
msgstr ""
#: src/main/webapp/header.jsp
msgid "Guide"
msgstr ""
#: src/main/webapp/clearPasswordCache.jsp
msgid "Password Cleared"
msgstr "Salasana nollattu"
@ -703,6 +718,11 @@ msgstr "Osoitekirja on tyhjä."
msgid "Name"
msgstr "Nimi"
#: src/main/webapp/addressBook.jsp
#, fuzzy
msgid "Text"
msgstr "Teksti:"
#: src/main/webapp/addressBook.jsp
msgid "Email Destination"
msgstr "Sähköpostikohde"
@ -1175,6 +1195,10 @@ msgstr "Alfatestaus"
msgid "Code fixes, translation updates from tx"
msgstr ""
#: src/main/webapp/about.jsp
msgid "Code fixes"
msgstr ""
#: src/main/webapp/setPassword.jsp
msgid "Set Password"
msgstr "Aseta salasana"

View File

@ -10,9 +10,9 @@ msgid ""
msgstr ""
"Project-Id-Version: I2P\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-09-12 14:28+0000\n"
"PO-Revision-Date: 2015-08-06 12:54+0000\n"
"Last-Translator: Towinet\n"
"POT-Creation-Date: 2015-11-19 04:56+0000\n"
"PO-Revision-Date: 2015-11-19 04:44+0000\n"
"Last-Translator: str4d <str4d@i2pmail.org>\n"
"Language-Team: French (http://www.transifex.com/otf/I2P/language/fr/)\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
@ -32,37 +32,37 @@ msgstr "Bleu clair"
msgid "Vanilla"
msgstr "Vanille"
#: src/main/java/i2p/bote/I2PBote.java:516
#: src/main/java/i2p/bote/I2PBote.java:519
msgid "No identity matches the sender/from field: "
msgstr "Aucune identité ne correspond au champ \"Expéditeur/De\":"
#: src/main/java/i2p/bote/I2PBote.java:721
#: src/main/java/i2p/bote/I2PBote.java:726
msgid "Checking password"
msgstr "Vérification de mot de passe"
#: src/main/java/i2p/bote/I2PBote.java:724
#: src/main/java/i2p/bote/I2PBote.java:729
msgid "The old password is not correct."
msgstr "L'ancien mot de passe est incorrect."
#: src/main/java/i2p/bote/I2PBote.java:726
#: src/main/java/i2p/bote/I2PBote.java:731
msgid "The new password and the confirmation password do not match."
msgstr ""
"Le nouveau mot de passe et le mot de passe de confirmation ne correspondent "
"pas."
#: src/main/java/i2p/bote/I2PBote.java:733
#: src/main/java/i2p/bote/I2PBote.java:738
msgid "Re-encrypting identities"
msgstr "Re-chiffrement d'identités"
#: src/main/java/i2p/bote/I2PBote.java:736
#: src/main/java/i2p/bote/I2PBote.java:741
msgid "Re-encrypting addressbook"
msgstr "Re-chiffrement de carnet d'adresses"
#: src/main/java/i2p/bote/I2PBote.java:739
#: src/main/java/i2p/bote/I2PBote.java:744
msgid "Re-encrypting folder"
msgstr "Re-chiffrement de dossier"
#: src/main/java/i2p/bote/I2PBote.java:743
#: src/main/java/i2p/bote/I2PBote.java:748
msgid "Updating password file"
msgstr "Mise à jour du fichier de mot de passe"
@ -153,60 +153,64 @@ msgstr "(Néant)"
msgid "(S)"
msgstr "(S)"
#: src/main/java/i2p/bote/util/GeneralHelper.java:101
#: src/main/java/i2p/bote/util/GeneralHelper.java:125
msgid "Not set."
msgstr "Non paramétré."
#: src/main/java/i2p/bote/util/GeneralHelper.java:151
#: src/main/java/i2p/bote/util/GeneralHelper.java:175
msgid "Invalid ID number for CryptoImplementation: "
msgstr "Numero d'implémentation cryptographique incorrect:"
#: src/main/java/i2p/bote/web/JSPHelper.java:236
#: src/main/java/i2p/bote/web/JSPHelper.java:241
msgid "Queued"
msgstr "Mis en file d'attente"
#: src/main/java/i2p/bote/web/JSPHelper.java:238
#: src/main/java/i2p/bote/web/JSPHelper.java:243
msgid "Sending"
msgstr "Envoi en cours"
#: src/main/java/i2p/bote/web/JSPHelper.java:240
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#, java-format
msgid "Sent to {0} out of {1} recipients"
msgstr "Envoyé vers {0} destinataires sur {1}"
#: src/main/java/i2p/bote/web/JSPHelper.java:243
#: src/main/java/i2p/bote/web/JSPHelper.java:248
msgid "Email sent"
msgstr "E-mail envoyé"
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#: src/main/java/i2p/bote/web/JSPHelper.java:250
msgid "Gateway disabled"
msgstr "Passerelle désactivée"
#: src/main/java/i2p/bote/web/JSPHelper.java:247
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#, java-format
msgid "No identity matches the sender/from field: {0}"
msgstr "Aucune identité ne correspond au champ expéditeur/de : {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:250
#: src/main/java/i2p/bote/web/JSPHelper.java:255
#, java-format
msgid "Invalid recipient address: {0}"
msgstr "Adresse de destinataire incorrecte: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#: src/main/java/i2p/bote/web/JSPHelper.java:257
#, java-format
msgid "Error creating email packets: {0}"
msgstr "Erreur à la création des paquets email: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:254
#: src/main/java/i2p/bote/web/JSPHelper.java:259
#, java-format
msgid "Error while sending email: {0}"
msgstr "Erreur lors de l`envoi du courrier: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:256
#: src/main/java/i2p/bote/web/JSPHelper.java:261
#, java-format
msgid "Error saving email metadata: {0}"
msgstr "Erreur en enregistrant la métadonnée de messagerie: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:282
msgid "New email received"
msgstr "Nouvel email reçu"
#: src/main/java/i2p/bote/web/PeerInfoTag.java:88
#: src/main/java/i2p/bote/web/PeerInfoTag.java:194
msgid "Kademlia Peers:"
@ -416,6 +420,19 @@ msgstr "FAQ"
msgid "About"
msgstr "À propos"
#: src/main/webapp/header.jsp
msgid ""
"For I2P-Bote to function properly, you must download the JCE Unlimited "
"Strength Jurisdiction Policy files and move them into this folder:"
msgstr ""
"Afin que I2P-Bote fonctionne correctement, vous devez télécharger les "
"fichiers \"JCE Unlimited Strength Jurisdiction Policy\" et les déplacer dans "
"ce dossier :"
#: src/main/webapp/header.jsp
msgid "Guide"
msgstr "Guide"
#: src/main/webapp/clearPasswordCache.jsp
msgid "Password Cleared"
msgstr "Mot de passe effacé"
@ -720,6 +737,11 @@ msgstr "Le carnet d'adresses est vide."
msgid "Name"
msgstr "Nom"
#: src/main/webapp/addressBook.jsp
#, fuzzy
msgid "Text"
msgstr "Texte:"
#: src/main/webapp/addressBook.jsp
msgid "Email Destination"
msgstr "Destination de courrier"
@ -1229,6 +1251,10 @@ msgstr "Test Alpha"
msgid "Code fixes, translation updates from tx"
msgstr "Corrections du code, mise à jour de traduction de tx"
#: src/main/webapp/about.jsp
msgid "Code fixes"
msgstr ""
#: src/main/webapp/setPassword.jsp
msgid "Set Password"
msgstr "Définir mot de passe"

View File

@ -5,8 +5,8 @@ msgid ""
msgstr ""
"Project-Id-Version: I2P\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-09-12 14:28+0000\n"
"PO-Revision-Date: 2015-08-05 01:52+0000\n"
"POT-Creation-Date: 2015-11-19 04:56+0000\n"
"PO-Revision-Date: 2015-11-19 04:44+0000\n"
"Last-Translator: str4d <str4d@i2pmail.org>\n"
"Language-Team: Hungarian (http://www.transifex.com/otf/I2P/language/hu/)\n"
"Language: hu\n"
@ -27,35 +27,35 @@ msgstr "Világoskék"
msgid "Vanilla"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:516
#: src/main/java/i2p/bote/I2PBote.java:519
msgid "No identity matches the sender/from field: "
msgstr "Nincsenek azonossági egyezések a feladó/-tól mezőben:"
#: src/main/java/i2p/bote/I2PBote.java:721
#: src/main/java/i2p/bote/I2PBote.java:726
msgid "Checking password"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:724
#: src/main/java/i2p/bote/I2PBote.java:729
msgid "The old password is not correct."
msgstr "A régi jelszó nem megfelelő."
#: src/main/java/i2p/bote/I2PBote.java:726
#: src/main/java/i2p/bote/I2PBote.java:731
msgid "The new password and the confirmation password do not match."
msgstr "Az új jelszó és a megerősítő jelszó nem egyezik."
#: src/main/java/i2p/bote/I2PBote.java:733
#: src/main/java/i2p/bote/I2PBote.java:738
msgid "Re-encrypting identities"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:736
#: src/main/java/i2p/bote/I2PBote.java:741
msgid "Re-encrypting addressbook"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:739
#: src/main/java/i2p/bote/I2PBote.java:744
msgid "Re-encrypting folder"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:743
#: src/main/java/i2p/bote/I2PBote.java:748
msgid "Updating password file"
msgstr ""
@ -143,60 +143,64 @@ msgstr "(üres)"
msgid "(S)"
msgstr "(S)"
#: src/main/java/i2p/bote/util/GeneralHelper.java:101
#: src/main/java/i2p/bote/util/GeneralHelper.java:125
msgid "Not set."
msgstr ""
#: src/main/java/i2p/bote/util/GeneralHelper.java:151
#: src/main/java/i2p/bote/util/GeneralHelper.java:175
msgid "Invalid ID number for CryptoImplementation: "
msgstr "Titkosítási Végrehajtás: Érvénytelen azonosító szám:"
#: src/main/java/i2p/bote/web/JSPHelper.java:236
#: src/main/java/i2p/bote/web/JSPHelper.java:241
msgid "Queued"
msgstr "Sorba állítva"
#: src/main/java/i2p/bote/web/JSPHelper.java:238
#: src/main/java/i2p/bote/web/JSPHelper.java:243
msgid "Sending"
msgstr "Küldés"
#: src/main/java/i2p/bote/web/JSPHelper.java:240
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#, java-format
msgid "Sent to {0} out of {1} recipients"
msgstr "Elüldve {0} számára a {1} címzettből"
#: src/main/java/i2p/bote/web/JSPHelper.java:243
#: src/main/java/i2p/bote/web/JSPHelper.java:248
msgid "Email sent"
msgstr "E-mail elküldve"
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#: src/main/java/i2p/bote/web/JSPHelper.java:250
msgid "Gateway disabled"
msgstr "Átjáró letiltva"
#: src/main/java/i2p/bote/web/JSPHelper.java:247
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#, java-format
msgid "No identity matches the sender/from field: {0}"
msgstr ""
#: src/main/java/i2p/bote/web/JSPHelper.java:250
#: src/main/java/i2p/bote/web/JSPHelper.java:255
#, java-format
msgid "Invalid recipient address: {0}"
msgstr "Érvénytelen fogadó cím: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#: src/main/java/i2p/bote/web/JSPHelper.java:257
#, java-format
msgid "Error creating email packets: {0}"
msgstr "Hiba az e-mail csomagok létrehozásakor: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:254
#: src/main/java/i2p/bote/web/JSPHelper.java:259
#, java-format
msgid "Error while sending email: {0}"
msgstr "Hiba a levélküldés közben: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:256
#: src/main/java/i2p/bote/web/JSPHelper.java:261
#, java-format
msgid "Error saving email metadata: {0}"
msgstr ""
#: src/main/java/i2p/bote/web/JSPHelper.java:282
msgid "New email received"
msgstr ""
#: src/main/java/i2p/bote/web/PeerInfoTag.java:88
#: src/main/java/i2p/bote/web/PeerInfoTag.java:194
msgid "Kademlia Peers:"
@ -406,6 +410,16 @@ msgstr "GYIK"
msgid "About"
msgstr "Névjegy"
#: src/main/webapp/header.jsp
msgid ""
"For I2P-Bote to function properly, you must download the JCE Unlimited "
"Strength Jurisdiction Policy files and move them into this folder:"
msgstr ""
#: src/main/webapp/header.jsp
msgid "Guide"
msgstr ""
#: src/main/webapp/clearPasswordCache.jsp
msgid "Password Cleared"
msgstr "Jelszó Törölve"
@ -703,6 +717,10 @@ msgstr "A címjegyzék üres."
msgid "Name"
msgstr "Név"
#: src/main/webapp/addressBook.jsp
msgid "Text"
msgstr ""
#: src/main/webapp/addressBook.jsp
msgid "Email Destination"
msgstr "E-mail Célállomás"
@ -1190,6 +1208,10 @@ msgstr ""
msgid "Code fixes, translation updates from tx"
msgstr ""
#: src/main/webapp/about.jsp
msgid "Code fixes"
msgstr ""
#: src/main/webapp/setPassword.jsp
msgid "Set Password"
msgstr "Jelszó Beállítása"

View File

@ -5,8 +5,8 @@ msgid ""
msgstr ""
"Project-Id-Version: I2P\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-09-12 14:28+0000\n"
"PO-Revision-Date: 2015-08-05 01:52+0000\n"
"POT-Creation-Date: 2015-11-19 04:56+0000\n"
"PO-Revision-Date: 2015-11-19 04:44+0000\n"
"Last-Translator: str4d <str4d@i2pmail.org>\n"
"Language-Team: Indonesian (http://www.transifex.com/otf/I2P/language/id/)\n"
"Language: id\n"
@ -27,35 +27,35 @@ msgstr ""
msgid "Vanilla"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:516
#: src/main/java/i2p/bote/I2PBote.java:519
msgid "No identity matches the sender/from field: "
msgstr "Tidak ada identitas yang cocok dengan field pengirim/dari:"
#: src/main/java/i2p/bote/I2PBote.java:721
#: src/main/java/i2p/bote/I2PBote.java:726
msgid "Checking password"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:724
#: src/main/java/i2p/bote/I2PBote.java:729
msgid "The old password is not correct."
msgstr "Kata sandi lama tidak benar."
#: src/main/java/i2p/bote/I2PBote.java:726
#: src/main/java/i2p/bote/I2PBote.java:731
msgid "The new password and the confirmation password do not match."
msgstr "Kata sandi baru dan konfirmasi kata sandi tidak cocok."
#: src/main/java/i2p/bote/I2PBote.java:733
#: src/main/java/i2p/bote/I2PBote.java:738
msgid "Re-encrypting identities"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:736
#: src/main/java/i2p/bote/I2PBote.java:741
msgid "Re-encrypting addressbook"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:739
#: src/main/java/i2p/bote/I2PBote.java:744
msgid "Re-encrypting folder"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:743
#: src/main/java/i2p/bote/I2PBote.java:748
msgid "Updating password file"
msgstr ""
@ -143,60 +143,64 @@ msgstr "(Tidak ada)"
msgid "(S)"
msgstr "(S)"
#: src/main/java/i2p/bote/util/GeneralHelper.java:101
#: src/main/java/i2p/bote/util/GeneralHelper.java:125
msgid "Not set."
msgstr "Belum disetel."
#: src/main/java/i2p/bote/util/GeneralHelper.java:151
#: src/main/java/i2p/bote/util/GeneralHelper.java:175
msgid "Invalid ID number for CryptoImplementation: "
msgstr "Nomor ID untuk CryptoImplementation tidak valid:"
#: src/main/java/i2p/bote/web/JSPHelper.java:236
#: src/main/java/i2p/bote/web/JSPHelper.java:241
msgid "Queued"
msgstr "Mengantri"
#: src/main/java/i2p/bote/web/JSPHelper.java:238
#: src/main/java/i2p/bote/web/JSPHelper.java:243
msgid "Sending"
msgstr "Mengirim"
#: src/main/java/i2p/bote/web/JSPHelper.java:240
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#, java-format
msgid "Sent to {0} out of {1} recipients"
msgstr "Mengirim ke {0} dari {1} penerima"
#: src/main/java/i2p/bote/web/JSPHelper.java:243
#: src/main/java/i2p/bote/web/JSPHelper.java:248
msgid "Email sent"
msgstr "Email terkirim"
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#: src/main/java/i2p/bote/web/JSPHelper.java:250
msgid "Gateway disabled"
msgstr "Gateaway dinonaktifkan"
#: src/main/java/i2p/bote/web/JSPHelper.java:247
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#, java-format
msgid "No identity matches the sender/from field: {0}"
msgstr ""
#: src/main/java/i2p/bote/web/JSPHelper.java:250
#: src/main/java/i2p/bote/web/JSPHelper.java:255
#, java-format
msgid "Invalid recipient address: {0}"
msgstr "Alamat penerima tidak valid: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#: src/main/java/i2p/bote/web/JSPHelper.java:257
#, java-format
msgid "Error creating email packets: {0}"
msgstr "Kesalahan dalam membuat paket email: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:254
#: src/main/java/i2p/bote/web/JSPHelper.java:259
#, java-format
msgid "Error while sending email: {0}"
msgstr "Kesalahan saat mengirim email: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:256
#: src/main/java/i2p/bote/web/JSPHelper.java:261
#, java-format
msgid "Error saving email metadata: {0}"
msgstr "Kesalahan dalam menyimpan metadat email: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:282
msgid "New email received"
msgstr ""
#: src/main/java/i2p/bote/web/PeerInfoTag.java:88
#: src/main/java/i2p/bote/web/PeerInfoTag.java:194
msgid "Kademlia Peers:"
@ -406,6 +410,16 @@ msgstr "FAQ"
msgid "About"
msgstr "Tentang"
#: src/main/webapp/header.jsp
msgid ""
"For I2P-Bote to function properly, you must download the JCE Unlimited "
"Strength Jurisdiction Policy files and move them into this folder:"
msgstr ""
#: src/main/webapp/header.jsp
msgid "Guide"
msgstr ""
#: src/main/webapp/clearPasswordCache.jsp
msgid "Password Cleared"
msgstr "Kata Sandi Dibersihkan"
@ -707,6 +721,11 @@ msgstr "Buku alamat kosong."
msgid "Name"
msgstr "Nama"
#: src/main/webapp/addressBook.jsp
#, fuzzy
msgid "Text"
msgstr "Teks:"
#: src/main/webapp/addressBook.jsp
msgid "Email Destination"
msgstr "Email Tujuan"
@ -1206,6 +1225,10 @@ msgstr ""
msgid "Code fixes, translation updates from tx"
msgstr "Perbaikan kode, pembaruan terjemahan dari tx"
#: src/main/webapp/about.jsp
msgid "Code fixes"
msgstr ""
#: src/main/webapp/setPassword.jsp
msgid "Set Password"
msgstr "Setel Kata Sandi"

View File

@ -16,8 +16,8 @@ msgid ""
msgstr ""
"Project-Id-Version: I2P\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-09-12 14:28+0000\n"
"PO-Revision-Date: 2015-08-05 01:52+0000\n"
"POT-Creation-Date: 2015-11-19 04:56+0000\n"
"PO-Revision-Date: 2015-11-19 04:44+0000\n"
"Last-Translator: str4d <str4d@i2pmail.org>\n"
"Language-Team: Italian (http://www.transifex.com/otf/I2P/language/it/)\n"
"Language: it\n"
@ -38,35 +38,35 @@ msgstr "Azzurro"
msgid "Vanilla"
msgstr "Vanilla"
#: src/main/java/i2p/bote/I2PBote.java:516
#: src/main/java/i2p/bote/I2PBote.java:519
msgid "No identity matches the sender/from field: "
msgstr "Nessuna identità fa match con il campo mittente/da:"
#: src/main/java/i2p/bote/I2PBote.java:721
#: src/main/java/i2p/bote/I2PBote.java:726
msgid "Checking password"
msgstr "Controllo della password"
#: src/main/java/i2p/bote/I2PBote.java:724
#: src/main/java/i2p/bote/I2PBote.java:729
msgid "The old password is not correct."
msgstr "La vecchia password non è corretta."
#: src/main/java/i2p/bote/I2PBote.java:726
#: src/main/java/i2p/bote/I2PBote.java:731
msgid "The new password and the confirmation password do not match."
msgstr "La nuova password e quella di conferma non sono uguali."
#: src/main/java/i2p/bote/I2PBote.java:733
#: src/main/java/i2p/bote/I2PBote.java:738
msgid "Re-encrypting identities"
msgstr "Re-criptando le identità"
#: src/main/java/i2p/bote/I2PBote.java:736
#: src/main/java/i2p/bote/I2PBote.java:741
msgid "Re-encrypting addressbook"
msgstr "Re-criptando la rubrica"
#: src/main/java/i2p/bote/I2PBote.java:739
#: src/main/java/i2p/bote/I2PBote.java:744
msgid "Re-encrypting folder"
msgstr "Re-criptando la cartella"
#: src/main/java/i2p/bote/I2PBote.java:743
#: src/main/java/i2p/bote/I2PBote.java:748
msgid "Updating password file"
msgstr "Aggiornamento del file della password"
@ -155,60 +155,64 @@ msgstr "(Nessuno)"
msgid "(S)"
msgstr "(S)"
#: src/main/java/i2p/bote/util/GeneralHelper.java:101
#: src/main/java/i2p/bote/util/GeneralHelper.java:125
msgid "Not set."
msgstr "Non Impostato."
#: src/main/java/i2p/bote/util/GeneralHelper.java:151
#: src/main/java/i2p/bote/util/GeneralHelper.java:175
msgid "Invalid ID number for CryptoImplementation: "
msgstr "Numero ID per CryptoImplementation non valido:"
#: src/main/java/i2p/bote/web/JSPHelper.java:236
#: src/main/java/i2p/bote/web/JSPHelper.java:241
msgid "Queued"
msgstr "In coda"
#: src/main/java/i2p/bote/web/JSPHelper.java:238
#: src/main/java/i2p/bote/web/JSPHelper.java:243
msgid "Sending"
msgstr "Invio in Corso"
#: src/main/java/i2p/bote/web/JSPHelper.java:240
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#, java-format
msgid "Sent to {0} out of {1} recipients"
msgstr "Mandato a {0} di {1} destinatari"
#: src/main/java/i2p/bote/web/JSPHelper.java:243
#: src/main/java/i2p/bote/web/JSPHelper.java:248
msgid "Email sent"
msgstr "E-mail inviata"
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#: src/main/java/i2p/bote/web/JSPHelper.java:250
msgid "Gateway disabled"
msgstr "Gateway disabilitato"
#: src/main/java/i2p/bote/web/JSPHelper.java:247
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#, java-format
msgid "No identity matches the sender/from field: {0}"
msgstr "Nessuna identità corrisponde al campo mittente: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:250
#: src/main/java/i2p/bote/web/JSPHelper.java:255
#, java-format
msgid "Invalid recipient address: {0}"
msgstr "Indirizzo destinatario non valido: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#: src/main/java/i2p/bote/web/JSPHelper.java:257
#, java-format
msgid "Error creating email packets: {0}"
msgstr "Errore nel creare pacchetti email: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:254
#: src/main/java/i2p/bote/web/JSPHelper.java:259
#, java-format
msgid "Error while sending email: {0}"
msgstr "Errore nell'invio di email: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:256
#: src/main/java/i2p/bote/web/JSPHelper.java:261
#, java-format
msgid "Error saving email metadata: {0}"
msgstr "Errore nel salvataggio dei metadati: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:282
msgid "New email received"
msgstr ""
#: src/main/java/i2p/bote/web/PeerInfoTag.java:88
#: src/main/java/i2p/bote/web/PeerInfoTag.java:194
msgid "Kademlia Peers:"
@ -418,6 +422,16 @@ msgstr "FAQ"
msgid "About"
msgstr "Riguardo A"
#: src/main/webapp/header.jsp
msgid ""
"For I2P-Bote to function properly, you must download the JCE Unlimited "
"Strength Jurisdiction Policy files and move them into this folder:"
msgstr ""
#: src/main/webapp/header.jsp
msgid "Guide"
msgstr ""
#: src/main/webapp/clearPasswordCache.jsp
msgid "Password Cleared"
msgstr "Password Rimossa"
@ -721,6 +735,11 @@ msgstr "La rubrica è vuota."
msgid "Name"
msgstr "Nome"
#: src/main/webapp/addressBook.jsp
#, fuzzy
msgid "Text"
msgstr "Testo:"
#: src/main/webapp/addressBook.jsp
msgid "Email Destination"
msgstr "Destinazione Email"
@ -1223,6 +1242,10 @@ msgstr "Testing Alpha"
msgid "Code fixes, translation updates from tx"
msgstr "Riparazione codici, aggiornamenti dalle trasmissioni (tx)"
#: src/main/webapp/about.jsp
msgid "Code fixes"
msgstr ""
#: src/main/webapp/setPassword.jsp
msgid "Set Password"
msgstr "Imposta Password"

View File

@ -6,8 +6,8 @@ msgid ""
msgstr ""
"Project-Id-Version: I2P\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-09-12 14:28+0000\n"
"PO-Revision-Date: 2015-08-05 01:52+0000\n"
"POT-Creation-Date: 2015-11-19 04:56+0000\n"
"PO-Revision-Date: 2015-11-19 04:44+0000\n"
"Last-Translator: str4d <str4d@i2pmail.org>\n"
"Language-Team: Japanese (http://www.transifex.com/otf/I2P/language/ja/)\n"
"Language: ja\n"
@ -28,35 +28,35 @@ msgstr "ライトブルー"
msgid "Vanilla"
msgstr "バニラ"
#: src/main/java/i2p/bote/I2PBote.java:516
#: src/main/java/i2p/bote/I2PBote.java:519
msgid "No identity matches the sender/from field: "
msgstr "送信者/差出人欄と一致するIDが見つかりませんでした:"
#: src/main/java/i2p/bote/I2PBote.java:721
#: src/main/java/i2p/bote/I2PBote.java:726
msgid "Checking password"
msgstr "パスワードを確認しています"
#: src/main/java/i2p/bote/I2PBote.java:724
#: src/main/java/i2p/bote/I2PBote.java:729
msgid "The old password is not correct."
msgstr "古いパスワードが間違っています。"
#: src/main/java/i2p/bote/I2PBote.java:726
#: src/main/java/i2p/bote/I2PBote.java:731
msgid "The new password and the confirmation password do not match."
msgstr "新しいパスワードと確認用のパスワードが一致しません。"
#: src/main/java/i2p/bote/I2PBote.java:733
#: src/main/java/i2p/bote/I2PBote.java:738
msgid "Re-encrypting identities"
msgstr "IDを再暗号化しています"
#: src/main/java/i2p/bote/I2PBote.java:736
#: src/main/java/i2p/bote/I2PBote.java:741
msgid "Re-encrypting addressbook"
msgstr "アドレス帳を再暗号化しています"
#: src/main/java/i2p/bote/I2PBote.java:739
#: src/main/java/i2p/bote/I2PBote.java:744
msgid "Re-encrypting folder"
msgstr "フォルダを再暗号化しています"
#: src/main/java/i2p/bote/I2PBote.java:743
#: src/main/java/i2p/bote/I2PBote.java:748
msgid "Updating password file"
msgstr "パスワードファイルを更新しています"
@ -144,60 +144,64 @@ msgstr "(なし)"
msgid "(S)"
msgstr "(S)"
#: src/main/java/i2p/bote/util/GeneralHelper.java:101
#: src/main/java/i2p/bote/util/GeneralHelper.java:125
msgid "Not set."
msgstr "未定"
#: src/main/java/i2p/bote/util/GeneralHelper.java:151
#: src/main/java/i2p/bote/util/GeneralHelper.java:175
msgid "Invalid ID number for CryptoImplementation: "
msgstr "暗号化アルゴリズムのIDが不正です:"
#: src/main/java/i2p/bote/web/JSPHelper.java:236
#: src/main/java/i2p/bote/web/JSPHelper.java:241
msgid "Queued"
msgstr "順番待ち"
#: src/main/java/i2p/bote/web/JSPHelper.java:238
#: src/main/java/i2p/bote/web/JSPHelper.java:243
msgid "Sending"
msgstr "送信中"
#: src/main/java/i2p/bote/web/JSPHelper.java:240
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#, java-format
msgid "Sent to {0} out of {1} recipients"
msgstr "{1}中{0}の宛先へ送信完了"
#: src/main/java/i2p/bote/web/JSPHelper.java:243
#: src/main/java/i2p/bote/web/JSPHelper.java:248
msgid "Email sent"
msgstr "送信完了"
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#: src/main/java/i2p/bote/web/JSPHelper.java:250
msgid "Gateway disabled"
msgstr "ゲートウェイが無効"
#: src/main/java/i2p/bote/web/JSPHelper.java:247
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#, java-format
msgid "No identity matches the sender/from field: {0}"
msgstr "送信者/差出人欄と一致するIDが見つかりませんでした: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:250
#: src/main/java/i2p/bote/web/JSPHelper.java:255
#, java-format
msgid "Invalid recipient address: {0}"
msgstr "不正な受信者アドレス: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#: src/main/java/i2p/bote/web/JSPHelper.java:257
#, java-format
msgid "Error creating email packets: {0}"
msgstr "メールパケットの作成に失敗しました: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:254
#: src/main/java/i2p/bote/web/JSPHelper.java:259
#, java-format
msgid "Error while sending email: {0}"
msgstr "メールの送信中にエラーが発生しました: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:256
#: src/main/java/i2p/bote/web/JSPHelper.java:261
#, java-format
msgid "Error saving email metadata: {0}"
msgstr "メールメタデータの保存に失敗しました: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:282
msgid "New email received"
msgstr ""
#: src/main/java/i2p/bote/web/PeerInfoTag.java:88
#: src/main/java/i2p/bote/web/PeerInfoTag.java:194
msgid "Kademlia Peers:"
@ -407,6 +411,16 @@ msgstr "よくある質問"
msgid "About"
msgstr "I2P-Boteについて"
#: src/main/webapp/header.jsp
msgid ""
"For I2P-Bote to function properly, you must download the JCE Unlimited "
"Strength Jurisdiction Policy files and move them into this folder:"
msgstr ""
#: src/main/webapp/header.jsp
msgid "Guide"
msgstr ""
#: src/main/webapp/clearPasswordCache.jsp
msgid "Password Cleared"
msgstr "パスワードを消去しました"
@ -709,6 +723,10 @@ msgstr "アドレス帳は空です。"
msgid "Name"
msgstr "名前"
#: src/main/webapp/addressBook.jsp
msgid "Text"
msgstr ""
#: src/main/webapp/addressBook.jsp
msgid "Email Destination"
msgstr "宛先"
@ -1197,6 +1215,10 @@ msgstr "開発版テスト"
msgid "Code fixes, translation updates from tx"
msgstr "コード修正、翻訳の更新"
#: src/main/webapp/about.jsp
msgid "Code fixes"
msgstr ""
#: src/main/webapp/setPassword.jsp
msgid "Set Password"
msgstr "パスワード設定"

View File

@ -7,8 +7,8 @@ msgid ""
msgstr ""
"Project-Id-Version: I2P\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-09-12 14:28+0000\n"
"PO-Revision-Date: 2015-08-05 01:52+0000\n"
"POT-Creation-Date: 2015-11-19 04:56+0000\n"
"PO-Revision-Date: 2015-11-19 04:44+0000\n"
"Last-Translator: str4d <str4d@i2pmail.org>\n"
"Language-Team: Norwegian Bokmål (http://www.transifex.com/otf/I2P/language/"
"nb/)\n"
@ -30,35 +30,35 @@ msgstr ""
msgid "Vanilla"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:516
#: src/main/java/i2p/bote/I2PBote.java:519
msgid "No identity matches the sender/from field: "
msgstr "Ingen identitet matcher med sender/fra område"
#: src/main/java/i2p/bote/I2PBote.java:721
#: src/main/java/i2p/bote/I2PBote.java:726
msgid "Checking password"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:724
#: src/main/java/i2p/bote/I2PBote.java:729
msgid "The old password is not correct."
msgstr "Det gamle passordet er ikke korrekt."
#: src/main/java/i2p/bote/I2PBote.java:726
#: src/main/java/i2p/bote/I2PBote.java:731
msgid "The new password and the confirmation password do not match."
msgstr "Det nye passordet og bekreftelsespassordet matcher ikke."
#: src/main/java/i2p/bote/I2PBote.java:733
#: src/main/java/i2p/bote/I2PBote.java:738
msgid "Re-encrypting identities"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:736
#: src/main/java/i2p/bote/I2PBote.java:741
msgid "Re-encrypting addressbook"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:739
#: src/main/java/i2p/bote/I2PBote.java:744
msgid "Re-encrypting folder"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:743
#: src/main/java/i2p/bote/I2PBote.java:748
msgid "Updating password file"
msgstr ""
@ -146,60 +146,64 @@ msgstr "(Ingen)"
msgid "(S)"
msgstr "(S)"
#: src/main/java/i2p/bote/util/GeneralHelper.java:101
#: src/main/java/i2p/bote/util/GeneralHelper.java:125
msgid "Not set."
msgstr "Ikke satt."
#: src/main/java/i2p/bote/util/GeneralHelper.java:151
#: src/main/java/i2p/bote/util/GeneralHelper.java:175
msgid "Invalid ID number for CryptoImplementation: "
msgstr "Invalid ID nummer for CryptoImplementation:"
#: src/main/java/i2p/bote/web/JSPHelper.java:236
#: src/main/java/i2p/bote/web/JSPHelper.java:241
msgid "Queued"
msgstr "I kø"
#: src/main/java/i2p/bote/web/JSPHelper.java:238
#: src/main/java/i2p/bote/web/JSPHelper.java:243
msgid "Sending"
msgstr "Sender"
#: src/main/java/i2p/bote/web/JSPHelper.java:240
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#, java-format
msgid "Sent to {0} out of {1} recipients"
msgstr "Sendt til {0} ut av {1} mottagere"
#: src/main/java/i2p/bote/web/JSPHelper.java:243
#: src/main/java/i2p/bote/web/JSPHelper.java:248
msgid "Email sent"
msgstr "E-posten sendt"
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#: src/main/java/i2p/bote/web/JSPHelper.java:250
msgid "Gateway disabled"
msgstr "Gateway slått av"
#: src/main/java/i2p/bote/web/JSPHelper.java:247
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#, java-format
msgid "No identity matches the sender/from field: {0}"
msgstr ""
#: src/main/java/i2p/bote/web/JSPHelper.java:250
#: src/main/java/i2p/bote/web/JSPHelper.java:255
#, java-format
msgid "Invalid recipient address: {0}"
msgstr "Ugyldig mottager adresse: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#: src/main/java/i2p/bote/web/JSPHelper.java:257
#, java-format
msgid "Error creating email packets: {0}"
msgstr "Det har skjedd en feil under sending av epost pakker: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:254
#: src/main/java/i2p/bote/web/JSPHelper.java:259
#, java-format
msgid "Error while sending email: {0}"
msgstr "Det har skjedd en feil under sending av epost: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:256
#: src/main/java/i2p/bote/web/JSPHelper.java:261
#, java-format
msgid "Error saving email metadata: {0}"
msgstr "Feil ved lagring av e-post medatadata: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:282
msgid "New email received"
msgstr ""
#: src/main/java/i2p/bote/web/PeerInfoTag.java:88
#: src/main/java/i2p/bote/web/PeerInfoTag.java:194
msgid "Kademlia Peers:"
@ -411,6 +415,16 @@ msgstr "Ofte stilte spørsmål"
msgid "About"
msgstr "Om"
#: src/main/webapp/header.jsp
msgid ""
"For I2P-Bote to function properly, you must download the JCE Unlimited "
"Strength Jurisdiction Policy files and move them into this folder:"
msgstr ""
#: src/main/webapp/header.jsp
msgid "Guide"
msgstr ""
#: src/main/webapp/clearPasswordCache.jsp
msgid "Password Cleared"
msgstr "Passord midlertidlig lagret"
@ -712,6 +726,11 @@ msgstr "Adresseboka er tom."
msgid "Name"
msgstr "Navn"
#: src/main/webapp/addressBook.jsp
#, fuzzy
msgid "Text"
msgstr "Tekst:"
#: src/main/webapp/addressBook.jsp
msgid "Email Destination"
msgstr "Epost destinasjon"
@ -1203,6 +1222,10 @@ msgstr ""
msgid "Code fixes, translation updates from tx"
msgstr "Kode fikser, oversettelser oppdateringer fra tx"
#: src/main/webapp/about.jsp
msgid "Code fixes"
msgstr ""
#: src/main/webapp/setPassword.jsp
msgid "Set Password"
msgstr "Sett Passord"

View File

@ -12,8 +12,8 @@ msgid ""
msgstr ""
"Project-Id-Version: I2P\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-09-12 14:28+0000\n"
"PO-Revision-Date: 2015-08-05 01:52+0000\n"
"POT-Creation-Date: 2015-11-19 04:56+0000\n"
"PO-Revision-Date: 2015-11-19 04:44+0000\n"
"Last-Translator: str4d <str4d@i2pmail.org>\n"
"Language-Team: Dutch (http://www.transifex.com/otf/I2P/language/nl/)\n"
"Language: nl\n"
@ -34,35 +34,35 @@ msgstr "Lichtblauw"
msgid "Vanilla"
msgstr "Vanille"
#: src/main/java/i2p/bote/I2PBote.java:516
#: src/main/java/i2p/bote/I2PBote.java:519
msgid "No identity matches the sender/from field: "
msgstr "Geen identiteit komt overeen met het afzender/van veld: "
#: src/main/java/i2p/bote/I2PBote.java:721
#: src/main/java/i2p/bote/I2PBote.java:726
msgid "Checking password"
msgstr "Bezig met controleren van wachtwoord"
#: src/main/java/i2p/bote/I2PBote.java:724
#: src/main/java/i2p/bote/I2PBote.java:729
msgid "The old password is not correct."
msgstr "Het oude wachtwoord is onjuist."
#: src/main/java/i2p/bote/I2PBote.java:726
#: src/main/java/i2p/bote/I2PBote.java:731
msgid "The new password and the confirmation password do not match."
msgstr "Het nieuwe wachtwoord en de bevestiging komen niet overeen."
#: src/main/java/i2p/bote/I2PBote.java:733
#: src/main/java/i2p/bote/I2PBote.java:738
msgid "Re-encrypting identities"
msgstr "Bezig met opnieuw versleutelen van identiteiten"
#: src/main/java/i2p/bote/I2PBote.java:736
#: src/main/java/i2p/bote/I2PBote.java:741
msgid "Re-encrypting addressbook"
msgstr "Bezig met opnieuw versleutelen van adresboek"
#: src/main/java/i2p/bote/I2PBote.java:739
#: src/main/java/i2p/bote/I2PBote.java:744
msgid "Re-encrypting folder"
msgstr "Bezig met opnieuw versleutelen van map"
#: src/main/java/i2p/bote/I2PBote.java:743
#: src/main/java/i2p/bote/I2PBote.java:748
msgid "Updating password file"
msgstr "Bezig met bijwerken van wachtwoordbestand"
@ -150,60 +150,64 @@ msgstr "(geen)"
msgid "(S)"
msgstr "(S)"
#: src/main/java/i2p/bote/util/GeneralHelper.java:101
#: src/main/java/i2p/bote/util/GeneralHelper.java:125
msgid "Not set."
msgstr "Niet ingesteld."
#: src/main/java/i2p/bote/util/GeneralHelper.java:151
#: src/main/java/i2p/bote/util/GeneralHelper.java:175
msgid "Invalid ID number for CryptoImplementation: "
msgstr "Ongeldig ID nummer voor CryptoImplementation:"
#: src/main/java/i2p/bote/web/JSPHelper.java:236
#: src/main/java/i2p/bote/web/JSPHelper.java:241
msgid "Queued"
msgstr "In de wachtrij gezet"
#: src/main/java/i2p/bote/web/JSPHelper.java:238
#: src/main/java/i2p/bote/web/JSPHelper.java:243
msgid "Sending"
msgstr "Verzenden"
#: src/main/java/i2p/bote/web/JSPHelper.java:240
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#, java-format
msgid "Sent to {0} out of {1} recipients"
msgstr "Verzonden aan {0} van de {1} ontvangers"
#: src/main/java/i2p/bote/web/JSPHelper.java:243
#: src/main/java/i2p/bote/web/JSPHelper.java:248
msgid "Email sent"
msgstr "E-mail verzonden"
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#: src/main/java/i2p/bote/web/JSPHelper.java:250
msgid "Gateway disabled"
msgstr "Gateway uitgeschakeld"
#: src/main/java/i2p/bote/web/JSPHelper.java:247
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#, java-format
msgid "No identity matches the sender/from field: {0}"
msgstr "Geen identiteit komt overeen met afzender/van-veld: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:250
#: src/main/java/i2p/bote/web/JSPHelper.java:255
#, java-format
msgid "Invalid recipient address: {0}"
msgstr "Ongeldig ontvangst adres: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#: src/main/java/i2p/bote/web/JSPHelper.java:257
#, java-format
msgid "Error creating email packets: {0}"
msgstr "Fout bij het maken van e-mailpakketten: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:254
#: src/main/java/i2p/bote/web/JSPHelper.java:259
#, java-format
msgid "Error while sending email: {0}"
msgstr "Fout tijdens het verzenden van e-mail: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:256
#: src/main/java/i2p/bote/web/JSPHelper.java:261
#, java-format
msgid "Error saving email metadata: {0}"
msgstr "Fout bij het opslaan van de e-mail-metadata: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:282
msgid "New email received"
msgstr ""
#: src/main/java/i2p/bote/web/PeerInfoTag.java:88
#: src/main/java/i2p/bote/web/PeerInfoTag.java:194
msgid "Kademlia Peers:"
@ -413,6 +417,16 @@ msgstr "Vaak gestelde vragen"
msgid "About"
msgstr "Over I2P-Bote"
#: src/main/webapp/header.jsp
msgid ""
"For I2P-Bote to function properly, you must download the JCE Unlimited "
"Strength Jurisdiction Policy files and move them into this folder:"
msgstr ""
#: src/main/webapp/header.jsp
msgid "Guide"
msgstr ""
#: src/main/webapp/clearPasswordCache.jsp
msgid "Password Cleared"
msgstr "Wachtwoord Geschoond"
@ -715,6 +729,11 @@ msgstr "Het adresboek is leeg."
msgid "Name"
msgstr "Naam"
#: src/main/webapp/addressBook.jsp
#, fuzzy
msgid "Text"
msgstr "Tekst:"
#: src/main/webapp/addressBook.jsp
msgid "Email Destination"
msgstr "E-mail bestemming"
@ -1219,6 +1238,10 @@ msgstr "Alfa-testen"
msgid "Code fixes, translation updates from tx"
msgstr "Code fixes, vertalingsupdates van tx"
#: src/main/webapp/about.jsp
msgid "Code fixes"
msgstr ""
#: src/main/webapp/setPassword.jsp
msgid "Set Password"
msgstr "Stel wachtwoord in"

View File

@ -12,9 +12,9 @@ msgid ""
msgstr ""
"Project-Id-Version: I2P\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-09-12 14:28+0000\n"
"PO-Revision-Date: 2015-08-30 22:13+0000\n"
"Last-Translator: Taporpo Ne <taporpone@gmail.com>\n"
"POT-Creation-Date: 2015-11-19 04:56+0000\n"
"PO-Revision-Date: 2015-11-19 04:44+0000\n"
"Last-Translator: str4d <str4d@i2pmail.org>\n"
"Language-Team: Polish (http://www.transifex.com/otf/I2P/language/pl/)\n"
"Language: pl\n"
"MIME-Version: 1.0\n"
@ -35,35 +35,35 @@ msgstr "Jasnoniebieski"
msgid "Vanilla"
msgstr "Wanilia"
#: src/main/java/i2p/bote/I2PBote.java:516
#: src/main/java/i2p/bote/I2PBote.java:519
msgid "No identity matches the sender/from field: "
msgstr "Żadna tożsamość nie zgadza się z wysyłającym/z pola Od:"
#: src/main/java/i2p/bote/I2PBote.java:721
#: src/main/java/i2p/bote/I2PBote.java:726
msgid "Checking password"
msgstr "Sprawdzanie hasła"
#: src/main/java/i2p/bote/I2PBote.java:724
#: src/main/java/i2p/bote/I2PBote.java:729
msgid "The old password is not correct."
msgstr "Stare hasło jest nieprawodłowe."
#: src/main/java/i2p/bote/I2PBote.java:726
#: src/main/java/i2p/bote/I2PBote.java:731
msgid "The new password and the confirmation password do not match."
msgstr "Nowe hasło i potwierdzenie hasła nie zgadza się."
#: src/main/java/i2p/bote/I2PBote.java:733
#: src/main/java/i2p/bote/I2PBote.java:738
msgid "Re-encrypting identities"
msgstr "Ponowne szyfrowanie tożsamości"
#: src/main/java/i2p/bote/I2PBote.java:736
#: src/main/java/i2p/bote/I2PBote.java:741
msgid "Re-encrypting addressbook"
msgstr "Ponowne szyfrowanie książki adresowej"
#: src/main/java/i2p/bote/I2PBote.java:739
#: src/main/java/i2p/bote/I2PBote.java:744
msgid "Re-encrypting folder"
msgstr "Ponowne szyfrowanie folderu"
#: src/main/java/i2p/bote/I2PBote.java:743
#: src/main/java/i2p/bote/I2PBote.java:748
msgid "Updating password file"
msgstr "Aktualizacja pliku hasła"
@ -151,60 +151,64 @@ msgstr "(brak)"
msgid "(S)"
msgstr "(S)"
#: src/main/java/i2p/bote/util/GeneralHelper.java:101
#: src/main/java/i2p/bote/util/GeneralHelper.java:125
msgid "Not set."
msgstr "Nie ustawiono."
#: src/main/java/i2p/bote/util/GeneralHelper.java:151
#: src/main/java/i2p/bote/util/GeneralHelper.java:175
msgid "Invalid ID number for CryptoImplementation: "
msgstr "Nieprawidłowy numer ID za CryptoImplementation:"
#: src/main/java/i2p/bote/web/JSPHelper.java:236
#: src/main/java/i2p/bote/web/JSPHelper.java:241
msgid "Queued"
msgstr "Zakolejkowano"
#: src/main/java/i2p/bote/web/JSPHelper.java:238
#: src/main/java/i2p/bote/web/JSPHelper.java:243
msgid "Sending"
msgstr "Wysyłanie"
#: src/main/java/i2p/bote/web/JSPHelper.java:240
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#, java-format
msgid "Sent to {0} out of {1} recipients"
msgstr "Wysłano do {0} z {1} odbiorców"
#: src/main/java/i2p/bote/web/JSPHelper.java:243
#: src/main/java/i2p/bote/web/JSPHelper.java:248
msgid "Email sent"
msgstr "List wysłany"
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#: src/main/java/i2p/bote/web/JSPHelper.java:250
msgid "Gateway disabled"
msgstr "Brama wyłączona"
#: src/main/java/i2p/bote/web/JSPHelper.java:247
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#, java-format
msgid "No identity matches the sender/from field: {0}"
msgstr "Żadna tożsamość nie zgadza się z wysyłającym/z pola: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:250
#: src/main/java/i2p/bote/web/JSPHelper.java:255
#, java-format
msgid "Invalid recipient address: {0}"
msgstr "Nieprawidłowy adres odbiorcy: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#: src/main/java/i2p/bote/web/JSPHelper.java:257
#, java-format
msgid "Error creating email packets: {0}"
msgstr "Wystąpił błąd podczas tworzenia pakietów listu: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:254
#: src/main/java/i2p/bote/web/JSPHelper.java:259
#, java-format
msgid "Error while sending email: {0}"
msgstr "Wystąpił błąd podczas wysyłania listu: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:256
#: src/main/java/i2p/bote/web/JSPHelper.java:261
#, java-format
msgid "Error saving email metadata: {0}"
msgstr "Wystąpił błąd podczas zapisywania metadanych: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:282
msgid "New email received"
msgstr ""
#: src/main/java/i2p/bote/web/PeerInfoTag.java:88
#: src/main/java/i2p/bote/web/PeerInfoTag.java:194
msgid "Kademlia Peers:"
@ -414,6 +418,16 @@ msgstr "FAQ"
msgid "About"
msgstr "Na temat I2P-Bote"
#: src/main/webapp/header.jsp
msgid ""
"For I2P-Bote to function properly, you must download the JCE Unlimited "
"Strength Jurisdiction Policy files and move them into this folder:"
msgstr ""
#: src/main/webapp/header.jsp
msgid "Guide"
msgstr ""
#: src/main/webapp/clearPasswordCache.jsp
msgid "Password Cleared"
msgstr "Hasło zostało usunięte"
@ -716,6 +730,11 @@ msgstr "Książka adresowa jest pusta"
msgid "Name"
msgstr "Nazwa"
#: src/main/webapp/addressBook.jsp
#, fuzzy
msgid "Text"
msgstr "Tekst:"
#: src/main/webapp/addressBook.jsp
msgid "Email Destination"
msgstr "Cel"
@ -1216,6 +1235,10 @@ msgstr "Testy alfa"
msgid "Code fixes, translation updates from tx"
msgstr "Poprawki kodu, aktualizacje tłumaczeń z Transifex"
#: src/main/webapp/about.jsp
msgid "Code fixes"
msgstr ""
#: src/main/webapp/setPassword.jsp
msgid "Set Password"
msgstr "Ustaw hasło"

View File

@ -14,8 +14,8 @@ msgid ""
msgstr ""
"Project-Id-Version: I2P\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-09-12 14:28+0000\n"
"PO-Revision-Date: 2015-08-05 01:52+0000\n"
"POT-Creation-Date: 2015-11-19 04:56+0000\n"
"PO-Revision-Date: 2015-11-19 04:44+0000\n"
"Last-Translator: str4d <str4d@i2pmail.org>\n"
"Language-Team: Portuguese (http://www.transifex.com/otf/I2P/language/pt/)\n"
"Language: pt\n"
@ -36,35 +36,35 @@ msgstr "Azul claro"
msgid "Vanilla"
msgstr "Normal"
#: src/main/java/i2p/bote/I2PBote.java:516
#: src/main/java/i2p/bote/I2PBote.java:519
msgid "No identity matches the sender/from field: "
msgstr "Nenhuma identidade coincide com o campo do remetente 'De':"
#: src/main/java/i2p/bote/I2PBote.java:721
#: src/main/java/i2p/bote/I2PBote.java:726
msgid "Checking password"
msgstr "A verificar a senha..."
#: src/main/java/i2p/bote/I2PBote.java:724
#: src/main/java/i2p/bote/I2PBote.java:729
msgid "The old password is not correct."
msgstr "A antiga senha não está correta."
#: src/main/java/i2p/bote/I2PBote.java:726
#: src/main/java/i2p/bote/I2PBote.java:731
msgid "The new password and the confirmation password do not match."
msgstr "A nova senha e a sua confirmação não coincidem."
#: src/main/java/i2p/bote/I2PBote.java:733
#: src/main/java/i2p/bote/I2PBote.java:738
msgid "Re-encrypting identities"
msgstr "A re-cifrar as identidades"
#: src/main/java/i2p/bote/I2PBote.java:736
#: src/main/java/i2p/bote/I2PBote.java:741
msgid "Re-encrypting addressbook"
msgstr "A re-cifrar o livro de endereços"
#: src/main/java/i2p/bote/I2PBote.java:739
#: src/main/java/i2p/bote/I2PBote.java:744
msgid "Re-encrypting folder"
msgstr "A re-cifrar a pasta"
#: src/main/java/i2p/bote/I2PBote.java:743
#: src/main/java/i2p/bote/I2PBote.java:748
msgid "Updating password file"
msgstr "A atualizar o ficheiro de senhas"
@ -152,60 +152,64 @@ msgstr "(Nenhum)"
msgid "(S)"
msgstr "(S)"
#: src/main/java/i2p/bote/util/GeneralHelper.java:101
#: src/main/java/i2p/bote/util/GeneralHelper.java:125
msgid "Not set."
msgstr "Não defenido."
#: src/main/java/i2p/bote/util/GeneralHelper.java:151
#: src/main/java/i2p/bote/util/GeneralHelper.java:175
msgid "Invalid ID number for CryptoImplementation: "
msgstr "O identificador da implementatação criptográfica é inválido:"
#: src/main/java/i2p/bote/web/JSPHelper.java:236
#: src/main/java/i2p/bote/web/JSPHelper.java:241
msgid "Queued"
msgstr "Em fila"
#: src/main/java/i2p/bote/web/JSPHelper.java:238
#: src/main/java/i2p/bote/web/JSPHelper.java:243
msgid "Sending"
msgstr "A Enviar"
#: src/main/java/i2p/bote/web/JSPHelper.java:240
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#, java-format
msgid "Sent to {0} out of {1} recipients"
msgstr "Enviado para {0} de {1} destinatários"
#: src/main/java/i2p/bote/web/JSPHelper.java:243
#: src/main/java/i2p/bote/web/JSPHelper.java:248
msgid "Email sent"
msgstr "Email enviado"
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#: src/main/java/i2p/bote/web/JSPHelper.java:250
msgid "Gateway disabled"
msgstr "Ponte de ligação desativada"
#: src/main/java/i2p/bote/web/JSPHelper.java:247
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#, java-format
msgid "No identity matches the sender/from field: {0}"
msgstr "Não existem identidades correspondentes ao campo de remetente: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:250
#: src/main/java/i2p/bote/web/JSPHelper.java:255
#, java-format
msgid "Invalid recipient address: {0}"
msgstr "Endereço de destinatário inválido: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#: src/main/java/i2p/bote/web/JSPHelper.java:257
#, java-format
msgid "Error creating email packets: {0}"
msgstr "Erro ao criar pacotes: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:254
#: src/main/java/i2p/bote/web/JSPHelper.java:259
#, java-format
msgid "Error while sending email: {0}"
msgstr "Erro ao enviar email: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:256
#: src/main/java/i2p/bote/web/JSPHelper.java:261
#, java-format
msgid "Error saving email metadata: {0}"
msgstr "Erro ao guardar metadados do email: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:282
msgid "New email received"
msgstr ""
#: src/main/java/i2p/bote/web/PeerInfoTag.java:88
#: src/main/java/i2p/bote/web/PeerInfoTag.java:194
msgid "Kademlia Peers:"
@ -415,6 +419,16 @@ msgstr "FAQ"
msgid "About"
msgstr "Sobre"
#: src/main/webapp/header.jsp
msgid ""
"For I2P-Bote to function properly, you must download the JCE Unlimited "
"Strength Jurisdiction Policy files and move them into this folder:"
msgstr ""
#: src/main/webapp/header.jsp
msgid "Guide"
msgstr ""
#: src/main/webapp/clearPasswordCache.jsp
msgid "Password Cleared"
msgstr "Senha esquecida"
@ -718,6 +732,11 @@ msgstr "A lista de endereços está vazia."
msgid "Name"
msgstr "Nome"
#: src/main/webapp/addressBook.jsp
#, fuzzy
msgid "Text"
msgstr "Texto:"
#: src/main/webapp/addressBook.jsp
msgid "Email Destination"
msgstr "Endereço"
@ -1219,6 +1238,10 @@ msgstr "Testes"
msgid "Code fixes, translation updates from tx"
msgstr "Correções ao código, atualização de traduções de tx"
#: src/main/webapp/about.jsp
msgid "Code fixes"
msgstr ""
#: src/main/webapp/setPassword.jsp
msgid "Set Password"
msgstr "Definir senha"

View File

@ -5,8 +5,8 @@ msgid ""
msgstr ""
"Project-Id-Version: I2P\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-09-12 14:28+0000\n"
"PO-Revision-Date: 2015-08-05 01:52+0000\n"
"POT-Creation-Date: 2015-11-19 04:56+0000\n"
"PO-Revision-Date: 2015-11-19 04:44+0000\n"
"Last-Translator: str4d <str4d@i2pmail.org>\n"
"Language-Team: Portuguese (Brazil) (http://www.transifex.com/otf/I2P/"
"language/pt_BR/)\n"
@ -28,35 +28,35 @@ msgstr "Azul claro"
msgid "Vanilla"
msgstr "Baunilha"
#: src/main/java/i2p/bote/I2PBote.java:516
#: src/main/java/i2p/bote/I2PBote.java:519
msgid "No identity matches the sender/from field: "
msgstr "Nenhuma identidade confere com o campo remetente/de:"
#: src/main/java/i2p/bote/I2PBote.java:721
#: src/main/java/i2p/bote/I2PBote.java:726
msgid "Checking password"
msgstr "Verificando senha"
#: src/main/java/i2p/bote/I2PBote.java:724
#: src/main/java/i2p/bote/I2PBote.java:729
msgid "The old password is not correct."
msgstr "A senha antiga não está correta."
#: src/main/java/i2p/bote/I2PBote.java:726
#: src/main/java/i2p/bote/I2PBote.java:731
msgid "The new password and the confirmation password do not match."
msgstr "A nova senha e a senha de confirmação não conferem."
#: src/main/java/i2p/bote/I2PBote.java:733
#: src/main/java/i2p/bote/I2PBote.java:738
msgid "Re-encrypting identities"
msgstr "Recriptografando as identidades"
#: src/main/java/i2p/bote/I2PBote.java:736
#: src/main/java/i2p/bote/I2PBote.java:741
msgid "Re-encrypting addressbook"
msgstr "Recriptografando o livro de endereços"
#: src/main/java/i2p/bote/I2PBote.java:739
#: src/main/java/i2p/bote/I2PBote.java:744
msgid "Re-encrypting folder"
msgstr "Recriptografando a pasta"
#: src/main/java/i2p/bote/I2PBote.java:743
#: src/main/java/i2p/bote/I2PBote.java:748
msgid "Updating password file"
msgstr "Atualizando arquivo de senha"
@ -144,60 +144,64 @@ msgstr "(Nenhum)"
msgid "(S)"
msgstr "(S)"
#: src/main/java/i2p/bote/util/GeneralHelper.java:101
#: src/main/java/i2p/bote/util/GeneralHelper.java:125
msgid "Not set."
msgstr "Não definido."
#: src/main/java/i2p/bote/util/GeneralHelper.java:151
#: src/main/java/i2p/bote/util/GeneralHelper.java:175
msgid "Invalid ID number for CryptoImplementation: "
msgstr "Número ID inválido para CriptoImplementação:"
#: src/main/java/i2p/bote/web/JSPHelper.java:236
#: src/main/java/i2p/bote/web/JSPHelper.java:241
msgid "Queued"
msgstr "Na fila"
#: src/main/java/i2p/bote/web/JSPHelper.java:238
#: src/main/java/i2p/bote/web/JSPHelper.java:243
msgid "Sending"
msgstr "Enviando"
#: src/main/java/i2p/bote/web/JSPHelper.java:240
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#, java-format
msgid "Sent to {0} out of {1} recipients"
msgstr ""
#: src/main/java/i2p/bote/web/JSPHelper.java:243
#: src/main/java/i2p/bote/web/JSPHelper.java:248
msgid "Email sent"
msgstr "Email enviado"
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#: src/main/java/i2p/bote/web/JSPHelper.java:250
msgid "Gateway disabled"
msgstr "Gateway desativado"
#: src/main/java/i2p/bote/web/JSPHelper.java:247
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#, java-format
msgid "No identity matches the sender/from field: {0}"
msgstr "Nenhuma identidade confere com o campo remetente/de: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:250
#: src/main/java/i2p/bote/web/JSPHelper.java:255
#, java-format
msgid "Invalid recipient address: {0}"
msgstr "Endereço de receptor inválido: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#: src/main/java/i2p/bote/web/JSPHelper.java:257
#, java-format
msgid "Error creating email packets: {0}"
msgstr ""
#: src/main/java/i2p/bote/web/JSPHelper.java:254
#: src/main/java/i2p/bote/web/JSPHelper.java:259
#, java-format
msgid "Error while sending email: {0}"
msgstr "Erro ao enviar email: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:256
#: src/main/java/i2p/bote/web/JSPHelper.java:261
#, java-format
msgid "Error saving email metadata: {0}"
msgstr ""
#: src/main/java/i2p/bote/web/JSPHelper.java:282
msgid "New email received"
msgstr ""
#: src/main/java/i2p/bote/web/PeerInfoTag.java:88
#: src/main/java/i2p/bote/web/PeerInfoTag.java:194
msgid "Kademlia Peers:"
@ -407,6 +411,16 @@ msgstr "FAQ"
msgid "About"
msgstr "Sobre"
#: src/main/webapp/header.jsp
msgid ""
"For I2P-Bote to function properly, you must download the JCE Unlimited "
"Strength Jurisdiction Policy files and move them into this folder:"
msgstr ""
#: src/main/webapp/header.jsp
msgid "Guide"
msgstr ""
#: src/main/webapp/clearPasswordCache.jsp
msgid "Password Cleared"
msgstr "Senha excluída"
@ -706,6 +720,11 @@ msgstr "O livro de endereços está vazio."
msgid "Name"
msgstr "Nome"
#: src/main/webapp/addressBook.jsp
#, fuzzy
msgid "Text"
msgstr "Texto:"
#: src/main/webapp/addressBook.jsp
msgid "Email Destination"
msgstr "Destino de email"
@ -1194,6 +1213,10 @@ msgstr "Teste alpha"
msgid "Code fixes, translation updates from tx"
msgstr "Correções de código, traduções atualizadas a partir de tx"
#: src/main/webapp/about.jsp
msgid "Code fixes"
msgstr ""
#: src/main/webapp/setPassword.jsp
msgid "Set Password"
msgstr "Especificar senha"

View File

@ -4,8 +4,8 @@ msgid ""
msgstr ""
"Project-Id-Version: I2P\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-09-12 14:29+0000\n"
"PO-Revision-Date: 2015-08-05 01:52+0000\n"
"POT-Creation-Date: 2015-11-19 04:56+0000\n"
"PO-Revision-Date: 2015-11-19 04:44+0000\n"
"Last-Translator: str4d <str4d@i2pmail.org>\n"
"Language-Team: Romanian (http://www.transifex.com/otf/I2P/language/ro/)\n"
"Language: ro\n"
@ -27,35 +27,35 @@ msgstr ""
msgid "Vanilla"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:516
#: src/main/java/i2p/bote/I2PBote.java:519
msgid "No identity matches the sender/from field: "
msgstr "Nici o identitate nu se potrivește cu expeditorul / din câmp:"
#: src/main/java/i2p/bote/I2PBote.java:721
#: src/main/java/i2p/bote/I2PBote.java:726
msgid "Checking password"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:724
#: src/main/java/i2p/bote/I2PBote.java:729
msgid "The old password is not correct."
msgstr "Parola veche nu este corectă."
#: src/main/java/i2p/bote/I2PBote.java:726
#: src/main/java/i2p/bote/I2PBote.java:731
msgid "The new password and the confirmation password do not match."
msgstr "Parolă noua și parola de confirmare nu coincid."
#: src/main/java/i2p/bote/I2PBote.java:733
#: src/main/java/i2p/bote/I2PBote.java:738
msgid "Re-encrypting identities"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:736
#: src/main/java/i2p/bote/I2PBote.java:741
msgid "Re-encrypting addressbook"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:739
#: src/main/java/i2p/bote/I2PBote.java:744
msgid "Re-encrypting folder"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:743
#: src/main/java/i2p/bote/I2PBote.java:748
msgid "Updating password file"
msgstr ""
@ -143,60 +143,64 @@ msgstr "(Nimic)"
msgid "(S)"
msgstr "(S)"
#: src/main/java/i2p/bote/util/GeneralHelper.java:101
#: src/main/java/i2p/bote/util/GeneralHelper.java:125
msgid "Not set."
msgstr "Nu este setat."
#: src/main/java/i2p/bote/util/GeneralHelper.java:151
#: src/main/java/i2p/bote/util/GeneralHelper.java:175
msgid "Invalid ID number for CryptoImplementation: "
msgstr "Număr ID Incorect pentru CryptoImplementation:"
#: src/main/java/i2p/bote/web/JSPHelper.java:236
#: src/main/java/i2p/bote/web/JSPHelper.java:241
msgid "Queued"
msgstr "În coadă"
#: src/main/java/i2p/bote/web/JSPHelper.java:238
#: src/main/java/i2p/bote/web/JSPHelper.java:243
msgid "Sending"
msgstr "Trimitere"
#: src/main/java/i2p/bote/web/JSPHelper.java:240
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#, java-format
msgid "Sent to {0} out of {1} recipients"
msgstr "Trimis la {0} din {1} destinatari"
#: src/main/java/i2p/bote/web/JSPHelper.java:243
#: src/main/java/i2p/bote/web/JSPHelper.java:248
msgid "Email sent"
msgstr "E-mail este trimis"
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#: src/main/java/i2p/bote/web/JSPHelper.java:250
msgid "Gateway disabled"
msgstr "poarta de acces dezactivat"
#: src/main/java/i2p/bote/web/JSPHelper.java:247
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#, java-format
msgid "No identity matches the sender/from field: {0}"
msgstr ""
#: src/main/java/i2p/bote/web/JSPHelper.java:250
#: src/main/java/i2p/bote/web/JSPHelper.java:255
#, java-format
msgid "Invalid recipient address: {0}"
msgstr "Adresa destinatarului nevalidă: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#: src/main/java/i2p/bote/web/JSPHelper.java:257
#, java-format
msgid "Error creating email packets: {0}"
msgstr "Eroare la crearea de pachete de e-mail: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:254
#: src/main/java/i2p/bote/web/JSPHelper.java:259
#, java-format
msgid "Error while sending email: {0}"
msgstr "Eroare la trimiterea de e-mail: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:256
#: src/main/java/i2p/bote/web/JSPHelper.java:261
#, java-format
msgid "Error saving email metadata: {0}"
msgstr "Eroare la salvarea de e-mail metadate: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:282
msgid "New email received"
msgstr ""
#: src/main/java/i2p/bote/web/PeerInfoTag.java:88
#: src/main/java/i2p/bote/web/PeerInfoTag.java:194
msgid "Kademlia Peers:"
@ -406,6 +410,16 @@ msgstr "FAQ"
msgid "About"
msgstr "Despre"
#: src/main/webapp/header.jsp
msgid ""
"For I2P-Bote to function properly, you must download the JCE Unlimited "
"Strength Jurisdiction Policy files and move them into this folder:"
msgstr ""
#: src/main/webapp/header.jsp
msgid "Guide"
msgstr ""
#: src/main/webapp/clearPasswordCache.jsp
msgid "Password Cleared"
msgstr "Parola stersa"
@ -707,6 +721,11 @@ msgstr "Agendă de adrese este goală."
msgid "Name"
msgstr "Nume"
#: src/main/webapp/addressBook.jsp
#, fuzzy
msgid "Text"
msgstr "Text:"
#: src/main/webapp/addressBook.jsp
msgid "Email Destination"
msgstr "Destinații email"
@ -1209,6 +1228,10 @@ msgstr ""
msgid "Code fixes, translation updates from tx"
msgstr "Remedieri de cod, actualizări de traducere de la tx"
#: src/main/webapp/about.jsp
msgid "Code fixes"
msgstr ""
#: src/main/webapp/setPassword.jsp
msgid "Set Password"
msgstr "Setați parola"

View File

@ -7,6 +7,8 @@
# Eugene, 2013
# Eugene, 2013
# sfix <anon-9b36b2e@lycos.com>, 2013
# vertnis <vertnis@i2pmail.org>, 2015
# brianhopes <voganc-12@live.ru>, 2015
# walking <walking@i2pmail.org>, 2011
# yume, 2015
# yume, 2015
@ -14,8 +16,8 @@ msgid ""
msgstr ""
"Project-Id-Version: I2P\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-09-12 14:29+0000\n"
"PO-Revision-Date: 2015-08-05 01:52+0000\n"
"POT-Creation-Date: 2015-11-19 04:56+0000\n"
"PO-Revision-Date: 2015-11-19 04:44+0000\n"
"Last-Translator: str4d <str4d@i2pmail.org>\n"
"Language-Team: Russian (Russia) (http://www.transifex.com/otf/I2P/language/"
"ru_RU/)\n"
@ -39,35 +41,35 @@ msgstr "Голубой"
msgid "Vanilla"
msgstr "Ванильный"
#: src/main/java/i2p/bote/I2PBote.java:516
#: src/main/java/i2p/bote/I2PBote.java:519
msgid "No identity matches the sender/from field: "
msgstr "Нет соответствующего набора ключей для такого отправителя: "
#: src/main/java/i2p/bote/I2PBote.java:721
#: src/main/java/i2p/bote/I2PBote.java:726
msgid "Checking password"
msgstr "Проверка пароля"
#: src/main/java/i2p/bote/I2PBote.java:724
#: src/main/java/i2p/bote/I2PBote.java:729
msgid "The old password is not correct."
msgstr "Старый пароль неверен."
#: src/main/java/i2p/bote/I2PBote.java:726
#: src/main/java/i2p/bote/I2PBote.java:731
msgid "The new password and the confirmation password do not match."
msgstr "Новый пароль и пароль для подтверждения не совпадают."
#: src/main/java/i2p/bote/I2PBote.java:733
#: src/main/java/i2p/bote/I2PBote.java:738
msgid "Re-encrypting identities"
msgstr "Перешифрование идентификатора"
#: src/main/java/i2p/bote/I2PBote.java:736
#: src/main/java/i2p/bote/I2PBote.java:741
msgid "Re-encrypting addressbook"
msgstr "Перешифрование адресной книги"
#: src/main/java/i2p/bote/I2PBote.java:739
#: src/main/java/i2p/bote/I2PBote.java:744
msgid "Re-encrypting folder"
msgstr "Перешифрование папки"
#: src/main/java/i2p/bote/I2PBote.java:743
#: src/main/java/i2p/bote/I2PBote.java:748
msgid "Updating password file"
msgstr "Обновляется файл с паролями"
@ -149,66 +151,70 @@ msgstr "Да"
#: src/main/java/i2p/bote/network/kademlia/KademliaPeerStats.java:84
msgid "(None)"
msgstr "-"
msgstr "(нет)"
#: src/main/java/i2p/bote/network/kademlia/KademliaPeerStats.java:89
msgid "(S)"
msgstr "(S)"
#: src/main/java/i2p/bote/util/GeneralHelper.java:101
#: src/main/java/i2p/bote/util/GeneralHelper.java:125
msgid "Not set."
msgstr "Не задано."
#: src/main/java/i2p/bote/util/GeneralHelper.java:151
#: src/main/java/i2p/bote/util/GeneralHelper.java:175
msgid "Invalid ID number for CryptoImplementation: "
msgstr "Неверный идентификатор для CryptoImplementation: "
#: src/main/java/i2p/bote/web/JSPHelper.java:236
#: src/main/java/i2p/bote/web/JSPHelper.java:241
msgid "Queued"
msgstr "Поставлено в очередь"
#: src/main/java/i2p/bote/web/JSPHelper.java:238
#: src/main/java/i2p/bote/web/JSPHelper.java:243
msgid "Sending"
msgstr "Отправка"
#: src/main/java/i2p/bote/web/JSPHelper.java:240
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#, java-format
msgid "Sent to {0} out of {1} recipients"
msgstr "Отправленно {0} из {1} получателей"
#: src/main/java/i2p/bote/web/JSPHelper.java:243
#: src/main/java/i2p/bote/web/JSPHelper.java:248
msgid "Email sent"
msgstr "Сообщение отправлено"
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#: src/main/java/i2p/bote/web/JSPHelper.java:250
msgid "Gateway disabled"
msgstr "Шлюз отключён"
#: src/main/java/i2p/bote/web/JSPHelper.java:247
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#, java-format
msgid "No identity matches the sender/from field: {0}"
msgstr "Идентификатор не соответствует отправителю/полю \"от\": {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:250
#: src/main/java/i2p/bote/web/JSPHelper.java:255
#, java-format
msgid "Invalid recipient address: {0}"
msgstr "Неправильный адрес получателя: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#: src/main/java/i2p/bote/web/JSPHelper.java:257
#, java-format
msgid "Error creating email packets: {0}"
msgstr "Ошибка создания пакетов электронной почты: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:254
#: src/main/java/i2p/bote/web/JSPHelper.java:259
#, java-format
msgid "Error while sending email: {0}"
msgstr "Ошибка при отправке почты: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:256
#: src/main/java/i2p/bote/web/JSPHelper.java:261
#, java-format
msgid "Error saving email metadata: {0}"
msgstr "Ошибка при сохранении метаданных email-a: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:282
msgid "New email received"
msgstr "Получено новое письмо"
#: src/main/java/i2p/bote/web/PeerInfoTag.java:88
#: src/main/java/i2p/bote/web/PeerInfoTag.java:194
msgid "Kademlia Peers:"
@ -418,6 +424,19 @@ msgstr "FAQ"
msgid "About"
msgstr "О I2P-Bote"
#: src/main/webapp/header.jsp
msgid ""
"For I2P-Bote to function properly, you must download the JCE Unlimited "
"Strength Jurisdiction Policy files and move them into this folder:"
msgstr ""
"Для того, чтобы I2P-Bote функционировал должным образом, Вы должны скачать "
"файлы Java-расширения JCE Unlimited Strength Jurisdiction Policy и "
"переместить их в эту папку:"
#: src/main/webapp/header.jsp
msgid "Guide"
msgstr "Руководство"
#: src/main/webapp/clearPasswordCache.jsp
msgid "Password Cleared"
msgstr "Пароль удален"
@ -460,19 +479,19 @@ msgstr "Ответ:"
#: src/main/webapp/newEmail.jsp
msgid "Remove this recipient"
msgstr ""
msgstr "Убрать этого получателя"
#: src/main/webapp/newEmail.jsp
msgid "Add this recipient to the address book"
msgstr ""
msgstr "Добавить этого получателя в адресную книгу"
#: src/main/webapp/newEmail.jsp
msgid "Select recipients from address book"
msgstr ""
msgstr "Выбрать получателей из адресной книги"
#: src/main/webapp/newEmail.jsp
msgid "Add another recipient field"
msgstr ""
msgstr "Добавить другое поле получателя"
#: src/main/webapp/newEmail.jsp
msgid "Subject:"
@ -719,6 +738,11 @@ msgstr "Адресная книга пуста."
msgid "Name"
msgstr "Имя"
#: src/main/webapp/addressBook.jsp
#, fuzzy
msgid "Text"
msgstr "Текст:"
#: src/main/webapp/addressBook.jsp
msgid "Email Destination"
msgstr "Bote-адрес"
@ -991,7 +1015,7 @@ msgstr "Отображаемое имя:"
#: src/main/webapp/editIdentity.jsp
msgid "(required field, shown to recipients)"
msgstr "(обязательное поле, отображается полечателям)"
msgstr "(обязательное поле, отображается получателям)"
#: src/main/webapp/editIdentity.jsp
msgid "Description:"
@ -1115,11 +1139,11 @@ msgstr "I2P-Bote, версия {0}"
#: src/main/webapp/about.jsp
msgid "To submit bug reports or feature requests:"
msgstr ""
msgstr "Для отправки сообщений об ошибках и предложений:"
#: src/main/webapp/about.jsp
msgid "click here"
msgstr ""
msgstr "нажмите сюда"
#: src/main/webapp/about.jsp
msgid "Developers:"
@ -1221,6 +1245,10 @@ msgstr "Альфа-тестирование"
msgid "Code fixes, translation updates from tx"
msgstr "Исправления и обновления переводов от tx"
#: src/main/webapp/about.jsp
msgid "Code fixes"
msgstr ""
#: src/main/webapp/setPassword.jsp
msgid "Set Password"
msgstr "Задание пароля"

View File

@ -6,8 +6,8 @@ msgid ""
msgstr ""
"Project-Id-Version: I2P\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-09-12 14:29+0000\n"
"PO-Revision-Date: 2015-08-05 01:52+0000\n"
"POT-Creation-Date: 2015-11-19 04:56+0000\n"
"PO-Revision-Date: 2015-11-19 04:44+0000\n"
"Last-Translator: str4d <str4d@i2pmail.org>\n"
"Language-Team: Slovak (http://www.transifex.com/otf/I2P/language/sk/)\n"
"Language: sk\n"
@ -28,35 +28,35 @@ msgstr ""
msgid "Vanilla"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:516
#: src/main/java/i2p/bote/I2PBote.java:519
msgid "No identity matches the sender/from field: "
msgstr "Odosielateľovi nezodpovedá žiadna identita/z poľa:"
#: src/main/java/i2p/bote/I2PBote.java:721
#: src/main/java/i2p/bote/I2PBote.java:726
msgid "Checking password"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:724
#: src/main/java/i2p/bote/I2PBote.java:729
msgid "The old password is not correct."
msgstr "Staré heslo nie je správne."
#: src/main/java/i2p/bote/I2PBote.java:726
#: src/main/java/i2p/bote/I2PBote.java:731
msgid "The new password and the confirmation password do not match."
msgstr "Nové heslo a potvrdzovacie heslo sa nezhodujú."
#: src/main/java/i2p/bote/I2PBote.java:733
#: src/main/java/i2p/bote/I2PBote.java:738
msgid "Re-encrypting identities"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:736
#: src/main/java/i2p/bote/I2PBote.java:741
msgid "Re-encrypting addressbook"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:739
#: src/main/java/i2p/bote/I2PBote.java:744
msgid "Re-encrypting folder"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:743
#: src/main/java/i2p/bote/I2PBote.java:748
msgid "Updating password file"
msgstr ""
@ -144,60 +144,64 @@ msgstr "(Žiadne)"
msgid "(S)"
msgstr "(S)"
#: src/main/java/i2p/bote/util/GeneralHelper.java:101
#: src/main/java/i2p/bote/util/GeneralHelper.java:125
msgid "Not set."
msgstr "Nenastavené."
#: src/main/java/i2p/bote/util/GeneralHelper.java:151
#: src/main/java/i2p/bote/util/GeneralHelper.java:175
msgid "Invalid ID number for CryptoImplementation: "
msgstr "Neplatné číslo ID pre CryptoImplementation:"
#: src/main/java/i2p/bote/web/JSPHelper.java:236
#: src/main/java/i2p/bote/web/JSPHelper.java:241
msgid "Queued"
msgstr "Zaradené"
#: src/main/java/i2p/bote/web/JSPHelper.java:238
#: src/main/java/i2p/bote/web/JSPHelper.java:243
msgid "Sending"
msgstr "Posiela sa"
#: src/main/java/i2p/bote/web/JSPHelper.java:240
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#, java-format
msgid "Sent to {0} out of {1} recipients"
msgstr "Poslané {0} z {1} príjemcov"
#: src/main/java/i2p/bote/web/JSPHelper.java:243
#: src/main/java/i2p/bote/web/JSPHelper.java:248
msgid "Email sent"
msgstr "Email bol odoslaný"
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#: src/main/java/i2p/bote/web/JSPHelper.java:250
msgid "Gateway disabled"
msgstr "Brána zakázaná"
#: src/main/java/i2p/bote/web/JSPHelper.java:247
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#, java-format
msgid "No identity matches the sender/from field: {0}"
msgstr ""
#: src/main/java/i2p/bote/web/JSPHelper.java:250
#: src/main/java/i2p/bote/web/JSPHelper.java:255
#, java-format
msgid "Invalid recipient address: {0}"
msgstr "Neplatná adresa príjemcu: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#: src/main/java/i2p/bote/web/JSPHelper.java:257
#, java-format
msgid "Error creating email packets: {0}"
msgstr "Chyba pri vytváraní emailových paketov: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:254
#: src/main/java/i2p/bote/web/JSPHelper.java:259
#, java-format
msgid "Error while sending email: {0}"
msgstr "Chyba pri posielaní emailu: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:256
#: src/main/java/i2p/bote/web/JSPHelper.java:261
#, java-format
msgid "Error saving email metadata: {0}"
msgstr "Chyba pri ukladaní metadát emailu: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:282
msgid "New email received"
msgstr ""
#: src/main/java/i2p/bote/web/PeerInfoTag.java:88
#: src/main/java/i2p/bote/web/PeerInfoTag.java:194
msgid "Kademlia Peers:"
@ -407,6 +411,16 @@ msgstr "FAQ"
msgid "About"
msgstr "O projekte"
#: src/main/webapp/header.jsp
msgid ""
"For I2P-Bote to function properly, you must download the JCE Unlimited "
"Strength Jurisdiction Policy files and move them into this folder:"
msgstr ""
#: src/main/webapp/header.jsp
msgid "Guide"
msgstr ""
#: src/main/webapp/clearPasswordCache.jsp
msgid "Password Cleared"
msgstr "Heslo bolo zmazané"
@ -708,6 +722,11 @@ msgstr "Adresár je prázdny."
msgid "Name"
msgstr "Meno"
#: src/main/webapp/addressBook.jsp
#, fuzzy
msgid "Text"
msgstr "Text:"
#: src/main/webapp/addressBook.jsp
msgid "Email Destination"
msgstr "Emailový cieľ"
@ -1207,6 +1226,10 @@ msgstr ""
msgid "Code fixes, translation updates from tx"
msgstr "Opravy kódu, aktualizácie prekladov z tx"
#: src/main/webapp/about.jsp
msgid "Code fixes"
msgstr ""
#: src/main/webapp/setPassword.jsp
msgid "Set Password"
msgstr "Nastaviť heslo"

View File

@ -1,5 +1,6 @@
# Translators:
# Translators:
# Anders Nilsson <locally@devode.se>, 2015
# ducki2p <ducki2p@gmail.com>, 2011
# cacapo <handelsehorisont@gmail.com>, 2015
# hottuna <i2p@robertfoss.se>, 2011,2013
@ -10,9 +11,9 @@ msgid ""
msgstr ""
"Project-Id-Version: I2P\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-09-12 14:29+0000\n"
"PO-Revision-Date: 2015-08-26 18:03+0000\n"
"Last-Translator: cacapo <handelsehorisont@gmail.com>\n"
"POT-Creation-Date: 2015-11-19 04:57+0000\n"
"PO-Revision-Date: 2015-11-19 04:44+0000\n"
"Last-Translator: str4d <str4d@i2pmail.org>\n"
"Language-Team: Swedish (Sweden) (http://www.transifex.com/otf/I2P/language/"
"sv_SE/)\n"
"Language: sv_SE\n"
@ -33,35 +34,35 @@ msgstr "Ljusblå"
msgid "Vanilla"
msgstr "Vanilj"
#: src/main/java/i2p/bote/I2PBote.java:516
#: src/main/java/i2p/bote/I2PBote.java:519
msgid "No identity matches the sender/from field: "
msgstr "Ingen identitet överensstämmer med avsändare/från fältet:"
#: src/main/java/i2p/bote/I2PBote.java:721
#: src/main/java/i2p/bote/I2PBote.java:726
msgid "Checking password"
msgstr "Kontrollerar lösenord"
#: src/main/java/i2p/bote/I2PBote.java:724
#: src/main/java/i2p/bote/I2PBote.java:729
msgid "The old password is not correct."
msgstr "Det gamla lösenordet är inte rätt."
#: src/main/java/i2p/bote/I2PBote.java:726
#: src/main/java/i2p/bote/I2PBote.java:731
msgid "The new password and the confirmation password do not match."
msgstr "Det nya lösenordet och bekräftelselösenordet matchar inte."
#: src/main/java/i2p/bote/I2PBote.java:733
#: src/main/java/i2p/bote/I2PBote.java:738
msgid "Re-encrypting identities"
msgstr "Återkrypterar identiteter"
#: src/main/java/i2p/bote/I2PBote.java:736
#: src/main/java/i2p/bote/I2PBote.java:741
msgid "Re-encrypting addressbook"
msgstr "Återkrypterar adressbok"
#: src/main/java/i2p/bote/I2PBote.java:739
#: src/main/java/i2p/bote/I2PBote.java:744
msgid "Re-encrypting folder"
msgstr "Återkrypterar katalog"
#: src/main/java/i2p/bote/I2PBote.java:743
#: src/main/java/i2p/bote/I2PBote.java:748
msgid "Updating password file"
msgstr "Uppdaterar lösenordsfil"
@ -131,7 +132,7 @@ msgstr "Låst?"
#: src/main/java/i2p/bote/web/PeerInfoTag.java:116
#: src/main/java/i2p/bote/web/PeerInfoTag.java:142
msgid "Peer"
msgstr "Peer"
msgstr "Nod"
#: src/main/java/i2p/bote/network/kademlia/KademliaPeerStats.java:67
#: src/main/java/i2p/bote/web/PeerInfoTag.java:175
@ -150,69 +151,73 @@ msgstr "(Inga)"
msgid "(S)"
msgstr "(S)"
#: src/main/java/i2p/bote/util/GeneralHelper.java:101
#: src/main/java/i2p/bote/util/GeneralHelper.java:125
msgid "Not set."
msgstr "Inte satt."
#: src/main/java/i2p/bote/util/GeneralHelper.java:151
#: src/main/java/i2p/bote/util/GeneralHelper.java:175
msgid "Invalid ID number for CryptoImplementation: "
msgstr "Ogiltigt ID for krypteringsimplementation:"
#: src/main/java/i2p/bote/web/JSPHelper.java:236
#: src/main/java/i2p/bote/web/JSPHelper.java:241
msgid "Queued"
msgstr "Köad"
#: src/main/java/i2p/bote/web/JSPHelper.java:238
#: src/main/java/i2p/bote/web/JSPHelper.java:243
msgid "Sending"
msgstr "Skickar"
#: src/main/java/i2p/bote/web/JSPHelper.java:240
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#, java-format
msgid "Sent to {0} out of {1} recipients"
msgstr "Skickat till {0} av {1} mottagare"
#: src/main/java/i2p/bote/web/JSPHelper.java:243
#: src/main/java/i2p/bote/web/JSPHelper.java:248
msgid "Email sent"
msgstr "E-post skickat"
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#: src/main/java/i2p/bote/web/JSPHelper.java:250
msgid "Gateway disabled"
msgstr "Gateway avslagen"
#: src/main/java/i2p/bote/web/JSPHelper.java:247
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#, java-format
msgid "No identity matches the sender/from field: {0}"
msgstr "Ingen identitet matchar sändaren/från fält:{0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:250
#: src/main/java/i2p/bote/web/JSPHelper.java:255
#, java-format
msgid "Invalid recipient address: {0}"
msgstr "Ogiltig mottagaradress: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#: src/main/java/i2p/bote/web/JSPHelper.java:257
#, java-format
msgid "Error creating email packets: {0}"
msgstr "Fel när epost-paket skapades: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:254
#: src/main/java/i2p/bote/web/JSPHelper.java:259
#, java-format
msgid "Error while sending email: {0}"
msgstr "Fel när epost skickades: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:256
#: src/main/java/i2p/bote/web/JSPHelper.java:261
#, java-format
msgid "Error saving email metadata: {0}"
msgstr "Fel när metadata för e-posten sparades {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:282
msgid "New email received"
msgstr "Nytt e-postmeddelande mottaget"
#: src/main/java/i2p/bote/web/PeerInfoTag.java:88
#: src/main/java/i2p/bote/web/PeerInfoTag.java:194
msgid "Kademlia Peers:"
msgstr "Kademlia peers:"
msgstr "Kademlia-noder:"
#: src/main/java/i2p/bote/web/PeerInfoTag.java:112
#: src/main/java/i2p/bote/web/PeerInfoTag.java:236
msgid "Relay Peers:"
msgstr "Vidarebefodringande peers:"
msgstr "Vidarebefordrande noder:"
#: src/main/java/i2p/bote/web/PeerInfoTag.java:118
msgid "Reachability %"
@ -226,7 +231,7 @@ msgstr "Otestad"
#: src/main/java/i2p/bote/web/PeerInfoTag.java:138
msgid "Banned Peers:"
msgstr "Bannade peers:"
msgstr "Bannade noder:"
#: src/main/java/i2p/bote/web/PeerInfoTag.java:143
msgid "Destination Hash"
@ -413,6 +418,18 @@ msgstr "FAQ"
msgid "About"
msgstr "Om"
#: src/main/webapp/header.jsp
msgid ""
"For I2P-Bote to function properly, you must download the JCE Unlimited "
"Strength Jurisdiction Policy files and move them into this folder:"
msgstr ""
"För att I2P-Bote ska fungera måste du ladda ner filerna i JCE Unlimited "
"Strength Jurisdiction Policy och flytta in dem i denna mapp:"
#: src/main/webapp/header.jsp
msgid "Guide"
msgstr "Guide"
#: src/main/webapp/clearPasswordCache.jsp
msgid "Password Cleared"
msgstr "Lösenord borttaget"
@ -715,6 +732,11 @@ msgstr "Adressboken är tom."
msgid "Name"
msgstr "Namn"
#: src/main/webapp/addressBook.jsp
#, fuzzy
msgid "Text"
msgstr "Text:"
#: src/main/webapp/addressBook.jsp
msgid "Email Destination"
msgstr "Epost-destination"
@ -1210,6 +1232,10 @@ msgstr "Alpha testing"
msgid "Code fixes, translation updates from tx"
msgstr "Kod fixar, översättningsuppdateringar från tx"
#: src/main/webapp/about.jsp
msgid "Code fixes"
msgstr ""
#: src/main/webapp/setPassword.jsp
msgid "Set Password"
msgstr "Bestäm lösenord"

View File

@ -12,9 +12,9 @@ msgid ""
msgstr ""
"Project-Id-Version: I2P\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-09-12 14:29+0000\n"
"PO-Revision-Date: 2015-08-07 17:14+0000\n"
"Last-Translator: Denis Lysenko <gribua@gmail.com>\n"
"POT-Creation-Date: 2015-11-19 04:57+0000\n"
"PO-Revision-Date: 2015-11-19 04:44+0000\n"
"Last-Translator: str4d <str4d@i2pmail.org>\n"
"Language-Team: Ukrainian (Ukraine) (http://www.transifex.com/otf/I2P/"
"language/uk_UA/)\n"
"Language: uk_UA\n"
@ -36,35 +36,35 @@ msgstr ""
msgid "Vanilla"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:516
#: src/main/java/i2p/bote/I2PBote.java:519
msgid "No identity matches the sender/from field: "
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:721
#: src/main/java/i2p/bote/I2PBote.java:726
msgid "Checking password"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:724
#: src/main/java/i2p/bote/I2PBote.java:729
msgid "The old password is not correct."
msgstr "Старий пароль не правильний."
#: src/main/java/i2p/bote/I2PBote.java:726
#: src/main/java/i2p/bote/I2PBote.java:731
msgid "The new password and the confirmation password do not match."
msgstr "Новий пароль та підтвердження не співпадають."
#: src/main/java/i2p/bote/I2PBote.java:733
#: src/main/java/i2p/bote/I2PBote.java:738
msgid "Re-encrypting identities"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:736
#: src/main/java/i2p/bote/I2PBote.java:741
msgid "Re-encrypting addressbook"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:739
#: src/main/java/i2p/bote/I2PBote.java:744
msgid "Re-encrypting folder"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:743
#: src/main/java/i2p/bote/I2PBote.java:748
msgid "Updating password file"
msgstr ""
@ -152,60 +152,64 @@ msgstr "(-)"
msgid "(S)"
msgstr "(S)"
#: src/main/java/i2p/bote/util/GeneralHelper.java:101
#: src/main/java/i2p/bote/util/GeneralHelper.java:125
msgid "Not set."
msgstr ""
#: src/main/java/i2p/bote/util/GeneralHelper.java:151
#: src/main/java/i2p/bote/util/GeneralHelper.java:175
msgid "Invalid ID number for CryptoImplementation: "
msgstr ""
#: src/main/java/i2p/bote/web/JSPHelper.java:236
#: src/main/java/i2p/bote/web/JSPHelper.java:241
msgid "Queued"
msgstr "У черзі"
#: src/main/java/i2p/bote/web/JSPHelper.java:238
#: src/main/java/i2p/bote/web/JSPHelper.java:243
msgid "Sending"
msgstr "Надсилається... "
#: src/main/java/i2p/bote/web/JSPHelper.java:240
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#, java-format
msgid "Sent to {0} out of {1} recipients"
msgstr ""
#: src/main/java/i2p/bote/web/JSPHelper.java:243
#: src/main/java/i2p/bote/web/JSPHelper.java:248
msgid "Email sent"
msgstr "Лист відправлено"
#: src/main/java/i2p/bote/web/JSPHelper.java:245
msgid "Gateway disabled"
msgstr ""
#: src/main/java/i2p/bote/web/JSPHelper.java:247
#, java-format
msgid "No identity matches the sender/from field: {0}"
msgstr ""
#: src/main/java/i2p/bote/web/JSPHelper.java:250
#, java-format
msgid "Invalid recipient address: {0}"
msgid "Gateway disabled"
msgstr ""
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#, java-format
msgid "No identity matches the sender/from field: {0}"
msgstr ""
#: src/main/java/i2p/bote/web/JSPHelper.java:255
#, java-format
msgid "Invalid recipient address: {0}"
msgstr ""
#: src/main/java/i2p/bote/web/JSPHelper.java:257
#, java-format
msgid "Error creating email packets: {0}"
msgstr ""
#: src/main/java/i2p/bote/web/JSPHelper.java:254
#: src/main/java/i2p/bote/web/JSPHelper.java:259
#, java-format
msgid "Error while sending email: {0}"
msgstr ""
#: src/main/java/i2p/bote/web/JSPHelper.java:256
#: src/main/java/i2p/bote/web/JSPHelper.java:261
#, java-format
msgid "Error saving email metadata: {0}"
msgstr ""
#: src/main/java/i2p/bote/web/JSPHelper.java:282
msgid "New email received"
msgstr ""
#: src/main/java/i2p/bote/web/PeerInfoTag.java:88
#: src/main/java/i2p/bote/web/PeerInfoTag.java:194
msgid "Kademlia Peers:"
@ -415,6 +419,16 @@ msgstr "FAQ"
msgid "About"
msgstr "Про"
#: src/main/webapp/header.jsp
msgid ""
"For I2P-Bote to function properly, you must download the JCE Unlimited "
"Strength Jurisdiction Policy files and move them into this folder:"
msgstr ""
#: src/main/webapp/header.jsp
msgid "Guide"
msgstr ""
#: src/main/webapp/clearPasswordCache.jsp
msgid "Password Cleared"
msgstr ""
@ -712,6 +726,11 @@ msgstr ""
msgid "Name"
msgstr "Ім’я"
#: src/main/webapp/addressBook.jsp
#, fuzzy
msgid "Text"
msgstr "Текст:"
#: src/main/webapp/addressBook.jsp
msgid "Email Destination"
msgstr ""
@ -1184,6 +1203,10 @@ msgstr ""
msgid "Code fixes, translation updates from tx"
msgstr ""
#: src/main/webapp/about.jsp
msgid "Code fixes"
msgstr ""
#: src/main/webapp/setPassword.jsp
msgid "Set Password"
msgstr "Встановити пароль"

View File

@ -6,8 +6,8 @@ msgid ""
msgstr ""
"Project-Id-Version: I2P\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-09-12 14:29+0000\n"
"PO-Revision-Date: 2015-08-05 01:52+0000\n"
"POT-Creation-Date: 2015-11-19 04:57+0000\n"
"PO-Revision-Date: 2015-11-19 04:44+0000\n"
"Last-Translator: str4d <str4d@i2pmail.org>\n"
"Language-Team: Vietnamese (http://www.transifex.com/otf/I2P/language/vi/)\n"
"Language: vi\n"
@ -28,35 +28,35 @@ msgstr ""
msgid "Vanilla"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:516
#: src/main/java/i2p/bote/I2PBote.java:519
msgid "No identity matches the sender/from field: "
msgstr "Không danh tính nào khớp với hàng người gửi:"
#: src/main/java/i2p/bote/I2PBote.java:721
#: src/main/java/i2p/bote/I2PBote.java:726
msgid "Checking password"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:724
#: src/main/java/i2p/bote/I2PBote.java:729
msgid "The old password is not correct."
msgstr "Mật khẩu cũ không đúng."
#: src/main/java/i2p/bote/I2PBote.java:726
#: src/main/java/i2p/bote/I2PBote.java:731
msgid "The new password and the confirmation password do not match."
msgstr "Mật khẩu mới và mật khẩu xác nhận không khớp."
#: src/main/java/i2p/bote/I2PBote.java:733
#: src/main/java/i2p/bote/I2PBote.java:738
msgid "Re-encrypting identities"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:736
#: src/main/java/i2p/bote/I2PBote.java:741
msgid "Re-encrypting addressbook"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:739
#: src/main/java/i2p/bote/I2PBote.java:744
msgid "Re-encrypting folder"
msgstr ""
#: src/main/java/i2p/bote/I2PBote.java:743
#: src/main/java/i2p/bote/I2PBote.java:748
msgid "Updating password file"
msgstr ""
@ -144,60 +144,64 @@ msgstr "(Không)"
msgid "(S)"
msgstr "(S)"
#: src/main/java/i2p/bote/util/GeneralHelper.java:101
#: src/main/java/i2p/bote/util/GeneralHelper.java:125
msgid "Not set."
msgstr ""
#: src/main/java/i2p/bote/util/GeneralHelper.java:151
#: src/main/java/i2p/bote/util/GeneralHelper.java:175
msgid "Invalid ID number for CryptoImplementation: "
msgstr "Số ID không đúng để làm mã hóa:"
#: src/main/java/i2p/bote/web/JSPHelper.java:236
#: src/main/java/i2p/bote/web/JSPHelper.java:241
msgid "Queued"
msgstr "Xếp hàng"
#: src/main/java/i2p/bote/web/JSPHelper.java:238
#: src/main/java/i2p/bote/web/JSPHelper.java:243
msgid "Sending"
msgstr "Gửi"
#: src/main/java/i2p/bote/web/JSPHelper.java:240
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#, java-format
msgid "Sent to {0} out of {1} recipients"
msgstr "Gửi đến {0} trong số {1} người nhận"
#: src/main/java/i2p/bote/web/JSPHelper.java:243
#: src/main/java/i2p/bote/web/JSPHelper.java:248
msgid "Email sent"
msgstr ""
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#: src/main/java/i2p/bote/web/JSPHelper.java:250
msgid "Gateway disabled"
msgstr "Cổng ra không chạy"
#: src/main/java/i2p/bote/web/JSPHelper.java:247
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#, java-format
msgid "No identity matches the sender/from field: {0}"
msgstr ""
#: src/main/java/i2p/bote/web/JSPHelper.java:250
#: src/main/java/i2p/bote/web/JSPHelper.java:255
#, java-format
msgid "Invalid recipient address: {0}"
msgstr "Địa chỉ người nhận sai: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#: src/main/java/i2p/bote/web/JSPHelper.java:257
#, java-format
msgid "Error creating email packets: {0}"
msgstr "Có lỗi khi tạo ra cái gói thư: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:254
#: src/main/java/i2p/bote/web/JSPHelper.java:259
#, java-format
msgid "Error while sending email: {0}"
msgstr "Có lỗi khi gửi thư ra: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:256
#: src/main/java/i2p/bote/web/JSPHelper.java:261
#, java-format
msgid "Error saving email metadata: {0}"
msgstr ""
#: src/main/java/i2p/bote/web/JSPHelper.java:282
msgid "New email received"
msgstr ""
#: src/main/java/i2p/bote/web/PeerInfoTag.java:88
#: src/main/java/i2p/bote/web/PeerInfoTag.java:194
msgid "Kademlia Peers:"
@ -407,6 +411,16 @@ msgstr ""
msgid "About"
msgstr "Giới thiệu"
#: src/main/webapp/header.jsp
msgid ""
"For I2P-Bote to function properly, you must download the JCE Unlimited "
"Strength Jurisdiction Policy files and move them into this folder:"
msgstr ""
#: src/main/webapp/header.jsp
msgid "Guide"
msgstr ""
#: src/main/webapp/clearPasswordCache.jsp
msgid "Password Cleared"
msgstr "Mật khẩu được tẩy sạch"
@ -704,6 +718,10 @@ msgstr "Sổ địa chỉ trống."
msgid "Name"
msgstr "Tên"
#: src/main/webapp/addressBook.jsp
msgid "Text"
msgstr ""
#: src/main/webapp/addressBook.jsp
msgid "Email Destination"
msgstr "Email Đến"
@ -1183,6 +1201,10 @@ msgstr ""
msgid "Code fixes, translation updates from tx"
msgstr ""
#: src/main/webapp/about.jsp
msgid "Code fixes"
msgstr ""
#: src/main/webapp/setPassword.jsp
msgid "Set Password"
msgstr "Làm Mật Khẩu"

View File

@ -7,9 +7,9 @@ msgid ""
msgstr ""
"Project-Id-Version: I2P\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-09-12 14:29+0000\n"
"PO-Revision-Date: 2015-08-05 02:14+0000\n"
"Last-Translator: YF <yfdyh000@gmail.com>\n"
"POT-Creation-Date: 2015-11-19 04:57+0000\n"
"PO-Revision-Date: 2015-11-19 04:44+0000\n"
"Last-Translator: str4d <str4d@i2pmail.org>\n"
"Language-Team: Chinese (China) (http://www.transifex.com/otf/I2P/language/"
"zh_CN/)\n"
"Language: zh_CN\n"
@ -30,35 +30,35 @@ msgstr "亮蓝"
msgid "Vanilla"
msgstr "香草白"
#: src/main/java/i2p/bote/I2PBote.java:516
#: src/main/java/i2p/bote/I2PBote.java:519
msgid "No identity matches the sender/from field: "
msgstr "没有身份密钥与寄件者/收件人相匹配: "
#: src/main/java/i2p/bote/I2PBote.java:721
#: src/main/java/i2p/bote/I2PBote.java:726
msgid "Checking password"
msgstr "正在检查密码"
#: src/main/java/i2p/bote/I2PBote.java:724
#: src/main/java/i2p/bote/I2PBote.java:729
msgid "The old password is not correct."
msgstr "旧密码不正确。"
#: src/main/java/i2p/bote/I2PBote.java:726
#: src/main/java/i2p/bote/I2PBote.java:731
msgid "The new password and the confirmation password do not match."
msgstr "新密码与确认密码字段输入相符。"
#: src/main/java/i2p/bote/I2PBote.java:733
#: src/main/java/i2p/bote/I2PBote.java:738
msgid "Re-encrypting identities"
msgstr "重新加密身份"
#: src/main/java/i2p/bote/I2PBote.java:736
#: src/main/java/i2p/bote/I2PBote.java:741
msgid "Re-encrypting addressbook"
msgstr "重新加密地址簿"
#: src/main/java/i2p/bote/I2PBote.java:739
#: src/main/java/i2p/bote/I2PBote.java:744
msgid "Re-encrypting folder"
msgstr "重新加密文件夹"
#: src/main/java/i2p/bote/I2PBote.java:743
#: src/main/java/i2p/bote/I2PBote.java:748
msgid "Updating password file"
msgstr "正在更新密码文件"
@ -146,60 +146,64 @@ msgstr "(无)"
msgid "(S)"
msgstr "(S)"
#: src/main/java/i2p/bote/util/GeneralHelper.java:101
#: src/main/java/i2p/bote/util/GeneralHelper.java:125
msgid "Not set."
msgstr "未设置"
#: src/main/java/i2p/bote/util/GeneralHelper.java:151
#: src/main/java/i2p/bote/util/GeneralHelper.java:175
msgid "Invalid ID number for CryptoImplementation: "
msgstr "加密算法的ID无效"
#: src/main/java/i2p/bote/web/JSPHelper.java:236
#: src/main/java/i2p/bote/web/JSPHelper.java:241
msgid "Queued"
msgstr "队列中等待发送"
#: src/main/java/i2p/bote/web/JSPHelper.java:238
#: src/main/java/i2p/bote/web/JSPHelper.java:243
msgid "Sending"
msgstr "正在发送"
#: src/main/java/i2p/bote/web/JSPHelper.java:240
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#, java-format
msgid "Sent to {0} out of {1} recipients"
msgstr "已发送至{0}位收件人(共{1}位)"
#: src/main/java/i2p/bote/web/JSPHelper.java:243
#: src/main/java/i2p/bote/web/JSPHelper.java:248
msgid "Email sent"
msgstr "邮件已发送"
#: src/main/java/i2p/bote/web/JSPHelper.java:245
#: src/main/java/i2p/bote/web/JSPHelper.java:250
msgid "Gateway disabled"
msgstr "邮件网关已禁用"
#: src/main/java/i2p/bote/web/JSPHelper.java:247
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#, java-format
msgid "No identity matches the sender/from field: {0}"
msgstr "没有身份与寄件者/收件人相匹配: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:250
#: src/main/java/i2p/bote/web/JSPHelper.java:255
#, java-format
msgid "Invalid recipient address: {0}"
msgstr "收件人地址无效: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:252
#: src/main/java/i2p/bote/web/JSPHelper.java:257
#, java-format
msgid "Error creating email packets: {0}"
msgstr "重建邮件数据包时发生错误: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:254
#: src/main/java/i2p/bote/web/JSPHelper.java:259
#, java-format
msgid "Error while sending email: {0}"
msgstr "发送邮件时发生错误: {0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:256
#: src/main/java/i2p/bote/web/JSPHelper.java:261
#, java-format
msgid "Error saving email metadata: {0}"
msgstr "保存邮件元信息时出错:{0}"
#: src/main/java/i2p/bote/web/JSPHelper.java:282
msgid "New email received"
msgstr "收到新邮件"
#: src/main/java/i2p/bote/web/PeerInfoTag.java:88
#: src/main/java/i2p/bote/web/PeerInfoTag.java:194
msgid "Kademlia Peers:"
@ -409,6 +413,18 @@ msgstr "常见问题解答"
msgid "About"
msgstr "关于"
#: src/main/webapp/header.jsp
msgid ""
"For I2P-Bote to function properly, you must download the JCE Unlimited "
"Strength Jurisdiction Policy files and move them into this folder:"
msgstr ""
"为了 I2P-Bote JCE 正常运行,您必须下载 JCE 无限强度司法政策文件,并将其移动到"
"下列文件夹:"
#: src/main/webapp/header.jsp
msgid "Guide"
msgstr "向导"
#: src/main/webapp/clearPasswordCache.jsp
msgid "Password Cleared"
msgstr "密码已清除"
@ -708,6 +724,11 @@ msgstr "地址簿为空。"
msgid "Name"
msgstr "联系人名称"
#: src/main/webapp/addressBook.jsp
#, fuzzy
msgid "Text"
msgstr "文本:"
#: src/main/webapp/addressBook.jsp
msgid "Email Destination"
msgstr "邮箱地址"
@ -1191,6 +1212,10 @@ msgstr "Alpha 测试"
msgid "Code fixes, translation updates from tx"
msgstr "TX 代码修复,翻译更新"
#: src/main/webapp/about.jsp
msgid "Code fixes"
msgstr ""
#: src/main/webapp/setPassword.jsp
msgid "Set Password"
msgstr "设置密码"

View File

@ -64,13 +64,13 @@ do
echo "Updating the $i file from the tags..."
# extract strings from java and jsp files, and update messages.po files
# translate calls must be one of the forms:
# _("foo")
# _t("foo")
# _x("foo")
# To start a new translation, copy the header from an old translation to the new .po file,
# then ant distclean poupdate.
find $JPATHS -name *.java > $TMPFILE
xgettext -f $TMPFILE -F -L java --from-code=UTF-8 \
--keyword=_ --keyword=_x \
--keyword=_t --keyword=_x \
-o ${i}t
if [ $? -ne 0 ]
then

View File

@ -21,7 +21,7 @@
package i2p.bote;
import static i2p.bote.Util._;
import static i2p.bote.Util._t;
import i2p.bote.email.EmailIdentity.IdentityConfig;
import i2p.bote.packet.dht.Contact;
@ -65,9 +65,9 @@ public class Configuration implements IdentityConfig {
private static final String TRASH_FOLDER_DIR = "trash"; // relative to I2P_BOTE_SUBDIR
private static final String MIGRATION_VERSION_FILE = "migratedVersion"; // relative to I2P_BOTE_SUBDIR
private static final List<Theme> BUILT_IN_THEMES = Arrays.asList(new Theme[] { // theme IDs correspond to a theme directory in the .war
new Theme("material", _("Material")),
new Theme("lblue", _("Light Blue")),
new Theme("vanilla", _("Vanilla"))
new Theme("material", _t("Material")),
new Theme("lblue", _t("Light Blue")),
new Theme("vanilla", _t("Vanilla"))
});
private static final String THEME_SUBDIR = "themes"; // relative to I2P_BOTE_SUBDIR
@ -738,4 +738,4 @@ public class Configuration implements IdentityConfig {
return true;
}
}
}
}

View File

@ -21,7 +21,7 @@
package i2p.bote;
import static i2p.bote.Util._;
import static i2p.bote.Util._t;
import i2p.bote.addressbook.AddressBook;
import i2p.bote.crypto.wordlist.WordListAnchor;
import i2p.bote.debug.DebugSupport;
@ -128,7 +128,7 @@ import org.apache.commons.configuration.ConfigurationException;
*/
public class I2PBote implements NetworkStatusSource, EmailFolderManager, MailSender, PasswordVerifier {
public static final int PROTOCOL_VERSION = 4;
private static final String APP_VERSION = "0.4.1";
private static final String APP_VERSION = "0.4.2";
private static final int STARTUP_DELAY = 3; // the number of minutes to wait before connecting to I2P (this gives the router time to get ready)
private static volatile I2PBote instance;
@ -473,6 +473,9 @@ public class I2PBote implements NetworkStatusSource, EmailFolderManager, MailSen
public Contact lookupInDirectory(String name) throws InterruptedException {
Hash key = EmailIdentity.calculateHash(name);
if(null == dht){
return null;
}
DhtResults results = dht.findOne(key, Contact.class);
if (!results.isEmpty()) {
DhtStorablePacket packet = results.getPackets().iterator().next();
@ -513,7 +516,7 @@ public class I2PBote implements NetworkStatusSource, EmailFolderManager, MailSen
String sender = email.getOneFromAddress();
EmailIdentity senderIdentity = identities.extractIdentity(sender);
if (senderIdentity == null)
throw new MessagingException(_("No identity matches the sender/from field: " + sender));
throw new MessagingException(_t("No identity matches the sender/from field: " + sender));
email.sign(senderIdentity, identities);
}
@ -524,11 +527,13 @@ public class I2PBote implements NetworkStatusSource, EmailFolderManager, MailSen
}
public synchronized void checkForMail() throws PasswordException, IOException, GeneralSecurityException {
emailChecker.checkForMail();
if (emailChecker != null)
emailChecker.checkForMail();
}
public synchronized void checkForMail(String key) throws PasswordException, IOException, GeneralSecurityException {
emailChecker.checkForMail(key);
if (emailChecker != null)
emailChecker.checkForMail(key);
}
/**
@ -718,29 +723,29 @@ public class I2PBote implements NetworkStatusSource, EmailFolderManager, MailSen
StatusListener lsnr) throws IOException, GeneralSecurityException, PasswordException {
File passwordFile = configuration.getPasswordFile();
lsnr.updateStatus(_("Checking password"));
lsnr.updateStatus(_t("Checking password"));
if (!FileEncryptionUtil.isPasswordCorrect(oldPassword, passwordFile))
throw new PasswordException(_("The old password is not correct."));
throw new PasswordException(_t("The old password is not correct."));
if (!Arrays.equals(newPassword, confirmNewPassword))
throw new PasswordException(_("The new password and the confirmation password do not match."));
throw new PasswordException(_t("The new password and the confirmation password do not match."));
// lock so no files are encrypted with the old password while the password is being changed
synchronized(passwordCache) {
passwordCache.setPassword(newPassword);
DerivedKey newKey = passwordCache.getKey();
lsnr.updateStatus(_("Re-encrypting identities"));
lsnr.updateStatus(_t("Re-encrypting identities"));
identities.changePassword(oldPassword, newKey);
lsnr.updateStatus(_("Re-encrypting addressbook"));
lsnr.updateStatus(_t("Re-encrypting addressbook"));
addressBook.changePassword(oldPassword, newKey);
for (EmailFolder folder: getEmailFolders()) {
lsnr.updateStatus(_("Re-encrypting folder") + " " + folder.getName());
lsnr.updateStatus(_t("Re-encrypting folder") + " " + folder.getName());
folder.changePassword(oldPassword, newKey);
}
lsnr.updateStatus(_("Updating password file"));
lsnr.updateStatus(_t("Updating password file"));
FileEncryptionUtil.writePasswordFile(passwordFile, passwordCache.getPassword(), newKey);
}
}

View File

@ -133,7 +133,7 @@ public class Util {
formatter.setMaximumFractionDigits(1);
else
formatter.setMaximumFractionDigits(0);
return _(messageKey, formatter.format(value));
return _t(messageKey, formatter.format(value));
}
/**
@ -317,15 +317,15 @@ public class Util {
}
}
public static String _(String messageKey) {
public static String _t(String messageKey) {
return Translate.getString(messageKey, I2PAppContext.getGlobalContext(), BUNDLE_NAME);
}
public static String _(String messageKey, Object parameter) {
public static String _t(String messageKey, Object parameter) {
return Translate.getString(messageKey, parameter, I2PAppContext.getGlobalContext(), BUNDLE_NAME);
}
public static String _(String messageKey, Object parameter1, Object parameter2) {
public static String _t(String messageKey, Object parameter1, Object parameter2) {
return Translate.getString(messageKey, parameter1, parameter2, I2PAppContext.getGlobalContext(), BUNDLE_NAME);
}
@ -453,4 +453,4 @@ public class Util {
throw new NumberFormatException("Can't convert value <" + stringValue + "> for parameter <" + parameterName + "> to int.");
}
}
}
}

View File

@ -42,7 +42,7 @@ public class ECDH256_ECDSA256 extends ECDH_ECDSA {
@Override
public String getName() {
return Util._("256-bit Elliptic Curve Encryption");
return Util._t("256-bit Elliptic Curve Encryption");
}
@Override
@ -94,4 +94,4 @@ public class ECDH256_ECDSA256 extends ECDH_ECDSA {
System.arraycopy(sigKeyBytes, 0, bytes, encrKeyBytes.length, sigKeyBytes.length);
return createPrivateKeyPair(bytes);
}
}
}

View File

@ -47,7 +47,7 @@ public class ECDH521_ECDSA521 extends ECDH_ECDSA {
@Override
public String getName() {
return Util._("521-bit Elliptic Curve Encryption");
return Util._t("521-bit Elliptic Curve Encryption");
}
@Override
@ -104,4 +104,4 @@ public class ECDH521_ECDSA521 extends ECDH_ECDSA {
byte[] bytes = Base64.decode(base64);
return createPrivateKeyPair(bytes);
}
}
}

View File

@ -27,7 +27,7 @@ public class ECUtils {
ECPoint point,
boolean withCompression) {
org.bouncycastle.math.ec.ECPoint bcPoint = EC5Util.convertPoint(ecSpec, point, withCompression);
return bcPoint.getEncoded();
return bcPoint.getEncoded(true);
}
public static ECPoint decodePoint(

View File

@ -55,7 +55,7 @@ public class ElGamal2048_DSA1024 extends AbstractCryptoImplementation {
@Override
public String getName() {
return Util._("2048-bit ElGamal Encryption");
return Util._t("2048-bit ElGamal Encryption");
}
@Override
@ -314,4 +314,4 @@ public class ElGamal2048_DSA1024 extends AbstractCryptoImplementation {
super(i2pPrivateKey, "DSA-1024");
}
}
}
}

View File

@ -112,7 +112,7 @@ public class NTRUEncrypt1087_GMSS512 extends AbstractCryptoImplementation {
@Override
public String getName() {
return Util._("NTRU-1087 Encryption");
return Util._t("NTRU-1087 Encryption");
}
@Override
@ -499,4 +499,4 @@ public class NTRUEncrypt1087_GMSS512 extends AbstractCryptoImplementation {
return Arrays.equals(getEncoded(), otherKey.getEncoded());
}
}
}
}

View File

@ -21,7 +21,7 @@
package i2p.bote.email;
import static i2p.bote.Util._;
import static i2p.bote.Util._t;
import i2p.bote.UniqueId;
import i2p.bote.crypto.CryptoFactory;
import i2p.bote.crypto.CryptoImplementation;
@ -469,7 +469,7 @@ public class Email extends MimeMessage {
try {
checkSender(address);
} catch (AddressException e) {
String errorMessage = _("Address doesn't contain an Email Destination or an external address: {0}", address);
String errorMessage = _t("Address doesn't contain an Email Destination or an external address: {0}", address);
log.debug(errorMessage, e);
throw new DataFormatException(errorMessage);
}
@ -481,7 +481,7 @@ public class Email extends MimeMessage {
try {
checkRecipient(address);
} catch (AddressException e) {
String errorMessage = _("Address doesn't contain an Email Destination or an external address: {0}", address);
String errorMessage = _t("Address doesn't contain an Email Destination or an external address: {0}", address);
log.debug(errorMessage, e);
throw new DataFormatException(errorMessage);
}
@ -503,7 +503,7 @@ public class Email extends MimeMessage {
// check for external address
// InternetAddress accepts addresses without a domain, so check that there is a '.' after the '@'
if (addr.indexOf('@') >= addr.indexOf('.'))
throw new AddressException(_("Invalid address: {0}", addr));
throw new AddressException(_t("Invalid address: {0}", addr));
}
}
/*
@ -1098,4 +1098,4 @@ public class Email extends MimeMessage {
}
return result.toString();
}
}
}

View File

@ -21,7 +21,7 @@
package i2p.bote.email;
import static i2p.bote.Util._;
import static i2p.bote.Util._t;
import i2p.bote.Configuration;
import i2p.bote.Util;
import i2p.bote.crypto.CryptoFactory;
@ -73,7 +73,7 @@ public class EmailIdentity extends EmailDestination {
vanityPrefix = null;
if (vanityPrefix!=null && !cryptoImpl.getBase64InitialCharacters().contains(vanityPrefix.substring(0, 1))) {
String errorMsg = "This encryption type does not support destinations that start with a \"{0}\". Valid initial characters are {1}.";
throw new IllegalDestinationParametersException(_(errorMsg, vanityPrefix.charAt(0), cryptoImpl.getBase64InitialCharacters()));
throw new IllegalDestinationParametersException(_t(errorMsg, vanityPrefix.charAt(0), cryptoImpl.getBase64InitialCharacters()));
}
KeyPair encryptionKeys;
@ -415,4 +415,4 @@ public class EmailIdentity extends EmailDestination {
}
}
}
}
}

View File

@ -399,6 +399,14 @@ public class EmailFolder extends Folder<Email> {
return numNew;
}
public Email getLatestUnreadEmail() throws PasswordException {
for (Email email : getElements()) {
if (email.isUnread())
return email;
}
return null;
}
public void setRecent(String messageId, boolean isRecent) throws PasswordException, GeneralSecurityException {
EmailMetadata metadata = getMetadata(messageId);
metadata.setRecent(isRecent);

View File

@ -21,7 +21,7 @@
package i2p.bote.imap;
import static i2p.bote.Util._;
import static i2p.bote.Util._t;
import i2p.bote.email.Email;
import i2p.bote.fileencryption.PasswordException;
import i2p.bote.folder.EmailFolder;
@ -97,7 +97,7 @@ public class BoteMailbox extends SimpleMailbox<String> {
messageMap.put(email, new BoteMessage(email, getFolderName()));
updateMessages();
} catch (PasswordException e) {
throw new RuntimeException(_("Password required or invalid password provided"), e);
throw new RuntimeException(_t("Password required or invalid password provided"), e);
}
}
@ -111,7 +111,7 @@ public class BoteMailbox extends SimpleMailbox<String> {
messageMap.put(email, new BoteMessage(email, getFolderName()));
updateMessages();
} catch (PasswordException e) {
throw new RuntimeException(_("Password required or invalid password provided"), e);
throw new RuntimeException(_t("Password required or invalid password provided"), e);
} catch (MessagingException e) {
// TODO Auto-generated catch block
e.printStackTrace();

View File

@ -21,7 +21,7 @@
package i2p.bote.imap;
import static i2p.bote.Util._;
import static i2p.bote.Util._t;
import i2p.bote.folder.EmailFolder;
import i2p.bote.folder.EmailFolderManager;
@ -315,7 +315,7 @@ class MapperFactory extends MailboxSessionMapperFactory<String> {
@Override
public void delete(Mailbox<String> mailbox) throws MailboxException {
throw new MailboxException(_("Deletion of mailboxes is not currently supported."));
throw new MailboxException(_t("Deletion of mailboxes is not currently supported."));
}
@Override
@ -325,4 +325,4 @@ class MapperFactory extends MailboxSessionMapperFactory<String> {
}
};
}
}
}

View File

@ -96,7 +96,9 @@ class MigrateTo028 {
else
return true;
}
return firstLine.startsWith("Default=") || firstLine.startsWith("identity0.");
return firstLine.startsWith("Default=") ||
firstLine.startsWith("default=") ||
firstLine.startsWith("identity0.");
}
/**

View File

@ -34,6 +34,7 @@ import java.io.IOException;
import java.util.List;
import net.i2p.util.Log;
import net.i2p.util.VersionComparator;
public class Migrator {
private Log log = new Log(Migrator.class);
@ -47,47 +48,59 @@ public class Migrator {
lastMigrationVersion = getLastSuccessfulMigration();
log.debug("Last migration was to version <" + lastMigrationVersion + ">. Current version is <" + currentVersion + ">.");
}
/**
* Migrates files that are not encrypted, or encrypted with the default password.
*/
public void migrateNonPasswordedDataIfNeeded() {
if (lastMigrationVersion.compareTo(currentVersion) >= 0) {
if (VersionComparator.comp(lastMigrationVersion, currentVersion) >= 0) {
log.debug("No plaintext migration needed.");
return;
}
try {
if (lastMigrationVersion.compareTo("0.2.6") < 0)
boolean migrationSucceeded = true;
if (VersionComparator.comp(lastMigrationVersion, "0.2.6") < 0)
new MigrateTo026().migrateIfNeeded(configuration);
new MigrateTo027().migrateIfNeeded(configuration);
PasswordCache defaultPasswordHolder = new PasswordCache(configuration);
try {
new MigrateTo028().migrateIfNeeded(configuration, defaultPasswordHolder);
} catch (PasswordException e) {
log.debug("Non-default password in use, deferring migration of encrypted files to after password entry");
if (VersionComparator.comp(lastMigrationVersion, "0.2.7") < 0)
new MigrateTo027().migrateIfNeeded(configuration);
if (VersionComparator.comp(lastMigrationVersion, "0.2.8") < 0) {
PasswordCache defaultPasswordHolder = new PasswordCache(configuration);
try {
new MigrateTo028().migrateIfNeeded(configuration, defaultPasswordHolder);
} catch (PasswordException e) {
log.debug("Non-default password in use, deferring migration of encrypted files to after password entry");
migrationSucceeded = false;
}
}
if (migrationSucceeded) {
log.debug("Migration successful, setting last successful migration to <" + currentVersion + ">.");
setLastSuccessfulMigration(currentVersion);
}
}
catch (Exception e) {
log.error("Error migrating to the latest version.", e);
}
}
/**
* Migrates password-protected files. This method assumes it is
* called after {@link #migrateNonPasswordedDataIfNeeded()}.
* @param passwordHolder
*/
public void migratePasswordedDataIfNeeded(PasswordHolder passwordHolder) {
if (lastMigrationVersion.compareTo(currentVersion) >= 0) {
if (VersionComparator.comp(lastMigrationVersion, currentVersion) >= 0) {
log.debug("No encrypted-file migration needed.");
return;
}
try {
new MigrateTo028().migrateIfNeeded(configuration, passwordHolder);
if (VersionComparator.comp(lastMigrationVersion, "0.2.8") < 0)
new MigrateTo028().migrateIfNeeded(configuration, passwordHolder);
// we're assuming migrateNonPasswordedDataIfNeeded() ran already
log.debug("Encrypted-file migration successful, setting last successful migration to <" + currentVersion + ">.");
setLastSuccessfulMigration(currentVersion);
@ -96,7 +109,7 @@ public class Migrator {
log.error("Error migrating to the latest version.", e);
}
}
/**
* Returns the version to which the I2P-Bote data directory was last migrated to.
* If there has never been a migration, zero is returned.
@ -105,14 +118,14 @@ public class Migrator {
File versionFile = configuration.getMigrationVersionFile();
if (!versionFile.exists())
return "0";
List<String> lines = Util.readLines(versionFile);
if (lines.isEmpty())
return "0";
return lines.get(0);
}
/**
* Writes the version to which the I2P-Bote data directory was last migrated to,
* to a file.

View File

@ -21,7 +21,7 @@
package i2p.bote.network;
import static i2p.bote.Util._;
import static i2p.bote.Util._t;
import i2p.bote.packet.I2PBotePacket;
import java.util.ArrayList;
@ -77,6 +77,6 @@ public class BanList {
if (packet.isProtocolVersionOk())
unban(peer);
else
ban(peer, _("Wrong protocol version:") + " " + packet.getProtocolVersion());
ban(peer, _t("Wrong protocol version:") + " " + packet.getProtocolVersion());
}
}
}

View File

@ -22,11 +22,10 @@
package i2p.bote.network.kademlia;
import java.math.BigInteger;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.Iterator;
import java.util.List;
import java.util.concurrent.CopyOnWriteArrayList;
import net.i2p.data.Destination;
import net.i2p.data.Hash;
@ -46,7 +45,7 @@ abstract class AbstractBucket implements Iterable<KademliaPeer> {
protected int capacity;
public AbstractBucket(int capacity) {
peers = Collections.synchronizedList(new ArrayList<KademliaPeer>());
peers = new CopyOnWriteArrayList<KademliaPeer>();
this.capacity = capacity;
}

View File

@ -21,7 +21,7 @@
package i2p.bote.network.kademlia;
import static i2p.bote.Util._;
import static i2p.bote.Util._t;
import i2p.bote.I2PBote;
import i2p.bote.Util;
import i2p.bote.network.DhtPeerStats;
@ -44,7 +44,7 @@ class KademliaPeerStats implements DhtPeerStats {
private List<List<String>> data;
KademliaPeerStats(SBucket sBucket, List<KBucket> kBuckets, Hash localDestinationHash) {
String[] headerArray = new String[] {_("Peer"), _("I2P Destination"), _("BktPfx"), _("Distance"), _("Locked?"), _("First Seen")};
String[] headerArray = new String[] {_t("Peer"), _t("I2P Destination"), _t("BktPfx"), _t("Distance"), _t("Locked?"), _t("First Seen")};
header = Arrays.asList(headerArray);
data = new ArrayList<List<String>>();
@ -64,7 +64,7 @@ class KademliaPeerStats implements DhtPeerStats {
row.add(getBucketPrefix(bucket));
BigInteger distance = KademliaUtil.getDistance(localDestinationHash, peer.calculateHash());
row.add(distance.shiftRight((Hash.HASH_LENGTH-2)*8).toString()); // show the 2 most significant bytes
row.add(String.valueOf(peer.isLocked() ? _("Yes")+"("+(peer.getConsecTimeouts())+")" : _("No")));
row.add(String.valueOf(peer.isLocked() ? _t("Yes")+"("+(peer.getConsecTimeouts())+")" : _t("No")));
String firstSeen = formatter.format(peer.getFirstSeen());
row.add(String.valueOf(firstSeen));
data.add(row);
@ -81,12 +81,12 @@ class KademliaPeerStats implements DhtPeerStats {
KBucket kBucket = (KBucket)bucket;
String prefix = kBucket.getBucketPrefix();
if (prefix.isEmpty())
return _("(None)");
return _t("(None)");
else
return prefix;
}
else
return _("(S)");
return _t("(S)");
}
@Override
@ -98,4 +98,4 @@ class KademliaPeerStats implements DhtPeerStats {
public List<List<String>> getData() {
return data;
}
}
}

View File

@ -81,6 +81,17 @@ public abstract class CommunicationPacket extends I2PBotePacket {
* @throws MalformedPacketException
*/
public static CommunicationPacket createPacket(byte[] data) throws MalformedPacketException {
if (data == null) {
Log log = new Log(CommunicationPacket.class);
log.error("Packet data is null");
return null;
}
if (data.length < HEADER_LENGTH) {
Log log = new Log(CommunicationPacket.class);
log.error("Packet is too short to be a CommunicationPacket");
return null;
}
char packetTypeCode = (char)data[4]; // byte 4 of a communication packet is the packet type code
Class<? extends I2PBotePacket> packetType = decodePacketTypeCode(packetTypeCode);
if (packetType==null || !CommunicationPacket.class.isAssignableFrom(packetType)) {
@ -118,6 +129,8 @@ public abstract class CommunicationPacket extends I2PBotePacket {
* @param packet
*/
static boolean isPrefixValid(byte[] packet) {
if (packet == null || packet.length < PACKET_PREFIX.length)
return false;
for (int i=0; i<PACKET_PREFIX.length; i++)
if (packet[i] != PACKET_PREFIX[i])
return false;

View File

@ -90,6 +90,11 @@ public abstract class DataPacket extends I2PBotePacket {
* @throws MalformedPacketException If the byte array does not contain a valid <code>DataPacket</code>.
*/
public static DataPacket createPacket(byte[] data) throws MalformedPacketException {
if (data == null)
throw new MalformedPacketException("Packet data is null");
if (data.length < HEADER_LENGTH)
throw new MalformedPacketException("Packet is too short to be a DataPacket");
char packetTypeCode = (char)data[0]; // first byte of a data packet is the packet type code
Class<? extends I2PBotePacket> packetType = decodePacketTypeCode(packetTypeCode);
if (packetType==null || !DataPacket.class.isAssignableFrom(packetType))

View File

@ -55,12 +55,15 @@ import java.util.List;
import java.util.Properties;
import java.util.regex.Pattern;
import javax.crypto.Cipher;
import javax.crypto.spec.SecretKeySpec;
import javax.mail.Address;
import javax.mail.MessagingException;
import net.i2p.data.Destination;
import net.i2p.util.Log;
import net.i2p.util.RandomSource;
import net.i2p.util.SystemVersion;
/**
* General helper functions used by all UIs.
@ -68,6 +71,27 @@ import net.i2p.util.RandomSource;
public class GeneralHelper {
private static AddressDisplayFilter ADDRESS_DISPLAY_FILTER;
private static GeneralHelper instance;
private static final boolean _isUnlimited;
// TODO: Remove this and bump min-i2p-version to 0.9.23
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;
}
public GeneralHelper() {
}
@ -98,7 +122,7 @@ public class GeneralHelper {
Destination dest = I2PBote.getInstance().getLocalDestination();
if (dest != null)
return Util.toBase32(dest);
return Util._("Not set.");
return Util._t("Not set.");
}
/**
@ -148,7 +172,7 @@ public class GeneralHelper {
if (createNew) {
CryptoImplementation cryptoImpl = CryptoFactory.getInstance(cryptoImplId);
if (cryptoImpl == null) {
String errorMsg = Util._("Invalid ID number for CryptoImplementation: " + cryptoImplId);
String errorMsg = Util._t("Invalid ID number for CryptoImplementation: " + cryptoImplId);
log.error(errorMsg);
throw new IllegalArgumentException(errorMsg);
}
@ -482,6 +506,13 @@ public class GeneralHelper {
else return I2PBote.getInstance().getIdentities().contains(destination);
}
public static String machineDateFormat() {
if (SystemVersion.isJava7() && !SystemVersion.isAndroid())
return "yyyy-MM-dd HH:mmXXX";
else
return "yyyy-MM-dd HH:mmZZZZZ";
}
public static String getNameAndDestination(String address) throws PasswordException, IOException, GeneralSecurityException {
return getAddressDisplayFilter().getNameAndDestination(address);
}
@ -584,4 +615,12 @@ public class GeneralHelper {
public static String getFileSize(String filename) {
return Util.getHumanReadableSize(new File(filename));
}
public boolean getRequiredCryptoStrengthSatisfied() {
return _isUnlimited;
}
public String getJREHome() {
return System.getProperty("java.home");
}
}

View File

@ -21,15 +21,19 @@
package i2p.bote.web;
import static i2p.bote.Util._;
import static i2p.bote.Util._t;
import i2p.bote.I2PBote;
import i2p.bote.email.Email;
import i2p.bote.fileencryption.PasswordException;
import i2p.bote.folder.Outbox.EmailStatus;
import i2p.bote.util.GeneralHelper;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.MalformedURLException;
import java.net.URLDecoder;
import java.net.URLEncoder;
import java.security.GeneralSecurityException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
@ -39,6 +43,7 @@ import java.util.Map;
import java.util.SortedMap;
import java.util.TreeMap;
import javax.mail.MessagingException;
import javax.servlet.ServletContext;
import javax.servlet.ServletRequest;
@ -233,29 +238,48 @@ public class JSPHelper extends GeneralHelper {
EmailStatus emailStatus = getEmailStatus(email);
switch (emailStatus.getStatus()) {
case QUEUED:
return _("Queued");
return _t("Queued");
case SENDING:
return _("Sending");
return _t("Sending");
case SENT_TO:
return _("Sent to {0} out of {1} recipients",
return _t("Sent to {0} out of {1} recipients",
emailStatus.getParam1(), emailStatus.getParam2());
case EMAIL_SENT:
return _("Email sent");
return _t("Email sent");
case GATEWAY_DISABLED:
return _("Gateway disabled");
return _t("Gateway disabled");
case NO_IDENTITY_MATCHES:
return _("No identity matches the sender/from field: {0}",
return _t("No identity matches the sender/from field: {0}",
emailStatus.getParam1());
case INVALID_RECIPIENT:
return _("Invalid recipient address: {0}", emailStatus.getParam1());
return _t("Invalid recipient address: {0}", emailStatus.getParam1());
case ERROR_CREATING_PACKETS:
return _("Error creating email packets: {0}", emailStatus.getParam1());
return _t("Error creating email packets: {0}", emailStatus.getParam1());
case ERROR_SENDING:
return _("Error while sending email: {0}", emailStatus.getParam1());
return _t("Error while sending email: {0}", emailStatus.getParam1());
case ERROR_SAVING_METADATA:
return _("Error saving email metadata: {0}", emailStatus.getParam1());
return _t("Error saving email metadata: {0}", emailStatus.getParam1());
default:
return "";
}
}
}
public String getNewEmailNotificationContent() {
String title = "I2P-Bote";
String body = "";
try {
Email email = I2PBote.getInstance().getInbox().getLatestUnreadEmail();
if (email != null) {
title = "I2P-Bote: " + getNameAndShortDestination(email.getOneFromAddress());
body = email.getSubject();
}
} catch (PasswordException e) {
} catch (MessagingException e) {
} catch (IOException e) {
} catch (GeneralSecurityException e) {
}
if (body == "")
body = _t("New email received");
return "<script>\nnotifTitle=\"" + title + "\";\nnotifBody=\"" + body + "\";\n</script>";
}
}

View File

@ -77,7 +77,7 @@ public class MessageTag extends BodyTagSupport {
if (hide && I2PBote.getInstance().getConfiguration().getHideLocale())
translation = key;
else
translation = Util._(key);
translation = Util._t(key);
// replace {0}, {1},... with param values
do {
@ -183,4 +183,4 @@ public class MessageTag extends BodyTagSupport {
void addParameter(String param) {
parameters.add(param);
}
}
}

View File

@ -22,7 +22,7 @@
package i2p.bote.web;
import static i2p.bote.Util._;
import static i2p.bote.Util._t;
import i2p.bote.I2PBote;
import i2p.bote.Util;
import i2p.bote.network.BannedPeer;
@ -85,7 +85,7 @@ public class PeerInfoTag extends SimpleTagSupport {
out.println("</div>");
out.println("<br>");
out.println("<span class=\"subheading\">" + _("Kademlia Peers:") + " " + numDhtPeers + "</span>");
out.println("<span class=\"subheading\">" + _t("Kademlia Peers:") + " " + numDhtPeers + "</span>");
if (numDhtPeers > 0) {
out.println("<table");
@ -109,13 +109,13 @@ public class PeerInfoTag extends SimpleTagSupport {
out.println("<br/>");
// Print relay peer info
out.println("<span class=\"subheading\">" + _("Relay Peers:") + " " + relayPeers.length + "</span>");
out.println("<span class=\"subheading\">" + _t("Relay Peers:") + " " + relayPeers.length + "</span>");
if (relayPeers.length > 0) {
out.println("<table");
out.println("<tr>");
out.println("<th>" + _("Peer") + "</th>");
out.println("<th>" + _("I2P Destination") + "</th>");
out.println("<th>" + _("Reachability %") + "</th>");
out.println("<th>" + _t("Peer") + "</th>");
out.println("<th>" + _t("I2P Destination") + "</th>");
out.println("<th>" + _t("Reachability %") + "</th>");
out.println("</tr>");
int i = 1;
@ -124,7 +124,7 @@ public class PeerInfoTag extends SimpleTagSupport {
out.println("<td>" + i + "</td>");
out.println("<td class=\"ellipsis\">" + Util.toBase32(peer) + "</td>");
int reachability = peer.getReachability();
out.println("<td>" + (reachability == 0 ? _("Untested") : reachability) + "</td>");
out.println("<td>" + (reachability == 0 ? _t("Untested") : reachability) + "</td>");
out.println("</tr>");
i++;
}
@ -135,13 +135,13 @@ public class PeerInfoTag extends SimpleTagSupport {
// List banned peers
Collection<BannedPeer> bannedPeers = I2PBote.getInstance().getBannedPeers();
out.println("<span class=\"subheading\">" + _("Banned Peers:") + " " + bannedPeers.size() + "</span>");
out.println("<span class=\"subheading\">" + _t("Banned Peers:") + " " + bannedPeers.size() + "</span>");
if (bannedPeers.size() > 0) {
out.println("<table>");
out.println("<tr>");
out.println("<th>" + _("Peer") + "</th>");
out.println("<th>" + _("Destination Hash") + "</th>");
out.println("<th>" + _("Ban Reason") + "</th>");
out.println("<th>" + _t("Peer") + "</th>");
out.println("<th>" + _t("Destination Hash") + "</th>");
out.println("<th>" + _t("Ban Reason") + "</th>");
out.println("</tr>");
int peerIndex = 1;
@ -172,26 +172,26 @@ public class PeerInfoTag extends SimpleTagSupport {
} else {
int reachable = 0;
for (List<String> row : dhtStats.getData()) {
if (_("No").equals(row.get(4)))
if (_t("No").equals(row.get(4)))
reachable += 1;
}
int unreachable = numDhtPeers - reachable;
DefaultPieDataset dataset = new DefaultPieDataset();
if (reachable > 0)
dataset.setValue(_("Reachable"), reachable);
dataset.setValue(_t("Reachable"), reachable);
if (unreachable > 0)
dataset.setValue(_("Unreachable"), unreachable);
dataset.setValue(_t("Unreachable"), unreachable);
plot = new RingPlot(dataset);
plot.setSectionPaint(_("Reachable"), Color.green);
plot.setSectionPaint(_("Unreachable"), Color.red);
plot.setSectionPaint(_t("Reachable"), Color.green);
plot.setSectionPaint(_t("Unreachable"), Color.red);
}
plot.setLabelGenerator(null);
plot.setShadowGenerator(null);
JFreeChart dhtChart = new JFreeChart(
_("Kademlia Peers:"), JFreeChart.DEFAULT_TITLE_FONT,
_t("Kademlia Peers:"), JFreeChart.DEFAULT_TITLE_FONT,
plot, numDhtPeers == 0 ? false : true);
return ServletUtilities.saveChartAsPNG(dhtChart, 400, 300, null);
}
@ -218,23 +218,23 @@ public class PeerInfoTag extends SimpleTagSupport {
DefaultPieDataset dataset = new DefaultPieDataset();
if (good > 0)
dataset.setValue(_("Good"), good);
dataset.setValue(_t("Good"), good);
if (bad > 0)
dataset.setValue(_("Unreliable"), bad);
dataset.setValue(_t("Unreliable"), bad);
if (untested > 0)
dataset.setValue(_("Untested"), untested);
dataset.setValue(_t("Untested"), untested);
plot = new RingPlot(dataset);
plot.setSectionPaint(_("Good"), Color.green);
plot.setSectionPaint(_("Unreliable"), Color.red);
plot.setSectionPaint(_("Untested"), Color.orange);
plot.setSectionPaint(_t("Good"), Color.green);
plot.setSectionPaint(_t("Unreliable"), Color.red);
plot.setSectionPaint(_t("Untested"), Color.orange);
}
plot.setLabelGenerator(null);
plot.setShadowGenerator(null);
JFreeChart chart = new JFreeChart(
_("Relay Peers:"), JFreeChart.DEFAULT_TITLE_FONT,
_t("Relay Peers:"), JFreeChart.DEFAULT_TITLE_FONT,
plot, relayPeers.length == 0 ? false : true);
return ServletUtilities.saveChartAsPNG(chart, 400, 300, null);
}
}
}

View File

@ -21,7 +21,7 @@
package i2p.bote.web;
import static i2p.bote.Util._;
import static i2p.bote.Util._t;
import i2p.bote.I2PBote;
import i2p.bote.email.Attachment;
import i2p.bote.email.Email;
@ -70,7 +70,7 @@ public class SendEmailTag extends BodyTagSupport {
Email email = new Email(includeSentTime);
String statusMessage;
if (recipients.isEmpty())
statusMessage = _("Error: Please add at least one recipient.");
statusMessage = _t("Error: Please add at least one recipient.");
else
try {
// set addresses
@ -98,13 +98,13 @@ public class SendEmailTag extends BodyTagSupport {
log.error("Can't clean up attachment: <" + attachment + ">");
}
statusMessage = _("The email has been queued for sending.");
statusMessage = _t("The email has been queued for sending.");
}
catch (PasswordException e) {
throw new JspException(e);
}
catch (Exception e) {
statusMessage = _("Error sending email: {0}", e.getLocalizedMessage());
statusMessage = _t("Error sending email: {0}", e.getLocalizedMessage());
log.error("Error sending email", e);
}
@ -170,4 +170,4 @@ public class SendEmailTag extends BodyTagSupport {
this.address = address;
}
}
}
}

View File

@ -40,7 +40,7 @@
<c:if test="${empty type}">
<c:set var="type" value="both"/>
</c:if>
<fmt:formatDate value="${date}" var="datestr" type="${type}" pattern="yyyy-MM-dd HH:mmX"/>
<fmt:formatDate value="${date}" var="datestr" type="${type}" pattern="${ib:machineDateFormat()}"/>
<fmt:formatDate value="${date}" var="date" type="${type}" timeStyle="${timeStyle}"/>
</c:if>
<c:if test="${empty date and printUnknown eq true}">

View File

@ -637,6 +637,17 @@
</function-signature>
</function>
<function>
<name>machineDateFormat</name>
<description>
Returns a machine-readable Date format string.
</description>
<function-class>i2p.bote.util.GeneralHelper</function-class>
<function-signature>
java.lang.String machineDateFormat()
</function-signature>
</function>
<function>
<name>tryPassword</name>
<description>

View File

@ -47,7 +47,9 @@
<div class="contributor-role"><ib:message key="Technical concept, implementation, user interface"/></div>
</div>
<div>
<div class="contributor-name">str4d</div>
<div class="contributor-name">
<a href="newEmail.jsp?nofilter_recipient0=TzKO~FlShiQEOPkPn7eIOkxqBy6pGxk1NDkVLLwzGk~kNPwo8qvHoyk4vKOZVZNGklsU7iOndYeQofMZtADm5yqbUxhogTmxyu7VcNsw6mXBub26FAUEQADf4Uj4Ph0dGAMyPbWzDEFUibdJyjpLYS9AaHgf~EU8B49DP8rpkh8d0T&amp;recipientType0=to&amp;subject=${subject}" title="${linkTitle}">str4d</a>
</div>
<div class="contributor-role"><ib:message key="User experience, extended features, Android app"/></div>
</div>
<br/>
@ -149,5 +151,9 @@
<div class="contributor-name">KillYourTV</div>
<div class="contributor-role"><ib:message key="Code fixes, translation updates from tx"/></div>
</div>
<div>
<div class="contributor-name">kay</div>
<div class="contributor-role"><ib:message key="Code fixes"/></div>
</div>
<jsp:include page="footer.jsp"/>

View File

@ -57,6 +57,7 @@
<tr>
<c:if test="${param.select}"><th class="header-column-check"></th></c:if>
<th class="header-column-name"><ib:message key="Name"/></th>
<th class="header-column-text"><ib:message key="Text"/></th>
<th class="header-column-addr-email-dest"><ib:message key="Email Destination"/></th>
<c:if test="${not param.select}"><th class="header-column-trash"></th></c:if>
</tr>
@ -84,6 +85,9 @@
</a>
</c:if>
</td>
<td>
${fn:escapeXml(contact.text)}
</td>
<td class="ellipsis">
${contact.destination}
</td>

View File

@ -91,12 +91,38 @@
</form>
</div>
<c:if test="${jspHelperBean.newMailReceived}">
${jspHelperBean.newEmailNotificationContent}
<script language="Javascript">
// refresh folder list to update the new message count
parent.frames[1].location.href = 'folders.jsp';
// If inbox is being displayed, reload so the new email(s) show
if (parent.document.getElementById('inboxFlag'))
parent.location.href = 'folder.jsp?path=Inbox';
function notifyUser() {
var options = {
body: notifBody
}
var n = new Notification(notifTitle, options);
setTimeout(n.close.bind(n), 5000);
}
function checkNotification() {
if ('Notification' in window) {
if (Notification.permission === 'granted') {
notifyUser();
}
else if (Notification.permission !== 'denied') {
Notification.requestPermission(function (permission) {
if (permission === 'granted') {
notifyUser();
}
});
}
}
}
function refreshUI() {
// refresh folder list to update the new message count
parent.frames[1].location.href = 'folders.jsp';
// If inbox is being displayed, reload so the new email(s) show
if (parent.document.getElementById('inboxFlag'))
parent.location.href = 'folder.jsp?path=Inbox';
}
checkNotification();
refreshUI();
</script>
</c:if>
</c:if>

View File

@ -134,8 +134,9 @@
<div class="contact-form-label">
<div class="field-label"><ib:message key="Text:"/></div>
</div>
<div class="contact-form-text">${fn:escapeXml(contact.text)}</div>
<input type="hidden" name="text" value="${contact.text}"/>
<div class="contact-form-value">
<input type="text" size="40" name="text" value="${ib:escapeQuotes(contact.text)}"/>
</div>
<p>&nbsp;</p>
<button name="action" value="save">${submitButtonText}</button>

View File

@ -83,10 +83,14 @@
<iframe src="buttonFrame.jsp" class="button-frame"></iframe>
</div>
<div class="menubox-divider"></div>
<div class="menubox">
<iframe src="folders.jsp?selected=${navSelected}" class="folders-frame"></iframe>
</div>
<div class="menubox-divider"></div>
<div class="menubox">
<h2><ib:message key="Addresses"/></h2>
<a class="menuitem${navSelected == 'identities' ? ' selected' : '' } identities" href="identities.jsp">
@ -105,6 +109,8 @@
--%>
</div>
<div class="menubox-divider"></div>
<div class="menubox">
<h2><ib:message key="Configuration"/></h2>
<a class="menuitem${navSelected == 'settings' ? ' selected' : '' } settings" href="settings.jsp">
@ -113,11 +119,15 @@
</a>
</div>
<div class="menubox-divider"></div>
<div class="menubox">
<h2><ib:message key="Network Status"/></h2>
<iframe src="statusFrame.jsp?selected=${navSelected}" class="status-frame"></iframe>
</div>
<div class="menubox-divider"></div>
<div class="menubox">
<h2><ib:message key="Help"/></h2>
<a class="menuitem${navSelected == 'user-guide' ? ' selected' : '' }" href="userGuide.jsp"><ib:message key="User Guide"/></a>
@ -133,8 +143,30 @@
<section class="main">
</c:if>
<c:if test="${empty infoMessage}"><c:set var="infoMessage" value="${param.infoMessage}"/></c:if>
<c:if test="${not empty infoMessage}"><div class="infoMessage">${fn:escapeXml(infoMessage)}</div></c:if>
<c:if test="${not jspHelperBean.requiredCryptoStrengthSatisfied}">
<ib:message key="For I2P-Bote to function properly, you must download the JCE Unlimited Strength Jurisdiction Policy files and move them into this folder:" var="infoMessage"/>
<c:set var="errorMessage" value="${jspHelperBean.JREHome}/lib/security"/>
<c:set var="snackbarAction" value="userGuide.jsp#Unlimited-Strength-Crypto"/>
<ib:message key="Guide" var="snackbarActionText"/>
</c:if>
<c:if test="${empty infoMessage}"><c:set var="infoMessage" value="${param.infoMessage}"/></c:if>
<c:if test="${empty errorMessage}"><c:set var="errorMessage" value="${param.errorMessage}"/></c:if>
<c:if test="${not empty errorMessage}"><div class="errorMessage">${fn:escapeXml(errorMessage)}</div></c:if>
<c:if test="${not empty infoMessage or not empty errorMessage}">
<div class="snackbar"><div>
<div class="message">
<c:if test="${not empty infoMessage}"><div class="infoMessage">${fn:escapeXml(infoMessage)}</div></c:if>
<c:if test="${not empty errorMessage}"><div class="errorMessage">${fn:escapeXml(errorMessage)}</div></c:if>
</div>
<c:if test="${not empty snackbarAction}">
<c:if test="${empty snackbarActionTarget}">
<a href="${snackbarAction}" class="action">${fn:escapeXml(snackbarActionText)}</a>
</c:if>
<c:if test="${not empty snackbarActionTarget}">
<a href="${snackbarAction}" class="action" target="${snackbarActionTarget}">${fn:escapeXml(snackbarActionText)}</a>
</c:if>
</c:if>
</div></div>
</c:if>

View File

@ -517,14 +517,13 @@ licenses/BouncyCastle.txt).</blockquote>
<p>(Both of which are free open source licences.)</p>
<h3 id="Credits">Who made I2P-Bote?</h3>
<p>(See also <a href="about.jsp">Credits</a>!)</p>
<p>Conception, technical design, implementation and original web user interface
were done by HungryHobo, an anonymous developer.</p>
<p>Conception, technical design, implementation and web user interface
were/are done by HungryHobo, an anonymous developer. For feedback
or if you want to offer help, you can contact him using I2P-Bote.
His destination key is:</p>
<p>The current developer of I2P-Bote is str4d.</p>
<p><b>hobo37SEJsEMfQHwcpVlvEgnrERGFz34GC1yjVyuRvl1QHnTi0UAoOtrLP~qkFY0oL59BBqj5sCep0RA8I5G8n</b></p>
<p>For feedback or if you want to offer help, see
<a href="about.jsp">the About page</a> for contact details.</p>
<h3 id="Languages">What languages are available?</h3>
<p>English, German, Russian, French, Spanish, Portuguese, Dutch,

View File

@ -507,13 +507,13 @@ licenses/BouncyCastle.txt).</blockquote>
<p>(Ambas licencias son licencias libres y de código abierto.)</p>
<h3 id="Credits">¿Quén hizo I2P-Bote?</h3>
<p>(¡Ver también <a href="about.jsp">Créditos</a>!)</p>
<p>Conception, technical design, implementation and original web user interface
were done by HungryHobo, an anonymous developer.</p>
<p>HungryHobo, un desarrollador anónimo, hizo el concepto, el diseño técnico, la implementación y
la interfaz web. Para ofrecer ayuda o enviar feedback,
puedes contactarle usando I2P-Bote. Su clave de destino es:</p>
<p>The current developer of I2P-Bote is str4d.</p>
<p><b>hobo37SEJsEMfQHwcpVlvEgnrERGFz34GC1yjVyuRvl1QHnTi0UAoOtrLP~qkFY0oL59BBqj5sCep0RA8I5G8n</b></p>
<p>For feedback or if you want to offer help, see
<a href="about.jsp">the About page</a> for contact details.</p>
<h3 id="Languages">¿En qué idiomas está disponible?</h3>
<p>Inglés, alemán, ruso, francés, español, portugués, holandés,

View File

@ -541,14 +541,13 @@ licenses/BouncyCastle.txt).</blockquote>
<p>(Toutes deux sont des licences libres et ouvertes).</p>
<h3 id="Credits">Qui a créé I2P-Bote?</h3>
<p>(Voir aussi les <a href="about.jsp">"Remerciements"</a>!)</p>
<p>La conception, le design technique, la mise en œuvre et l'interface web utilisateur d'origine
ont été faits par HungryHobo, un développeur anonyme.</p>
<p>La conception, la structure technique, l'implémentation et
l'interface web user sont de HungryHobo, un développeur anonyme. Pour
les retours techniques ou proposer votre aide, vous pouvez le contacter
avec I2P-Bote. Sa destination est:</p>
<p>Le développeur actuel d'I2P-Bote est str4d.</p>
<p><b>hobo37SEJsEMfQHwcpVlvEgnrERGFz34GC1yjVyuRvl1QHnTi0UAoOtrLP~qkFY0oL59BBqj5sCep0RA8I5G8n</b></p>
<p>Pour envoyer du feedback ou si vous voulez offrir de l'aide, voyez
<a href="about.jsp">la page A propos</a> pour les détails concernant la prise de contact.</p>
<h3 id="Languages">Langues disponibles</h3>
<p>Anglais, allemand, russe, français, espagnol, portugais,

View File

@ -10,10 +10,11 @@
<p><a href="#Settings">2.5. Settings (and what they mean)</a></p>
<p><a href="#Gateway">2.6. E-mails to and from the Internet</a></p>
<p><a href="#Considerations">3. Considerations about Anonymity</a></p>
<p><a href="#Technical-Concept">4. Technical Concept</a></p>
<p><a href="#Technical-Details">5. Technical Details</a></p>
<p><a href="#Terminology">6. Terminology/Glossary of Terms</a></p>
<p><a href="#Credits">7. Credits</a></p>
<p><a href="#Troubleshooting">4. Troubleshooting</a></p>
<p><a href="#Technical-Concept">5. Technical Concept</a></p>
<p><a href="#Technical-Details">6. Technical Details</a></p>
<p><a href="#Terminology">7. Terminology/Glossary of Terms</a></p>
<p><a href="#Credits">8. Credits</a></p>
</nav><h2 id="Introduction">1. Introduction</h2>
<p>I2P-Bote is an easy-to-use, highly anonymous secure e-mail application for
@ -361,7 +362,25 @@ from you. Thusly, if you communicate with those others using the same Bote
address, they will know who you are. Not so, if you used a different address
for sending mails to them.</p>
<h2 id="Technical-Concept">4. Technical Concept</h2>
<h2 id="Troubleshooting">4. Troubleshooting</h2>
<h3 id="Unlimited-Strength-Crypto">4.1. Notification about JCE Unlimited Strength Jurisdiction Policy files</h3>
<p>If you have a notification at the bottom of your screen about JCE Unlimited
Strength Jurisdiction Policy files, it means that your Java installation is
restricted from using the strong cryptography that I2P-Bote requires.</p>
<p>You can enable the strong cryptography by following the steps below:</p>
<ol>
<li><p>Download the JCE Unlimited Strength Jurisdiction Policy files from <a href="http://www.oracle.com/technetwork/java/javase/downloads/index.html" target="_blank">Oracle's website</a>. You may need to use your regular browser.</p></li>
<li><p>Unzip the downloaded zip file.</p></li>
<li><p>Move the files <code>local_policy.jar</code> and <code>US_export_policy.jar</code> into the folder shown in the notification on your screen. Overwrite any existing files with the same names.</p></li>
<li><p>Restart I2P.</p></li>
</ol>
<p>Some countries have restrictions on the allowed strengths of cryptographic
software. If you are unsure about the restrictions in your country, consult
with a lawyer.</p>
<h2 id="Technical-Concept">5. Technical Concept</h2>
<p>I2P-Bote is an end-to-end encrypted, network-internal, fully decentralized
(i.e. serverless) e-mail system. It supports different identities and does not
expose e-mail headers. Currently, it is still alpha software. It can be
@ -479,10 +498,10 @@ he sent a mail.</p></li>
<p>I2P-Bote cannot hide the frequency a given identity checks for new mails nor
the number of mails a given identity receives.</p>
<h2 id="Technical-Details">5. Technical Details</h2>
<h2 id="Technical-Details">6. Technical Details</h2>
<p>See techdoc.txt</p>
<h2 id="Terminology">6. Terminology/Glossary of Terms</h2>
<h2 id="Terminology">7. Terminology/Glossary of Terms</h2>
<h3>I2P-Bote (router/node) id:</h3>
<p>This is the id an I2P-Bote router is known as. It is used for contacting
@ -554,7 +573,7 @@ implemented]</p>
hops and / or long delay times, don't be surprised if your mail does not reach
its destination too soon. It will, of course, take longer - up to several days!</p>
<h2 id="Credits">7. Credits</h2>
<h2 id="Credits">8. Credits</h2>
<p>See <a href="about.jsp">the About page</a>.</p>
<h2>ENJOY THE BOTE FEELING!!</h2>

View File

@ -10,10 +10,11 @@
<p><a href="#Settings">2.5. Configuraciones (y lo que significan)</a></p>
<p><a href="#Gateway">2.6. Correos electrónicos hacia y desde Internet</a></p>
<p><a href="#Considerations">3. Consideraciones sobre anonimato</a></p>
<p><a href="#Technical-Concept">4. Concepto técnico</a></p>
<p><a href="#Technical-Details">5. Detalles técnicos</a></p>
<p><a href="#Terminology">6. Terminología/Glosario de términos</a></p>
<p><a href="#Credits">7. Reconocimientos</a></p>
<p><a href="#Troubleshooting">4. Troubleshooting</a></p>
<p><a href="#Technical-Concept">5. Concepto técnico</a></p>
<p><a href="#Technical-Details">6. Detalles técnicos</a></p>
<p><a href="#Terminology">7. Terminología/Glosario de términos</a></p>
<p><a href="#Credits">8. Reconocimientos</a></p>
</nav><h2 id="Introduction">1. Introducción</h2>
<p>I2P-Bote es una aplicación de correo electrónico para I2P segura, altamente
@ -382,7 +383,24 @@ de usted. De ese modo, si usted se comunica con esos otros usando la misma
dirección Bote, sabrán quién es usted. No ocurriría así si usted utilizase una
dirección distinta para enviarles correos.</p>
<h2 id="Technical-Concept">4. Concepto técnico</h2>
<h2 id="Troubleshooting">4. Troubleshooting</h2>
<h3 id="Unlimited-Strength-Crypto">4.1. Notification about JCE Unlimited Strength Jurisdiction Policy files</h3>
<p>If you have a notification at the bottom of your screen about JCE Unlimited
Strength Jurisdiction Policy files, it means that your Java installation is
restricted from using the strong cryptography that I2P-Bote requires.</p>
<p>You can enable the strong cryptography by following the steps below:</p>
<ol>
<li><p>Download the JCE Unlimited Strength Jurisdiction Policy files from <a href="http://www.oracle.com/technetwork/java/javase/downloads/index.html" target="_blank">Oracle's website</a>. You may need to use your regular browser.</p></li>
<li><p>Unzip the downloaded zip file.</p></li>
<li><p>Move the files <code>local_policy.jar</code> and <code>US_export_policy.jar</code> into the folder shown in the notification on your screen. Overwrite any existing files with the same names.</p></li>
<li><p>Restart I2P.</p></li>
</ol>
<p>Some countries have restrictions on the allowed strengths of cryptographic
software. If you are unsure about the restrictions in your country, consult
with a lawyer.</p>
<h2 id="Technical-Concept">5. Concepto técnico</h2>
<p>I2P-Bote es un sistema de correo electrónico completamente descentralizado
(es decir, sin servidores), con red interna propia, cifrado de extremo-a-extremo.
Soporta distintas identidades y no expone las cabeceras del correo.
@ -507,10 +525,10 @@ cuando envió un correo.</p></li>
comprueba si hay nuevos correos, ni el número de correos que una identidad
determinada recibe.</p>
<h2 id="Technical-Details">5. Detalles técnicos</h2>
<h2 id="Technical-Details">6. Detalles técnicos</h2>
<p>Vea techdoc.txt</p>
<h2 id="Terminology">6. Terminología/Glosario de Términos</h2>
<h2 id="Terminology">7. Terminología/Glosario de Términos</h2>
<h3>Identificación de (router-I2P/nodo) I2P-Bote:</h3>
<p>Ésta es la identificación con la que se conoce a un router I2P-Bote.
@ -591,7 +609,7 @@ muchos saltos y/o tiempos de retardo largos, no se sorprenda si su correo
no alcanza su destino demasiado pronto. Por supuesto le llevará más
tiempo - ¡hasta varios días!</p>
<h2 id="Credits">7. Reconocimientos</h2>
<h2 id="Credits">8. Reconocimientos</h2>
<p>Vea <a href="about.jsp">la página Acerca de</a>.</p>
<h2>¡¡ DISFRUTE DE LA EMOCIÓN DE BOTE !!</h2>

View File

@ -10,10 +10,11 @@
<p><a href="#Settings">2.5. Les préférences de réglages (et ce qu'elles signifient)</a></p>
<p><a href="#Gateway">2.6. E-mails de et vers l'Internet</a></p>
<p><a href="#Considerations">3. Considérations sur l'anonymat</a></p>
<p><a href="#Technical-Concept">4. Concept technique</a></p>
<p><a href="#Technical-Details">5. Détails techniques</a></p>
<p><a href="#Terminology">6. Terminologie/Glossaire</a></p>
<p><a href="#Credits">7. Remerciements</a></p>
<p><a href="#Troubleshooting">4. Diagnostic des pannes</a></p>
<p><a href="#Technical-Concept">5. Concept technique</a></p>
<p><a href="#Technical-Details">6. Détails techniques</a></p>
<p><a href="#Terminology">7. Terminologie/Glossaire</a></p>
<p><a href="#Credits">8. Crédits</a></p>
</nav><h2 id="Introduction">1. Introduction</h2>
<p>I2P-Bote est une application de messagerie sécurisée pour I2P, à anonymat
@ -351,7 +352,20 @@ avec ces autres avec la même adresse il vous reconnaitrons. Ils ne
pourraient pas si vous aviez utilisé une identité différente pour
vous adresser à eux.</p>
<h2 id="Technical-Concept">4. Concept technique</h2>
<h2 id="Troubleshooting">4. Diagnostic des pannes</h2>
<h3 id="Unlimited-Strength-Crypto">4.1. Notification au sujet de "JCE Unlimited Strength Jurisdiction Policy files"</h3>
<p>Si vous avez une notification au bas de votre écran au sujet de "JCE Unlimited Strength Jurisdiction Policy files", cela signifie que votre installation Java est restreinte à ne pas pouvoir utiliser la cryptographie forte qu'I2P-Bote exige.</p>
<p>Vous pouvez permettre la cryptographie forte en suivant les étapes ci-dessous :</p>
<ol>
<li><p>Télécharger les fichiers "JCE Unlimited Strength Jurisdiction Policy" depuis le <a href="http://www.oracle.com/technetwork/java/javase/downloads/index.html" target="_blank">site web d'Oracle</a>. Vous pourriez avoir besoin d'utiliser votre navigateur classique.</p></li>
<li><p>Décompressez le fichier zip téléchargé.</p></li>
<li><p>Déplacez les fichiers <code>local_policy.jar</code> et <code>US_export_policy.jar</code> dans le dossier montré dans la notification sur votre écran. Écrasez n'importe quels fichiers existants qui auraient les mêmes noms.</p></li>
<li><p>Redémarrer I2P</p></li>
</ol>
<p>Certains pays ont des restrictions concernant la force autorisée aux logiciels cryptographiques. Si vous n'êtes pas sûrs des restrictions dans votre pays, consultez un avocat.</p>
<h2 id="Technical-Concept">5. Concept technique</h2>
<p>I2P-Bote est un système de messagerie électronique qui : est chiffré de bout en bout, interne au réseau, entièrement décentralisé (c'est-à-dire sans serveur). Il supporte différentes identités et n'expose pas d'en-têtes de courrier électronique. Actuellement, il a encore un statut de logiciel alpha. Il est accessible via la console Web, et supporte IMAP et SMTP, par conséquent les courriers-bote peuvent être lus et écrits par des logiciels clients classiques de courrier électronique. Il est prévu de garantir de l'anonymat supplémentaire en fournissant une option de transport à haute latence. Tous les courriers-bote sont chiffrés automatiquement de bout en bout, pour qu'il n'y ait aucun besoin de configurer du chiffrage de courrier électronique supplémentaire (quoique vous puissiez le faire), et les courriers-bote sont authentifiés automatiquement. Comme il est décentralisé, il n'y a aucun serveur de courrier électronique qui pourrait lier des identités de courrier électronique différentes comme communiquant l'une avec l'autre (<em>profiling<em>) : même les noeuds retransmettant les courriers ne connaîtront pas l'expéditeur en dehors de l'expéditeur du destinataire, seuls le bout du tunnel de courrier à haute latence et les noeuds de stockage sauront à qui (identité anonyme) le courrier est destiné. Il est donc possible que l'expéditeur original soit parti hors connexion longtemps avant que le courrier devienne disponible de l'autre côté. Ceci augmente le degré d'anonymat qu'il est possible d'atteindre avec I2P-Bote. Pour les utilisateurs qui ne veulent pas de délais élevés : tous ces paramètres sont réglables par l'utilisateur, donc chaque utilisateur choisit finalement combien d'anonymat il veut.</em></em></p>
<p>Les nœuds I2P-Bote stockent les messages cryptés dans une table de
@ -462,10 +476,10 @@ il a envoyé un message.</p></li>
relève les nouveaux messages, ni ne nombre de messages reçus par une identité
donnée.</p>
<h2 id="Technical-Details">5. Détails techniques</h2>
<h2 id="Technical-Details">6. Détails techniques</h2>
<p>Voir techdoc.txt</p>
<h2 id="Terminology">6. Terminologie/Glossaire</h2>
<h2 id="Terminology">7. Terminologie/Glossaire</h2>
<h3>Identité du routeur/nœud I2P-Bote:</h3>
<p>C'est l'identité par laquelle le routeur I2P-Bote est connu. Elle est
@ -547,7 +561,7 @@ particulièrement avec de nombreux sauts et/ou de longs retards, ne soyez pas
surpris si vos messages n'arrivent pas rapidement à destination. Ça prendra
évidemment plus de temps - jusqu'à plusieurs jours!</p>
<h2 id="Credits">7. Remerciements</h2>
<h2 id="Credits">8. Crédits</h2>
<p>See <a href="about.jsp">the About page</a>.</p>
<h2>ENJOY THE BOTE FEELING!!</h2>

View File

@ -10,15 +10,16 @@
<p><a href="#Settings">2.5. Inställningar (och vad de betyder)</a></p>
<p><a href="#Gateway">2.6. Email till och från internet</a></p>
<p><a href="#Considerations">3. Överväganden kring anonymitet</a></p>
<p><a href="#Technical-Concept">4. Tekniskt koncept</a></p>
<p><a href="#Technical-Details">5. Tekniska detaljer</a></p>
<p><a href="#Terminology">6. Terminologi/Ordlista</a></p>
<p><a href="#Credits">7. Erkännanden</a></p>
<p><a href="#Troubleshooting">4. Felsökning</a></p>
<p><a href="#Technical-Concept">5. Tekniska Koncept</a></p>
<p><a href="#Technical-Details">6. Tekniska Detaljer</a></p>
<p><a href="#Terminology">7. Terminologi/Ordlista</a></p>
<p><a href="#Credits">8. Credits</a></p>
</nav><h2 id="Introduction">1. Introduktion</h2>
<p>I2P-Bote är ett användarvänligt mycket anonymt säkert emailprogram för
<p>I2P-Bote är ett användarvänligt, mycket anonymt och säkert epostprogram för
I2P. Det är ett serverlöst, helt decentraliserat system som etablerar/formerar ett
peer-till-peer nätverk överlagrat det helt moderna
peer-till-peer-nätverk ovanpå det moderna
låglatens-anonymiseringsnätverket
I2P; dessutom lägger det till en valbar mixminion-liknande höglatens-transport och
undviker därigenom låglatens-nätverkens tillkortakommanden.</p>
@ -190,8 +191,8 @@ minut, utan snarare varje (XX+-offset*XX)minuter, d.v.s efter en slumpmässigt v
<p>(Om du är osäker om de här inställningarna, använd förvalen. De borde fungera för dig).</p>
<p><em>Mail routes</em> är kedjor av I2P-Botenoder som agerar relays/routers för
andra peers och följer fördröjningar per-hopp, och på så sätt erbjuder en transport med hög latens
<p><em>E-postreläer</em> är kedjor av I2P-Botenoder som agerar relä/router för
andra noder och följer fördröjningar per hopp, och erbjuder på så sätt en transport med hög latens
för ökad anonymitet.</p>
<p>Du kan specificera antalet noder (här kallde hopp) som skall kedjas ihop
@ -301,7 +302,22 @@ Så, om du kommunicerar med dessa andra användande samma Bote-adress, kommer de
att kunna veta vem du är. Det går inte om du använder en annan adress för att
skicka mail till dem.</p>
<h2 id="Technical-Concept">4. Tekniska koncept</h2>
<h2 id="Troubleshooting">4. Felsökning</h2>
<h3 id="Unlimited-Strength-Crypto">4.1 Meddelande om JCE Unlimited Strength Jurisdiction Policy files.</h3>
<p>Om du har ett meddelande längst ner på skärmen om JCE Unlimited
Strength Jurisdiction Policy files, så betyder det att din Javainstallation är förhindrad att använda den starka kryptografi som I2P-Bote kräver.</p>
<p>Du kan aktivera stark kryptering genom att följa stegen nedan:</p>
<ol>
<li><p>Ladda nerJCE Unlimited Strength Jurisdiction Policy files från<a href="http://www.oracle.com/technetwork/java/javase/downloads/index.html" target="_blank">Oracles website</a>. Du kanske måste använda en vanlig webläsare.</p></li>
<li><p>Packa upp den nedladdade zip-filen.</p></li>
<li><p>Flytta filerna <code>local_policy.jar</code> och <code>US_export_plicy.jar</code> till mappen som anges i meddalande på din skärm. Skriv över existerande filer med samma namn.</p></li>
<li><p>Starta om I2P</p></li>
</ol>
<p>Vissa länder har restriktioner på den tillåtna kryptografiska styrkan
på mjukvara. Om du är osäker om restriktioner i ditt land, rådfråga juridisk expertis.</p>
<h2 id="Technical-Concept">5. Tekniskt koncept</h2>
<p>I2P-Bote är ett punkt-till-punkt krypterat, nätverksinternt, helt decentraliserat
(d.v.s serverlöst) email-system. Det stöder olika identiteter och avslöjar inte
email-headers. För närvarande är det fortfarande alpha software. Det kan användas
@ -400,10 +416,10 @@ en existerande mail-identitet eftersom hen kan ha mer än en mail-identitet</p><
<p>I2P-Bote kan inte dölja hur ofta en given identitet kontrollerar nya mail eller
antalet mail en given identitet tar emot.</p>
<h2 id="Technical-Details">5. Tekniska detaljer</h2>
<h2 id="Technical-Details">6. Tekniska detaljer</h2>
<p>Se techdoc.txt</p>
<h2 id="Terminology">6. Terminologi/Ordlista</h2>
<h2 id="Terminology">7. Terminologi/Ordlista</h2>
<h3>I2P-Bote (router/nod) id:</h3>
<p>Detta är den id en I2P-Bote router är känd. Det används för att kontakta
@ -470,7 +486,7 @@ inställningar för indviduella fördröjningar implementerade]</p>
hopp och/eller lång fördröjning skall du inte bli förvånad om mailet inte kommer fram snart. Det kommer,
naturligtvis att ta längre tid - kanske flera dagar!</p>
<h2 id="Credits">7. Erkännanden</h2>
<h2 id="Credits">8. Erkännanden</h2>
<p>Se <a href="about.jsp">sidan Om</a>.</p>
<h2>NJUT AV BOTE-KÄNSLAN!!</h2>

View File

@ -41,7 +41,7 @@
<c:set var="refreshInterval" value="20" scope="request"/>
</c:if>
<ib:message key="Outbox" var="title" scope="request"/>
<c:set var="mainClass" value="foldermain" scope="request"/>
<c:set var="contentClass" value="main foldermain" scope="request"/>
<c:set var="navSelected" value="Outbox" scope="request"/>
<jsp:include page="header.jsp"/>

View File

@ -1,4 +1,5 @@
@import url("roboto.css");
@import url("noto.css");
/* General */
@ -19,9 +20,9 @@ a:active {
text-decoration: underline;
}
body {
background: white;
background: #f5f5f5; /* Grey 100 */
color: #202020;
font: 62.5%/130% "Roboto", arial, sans-serif;
font: 62.5%/150% "Roboto", "NotoSans", arial, sans-serif;
margin: 0;
padding: 0em;
}
@ -152,7 +153,7 @@ iframe {
width: 100%;
}
.folders-frame {
height: 259px;
height: 266px;
width: 100%;
}
.status-frame {
@ -172,7 +173,9 @@ iframe {
box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3);
color: white;
min-height: 64px;
position: relative;
white-space: normal;
z-index: 8;
}
.title {
font-size: 2em;
@ -201,10 +204,12 @@ iframe {
/* Side menu */
aside {
background: ;
background: white;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
float: left;
position: relative;
width: 240px;
z-index: 8;
}
.menubox {
clear: left;
@ -214,19 +219,25 @@ aside {
}
.menubox h2, .folderbox h2 {
color: rgba(0, 0, 0, 0.54); /* 54% #000000 */
font-size: 0.857143em;
font-size: 1em;
font-weight: 500;
line-height: 16px;
margin: 16px 0 4px;
height: 48px;
line-height: 48px;
margin: 0 16px 0 28px;
overflow: hidden;
padding: 7px 0 0 28px;
text-transform: uppercase;
text-transform: none;
}
.menubox-divider {
border-bottom: 1px solid #eeeeee;
margin: 8px 0;
}
.menuitem {
color: rgba(0, 0, 0, 0.87) !important; /* 87% #000000 */
display: block;
font-weight: 500;
padding: 13px 0 13px 28px;
line-height: 24px;
min-height: 24px;
padding: 12px 0 12px 28px;
}
.menuitem:hover, .menuitem.selected {
background: #e8e8e8; /* Grey 300 */
@ -318,19 +329,34 @@ See also .menu-icon
/* Main content */
.main {
background: white;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
color: #202020;
font-size: 1.3em;
font-size: 1.4em;
line-height: 1.4em;
margin: 0px 0px 0px 240px;
padding: 16px 16px 16px 28px;
padding: 16px 28px 16px 28px;
text-align: left;
}
.main nav {
background: white;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
float: right;
margin: -16px -16px 16px 16px;
max-width: 240px;
padding-right: 1em;
}
@media screen and (min-width: 960px) {
.main {
margin-right: 240px;
}
.main nav {
margin-right: -256px;
}
.foldermain, .emailmain {
margin-right: 120px;
}
}
.main form {
color: #202020;
font-size: 1em;
@ -348,24 +374,34 @@ See also .menu-icon
}
.main noscript {
}
.infoMessage {
background-color: #606060;
color: white;
margin-bottom: 0.5em;
padding: 0.5em;
.snackbar {
position: fixed;
bottom: 0;
left: 0;
right: 0;
text-align: center;
z-index: 10;
}
.errorMessage {
background-color: #606060;
.snackbar > div {
align-items: center;
background-color: #323232;
border-radius: 2px;
color: white;
margin-bottom: 0.5em;
padding: 0.5em;
display: inline-flex;
font-size: 1.07692em;
justify-content: space-between;
line-height: 1.69231em;
max-width: 568px;
min-height: 20px;
min-width: 288px;
padding: 14px 24px;
text-align: left;
}
.errorMessage:before {
content: url("images/warning.png");
display: inline-block;
margin-right: 0.5em;
vertical-align: middle;
.snackbar > div > .action {
color: #ffab40; /* Orange A200 */
font-weight: 500;
margin-left: 48px;
text-transform: uppercase;
}
.stackTrace {
white-space: pre;
@ -454,13 +490,15 @@ td a:link, td a:visited {
width: 24px;
}
.emailmain {
background: none;
box-shadow: none;
padding: 0;
}
.emailtext {
background: white;
border: medium none;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.25);
margin: 40px 80px 20px 80px;
margin: 40px 60px 20px;
padding: 0 15px 15px 25px;
}
.header-column-replied {
@ -491,7 +529,7 @@ td a:link, td a:visited {
width: 100px;
}
.header-column-trash {
width: 20px;
width: 24px;
}
.sig-invalid {
color: red;
@ -536,14 +574,20 @@ td a:link, td a:visited {
.header-column-id-email-dest {
width: 40%;
}
.header-column-check-email {
width: 24px;
}
.header-column-check {
width: 3%;
width: 20px;
}
.header-column-name {
width: 20%;
}
.header-column-text {
width: 30%;
}
.header-column-addr-email-dest {
width: 72%;
width: 40%;
}
@ -718,6 +762,7 @@ td a:link, td a:visited {
right: 56px;
top: 22px;
width: 24px;
z-index: 10;
}
.email-form-button-send button {
background: none;

View File

@ -0,0 +1,24 @@
@font-face {
font-family: 'NotoSans';
font-style: normal;
font-weight: 400;
src: local('NotoSans'), local('NotoSans-Regular'), url(fonts/NotoSans-Regular.ttf) format('truetype');
}
@font-face {
font-family: 'NotoSans';
font-style: normal;
font-weight: 700;
src: local('NotoSans Bold'), local('NotoSans-Bold'), url(fonts/NotoSans-Bold.ttf) format('truetype');
}
@font-face {
font-family: 'NotoSans';
font-style: italic;
font-weight: 400;
src: local('NotoSans Italic'), local('NotoSans-Italic'), url(fonts/NotoSans-Italic.ttf) format('truetype');
}
@font-face {
font-family: 'NotoSans';
font-style: italic;
font-weight: 700;
src: local('NotoSans Bold Italic'), local('NotoSans-BoldItalic'), url(fonts/NotoSans-BoldItalic.ttf) format('truetype');
}