forked from I2P_Developers/i2p.i2p
* Console:
- Parameterize download button tags (ticket #425) - Clean up summary bar HTML warnings - Just display a summary bar link for text browsers - Move welcome div from the readme files to index.jsp - Require a nonce to change language
This commit is contained in:
@ -28,11 +28,13 @@ public class CSSHelper extends HelperBase {
|
||||
return url;
|
||||
}
|
||||
|
||||
/** change default language for the router but don't save it */
|
||||
/** change default language for the router AND save it */
|
||||
public void setLang(String lang) {
|
||||
// TODO: Protect with nonce or require POST
|
||||
if (lang != null && lang.length() == 2)
|
||||
// Protected with nonce in css.jsi
|
||||
if (lang != null && lang.length() == 2 && !lang.equals(_context.getProperty(Messages.PROP_LANG))) {
|
||||
_context.router().setConfigSetting(Messages.PROP_LANG, lang);
|
||||
_context.router().saveConfig();
|
||||
}
|
||||
}
|
||||
|
||||
/** needed for conditional css loads for zh */
|
||||
@ -61,4 +63,13 @@ public class CSSHelper extends HelperBase {
|
||||
.append("</title>");
|
||||
return buf.toString();
|
||||
}
|
||||
|
||||
/**
|
||||
* Should we allow a refreshing IFrame?
|
||||
* @since 0.8.5
|
||||
*/
|
||||
public boolean allowIFrame(String ua) {
|
||||
return ua == null || !(ua.startsWith("Lynx") || ua.startsWith("w3m") ||
|
||||
ua.startsWith("ELinks") || ua.startsWith("Dillo"));
|
||||
}
|
||||
}
|
||||
|
@ -19,15 +19,14 @@ public class ContentHelper extends HelperBase {
|
||||
_startAtBeginning = Boolean.valueOf(""+moo).booleanValue();
|
||||
}
|
||||
public void setLang(String l) {
|
||||
/*****
|
||||
if((_lang == null || !_lang.equals(l)) && (l != null)) {
|
||||
//Set language for router console
|
||||
_lang = l;
|
||||
/*****
|
||||
TODO - Temporary for 0.8.4
|
||||
Needed for desktopgui. But there's no nonce protection.
|
||||
Move the following to CSSHelper setLang(), or disable completely,
|
||||
See comments in CSSHelper
|
||||
*****/
|
||||
if(_context == null) {
|
||||
setContextId(null);
|
||||
}
|
||||
@ -39,6 +38,7 @@ public class ContentHelper extends HelperBase {
|
||||
_context.setProperty(Messages.PROP_LANG, _lang);
|
||||
}
|
||||
}
|
||||
*****/
|
||||
}
|
||||
|
||||
public void setMaxLines(String lines) {
|
||||
|
@ -224,25 +224,21 @@ public class SummaryBarRenderer {
|
||||
System.setProperty("net.i2p.router.web.UpdateHandler.noncePrev", prev);
|
||||
System.setProperty("net.i2p.router.web.UpdateHandler.nonce", nonce+"");
|
||||
String uri = _helper.getRequestURI();
|
||||
buf.append("<p><form action=\"").append(uri).append("\" method=\"POST\">\n");
|
||||
buf.append("<form action=\"").append(uri).append("\" method=\"POST\">\n");
|
||||
buf.append("<input type=\"hidden\" name=\"updateNonce\" value=\"").append(nonce).append("\" >\n");
|
||||
if (_helper.updateAvailable()) {
|
||||
buf.append("<button type=\"submit\" name=\"updateAction\" value=\"signed\" >")
|
||||
.append(_("Download"))
|
||||
.append(' ')
|
||||
.append(_helper.getUpdateVersion())
|
||||
.append(' ')
|
||||
.append(_("Update"))
|
||||
.append("</button>\n");
|
||||
// Note to translators: parameter is a version, e.g. "0.8.4"
|
||||
.append(_("Download {0} Update", _helper.getUpdateVersion()))
|
||||
.append("</button><br>\n");
|
||||
}
|
||||
if (_helper.unsignedUpdateAvailable()) {
|
||||
buf.append("<button type=\"submit\" name=\"updateAction\" value=\"Unsigned\" >")
|
||||
.append(_("Download Unsigned"))
|
||||
.append("<br>")
|
||||
.append(_("Update"))
|
||||
.append(' ')
|
||||
.append(_helper.getUnsignedUpdateVersion())
|
||||
.append("</button>\n");
|
||||
// Note to translators: parameter is a date and time, e.g. "02-Mar 20:34 UTC"
|
||||
// <br> is optional, to help the browser make the lines even in the button
|
||||
// If the translation is shorter than the English, you should probably not include <br>
|
||||
.append(_("Download Unsigned<br>Update {0}", _helper.getUnsignedUpdateVersion()))
|
||||
.append("</button><br>\n");
|
||||
}
|
||||
buf.append("</form>\n");
|
||||
}
|
||||
@ -251,10 +247,9 @@ public class SummaryBarRenderer {
|
||||
|
||||
|
||||
|
||||
buf.append("<p>")
|
||||
.append(ConfigRestartBean.renderStatus(_helper.getRequestURI(), _helper.getAction(), _helper.getConsoleNonce()))
|
||||
buf.append(ConfigRestartBean.renderStatus(_helper.getRequestURI(), _helper.getAction(), _helper.getConsoleNonce()))
|
||||
|
||||
.append("</p><hr><h3><a href=\"/peers\" target=\"_top\" title=\"")
|
||||
.append("<hr><h3><a href=\"/peers\" target=\"_top\" title=\"")
|
||||
.append(_("Show all current peer connections"))
|
||||
.append("\">")
|
||||
.append(_("Peers"))
|
||||
@ -456,4 +451,9 @@ public class SummaryBarRenderer {
|
||||
private String _(String s) {
|
||||
return Messages.getString(s, _context);
|
||||
}
|
||||
|
||||
/** translate a string with a parameter */
|
||||
private String _(String s, Object o) {
|
||||
return Messages.getString(s, o, _context);
|
||||
}
|
||||
}
|
||||
|
@ -41,7 +41,7 @@
|
||||
<br> <i><%=intl._("('MM' = month, 'dd' = day, 'HH' = hour, 'mm' = minute, 'ss' = second, 'SSS' = millisecond)")%>
|
||||
</i></td>
|
||||
</tr><tr><td class="mediumtags" align="right"><b><%=intl._("Max log file size")%>:</b></td>
|
||||
<td><input type="text" name="logfilesize" size="4" value="<jsp:getProperty name="logginghelper" property="maxFileSize" />" ><br></td>
|
||||
<td><input type="text" name="logfilesize" size="10" value="<jsp:getProperty name="logginghelper" property="maxFileSize" />" ><br></td>
|
||||
</tr><tr><td class="mediumtags" align="right"><b><%=intl._("Default log level")%>:</b></td>
|
||||
<td><jsp:getProperty name="logginghelper" property="defaultLogLevelBox" /><br><i><%=intl._("(DEBUG and INFO are not recommended defaults, as they will drastically slow down your router)")%>
|
||||
</i></td>
|
||||
|
@ -26,7 +26,10 @@
|
||||
<jsp:useBean class="net.i2p.router.web.CSSHelper" id="intl" scope="request" />
|
||||
<jsp:setProperty name="intl" property="contextId" value="<%=(String)session.getAttribute("i2p.contextId")%>" />
|
||||
<%
|
||||
String conNonceParam = request.getParameter("consoleNonce");
|
||||
if (conNonceParam != null && conNonceParam.equals(System.getProperty("router.consoleNonce"))) {
|
||||
intl.setLang(request.getParameter("lang"));
|
||||
}
|
||||
%>
|
||||
<link href="<%=intl.getTheme(request.getHeader("User-Agent"))%>console.css" rel="stylesheet" type="text/css">
|
||||
<%
|
||||
|
@ -7,9 +7,11 @@
|
||||
<%=intl.title("home")%>
|
||||
</head><body>
|
||||
<%
|
||||
if (System.getProperty("router.consoleNonce") == null) {
|
||||
System.setProperty("router.consoleNonce", new java.util.Random().nextLong() + "");
|
||||
}
|
||||
String consoleNonce = System.getProperty("router.consoleNonce");
|
||||
if (consoleNonce == null) {
|
||||
consoleNonce = Long.toString(new java.util.Random().nextLong());
|
||||
System.setProperty("router.consoleNonce", consoleNonce);
|
||||
}
|
||||
%>
|
||||
|
||||
<%@include file="summary.jsi" %><h1><%=intl._("I2P Router Console")%></h1>
|
||||
@ -26,10 +28,25 @@ if (System.getProperty("router.consoleNonce") == null) {
|
||||
<hr><i><jsp:getProperty name="updatehelper" property="newsStatus" /></i><br>
|
||||
</div><div class="main" id="main">
|
||||
<jsp:useBean class="net.i2p.router.web.ContentHelper" id="contenthelper" scope="request" />
|
||||
<div class="welcome">
|
||||
<div class="langbox">
|
||||
<a href="/?lang=en&consoleNonce=<%=consoleNonce%>"><img src="/flags.jsp?c=us" title="English" alt="English"></a>
|
||||
<a href="/?lang=ar&consoleNonce=<%=consoleNonce%>"><img src="/flags.jsp?c=lang_ar" title="عربية" alt="عربية"></a>
|
||||
<a href="/?lang=zh&consoleNonce=<%=consoleNonce%>"><img src="/flags.jsp?c=cn" title="中文" alt="中文"></a>
|
||||
<a href="/?lang=de&consoleNonce=<%=consoleNonce%>"><img src="/flags.jsp?c=de" title="Deutsch" alt="Deutsch"></a>
|
||||
<a href="/?lang=fr&consoleNonce=<%=consoleNonce%>"><img src="/flags.jsp?c=fr" title="Français" alt="Français"></a>
|
||||
<a href="/?lang=es&consoleNonce=<%=consoleNonce%>"><img src="/flags.jsp?c=es" title="Español" alt="Español"></a>
|
||||
<a href="/?lang=pt&consoleNonce=<%=consoleNonce%>"><img src="/flags.jsp?c=pt" title="Português" alt="Português"></a>
|
||||
<a href="/?lang=nl&consoleNonce=<%=consoleNonce%>"><img src="/flags.jsp?c=nl" title="Nederlands" alt="Nederlands"></a>
|
||||
<a href="/?lang=ru&consoleNonce=<%=consoleNonce%>"><img src="/flags.jsp?c=ru" title="Русский" alt="Русский"></a>
|
||||
<a href="/?lang=sv&consoleNonce=<%=consoleNonce%>"><img src="/flags.jsp?c=se" title="Svenska" alt="Svenska"></a>
|
||||
</div>
|
||||
<a name="top"></a>
|
||||
<h2><%=intl._("Welcome to I2P")%></h2>
|
||||
</div>
|
||||
<% fpath = new java.io.File(net.i2p.I2PAppContext.getGlobalContext().getBaseDir(), "docs/readme.html"); %>
|
||||
<jsp:setProperty name="contenthelper" property="page" value="<%=fpath.getAbsolutePath()%>" />
|
||||
<jsp:setProperty name="contenthelper" property="maxLines" value="300" />
|
||||
<jsp:setProperty name="contenthelper" property="lang" value="<%=request.getParameter("lang")%>" />
|
||||
<jsp:setProperty name="contenthelper" property="contextId" value="<%=(String)session.getAttribute("i2p.contextId")%>" />
|
||||
<jsp:getProperty name="contenthelper" property="content" />
|
||||
</div></body></html>
|
||||
|
@ -1,9 +1,11 @@
|
||||
<% // put width here too to prevent bad layout at startup %>
|
||||
<% // let's remove that for now since we're no longer using percentage width here %>
|
||||
<div class="routersummaryouter">
|
||||
<%
|
||||
// The refresh delay, 0 to disable
|
||||
String d = "0";
|
||||
boolean allowIFrame = intl.allowIFrame(request.getHeader("User-Agent"));
|
||||
if (allowIFrame) {
|
||||
// skip the iframe if refresh disabled
|
||||
String d = request.getParameter("refresh");
|
||||
d = request.getParameter("refresh");
|
||||
String newDelay = "";
|
||||
if (d == null || "".equals(d))
|
||||
d = intl.getRefresh();
|
||||
@ -14,14 +16,26 @@
|
||||
}
|
||||
if (!"0".equals(d))
|
||||
out.print("<iframe src=\"/summaryframe.jsp" + newDelay + "\" height=\"1500\" width=\"200\" scrolling=\"auto\" frameborder=\"0\" title=\"sidepanel\">\n");
|
||||
}
|
||||
%>
|
||||
<div class="routersummary">
|
||||
<%
|
||||
if (allowIFrame) {
|
||||
// Display the whole summary bar
|
||||
%>
|
||||
<%@include file="summarynoframe.jsi" %>
|
||||
<%
|
||||
// d defined above
|
||||
} else {
|
||||
// Text browsers don't render the two divs side-by-side, so just provide a link
|
||||
out.print("<a href=\"/summaryframe\">");
|
||||
out.print(intl._("Summary Bar"));
|
||||
out.print("</a>");
|
||||
}
|
||||
|
||||
// d and allowIFrame defined above
|
||||
if (!"0".equals(d)) {
|
||||
out.print("</div></iframe>\n");
|
||||
} else {
|
||||
} else if (allowIFrame) {
|
||||
// since we don't have an iframe this will reload the base page, and
|
||||
// the new delay will be passed to the iframe above
|
||||
out.print("<div class=\"refresh\"><form action=\"" + request.getRequestURI() + "\" method=\"POST\">\n");
|
||||
@ -34,6 +48,8 @@
|
||||
out.print(intl._("Enable"));
|
||||
out.print("</button>\n");
|
||||
out.print("</form></div></div>\n");
|
||||
} else {
|
||||
out.print("</div>\n");
|
||||
}
|
||||
%>
|
||||
</div>
|
||||
|
@ -15,7 +15,9 @@
|
||||
String action = request.getParameter("action");
|
||||
String d = request.getParameter("refresh");
|
||||
// Normal browsers send value, IE sends button label
|
||||
boolean shutdownSoon = "shutdownImmediate".equals(action) || "restartImmediate".equals(action) ||
|
||||
boolean allowIFrame = intl.allowIFrame(request.getHeader("User-Agent"));
|
||||
boolean shutdownSoon = (!allowIFrame) ||
|
||||
"shutdownImmediate".equals(action) || "restartImmediate".equals(action) ||
|
||||
"Shutdown immediately".equals(action) || "Restart immediately".equals(action);
|
||||
if (!shutdownSoon) {
|
||||
if (d == null || "".equals(d)) {
|
||||
|
17
history.txt
17
history.txt
@ -1,8 +1,23 @@
|
||||
2011-03-08 zzz
|
||||
* Console:
|
||||
- Parameterize download button tags (ticket #425)
|
||||
- Clean up summary bar HTML warnings
|
||||
- Just display a summary bar link for text browsers
|
||||
- Move welcome div from the readme files to index.jsp
|
||||
- Require a nonce to change language
|
||||
* i2psnark:
|
||||
- More efficient metainfo handling, reduce instantiations
|
||||
- Improved handling of storage errors
|
||||
- Improved handling of duplicate file names
|
||||
- More metainfo sanity checks
|
||||
- Metadata transfer error handling improvements
|
||||
- Code cleanup, remove dead and duplicated code
|
||||
|
||||
2011-03-02 zzz
|
||||
* BuildHandler:
|
||||
- Limit request queue size
|
||||
- Concurrent request queue
|
||||
- Remove dead code for queued rely handling
|
||||
- Remove dead code for queued reply handling
|
||||
* OutNetMessage: Remove dead code
|
||||
* Tunnel cleanups, final, javadoc
|
||||
|
||||
|
@ -1,20 +1,4 @@
|
||||
<div lang="en">
|
||||
<div class="welcome">
|
||||
<div class="langbox">
|
||||
<a href="/?lang=en"><img src="/flags.jsp?c=us" title="English" alt="English"></a>
|
||||
<a href="/?lang=ar"><img src="/flags.jsp?c=lang_ar" title="عربية" alt="عربية"></a>
|
||||
<a href="/?lang=zh"><img src="/flags.jsp?c=cn" title="中文" alt="中文"></a>
|
||||
<a href="/?lang=de"><img src="/flags.jsp?c=de" title="Deutsch" alt="Deutsch"></a>
|
||||
<a href="/?lang=fr"><img src="/flags.jsp?c=fr" title="Français" alt="Français"></a>
|
||||
<a href="/?lang=es"><img src="/flags.jsp?c=es" title="Español" alt="Español"></a>
|
||||
<a href="/?lang=pt"><img src="/flags.jsp?c=pt" title="Português" alt="Português"></a>
|
||||
<a href="/?lang=nl"><img src="/flags.jsp?c=nl" title="Nederlands" alt="Nederlands"></a>
|
||||
<a href="/?lang=ru"><img src="/flags.jsp?c=ru" title="Русский" alt="Русский"></a>
|
||||
<a href="/?lang=sv"><img src="/flags.jsp?c=se" title="Svenska" alt="Svenska"></a>
|
||||
</div>
|
||||
<a name="top"></a>
|
||||
<h2>Welcome to the Invisible Internet</h2>
|
||||
</div>
|
||||
|
||||
<ul class="links"><li class="tidylist"><b>Starting Up…</b><br>If you've just started I2P, the number of <i>Active Peers</i> indicated under the <i>Peers</i> section in the side panel on the left should start to grow over the next few minutes and you'll also see a <i>Local Destination</i> named <i>Shared Clients</i> listed there, and possibly other clients and servers depending on how I2P is configured (if not, see the troubleshooting section <a href="#trouble">below</a>). These <i>Local Destinations</i> provide connections on different ports (and sometimes protocols) to the I2P network, enabling your bittorrent, e-mail, web proxy and other services to function. Your <a href="/netdb">Network Database</a> indicates all known peers on the network. Additionally, you can monitor existing <a href="/peers">Peer Connections</a>, and view existing <a href="/tunnels">Tunnels</a> and their status. More information is available on the <a href="/help">help page</a>.</li>
|
||||
|
||||
|
@ -1,20 +1,4 @@
|
||||
<div dir="rtl" lang="ar">
|
||||
<div class="welcome">
|
||||
<div class="langbox" dir="ltr">
|
||||
<a href="/?lang=en"><img src="/flags.jsp?c=us" title="English" alt="English"></a>
|
||||
<a href="/?lang=ar"><img src="/flags.jsp?c=lang_ar" title="عربية" alt="عربية"></a>
|
||||
<a href="/?lang=zh"><img src="/flags.jsp?c=cn" title="中文" alt="中文"></a>
|
||||
<a href="/?lang=de"><img src="/flags.jsp?c=de" title="Deutsch" alt="Deutsch"></a>
|
||||
<a href="/?lang=fr"><img src="/flags.jsp?c=fr" title="Français" alt="Français"></a>
|
||||
<a href="/?lang=es"><img src="/flags.jsp?c=es" title="Español" alt="Español"></a>
|
||||
<a href="/?lang=pt"><img src="/flags.jsp?c=pt" title="Português" alt="Português"></a>
|
||||
<a href="/?lang=nl"><img src="/flags.jsp?c=nl" title="Nederlands" alt="Nederlands"></a>
|
||||
<a href="/?lang=ru"><img src="/flags.jsp?c=ru" title="Русский" alt="Русский"></a>
|
||||
<a href="/?lang=sv"><img src="/flags.jsp?c=se" title="Svenska" alt="Svenska"></a>
|
||||
</div>
|
||||
<a name="top"></a>
|
||||
<h2>مرحبا بكم في الانترنت الغير مرئية</h2>
|
||||
</div>
|
||||
|
||||
<p>عندما تقوم بتشغيل I2P ستبدأ الأرقام على يسار الشاشة في الازدياد خلال الدقائق التالية وستظهر عبارة <i>Shared Clients</i> (ان <a href=#trouble>لم تظهر، انظر التعليمات اسفله</a>). عندها يمكنك الحصول على عدة خدمات مثل تورنت، البريد الإلكتروني السري، وخدمات أخرى:</p>
|
||||
<ul>
|
||||
|
@ -1,20 +1,4 @@
|
||||
<div lang="de">
|
||||
<div class="welcome">
|
||||
<div class="langbox">
|
||||
<a href="/?lang=en"><img src="/flags.jsp?c=us" title="English" alt="English"></a>
|
||||
<a href="/?lang=ar"><img src="/flags.jsp?c=lang_ar" title="عربية" alt="عربية"></a>
|
||||
<a href="/?lang=zh"><img src="/flags.jsp?c=cn" title="中文" alt="中文"></a>
|
||||
<a href="/?lang=de"><img src="/flags.jsp?c=de" title="Deutsch" alt="Deutsch"></a>
|
||||
<a href="/?lang=fr"><img src="/flags.jsp?c=fr" title="Français" alt="Français"></a>
|
||||
<a href="/?lang=es"><img src="/flags.jsp?c=es" title="Español" alt="Español"></a>
|
||||
<a href="/?lang=pt"><img src="/flags.jsp?c=pt" title="Português" alt="Português"></a>
|
||||
<a href="/?lang=nl"><img src="/flags.jsp?c=nl" title="Nederlands" alt="Nederlands"></a>
|
||||
<a href="/?lang=ru"><img src="/flags.jsp?c=ru" title="Русский" alt="Русский"></a>
|
||||
<a href="/?lang=sv"><img src="/flags.jsp?c=se" title="Svenska" alt="Svenska"></a>
|
||||
</div>
|
||||
<a name="top"></a>
|
||||
<h2>Willkommen im I2P!</h2>
|
||||
</div>
|
||||
|
||||
<p>Wenn Du I2P gerade gestartet hast, sollten die "Aktiv:"-Zahlen links in den nächsten Minuten anwachsen. Du siehst dann dort ein als "versch. Klienten" bezeichnetes lokales Ziel gelistet (falls nicht, <a href="#trouble">siehe unten</a>). Sobald dieses erscheint, kannst Du:</p>
|
||||
<ul>
|
||||
|
@ -1,20 +1,4 @@
|
||||
<div lang="es">
|
||||
<div class="welcome">
|
||||
<div class="langbox">
|
||||
<a href="/?lang=en"><img src="/flags.jsp?c=us" title="English" alt="English"></a>
|
||||
<a href="/?lang=ar"><img src="/flags.jsp?c=lang_ar" title="عربية" alt="عربية"></a>
|
||||
<a href="/?lang=zh"><img src="/flags.jsp?c=cn" title="中文" alt="中文"></a>
|
||||
<a href="/?lang=de"><img src="/flags.jsp?c=de" title="Deutsch" alt="Deutsch"></a>
|
||||
<a href="/?lang=fr"><img src="/flags.jsp?c=fr" title="Français" alt="Français"></a>
|
||||
<a href="/?lang=es"><img src="/flags.jsp?c=es" title="Español" alt="Español"></a>
|
||||
<a href="/?lang=pt"><img src="/flags.jsp?c=pt" title="Português" alt="Português"></a>
|
||||
<a href="/?lang=nl"><img src="/flags.jsp?c=nl" title="Nederlands" alt="Nederlands"></a>
|
||||
<a href="/?lang=ru"><img src="/flags.jsp?c=ru" title="Русский" alt="Русский"></a>
|
||||
<a href="/?lang=sv"><img src="/flags.jsp?c=se" title="Svenska" alt="Svenska"></a>
|
||||
</div>
|
||||
<a name="top"></a>
|
||||
<h2>¡Bienvenido a I2P!</h2>
|
||||
</div>
|
||||
|
||||
<p>Si acabas de iniciar I2P, al observar el menú de la izquierda, deberías notar que los números al lado de "Activos:" subirán en los próximos minutos y luego verás allí un Destino llamado "clientes diferentes" (si no, <a href="#trouble">¡mira abajo!</a>) <br>Apenas aparezca esto, puedes:</p>
|
||||
<ul>
|
||||
|
@ -1,20 +1,4 @@
|
||||
<div lang="fr">
|
||||
<div class="welcome">
|
||||
<div class="langbox">
|
||||
<a href="/?lang=en"><img src="/flags.jsp?c=us" title="English" alt="English"></a>
|
||||
<a href="/?lang=ar"><img src="/flags.jsp?c=lang_ar" title="عربية" alt="عربية"></a>
|
||||
<a href="/?lang=zh"><img src="/flags.jsp?c=cn" title="中文" alt="中文"></a>
|
||||
<a href="/?lang=de"><img src="/flags.jsp?c=de" title="Deutsch" alt="Deutsch"></a>
|
||||
<a href="/?lang=fr"><img src="/flags.jsp?c=fr" title="Français" alt="Français"></a>
|
||||
<a href="/?lang=es"><img src="/flags.jsp?c=es" title="Español" alt="Español"></a>
|
||||
<a href="/?lang=pt"><img src="/flags.jsp?c=pt" title="Português" alt="Português"></a>
|
||||
<a href="/?lang=nl"><img src="/flags.jsp?c=nl" title="Nederlands" alt="Nederlands"></a>
|
||||
<a href="/?lang=ru"><img src="/flags.jsp?c=ru" title="Русский" alt="Русский"></a>
|
||||
<a href="/?lang=sv"><img src="/flags.jsp?c=se" title="Svenska" alt="Svenska"></a>
|
||||
</div>
|
||||
<a name="top"></a>
|
||||
<h2>Bienvenu sur I2P!</h2>
|
||||
</div>
|
||||
|
||||
<p>Si vous venez juste de lancer I2P, les chiffres sur la gauche à coté de Active devraient commencer à augmenter dans les prochaines minutes et vous verrez un "Shared client" en destination locale listés sur la gauche (si non, <a href=#trouble>voir plus bas</a>). Une fois qu'ils apparaissent, vous pouvez:</p>
|
||||
<ul>
|
||||
|
@ -1,20 +1,4 @@
|
||||
<div lang="nl">
|
||||
<div class="welcome">
|
||||
<div class="langbox">
|
||||
<a href="/?lang=en"><img src="/flags.jsp?c=us" title="English" alt="English"></a>
|
||||
<a href="/?lang=ar"><img src="/flags.jsp?c=lang_ar" title="عربية" alt="عربية"></a>
|
||||
<a href="/?lang=zh"><img src="/flags.jsp?c=cn" title="中文" alt="中文"></a>
|
||||
<a href="/?lang=de"><img src="/flags.jsp?c=de" title="Deutsch" alt="Deutsch"></a>
|
||||
<a href="/?lang=fr"><img src="/flags.jsp?c=fr" title="Français" alt="Français"></a>
|
||||
<a href="/?lang=es"><img src="/flags.jsp?c=es" title="Español" alt="Español"></a>
|
||||
<a href="/?lang=pt"><img src="/flags.jsp?c=pt" title="Português" alt="Português"></a>
|
||||
<a href="/?lang=nl"><img src="/flags.jsp?c=nl" title="Nederlands" alt="Nederlands"></a>
|
||||
<a href="/?lang=ru"><img src="/flags.jsp?c=ru" title="Русский" alt="Русский"></a>
|
||||
<a href="/?lang=sv"><img src="/flags.jsp?c=se" title="Svenska" alt="Svenska"></a>
|
||||
</div>
|
||||
<a name="top"></a>
|
||||
<h2>Welkom op het Invisible Internet</h2>
|
||||
</div>
|
||||
|
||||
<ul class="links"><li class="tidylist"><b>Opstarten…</b><br>Als je zojuist I2P gestart hebt zal het nummer van <i>Actieve Peers</i> onder de <i>Peers</i> sectie in het linker zijpaneel toenemen binnen de komende minuten, tevens zal je een <i>Lokale bestemming</i> genaamd <i>Gedeelde Clients</i> zien, en mogelijk andere clients en servers, afhankelijk van de I2P configuratie (als dit niet het geval is, zie 'problemen oplossen' <a href="#trouble">hier onder</a>). Deze <i>Lokale bestemmingen</i> bieden verbindingen aan op verschillende poorten (en soms protocollen) naar het I2P netwerk waardoor diensten als BitTorrent, email, webproxy en andere diensten zullen werken. De <a href="/netdb">Netwerk Database</a> geeft een indicatie van alle bekende peers op het netwerk. Daarnaast kunnen bestaande <a href="/peers">Peer Connecties</a> gemonitord worden en bestaande <a href="/tunnels">Tunnels</a> en hun status worden bekeken. Meer informatie is beschikbaar op de <a href="/help">hulp pagina</a>.</li>
|
||||
|
||||
|
@ -1,20 +1,4 @@
|
||||
<div lang="pt">
|
||||
<div class="welcome">
|
||||
<div class="langbox">
|
||||
<a href="/?lang=en"><img src="/flags.jsp?c=us" title="English" alt="English"></a>
|
||||
<a href="/?lang=ar"><img src="/flags.jsp?c=lang_ar" title="عربية" alt="عربية"></a>
|
||||
<a href="/?lang=zh"><img src="/flags.jsp?c=cn" title="中文" alt="中文"></a>
|
||||
<a href="/?lang=de"><img src="/flags.jsp?c=de" title="Deutsch" alt="Deutsch"></a>
|
||||
<a href="/?lang=fr"><img src="/flags.jsp?c=fr" title="Français" alt="Français"></a>
|
||||
<a href="/?lang=es"><img src="/flags.jsp?c=es" title="Español" alt="Español"></a>
|
||||
<a href="/?lang=pt"><img src="/flags.jsp?c=pt" title="Português" alt="Português"></a>
|
||||
<a href="/?lang=nl"><img src="/flags.jsp?c=nl" title="Nederlands" alt="Nederlands"></a>
|
||||
<a href="/?lang=ru"><img src="/flags.jsp?c=ru" title="Русский" alt="Русский"></a>
|
||||
<a href="/?lang=sv"><img src="/flags.jsp?c=se" title="Svenska" alt="Svenska"></a>
|
||||
</div>
|
||||
<a name="top"></a>
|
||||
<h2>Bem-vindo a I2P!</h2>
|
||||
</div>
|
||||
|
||||
<p>Se você acaba de iniciar I2P, os números à esquerda ao lado de "Active:" deberiam subir nos seguintes minutos e logo lá verá uma Destinação chamada "shared clients". (se não, <a href="#trouble">veija embaixo!</a>) <br>Assim que apareça isto, você pode:</p>
|
||||
<ul>
|
||||
|
@ -1,20 +1,4 @@
|
||||
<div lang="ru">
|
||||
<div class="welcome">
|
||||
<div class="langbox">
|
||||
<a href="/?lang=en"><img src="/flags.jsp?c=us" title="English" alt="English"></a>
|
||||
<a href="/?lang=ar"><img src="/flags.jsp?c=lang_ar" title="عربية" alt="عربية"></a>
|
||||
<a href="/?lang=zh"><img src="/flags.jsp?c=cn" title="中文" alt="中文"></a>
|
||||
<a href="/?lang=de"><img src="/flags.jsp?c=de" title="Deutsch" alt="Deutsch"></a>
|
||||
<a href="/?lang=fr"><img src="/flags.jsp?c=fr" title="Français" alt="Français"></a>
|
||||
<a href="/?lang=es"><img src="/flags.jsp?c=es" title="Español" alt="Español"></a>
|
||||
<a href="/?lang=pt"><img src="/flags.jsp?c=pt" title="Português" alt="Português"></a>
|
||||
<a href="/?lang=nl"><img src="/flags.jsp?c=nl" title="Nederlands" alt="Nederlands"></a>
|
||||
<a href="/?lang=ru"><img src="/flags.jsp?c=ru" title="Русский" alt="Русский"></a>
|
||||
<a href="/?lang=sv"><img src="/flags.jsp?c=se" title="Svenska" alt="Svenska"></a>
|
||||
</div>
|
||||
<a name="top"></a>
|
||||
<h2>Добро пожаловать в Невидимый Интернет</h2>
|
||||
</div>
|
||||
|
||||
<ul class="links"><li class="tidylist"><b>Начало…</b><br>Если вы только что запустили I2P, число <i>Активных пиров</i>, отображаемых под секцией <i>Пиры</i> на боковой панели должно начать увеличиваться через несколько минут, и вы так же увидите <i>Локальный туннель</i> с именем <i>Коллективные Клиенты</i>, и, возможно, другие клиентские и серверные туннели в зависимости от того, как настроен I2P (если нет, смотрите секцию по разрешению проблем <a href="#trouble">ниже</a>). Эти <i>Локальные туннели</i> предоставляют соединения на разных портах (и иногда разные протоколы) для сети I2P, позволяя функционировать вашим torrent, e-mail, прокси и другим сервисам. Ваша <a href="/netdb">База данных сети I2P</a> показывает всех известных роутеру пиров в сети. Больше информации доступно на <a href="/help">странице помощи</a>.</li>
|
||||
<li class="tidylist"><b>Сетевая интеграция</b><br> Когда вы впервые запускаете I2P, это может занять несколько минут, т.к. роутер выполняет процедуру начальной загрузки (bootstrap) для интеграции в сеть и поиска пиров для оптимизации интегрированности. Будте терпеливы. Когда I2P запускается, и во время нормальной работы, индикатор готовности к построению туннелей (прямо над секцией <i>Локальные туннели</i> на боковой панели) может показывать "Не принимаем туннели"; это нормальное поведение и не стоит слишком беспокоиться. Когда возле ваших <i>Локальных туннелей</i> загорятся зелёные звёздочки, вы сможете делать с I2P разнообразные вещи, и ниже мы представим вам некоторые из них. </li></ul>
|
||||
|
@ -1,20 +1,4 @@
|
||||
<div lang="sv">
|
||||
<div class="welcome">
|
||||
<div class="langbox">
|
||||
<a href="/?lang=en"><img src="/flags.jsp?c=us" title="English" alt="English"></a>
|
||||
<a href="/?lang=ar"><img src="/flags.jsp?c=lang_ar" title="عربية" alt="عربية"></a>
|
||||
<a href="/?lang=zh"><img src="/flags.jsp?c=cn" title="中文" alt="中文"></a>
|
||||
<a href="/?lang=de"><img src="/flags.jsp?c=de" title="Deutsch" alt="Deutsch"></a>
|
||||
<a href="/?lang=fr"><img src="/flags.jsp?c=fr" title="Français" alt="Français"></a>
|
||||
<a href="/?lang=es"><img src="/flags.jsp?c=es" title="Español" alt="Español"></a>
|
||||
<a href="/?lang=pt"><img src="/flags.jsp?c=pt" title="Português" alt="Português"></a>
|
||||
<a href="/?lang=nl"><img src="/flags.jsp?c=nl" title="Nederlands" alt="Nederlands"></a>
|
||||
<a href="/?lang=ru"><img src="/flags.jsp?c=ru" title="Русский" alt="Русский"></a>
|
||||
<a href="/?lang=sv"><img src="/flags.jsp?c=se" title="Svenska" alt="Svenska"></a>
|
||||
</div>
|
||||
<a name="top"></a>
|
||||
<h2>Welcome to I2P!</h2>
|
||||
</div>
|
||||
|
||||
<p>Om du just har startat I2P kommer de "Aktiva: #/#" börja öka inom
|
||||
några få minuter och du kommer se en destination kallad "delade
|
||||
|
@ -1,19 +1,4 @@
|
||||
<div lang="zh">
|
||||
<div class="welcome">
|
||||
<div class="langbox">
|
||||
<a href="/?lang=en"><img src="/flags.jsp?c=us" title="English" alt="English"></a>
|
||||
<a href="/?lang=ar"><img src="/flags.jsp?c=lang_ar" title="عربية" alt="عربية"></a>
|
||||
<a href="/?lang=zh"><img src="/flags.jsp?c=cn" title="中文" alt="中文"></a>
|
||||
<a href="/?lang=de"><img src="/flags.jsp?c=de" title="Deutsch" alt="Deutsch"></a>
|
||||
<a href="/?lang=fr"><img src="/flags.jsp?c=fr" title="Français" alt="Français"></a>
|
||||
<a href="/?lang=es"><img src="/flags.jsp?c=es" title="Español" alt="Español"></a>
|
||||
<a href="/?lang=nl"><img src="/flags.jsp?c=nl" title="Nederlands" alt="Nederlands"></a>
|
||||
<a href="/?lang=ru"><img src="/flags.jsp?c=ru" title="Русский" alt="Русский"></a>
|
||||
<a href="/?lang=sv"><img src="/flags.jsp?c=se" title="Svenska" alt="Svenska"></a>
|
||||
</div>
|
||||
<a name="top"></a>
|
||||
<h2>欢迎使用 I2P!</h2>
|
||||
</div>
|
||||
|
||||
<p>I2P 运行后的几分钟里控制台左侧的【活动节点】数量会逐渐增加,
|
||||
<b>在【本地目标】中出现【共享客户端】后,表示I2P已建立连接</b>(没有出现?见 <a href="#trouble">疑难解答</a>)。
|
||||
|
@ -258,16 +258,6 @@ div.tunnels table{
|
||||
margin-right: -2px;
|
||||
}
|
||||
|
||||
div.routersummary form {
|
||||
margin-top: -6px !important;
|
||||
margin-bottom: -4px !important;
|
||||
}
|
||||
|
||||
div.routersummary form:last-child {
|
||||
padding-top: 3px !important;
|
||||
margin-bottom: -10px !important;
|
||||
}
|
||||
|
||||
div.refresh {
|
||||
margin-top: 10px !important;
|
||||
margin-bottom: 10px !important;
|
||||
|
@ -182,22 +182,14 @@ div.routersummary tr {
|
||||
border: 0 !important;
|
||||
}
|
||||
|
||||
div.routersummary form {
|
||||
margin: -6px 0 -7px;
|
||||
}
|
||||
|
||||
div.routersummary form:first-child {
|
||||
margin: 6px 0 -4px 0 !important;
|
||||
}
|
||||
|
||||
div.routersummary p {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
div.refresh {
|
||||
margin-top: -10px !important;
|
||||
margin-bottom: -4px !important;
|
||||
padding: 2px 0 0px 0 !important;
|
||||
margin-top: 10px !important;
|
||||
margin-bottom: 10px !important;
|
||||
padding: 2px 0 !important;
|
||||
}
|
||||
|
||||
div.routersummary a:link, div.routersummary a:visited {
|
||||
@ -838,7 +830,6 @@ input {
|
||||
font: bold 8pt "Lucida Sans Unicode", "Bitstream Vera Sans", Verdana, Tahoma, Helvetica, sans-serif;
|
||||
padding: 1px 2px;
|
||||
text-decoration: none;
|
||||
min-width: 110px;
|
||||
border-radius: 4px;
|
||||
-moz-border-radius: 4px;
|
||||
-khtml-border-radius: 4px;
|
||||
@ -918,8 +909,6 @@ textarea {
|
||||
border: 1px solid #494;
|
||||
}
|
||||
|
||||
form {}
|
||||
|
||||
.proxyfooter {
|
||||
margin: 0 20px 10px 240px;
|
||||
padding: 20px 25px 20px 75px;
|
||||
|
@ -250,22 +250,13 @@ div.tunnels td, div.tunnels img:first-child {
|
||||
padding: 4px 0 !important;
|
||||
}
|
||||
|
||||
div.routersummary form {
|
||||
margin: -6px 0 -5px 0;
|
||||
}
|
||||
|
||||
div.routersummary form:last-child {
|
||||
margin: 6px 0 0 0 !important;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
div.routersummary p {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
div.refresh {
|
||||
margin-top: -6px !important;
|
||||
margin-bottom: 0px !important;
|
||||
margin-top: 10px !important;
|
||||
margin-bottom: 10px !important;
|
||||
padding: 2px 0 0px 0 !important;
|
||||
}
|
||||
|
||||
@ -870,17 +861,6 @@ button:active{
|
||||
opacity: 1 !important;
|
||||
}
|
||||
|
||||
input {
|
||||
background: #ffe;
|
||||
color: #316;
|
||||
margin: 5px 10px 5px 10px;
|
||||
padding: 4px 2px;
|
||||
font: bold 8pt "Lucida Sans Unicode", "Bitstream Vera Sans", Verdana, Tahoma, Helvetica, sans-serif;
|
||||
border: 1px solid #447;
|
||||
text-decoration: none;
|
||||
min-width: 110px;
|
||||
}
|
||||
|
||||
input, input:visited {
|
||||
border: 1px outset #999;
|
||||
background: #ffe;
|
||||
@ -889,7 +869,6 @@ input, input:visited {
|
||||
font: bold 8pt "Lucida Sans Unicode", "Bitstream Vera Sans", Verdana, Tahoma, Helvetica, sans-serif;
|
||||
padding: 1px 2px;
|
||||
text-decoration: none;
|
||||
min-width: 110px;
|
||||
border-radius: 4px;
|
||||
-moz-border-radius: 4px;
|
||||
-khtml-border-radius: 4px;
|
||||
@ -983,8 +962,6 @@ textarea:active {
|
||||
box-shadow: inset 0px 0px 0px 1px #f60;
|
||||
}
|
||||
|
||||
form {}
|
||||
|
||||
.proxyfooter {
|
||||
margin: 0 20px 10px 240px;
|
||||
padding: 20px 25px 20px 75px;
|
||||
|
@ -280,16 +280,6 @@ div.tunnels table{
|
||||
padding-right: 0;
|
||||
}
|
||||
|
||||
div.routersummary form {
|
||||
margin-top: -8px !important;
|
||||
margin-bottom: -8px !important;
|
||||
}
|
||||
|
||||
div.routersummary form:last-child {
|
||||
padding-top: 3px !important;
|
||||
margin-bottom: -10px !important;
|
||||
}
|
||||
|
||||
div.refresh {
|
||||
margin-top: 10px !important;
|
||||
margin-bottom: 10px !important;
|
||||
|
@ -18,7 +18,7 @@ public class RouterVersion {
|
||||
/** deprecated */
|
||||
public final static String ID = "Monotone";
|
||||
public final static String VERSION = CoreVersion.VERSION;
|
||||
public final static long BUILD = 2;
|
||||
public final static long BUILD = 3;
|
||||
|
||||
/** for example "-test" */
|
||||
public final static String EXTRA = "";
|
||||
|
Reference in New Issue
Block a user