Changeset b02fe53


Ignore:
Timestamp:
Mar 8, 2011 3:07:02 AM (9 years ago)
Author:
zzz <zzz@…>
Branches:
master
Children:
f4ca3976
Parents:
f9b2c0bc
Message:
  • 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
Files:
24 edited

Legend:

Unmodified
Added
Removed
  • apps/routerconsole/java/src/net/i2p/router/web/CSSHelper.java

    rf9b2c0bc rb02fe53  
    2929    }
    3030
    31     /** change default language for the router but don't save it */
     31    /** change default language for the router AND save it */
    3232    public void setLang(String lang) {
    33         // TODO: Protect with nonce or require POST
    34         if (lang != null && lang.length() == 2)
     33        // Protected with nonce in css.jsi
     34        if (lang != null && lang.length() == 2 && !lang.equals(_context.getProperty(Messages.PROP_LANG))) {
    3535            _context.router().setConfigSetting(Messages.PROP_LANG, lang);
     36            _context.router().saveConfig();
     37        }
    3638    }
    3739
     
    6264         return buf.toString();
    6365    }
     66
     67    /**
     68     *  Should we allow a refreshing IFrame?
     69     *  @since 0.8.5
     70     */
     71    public boolean allowIFrame(String ua) {
     72        return ua == null || !(ua.startsWith("Lynx") || ua.startsWith("w3m") ||
     73                               ua.startsWith("ELinks") || ua.startsWith("Dillo"));
     74    }
    6475}
  • apps/routerconsole/java/src/net/i2p/router/web/ContentHelper.java

    rf9b2c0bc rb02fe53  
    2020    }
    2121    public void setLang(String l) {
     22/*****
    2223        if((_lang == null || !_lang.equals(l)) && (l != null)) {
    2324            //Set language for router console
    2425            _lang = l;
    25 /*****
    2626 TODO - Temporary for 0.8.4
    2727        Needed for desktopgui. But there's no nonce protection.
    2828        Move the following to CSSHelper setLang(), or disable completely,
    2929        See comments in CSSHelper
    30 *****/
    3130            if(_context == null) {
    3231                setContextId(null);
     
    4039            }
    4140        }
     41*****/
    4242    }
    4343   
  • apps/routerconsole/java/src/net/i2p/router/web/SummaryBarRenderer.java

    rf9b2c0bc rb02fe53  
    225225                System.setProperty("net.i2p.router.web.UpdateHandler.nonce", nonce+"");
    226226                String uri = _helper.getRequestURI();
    227                 buf.append("<p><form action=\"").append(uri).append("\" method=\"POST\">\n");
     227                buf.append("<form action=\"").append(uri).append("\" method=\"POST\">\n");
    228228                buf.append("<input type=\"hidden\" name=\"updateNonce\" value=\"").append(nonce).append("\" >\n");
    229229                if (_helper.updateAvailable()) {
    230230                    buf.append("<button type=\"submit\" name=\"updateAction\" value=\"signed\" >")
    231                        .append(_("Download"))
    232                        .append(' ')
    233                        .append(_helper.getUpdateVersion())
    234                        .append(' ')
    235                        .append(_("Update"))
    236                        .append("</button>\n");
     231                       // Note to translators: parameter is a version, e.g. "0.8.4"
     232                       .append(_("Download {0} Update", _helper.getUpdateVersion()))
     233                       .append("</button><br>\n");
    237234                }
    238235                if (_helper.unsignedUpdateAvailable()) {
    239236                    buf.append("<button type=\"submit\" name=\"updateAction\" value=\"Unsigned\" >")
    240                        .append(_("Download Unsigned"))
    241                        .append("<br>")
    242                        .append(_("Update"))
    243                        .append(' ')
    244                        .append(_helper.getUnsignedUpdateVersion())
    245                        .append("</button>\n");
     237                       // Note to translators: parameter is a date and time, e.g. "02-Mar 20:34 UTC"
     238                       // <br> is optional, to help the browser make the lines even in the button
     239                       // If the translation is shorter than the English, you should probably not include <br>
     240                       .append(_("Download Unsigned<br>Update {0}", _helper.getUnsignedUpdateVersion()))
     241                       .append("</button><br>\n");
    246242                }
    247243                buf.append("</form>\n");
     
    252248
    253249
    254         buf.append("<p>")
    255            .append(ConfigRestartBean.renderStatus(_helper.getRequestURI(), _helper.getAction(), _helper.getConsoleNonce()))
    256 
    257            .append("</p><hr><h3><a href=\"/peers\" target=\"_top\" title=\"")
     250        buf.append(ConfigRestartBean.renderStatus(_helper.getRequestURI(), _helper.getAction(), _helper.getConsoleNonce()))
     251
     252           .append("<hr><h3><a href=\"/peers\" target=\"_top\" title=\"")
    258253           .append(_("Show all current peer connections"))
    259254           .append("\">")
     
    457452        return Messages.getString(s, _context);
    458453    }
     454
     455    /** translate a string with a parameter */
     456    private String _(String s, Object o) {
     457        return Messages.getString(s, o, _context);
     458    }
    459459}
  • apps/routerconsole/jsp/configlogging.jsp

    rf9b2c0bc rb02fe53  
    4242            </i></td>
    4343        </tr><tr><td class="mediumtags" align="right"><b><%=intl._("Max log file size")%>:</b></td>
    44           <td><input type="text" name="logfilesize" size="4" value="<jsp:getProperty name="logginghelper" property="maxFileSize" />" ><br></td>
     44          <td><input type="text" name="logfilesize" size="10" value="<jsp:getProperty name="logginghelper" property="maxFileSize" />" ><br></td>
    4545        </tr><tr><td class="mediumtags" align="right"><b><%=intl._("Default log level")%>:</b></td>
    4646          <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)")%>
  • apps/routerconsole/jsp/css.jsi

    rf9b2c0bc rb02fe53  
    2727<jsp:setProperty name="intl" property="contextId" value="<%=(String)session.getAttribute("i2p.contextId")%>" />
    2828<%
    29    intl.setLang(request.getParameter("lang"));
     29   String conNonceParam = request.getParameter("consoleNonce");
     30   if (conNonceParam != null && conNonceParam.equals(System.getProperty("router.consoleNonce"))) {
     31       intl.setLang(request.getParameter("lang"));
     32   }
    3033%>
    3134<link href="<%=intl.getTheme(request.getHeader("User-Agent"))%>console.css" rel="stylesheet" type="text/css">
  • apps/routerconsole/jsp/index.jsp

    rf9b2c0bc rb02fe53  
    88</head><body>
    99<%
    10 if (System.getProperty("router.consoleNonce") == null) {
    11     System.setProperty("router.consoleNonce", new java.util.Random().nextLong() + "");
    12 }
     10    String consoleNonce = System.getProperty("router.consoleNonce");
     11    if (consoleNonce == null) {
     12        consoleNonce = Long.toString(new java.util.Random().nextLong());
     13        System.setProperty("router.consoleNonce", consoleNonce);
     14    }
    1315%>
    1416
     
    2729</div><div class="main" id="main">
    2830 <jsp:useBean class="net.i2p.router.web.ContentHelper" id="contenthelper" scope="request" />
     31 <div class="welcome">
     32  <div class="langbox">
     33    <a href="/?lang=en&amp;consoleNonce=<%=consoleNonce%>"><img src="/flags.jsp?c=us" title="English" alt="English"></a>
     34    <a href="/?lang=ar&amp;consoleNonce=<%=consoleNonce%>"><img src="/flags.jsp?c=lang_ar" title="عربية" alt="عربية"></a>
     35    <a href="/?lang=zh&amp;consoleNonce=<%=consoleNonce%>"><img src="/flags.jsp?c=cn" title="中文" alt="中文"></a>
     36    <a href="/?lang=de&amp;consoleNonce=<%=consoleNonce%>"><img src="/flags.jsp?c=de" title="Deutsch" alt="Deutsch"></a>
     37    <a href="/?lang=fr&amp;consoleNonce=<%=consoleNonce%>"><img src="/flags.jsp?c=fr" title="Français" alt="Français"></a>
     38    <a href="/?lang=es&amp;consoleNonce=<%=consoleNonce%>"><img src="/flags.jsp?c=es" title="Español" alt="Español"></a>
     39    <a href="/?lang=pt&amp;consoleNonce=<%=consoleNonce%>"><img src="/flags.jsp?c=pt" title="Português" alt="Português"></a>
     40    <a href="/?lang=nl&amp;consoleNonce=<%=consoleNonce%>"><img src="/flags.jsp?c=nl" title="Nederlands" alt="Nederlands"></a>
     41    <a href="/?lang=ru&amp;consoleNonce=<%=consoleNonce%>"><img src="/flags.jsp?c=ru" title="Русский" alt="Русский"></a>
     42    <a href="/?lang=sv&amp;consoleNonce=<%=consoleNonce%>"><img src="/flags.jsp?c=se" title="Svenska" alt="Svenska"></a>
     43  </div>
     44  <a name="top"></a>
     45  <h2><%=intl._("Welcome to I2P")%></h2>
     46 </div>
    2947 <% fpath = new java.io.File(net.i2p.I2PAppContext.getGlobalContext().getBaseDir(), "docs/readme.html"); %>
    3048 <jsp:setProperty name="contenthelper" property="page" value="<%=fpath.getAbsolutePath()%>" />
    3149 <jsp:setProperty name="contenthelper" property="maxLines" value="300" />
    32  <jsp:setProperty name="contenthelper" property="lang" value="<%=request.getParameter("lang")%>" />
    3350 <jsp:setProperty name="contenthelper" property="contextId" value="<%=(String)session.getAttribute("i2p.contextId")%>" />
    3451 <jsp:getProperty name="contenthelper" property="content" />
  • apps/routerconsole/jsp/summary.jsi

    rf9b2c0bc rb02fe53  
    1 <% // put width here too to prevent bad layout at startup %>
    2 <% // let's remove that for now since we're no longer using percentage width here %>
    31<div class="routersummaryouter">
    42<%
    5     // skip the iframe if refresh disabled
    6     String d = request.getParameter("refresh");
    7     String newDelay = "";
    8     if (d == null || "".equals(d))
    9         d = intl.getRefresh();
    10     else {
    11         d = net.i2p.data.DataHelper.stripHTML(d);  // XSS
    12         // pass the new delay parameter to the iframe
    13         newDelay = "?refresh=" + d;
     3    // The refresh delay, 0 to disable
     4    String d = "0";
     5    boolean allowIFrame = intl.allowIFrame(request.getHeader("User-Agent"));
     6    if (allowIFrame) {
     7        // skip the iframe if refresh disabled
     8        d = request.getParameter("refresh");
     9        String newDelay = "";
     10        if (d == null || "".equals(d))
     11            d = intl.getRefresh();
     12        else {
     13            d = net.i2p.data.DataHelper.stripHTML(d);  // XSS
     14            // pass the new delay parameter to the iframe
     15            newDelay = "?refresh=" + d;
     16        }
     17        if (!"0".equals(d))
     18            out.print("<iframe src=\"/summaryframe.jsp" + newDelay + "\" height=\"1500\" width=\"200\" scrolling=\"auto\" frameborder=\"0\" title=\"sidepanel\">\n");
    1419    }
    15     if (!"0".equals(d))
    16         out.print("<iframe src=\"/summaryframe.jsp" + newDelay + "\" height=\"1500\" width=\"200\" scrolling=\"auto\" frameborder=\"0\" title=\"sidepanel\">\n");
    1720%>
    1821<div class="routersummary">
     22<%
     23    if (allowIFrame) {
     24        // Display the whole summary bar
     25%>
    1926<%@include file="summarynoframe.jsi" %>
    2027<%
    21     // d defined above
     28    } else {
     29        // Text browsers don't render the two divs side-by-side, so just provide a link
     30        out.print("<a href=\"/summaryframe\">");
     31        out.print(intl._("Summary Bar"));
     32        out.print("</a>");
     33    }
     34
     35    // d and allowIFrame defined above
    2236    if (!"0".equals(d)) {
    2337        out.print("</div></iframe>\n");
    24     } else {
     38    } else if (allowIFrame) {
    2539        // since we don't have an iframe this will reload the base page, and
    2640        // the new delay will be passed to the iframe above
     
    3549        out.print("</button>\n");
    3650        out.print("</form></div></div>\n");
     51    } else {
     52        out.print("</div>\n");
    3753    }
    3854%>
  • apps/routerconsole/jsp/summaryframe.jsp

    rf9b2c0bc rb02fe53  
    1616    String d = request.getParameter("refresh");
    1717    // Normal browsers send value, IE sends button label
    18     boolean shutdownSoon = "shutdownImmediate".equals(action) || "restartImmediate".equals(action) ||
     18    boolean allowIFrame = intl.allowIFrame(request.getHeader("User-Agent"));
     19    boolean shutdownSoon = (!allowIFrame) ||
     20                           "shutdownImmediate".equals(action) || "restartImmediate".equals(action) ||
    1921                           "Shutdown immediately".equals(action) || "Restart immediately".equals(action);
    2022    if (!shutdownSoon) {
  • history.txt

    rf9b2c0bc rb02fe53  
     12011-03-08 zzz
     2    * Console:
     3      - Parameterize download button tags (ticket #425)
     4      - Clean up summary bar HTML warnings
     5      - Just display a summary bar link for text browsers
     6      - Move welcome div from the readme files to index.jsp
     7      - Require a nonce to change language
     8    * i2psnark:
     9      - More efficient metainfo handling, reduce instantiations
     10      - Improved handling of storage errors
     11      - Improved handling of duplicate file names
     12      - More metainfo sanity checks
     13      - Metadata transfer error handling improvements
     14      - Code cleanup, remove dead and duplicated code
     15
    1162011-03-02 zzz
    217    * BuildHandler:
    318      - Limit request queue size
    419      - Concurrent request queue
    5       - Remove dead code for queued rely handling
     20      - Remove dead code for queued reply handling
    621    * OutNetMessage: Remove dead code
    722    * Tunnel cleanups, final, javadoc
  • installer/resources/readme/readme.html

    rf9b2c0bc rb02fe53  
    11<div lang="en">
    2  <div class="welcome">
    3   <div class="langbox">
    4     <a href="/?lang=en"><img src="/flags.jsp?c=us" title="English" alt="English"></a>
    5     <a href="/?lang=ar"><img src="/flags.jsp?c=lang_ar" title="عربية" alt="عربية"></a>
    6     <a href="/?lang=zh"><img src="/flags.jsp?c=cn" title="中文" alt="中文"></a>
    7     <a href="/?lang=de"><img src="/flags.jsp?c=de" title="Deutsch" alt="Deutsch"></a>
    8     <a href="/?lang=fr"><img src="/flags.jsp?c=fr" title="Français" alt="Français"></a>
    9     <a href="/?lang=es"><img src="/flags.jsp?c=es" title="Español" alt="Español"></a>
    10     <a href="/?lang=pt"><img src="/flags.jsp?c=pt" title="Português" alt="Português"></a>
    11     <a href="/?lang=nl"><img src="/flags.jsp?c=nl" title="Nederlands" alt="Nederlands"></a>
    12     <a href="/?lang=ru"><img src="/flags.jsp?c=ru" title="Русский" alt="Русский"></a>
    13     <a href="/?lang=sv"><img src="/flags.jsp?c=se" title="Svenska" alt="Svenska"></a>
    14   </div>
    15   <a name="top"></a>
    16   <h2>Welcome to the Invisible Internet</h2>
    17  </div>
    182
    193<ul class="links"><li class="tidylist"><b>Starting Up&hellip;</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>
  • installer/resources/readme/readme_ar.html

    rf9b2c0bc rb02fe53  
    11<div dir="rtl" lang="ar">
    2  <div class="welcome">
    3   <div class="langbox" dir="ltr">
    4     <a href="/?lang=en"><img src="/flags.jsp?c=us" title="English" alt="English"></a>
    5     <a href="/?lang=ar"><img src="/flags.jsp?c=lang_ar" title="عربية" alt="عربية"></a>
    6     <a href="/?lang=zh"><img src="/flags.jsp?c=cn" title="中文" alt="中文"></a>
    7     <a href="/?lang=de"><img src="/flags.jsp?c=de" title="Deutsch" alt="Deutsch"></a>
    8     <a href="/?lang=fr"><img src="/flags.jsp?c=fr" title="Fran&ccedil;ais" alt="Fran&ccedil;ais"></a>
    9     <a href="/?lang=es"><img src="/flags.jsp?c=es" title="Espa&ntilde;ol" alt="Espa&ntilde;ol"></a>
    10     <a href="/?lang=pt"><img src="/flags.jsp?c=pt" title="Português" alt="Português"></a>
    11     <a href="/?lang=nl"><img src="/flags.jsp?c=nl" title="Nederlands" alt="Nederlands"></a>
    12     <a href="/?lang=ru"><img src="/flags.jsp?c=ru" title="Русский" alt="Русский"></a>
    13     <a href="/?lang=sv"><img src="/flags.jsp?c=se" title="Svenska" alt="Svenska"></a>
    14   </div>
    15   <a name="top"></a>
    16   <h2>مرحبا بكم في الانترنت الغير مرئية</h2>
    17  </div>
    182
    193<p>عندما تقوم بتشغيل I2P ستبدأ الأرقام على يسار الشاشة في الازدياد خلال الدقائق التالية وستظهر عبارة <i>Shared Clients</i> (ان <a href=#trouble>لم تظهر، انظر التعليمات اسفله</a>). عندها يمكنك الحصول على عدة خدمات مثل تورنت، البريد الإلكتروني السري، وخدمات أخرى:</p>
  • installer/resources/readme/readme_de.html

    rf9b2c0bc rb02fe53  
    11<div lang="de">
    2  <div class="welcome">
    3   <div class="langbox">
    4     <a href="/?lang=en"><img src="/flags.jsp?c=us" title="English" alt="English"></a>
    5     <a href="/?lang=ar"><img src="/flags.jsp?c=lang_ar" title="عربية" alt="عربية"></a>
    6     <a href="/?lang=zh"><img src="/flags.jsp?c=cn" title="中文" alt="中文"></a>
    7     <a href="/?lang=de"><img src="/flags.jsp?c=de" title="Deutsch" alt="Deutsch"></a>
    8     <a href="/?lang=fr"><img src="/flags.jsp?c=fr" title="Fran&ccedil;ais" alt="Fran&ccedil;ais"></a>
    9     <a href="/?lang=es"><img src="/flags.jsp?c=es" title="Espa&ntilde;ol" alt="Espa&ntilde;ol"></a>
    10     <a href="/?lang=pt"><img src="/flags.jsp?c=pt" title="Português" alt="Português"></a>
    11     <a href="/?lang=nl"><img src="/flags.jsp?c=nl" title="Nederlands" alt="Nederlands"></a>
    12     <a href="/?lang=ru"><img src="/flags.jsp?c=ru" title="Русский" alt="Русский"></a>
    13     <a href="/?lang=sv"><img src="/flags.jsp?c=se" title="Svenska" alt="Svenska"></a>
    14   </div>
    15   <a name="top"></a>
    16   <h2>Willkommen im I2P!</h2>
    17  </div>
    182
    193<p>Wenn Du I2P gerade gestartet hast, sollten die "Aktiv:"-Zahlen links in den n&auml;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>
  • installer/resources/readme/readme_es.html

    rf9b2c0bc rb02fe53  
    11<div lang="es">
    2  <div class="welcome">
    3   <div class="langbox">
    4     <a href="/?lang=en"><img src="/flags.jsp?c=us" title="English" alt="English"></a>
    5     <a href="/?lang=ar"><img src="/flags.jsp?c=lang_ar" title="عربية" alt="عربية"></a>
    6     <a href="/?lang=zh"><img src="/flags.jsp?c=cn" title="中文" alt="中文"></a>
    7     <a href="/?lang=de"><img src="/flags.jsp?c=de" title="Deutsch" alt="Deutsch"></a>
    8     <a href="/?lang=fr"><img src="/flags.jsp?c=fr" title="Fran&ccedil;ais" alt="Fran&ccedil;ais"></a>
    9     <a href="/?lang=es"><img src="/flags.jsp?c=es" title="Espa&ntilde;ol" alt="Espa&ntilde;ol"></a>
    10     <a href="/?lang=pt"><img src="/flags.jsp?c=pt" title="Português" alt="Português"></a>
    11     <a href="/?lang=nl"><img src="/flags.jsp?c=nl" title="Nederlands" alt="Nederlands"></a>
    12     <a href="/?lang=ru"><img src="/flags.jsp?c=ru" title="Русский" alt="Русский"></a>
    13     <a href="/?lang=sv"><img src="/flags.jsp?c=se" title="Svenska" alt="Svenska"></a>
    14   </div>
    15   <a name="top"></a>
    16   <h2>&iexcl;Bienvenido a I2P!</h2>
    17  </div>
    182
    193<p>Si acabas de iniciar I2P, al observar el menú de la izquierda, deberías notar que los n&uacute;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">&iexcl;mira abajo!</a>) <br>Apenas aparezca esto, puedes:</p>
  • installer/resources/readme/readme_fr.html

    rf9b2c0bc rb02fe53  
    11<div lang="fr">
    2  <div class="welcome">
    3   <div class="langbox">
    4     <a href="/?lang=en"><img src="/flags.jsp?c=us" title="English" alt="English"></a>
    5     <a href="/?lang=ar"><img src="/flags.jsp?c=lang_ar" title="عربية" alt="عربية"></a>
    6     <a href="/?lang=zh"><img src="/flags.jsp?c=cn" title="中文" alt="中文"></a>
    7     <a href="/?lang=de"><img src="/flags.jsp?c=de" title="Deutsch" alt="Deutsch"></a>
    8     <a href="/?lang=fr"><img src="/flags.jsp?c=fr" title="Fran&ccedil;ais" alt="Fran&ccedil;ais"></a>
    9     <a href="/?lang=es"><img src="/flags.jsp?c=es" title="Espa&ntilde;ol" alt="Espa&ntilde;ol"></a>
    10     <a href="/?lang=pt"><img src="/flags.jsp?c=pt" title="Português" alt="Português"></a>
    11     <a href="/?lang=nl"><img src="/flags.jsp?c=nl" title="Nederlands" alt="Nederlands"></a>
    12     <a href="/?lang=ru"><img src="/flags.jsp?c=ru" title="Русский" alt="Русский"></a>
    13     <a href="/?lang=sv"><img src="/flags.jsp?c=se" title="Svenska" alt="Svenska"></a>
    14   </div>
    15   <a name="top"></a>
    16   <h2>Bienvenu sur I2P!</h2>
    17  </div>
    182
    193<p>Si vous venez juste de lancer I2P, les chiffres sur la gauche &agrave; cot&eacute; de Active devraient commencer &agrave; augmenter dans les prochaines minutes et vous verrez un "Shared client" en destination locale list&eacute;s sur la gauche (si non, <a href=#trouble>voir plus bas</a>). Une fois qu'ils apparaissent, vous pouvez:</p>
  • installer/resources/readme/readme_nl.html

    rf9b2c0bc rb02fe53  
    11<div lang="nl">
    2  <div class="welcome">
    3   <div class="langbox">
    4     <a href="/?lang=en"><img src="/flags.jsp?c=us" title="English" alt="English"></a>
    5     <a href="/?lang=ar"><img src="/flags.jsp?c=lang_ar" title="عربية" alt="عربية"></a>
    6     <a href="/?lang=zh"><img src="/flags.jsp?c=cn" title="中文" alt="中文"></a>
    7     <a href="/?lang=de"><img src="/flags.jsp?c=de" title="Deutsch" alt="Deutsch"></a>
    8     <a href="/?lang=fr"><img src="/flags.jsp?c=fr" title="Français" alt="Français"></a>
    9     <a href="/?lang=es"><img src="/flags.jsp?c=es" title="Español" alt="Español"></a>
    10     <a href="/?lang=pt"><img src="/flags.jsp?c=pt" title="Português" alt="Português"></a>
    11     <a href="/?lang=nl"><img src="/flags.jsp?c=nl" title="Nederlands" alt="Nederlands"></a>
    12     <a href="/?lang=ru"><img src="/flags.jsp?c=ru" title="Русский" alt="Русский"></a>
    13     <a href="/?lang=sv"><img src="/flags.jsp?c=se" title="Svenska" alt="Svenska"></a>
    14   </div>
    15   <a name="top"></a>
    16   <h2>Welkom op het Invisible Internet</h2>
    17  </div>
    182
    193<ul class="links"><li class="tidylist"><b>Opstarten&hellip;</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>
  • installer/resources/readme/readme_pt.html

    rf9b2c0bc rb02fe53  
    11<div lang="pt">
    2  <div class="welcome">
    3   <div class="langbox">
    4     <a href="/?lang=en"><img src="/flags.jsp?c=us" title="English" alt="English"></a>
    5     <a href="/?lang=ar"><img src="/flags.jsp?c=lang_ar" title="عربية" alt="عربية"></a>
    6     <a href="/?lang=zh"><img src="/flags.jsp?c=cn" title="中文" alt="中文"></a>
    7     <a href="/?lang=de"><img src="/flags.jsp?c=de" title="Deutsch" alt="Deutsch"></a>
    8     <a href="/?lang=fr"><img src="/flags.jsp?c=fr" title="Fran&ccedil;ais" alt="Fran&ccedil;ais"></a>
    9     <a href="/?lang=es"><img src="/flags.jsp?c=es" title="Espa&ntilde;ol" alt="Espa&ntilde;ol"></a>
    10     <a href="/?lang=pt"><img src="/flags.jsp?c=pt" title="Português" alt="Português"></a>
    11     <a href="/?lang=nl"><img src="/flags.jsp?c=nl" title="Nederlands" alt="Nederlands"></a>
    12     <a href="/?lang=ru"><img src="/flags.jsp?c=ru" title="Русский" alt="Русский"></a>
    13     <a href="/?lang=sv"><img src="/flags.jsp?c=se" title="Svenska" alt="Svenska"></a>
    14   </div>
    15   <a name="top"></a>
    16   <h2>Bem-vindo a I2P!</h2>
    17  </div>
    182
    193<p>Se você acaba de iniciar I2P, os n&uacute;meros à esquerda ao lado de "Active:" deberiam subir nos seguintes minutos e logo lá ver&aacute; uma Destinação chamada "shared clients". (se não, <a href="#trouble">veija embaixo!</a>) <br>Assim que apareça isto, você pode:</p>
  • installer/resources/readme/readme_ru.html

    rf9b2c0bc rb02fe53  
    11<div lang="ru">
    2  <div class="welcome">
    3   <div class="langbox">
    4     <a href="/?lang=en"><img src="/flags.jsp?c=us" title="English" alt="English"></a>
    5     <a href="/?lang=ar"><img src="/flags.jsp?c=lang_ar" title="عربية" alt="عربية"></a>
    6     <a href="/?lang=zh"><img src="/flags.jsp?c=cn" title="中文" alt="中文"></a>
    7     <a href="/?lang=de"><img src="/flags.jsp?c=de" title="Deutsch" alt="Deutsch"></a>
    8     <a href="/?lang=fr"><img src="/flags.jsp?c=fr" title="Français" alt="Français"></a>
    9     <a href="/?lang=es"><img src="/flags.jsp?c=es" title="Español" alt="Español"></a>
    10     <a href="/?lang=pt"><img src="/flags.jsp?c=pt" title="Português" alt="Português"></a>
    11     <a href="/?lang=nl"><img src="/flags.jsp?c=nl" title="Nederlands" alt="Nederlands"></a>
    12     <a href="/?lang=ru"><img src="/flags.jsp?c=ru" title="Русский" alt="Русский"></a>
    13     <a href="/?lang=sv"><img src="/flags.jsp?c=se" title="Svenska" alt="Svenska"></a>
    14   </div>
    15   <a name="top"></a>
    16   <h2>Добро пожаловать в Невидимый Интернет</h2>
    17  </div>
    182
    193<ul class="links"><li class="tidylist"><b>Начало&hellip;</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>
  • installer/resources/readme/readme_sv.html

    rf9b2c0bc rb02fe53  
    11<div lang="sv">
    2  <div class="welcome">
    3   <div class="langbox">
    4     <a href="/?lang=en"><img src="/flags.jsp?c=us" title="English" alt="English"></a>
    5     <a href="/?lang=ar"><img src="/flags.jsp?c=lang_ar" title="عربية" alt="عربية"></a>
    6     <a href="/?lang=zh"><img src="/flags.jsp?c=cn" title="中文" alt="中文"></a>
    7     <a href="/?lang=de"><img src="/flags.jsp?c=de" title="Deutsch" alt="Deutsch"></a>
    8     <a href="/?lang=fr"><img src="/flags.jsp?c=fr" title="Fran&ccedil;ais" alt="Fran&ccedil;ais"></a>
    9     <a href="/?lang=es"><img src="/flags.jsp?c=es" title="Espa&ntilde;ol" alt="Espa&ntilde;ol"></a>
    10     <a href="/?lang=pt"><img src="/flags.jsp?c=pt" title="Português" alt="Português"></a>
    11     <a href="/?lang=nl"><img src="/flags.jsp?c=nl" title="Nederlands" alt="Nederlands"></a>
    12     <a href="/?lang=ru"><img src="/flags.jsp?c=ru" title="Русский" alt="Русский"></a>
    13     <a href="/?lang=sv"><img src="/flags.jsp?c=se" title="Svenska" alt="Svenska"></a>
    14   </div>
    15   <a name="top"></a>
    16   <h2>Welcome to I2P!</h2>
    17  </div>
    182
    193<p>Om du just har startat I2P kommer de "Aktiva: #/#" b&ouml;rja &ouml;ka inom
  • installer/resources/readme/readme_zh.html

    rf9b2c0bc rb02fe53  
    11<div lang="zh">
    2  <div class="welcome">
    3   <div class="langbox">
    4     <a href="/?lang=en"><img src="/flags.jsp?c=us" title="English" alt="English"></a>
    5     <a href="/?lang=ar"><img src="/flags.jsp?c=lang_ar" title="عربية" alt="عربية"></a>
    6     <a href="/?lang=zh"><img src="/flags.jsp?c=cn" title="中文" alt="中文"></a>
    7     <a href="/?lang=de"><img src="/flags.jsp?c=de" title="Deutsch" alt="Deutsch"></a>
    8     <a href="/?lang=fr"><img src="/flags.jsp?c=fr" title="Fran&ccedil;ais" alt="Fran&ccedil;ais"></a>
    9     <a href="/?lang=es"><img src="/flags.jsp?c=es" title="Espa&ntilde;ol" alt="Espa&ntilde;ol"></a>
    10     <a href="/?lang=nl"><img src="/flags.jsp?c=nl" title="Nederlands" alt="Nederlands"></a>
    11     <a href="/?lang=ru"><img src="/flags.jsp?c=ru" title="Русский" alt="Русский"></a>
    12     <a href="/?lang=sv"><img src="/flags.jsp?c=se" title="Svenska" alt="Svenska"></a>
    13   </div>
    14   <a name="top"></a>
    15   <h2>欢迎使用 I2P!</h2>
    16  </div>
    172
    183<p>I2P 运行后的几分钟里控制台左侧的【活动节点】数量会逐渐增加,
  • installer/resources/themes/console/classic/console.css

    rf9b2c0bc rb02fe53  
    259259}   
    260260     
    261 div.routersummary form {
    262      margin-top: -6px !important;
    263      margin-bottom: -4px !important;     
    264 }
    265 
    266 div.routersummary form:last-child {
    267      padding-top: 3px !important;
    268      margin-bottom: -10px !important;     
    269 }
    270 
    271261div.refresh {
    272262     margin-top: 10px !important;
  • installer/resources/themes/console/dark/console.css

    rf9b2c0bc rb02fe53  
    183183}
    184184
    185 div.routersummary form {
    186      margin: -6px 0 -7px;
    187 }
    188 
    189 div.routersummary form:first-child {
    190      margin: 6px 0 -4px 0 !important;
    191 }
    192 
    193185div.routersummary p {
    194186     padding: 0;
     
    196188
    197189div.refresh {
    198      margin-top: -10px !important;
    199      margin-bottom: -4px !important;
    200      padding: 2px 0 0px 0 !important;
     190     margin-top: 10px !important;
     191     margin-bottom: 10px !important;
     192     padding: 2px 0 !important;
    201193}
    202194
     
    839831     padding: 1px 2px;
    840832     text-decoration: none;
    841      min-width: 110px;
    842833     border-radius: 4px;
    843834     -moz-border-radius: 4px;
     
    918909     border: 1px solid #494;
    919910}
    920 
    921 form {}
    922911
    923912.proxyfooter {
  • installer/resources/themes/console/light/console.css

    rf9b2c0bc rb02fe53  
    251251}
    252252
    253 div.routersummary form {
    254      margin: -6px 0 -5px 0;
    255 }
    256 
    257 div.routersummary form:last-child {
    258      margin: 6px 0 0 0 !important;
    259      padding: 0;
    260 }
    261 
    262253div.routersummary p {
    263254     padding: 0;
     
    265256
    266257div.refresh {
    267      margin-top: -6px !important;
    268      margin-bottom: 0px !important;
     258     margin-top: 10px !important;
     259     margin-bottom: 10px !important;
    269260     padding: 2px 0 0px 0 !important;
    270261}
     
    871862}
    872863
    873 input {
    874      background: #ffe;
    875      color: #316;
    876      margin: 5px 10px 5px 10px;
    877      padding: 4px 2px;
    878      font: bold 8pt "Lucida Sans Unicode", "Bitstream Vera Sans", Verdana, Tahoma, Helvetica, sans-serif;
    879      border: 1px solid #447;
    880      text-decoration: none;
    881      min-width: 110px;
    882 }
    883 
    884864input, input:visited {
    885865     border: 1px outset #999;
     
    890870     padding: 1px 2px;
    891871     text-decoration: none;
    892      min-width: 110px;
    893872     border-radius: 4px;
    894873     -moz-border-radius: 4px;
     
    983962     box-shadow: inset 0px 0px 0px 1px #f60;     
    984963}
    985 
    986 form {}
    987964
    988965.proxyfooter {
  • installer/resources/themes/console/midnight/console.css

    rf9b2c0bc rb02fe53  
    281281}     
    282282     
    283 div.routersummary form {
    284      margin-top: -8px !important;
    285      margin-bottom: -8px !important;     
    286 }
    287 
    288 div.routersummary form:last-child {
    289      padding-top: 3px !important;
    290      margin-bottom: -10px !important;     
    291 }
    292 
    293283div.refresh {
    294284     margin-top: 10px !important;
  • router/java/src/net/i2p/router/RouterVersion.java

    rf9b2c0bc rb02fe53  
    1919    public final static String ID = "Monotone";
    2020    public final static String VERSION = CoreVersion.VERSION;
    21     public final static long BUILD = 2;
     21    public final static long BUILD = 3;
    2222
    2323    /** for example "-test" */
Note: See TracChangeset for help on using the changeset viewer.