forked from I2P_Developers/i2p.www
propagate from branch 'i2p.www' (head a893b34de76aa1a5af2507a897669be255dd497f)
to branch 'i2p.www.revamp' (head dc46cb85c4e0382445d24ec4b3d70fb2f0ac2f5d)
This commit is contained in:
292
design/bg-sidebar.svg
Normal file
292
design/bg-sidebar.svg
Normal file
@@ -0,0 +1,292 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||||
|
|
||||||
|
<svg
|
||||||
|
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||||
|
xmlns:cc="http://creativecommons.org/ns#"
|
||||||
|
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||||
|
xmlns:svg="http://www.w3.org/2000/svg"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
|
width="250"
|
||||||
|
height="460"
|
||||||
|
viewBox="0 0 250 460.00001"
|
||||||
|
id="svg3411"
|
||||||
|
version="1.1"
|
||||||
|
inkscape:version="0.91 r13725"
|
||||||
|
sodipodi:docname="bg-sidebar.svg"
|
||||||
|
inkscape:export-filename="bg-sidebar.png"
|
||||||
|
inkscape:export-xdpi="90"
|
||||||
|
inkscape:export-ydpi="90">
|
||||||
|
<defs
|
||||||
|
id="defs3413" />
|
||||||
|
<sodipodi:namedview
|
||||||
|
id="base"
|
||||||
|
pagecolor="#ffffff"
|
||||||
|
bordercolor="#666666"
|
||||||
|
borderopacity="1.0"
|
||||||
|
inkscape:pageopacity="0.0"
|
||||||
|
inkscape:pageshadow="2"
|
||||||
|
inkscape:zoom="1"
|
||||||
|
inkscape:cx="59.5"
|
||||||
|
inkscape:cy="228.5"
|
||||||
|
inkscape:document-units="px"
|
||||||
|
inkscape:current-layer="layer1"
|
||||||
|
showgrid="false"
|
||||||
|
units="px"
|
||||||
|
inkscape:window-width="1366"
|
||||||
|
inkscape:window-height="719"
|
||||||
|
inkscape:window-x="0"
|
||||||
|
inkscape:window-y="25"
|
||||||
|
inkscape:window-maximized="1" />
|
||||||
|
<metadata
|
||||||
|
id="metadata3416">
|
||||||
|
<rdf:RDF>
|
||||||
|
<cc:Work
|
||||||
|
rdf:about="">
|
||||||
|
<dc:format>image/svg+xml</dc:format>
|
||||||
|
<dc:type
|
||||||
|
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||||
|
<dc:title></dc:title>
|
||||||
|
</cc:Work>
|
||||||
|
</rdf:RDF>
|
||||||
|
</metadata>
|
||||||
|
<g
|
||||||
|
inkscape:label="Layer 1"
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
id="layer1"
|
||||||
|
transform="translate(0,-592.36214)">
|
||||||
|
<g
|
||||||
|
id="g4892">
|
||||||
|
<circle
|
||||||
|
style="display:inline;opacity:1;fill:#01ff01;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
id="path2965"
|
||||||
|
cx="221.73021"
|
||||||
|
cy="707.62994"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
style="display:inline;opacity:1;fill:#01ff01;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
id="path2969"
|
||||||
|
cx="197.54765"
|
||||||
|
cy="753.52283"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
id="path2961"
|
||||||
|
style="display:inline;opacity:1;fill:#01ff01;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
cx="100.81744"
|
||||||
|
cy="753.52283"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
id="path2979"
|
||||||
|
style="display:inline;opacity:1;fill:#01ff01;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
cx="197.54765"
|
||||||
|
cy="891.20135"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
id="path2933"
|
||||||
|
style="display:inline;opacity:1;fill:#01ff01;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
cx="221.73021"
|
||||||
|
cy="615.84424"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
id="path2941"
|
||||||
|
style="display:inline;opacity:1;fill:#01ff01;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
cx="221.73021"
|
||||||
|
cy="845.30853"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
style="display:inline;opacity:1;fill:#01ff01;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
id="path2917"
|
||||||
|
cx="173.3651"
|
||||||
|
cy="707.62994"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
style="display:inline;opacity:1;fill:#01ff01;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
id="path2949"
|
||||||
|
cx="197.54765"
|
||||||
|
cy="661.73712"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
style="display:inline;opacity:1;fill:#01ff01;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
id="path2953"
|
||||||
|
cx="149.18254"
|
||||||
|
cy="753.52283"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
id="path2955"
|
||||||
|
style="display:inline;opacity:1;fill:#01ff01;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
cx="173.3651"
|
||||||
|
cy="937.09418"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
style="display:inline;opacity:1;fill:#01ff01;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
id="path2935"
|
||||||
|
cx="124.99998"
|
||||||
|
cy="937.09418"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
style="display:inline;opacity:1;fill:#01ff01;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
id="path2959"
|
||||||
|
cx="221.73021"
|
||||||
|
cy="982.98706"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
style="display:inline;opacity:1;fill:#01ff01;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
id="path2973"
|
||||||
|
cx="197.54765"
|
||||||
|
cy="799.41565"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
id="path2975"
|
||||||
|
style="display:inline;opacity:1;fill:#01ff01;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
cx="124.99998"
|
||||||
|
cy="1028.88"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
style="display:inline;opacity:1;fill:#01ff01;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
id="path2977"
|
||||||
|
cx="173.3651"
|
||||||
|
cy="845.30853"
|
||||||
|
r="9.4642859" />
|
||||||
|
</g>
|
||||||
|
<g
|
||||||
|
id="g4841">
|
||||||
|
<circle
|
||||||
|
id="path2863"
|
||||||
|
style="display:inline;opacity:1;fill:#ff0101;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
cx="28.269793"
|
||||||
|
cy="799.41565"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
style="display:inline;opacity:1;fill:#ff0101;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
id="path2873"
|
||||||
|
cx="100.81744"
|
||||||
|
cy="707.62994"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
style="display:inline;opacity:1;fill:#ff0101;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
id="path2881"
|
||||||
|
cx="52.452339"
|
||||||
|
cy="753.52283"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
style="display:inline;opacity:1;fill:#ff0101;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
id="path2865"
|
||||||
|
cx="28.269793"
|
||||||
|
cy="845.30853"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
style="display:inline;opacity:1;fill:#ff0101;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
id="path2891"
|
||||||
|
cx="76.634888"
|
||||||
|
cy="937.09418"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
id="path2857"
|
||||||
|
style="display:inline;opacity:1;fill:#ff0101;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
cx="28.269793"
|
||||||
|
cy="615.84424"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
style="display:inline;opacity:1;fill:#ff0101;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
id="path2877"
|
||||||
|
cx="76.634888"
|
||||||
|
cy="615.84424"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
style="display:inline;opacity:1;fill:#ff0101;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
id="path2869"
|
||||||
|
cx="52.452339"
|
||||||
|
cy="661.73712"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
style="display:inline;opacity:1;fill:#ff0101;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
id="path2861"
|
||||||
|
cx="100.81744"
|
||||||
|
cy="982.98706"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
id="path2875"
|
||||||
|
style="display:inline;opacity:1;fill:#ff0101;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
cx="52.452339"
|
||||||
|
cy="891.20135"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
id="path2899"
|
||||||
|
style="display:inline;opacity:1;fill:#ff0101;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
cx="28.269793"
|
||||||
|
cy="937.09418"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
id="path2883"
|
||||||
|
style="display:inline;opacity:1;fill:#ff0101;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
cx="52.452339"
|
||||||
|
cy="1028.88"
|
||||||
|
r="9.4642859" />
|
||||||
|
</g>
|
||||||
|
<g
|
||||||
|
id="g4865">
|
||||||
|
<circle
|
||||||
|
style="display:inline;opacity:1;fill:#ebed02;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
id="path2897"
|
||||||
|
cx="76.634888"
|
||||||
|
cy="799.41565"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
style="display:inline;opacity:1;fill:#ebed02;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
id="path2943"
|
||||||
|
cx="149.18254"
|
||||||
|
cy="982.98706"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
id="path2923"
|
||||||
|
style="display:inline;opacity:1;fill:#ebed02;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
cx="100.81744"
|
||||||
|
cy="891.20135"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
id="path2909"
|
||||||
|
style="display:inline;opacity:1;fill:#ebed02;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
cx="149.18254"
|
||||||
|
cy="615.84424"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
id="path2901"
|
||||||
|
style="display:inline;opacity:1;fill:#ebed02;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
cx="124.99998"
|
||||||
|
cy="661.73712"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
style="display:inline;opacity:1;fill:#ebed02;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
id="path2921"
|
||||||
|
cx="124.99998"
|
||||||
|
cy="799.41565"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
style="display:inline;opacity:1;fill:#ebed02;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
id="path2907"
|
||||||
|
cx="52.452339"
|
||||||
|
cy="982.98706"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
style="display:inline;opacity:1;fill:#ebed02;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
id="path2925"
|
||||||
|
cx="124.99998"
|
||||||
|
cy="845.30853"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
style="display:inline;opacity:1;fill:#ebed02;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
id="path2947"
|
||||||
|
cx="52.452339"
|
||||||
|
cy="707.62994"
|
||||||
|
r="9.4642859" />
|
||||||
|
<circle
|
||||||
|
id="path2931"
|
||||||
|
style="display:inline;opacity:1;fill:#ebed02;fill-opacity:0.39215687;stroke:none;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:0;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
cx="197.54765"
|
||||||
|
cy="1028.88"
|
||||||
|
r="9.4642859" />
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 14 KiB |
@@ -668,7 +668,7 @@ class I2PHtmlFormatter(Formatter):
|
|||||||
style = '; '.join(style)
|
style = '; '.join(style)
|
||||||
|
|
||||||
yield 0, ('<div' + (self.cssclass and ' class="%s"' % self.cssclass)
|
yield 0, ('<div' + (self.cssclass and ' class="%s"' % self.cssclass)
|
||||||
+ (style and (' style="%s"' % style)) + '>')
|
+ (style and (' style="%s"' % style)) + ' dir=ltr>')
|
||||||
for tup in inner:
|
for tup in inner:
|
||||||
yield tup
|
yield tup
|
||||||
yield 0, '</div>\n'
|
yield 0, '</div>\n'
|
||||||
|
@@ -2,11 +2,13 @@
|
|||||||
{%- from "global/macros" import render_categories with context -%}
|
{%- from "global/macros" import render_categories with context -%}
|
||||||
{% block title %}{{ title }} - {{ _('Blog') }}{% endblock %}
|
{% block title %}{{ title }} - {{ _('Blog') }}{% endblock %}
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<ul id="post-info" class="lastupdated">
|
<div class="meta">
|
||||||
|
<ul id="post-info">
|
||||||
<li class="date">{{ _('Posted:') }} {{ meta.date }}</li>
|
<li class="date">{{ _('Posted:') }} {{ meta.date }}</li>
|
||||||
<li class="author">{{ _('Author:') }} {{ meta.author }}</li>
|
<li class="author">{{ _('Author:') }} {{ meta.author }}</li>
|
||||||
<li class="category">{{ render_categories(meta.category)|safe }}</li>
|
<li class="category">{{ render_categories(meta.category)|safe }}</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
</div>
|
||||||
{% autoescape false %}
|
{% autoescape false %}
|
||||||
{{ body }}
|
{{ body }}
|
||||||
{% endautoescape %}
|
{% endautoescape %}
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
<meta http-equiv="refresh" content="5;url={{ url }}" />
|
<meta http-equiv="refresh" content="5;url={{ url }}" />
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<div class="file filedownload">
|
<div class="meta">
|
||||||
<p>{% trans -%}
|
<p>{% trans -%}
|
||||||
Your download will begin shortly. If it doesn't start within 5 seconds, click <a href="{{ url }}">here</a>.
|
Your download will begin shortly. If it doesn't start within 5 seconds, click <a href="{{ url }}">here</a>.
|
||||||
{%- endtrans %}</p>
|
{%- endtrans %}</p>
|
||||||
|
@@ -13,6 +13,7 @@
|
|||||||
<link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='styles/' + g.theme + '/default.css') }}" media="screen, handheld, print, projection" />
|
<link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='styles/' + g.theme + '/default.css') }}" media="screen, handheld, print, projection" />
|
||||||
<link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='styles/' + g.theme + '/mobile.css') }}" media="screen and (min-device-width:320px) and (max-width:767px)" />
|
<link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='styles/' + g.theme + '/mobile.css') }}" media="screen and (min-device-width:320px) and (max-width:767px)" />
|
||||||
<link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='styles/' + g.theme + '/desktop.css') }}" title="{{ g.theme }}" media="screen and (min-device-width:768px) and (min-width:768px), print, projection" />
|
<link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='styles/' + g.theme + '/desktop.css') }}" title="{{ g.theme }}" media="screen and (min-device-width:768px) and (min-width:768px), print, projection" />
|
||||||
|
<link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='styles/' + g.theme + '/widescreen.css') }}" title="{{ g.theme }}" media="screen and (min-device-width:1120px) and (min-width:1120px), print, projection" />
|
||||||
<!--[if IEMobile]>
|
<!--[if IEMobile]>
|
||||||
<link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='styles/' + g.theme + '/mobile.css') }}" media="screen" />
|
<link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='styles/' + g.theme + '/mobile.css') }}" media="screen" />
|
||||||
<![endif]-->
|
<![endif]-->
|
||||||
@@ -22,6 +23,7 @@
|
|||||||
{% if is_rtl() -%}
|
{% if is_rtl() -%}
|
||||||
<link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='styles/' + g.theme + '/default.rtl.css') }}" media="screen, handheld, print, projection" />
|
<link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='styles/' + g.theme + '/default.rtl.css') }}" media="screen, handheld, print, projection" />
|
||||||
<link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='styles/' + g.theme + '/desktop.rtl.css') }}" title="{{ g.theme }}" media="screen and (min-device-width:768px) and (min-width:768px), print, projection" />
|
<link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='styles/' + g.theme + '/desktop.rtl.css') }}" title="{{ g.theme }}" media="screen and (min-device-width:768px) and (min-width:768px), print, projection" />
|
||||||
|
<link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='styles/' + g.theme + '/widescreen.rtl.css') }}" title="{{ g.theme }}" media="screen and (min-device-width:1120px) and (min-width:1120px), print, projection" />
|
||||||
{%- endif %}
|
{%- endif %}
|
||||||
<link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='styles/' + g.theme + '/syntax.css') }}" media="screen, handheld, print, projection" />
|
<link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='styles/' + g.theme + '/syntax.css') }}" media="screen, handheld, print, projection" />
|
||||||
{%- endif %}
|
{%- endif %}
|
||||||
@@ -49,9 +51,27 @@
|
|||||||
<div class="container-fluid{% if not self.content() %} well{% endif %}">
|
<div class="container-fluid{% if not self.content() %} well{% endif %}">
|
||||||
<div id="content">
|
<div id="content">
|
||||||
{% block content_outer %}
|
{% block content_outer %}
|
||||||
<article class="inner">
|
<div class="title">
|
||||||
|
<h1>{{ self.title() }}</h1>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<main role="main" class="inner">
|
||||||
|
<div class="fluid">
|
||||||
|
{% if self.content_nav() or self.sidebar() -%}
|
||||||
|
<aside class="sidebar">
|
||||||
|
{% if self.content_nav() -%}
|
||||||
|
<nav{% if self.sidebar() %} class="top"{% endif %}>
|
||||||
|
{% block content_nav %}{% endblock %}
|
||||||
|
</nav>
|
||||||
|
{%- endif %}
|
||||||
|
|
||||||
|
{% block sidebar %}{% endblock %}
|
||||||
|
</aside>
|
||||||
|
{%- endif %}
|
||||||
|
|
||||||
|
<article class="content-inner">
|
||||||
{% if self.lastupdated() or self.accuratefor() -%}
|
{% if self.lastupdated() or self.accuratefor() -%}
|
||||||
<div class="lastupdated">
|
<div class="meta">
|
||||||
<!--
|
<!--
|
||||||
{% block lastupdated %}{% endblock %}
|
{% block lastupdated %}{% endblock %}
|
||||||
{% block accuratefor %}{% endblock %}
|
{% block accuratefor %}{% endblock %}
|
||||||
@@ -72,11 +92,10 @@
|
|||||||
</div>
|
</div>
|
||||||
{%- endif %}
|
{%- endif %}
|
||||||
|
|
||||||
<div class="title">
|
{% block content %}{% endblock %}
|
||||||
<h1>{{ self.title() }}</h1>
|
</article>
|
||||||
</div>
|
</div>
|
||||||
{% block content %}{% endblock %}
|
</main>
|
||||||
</article>
|
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
</div>
|
</div>
|
||||||
<footer id="global-footer">
|
<footer id="global-footer">
|
||||||
|
@@ -3,7 +3,7 @@
|
|||||||
{% block headextra %}
|
{% block headextra %}
|
||||||
<link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='styles/pubs.css') }}" />
|
<link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='styles/pubs.css') }}" />
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
{% block content %}
|
{% block content_nav %}
|
||||||
<div class="biblinks">
|
<div class="biblinks">
|
||||||
<p align="center">
|
<p align="center">
|
||||||
{%- if bib.tag|length %}<a href='{% if bib.field != 'date' -%}
|
{%- if bib.tag|length %}<a href='{% if bib.field != 'date' -%}
|
||||||
@@ -41,14 +41,8 @@
|
|||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- Table 1: contains the sidebar and the body. -->
|
|
||||||
<table cellspacing="3" cellpadding="0" border="0" align="center" width="100%%">
|
|
||||||
<tr valign="top">
|
|
||||||
<td>
|
|
||||||
|
|
||||||
<!-- Table 2: The sidebar-->
|
<!-- Table 2: The sidebar-->
|
||||||
<table align="right" cellspacing="0" cellpadding="5" width="100"
|
<table align="right" cellspacing="0" cellpadding="5" width="100%">
|
||||||
class="sidebar">
|
|
||||||
<tr valign="top"><td><p class="l1"><strong>{{ bib.sectiontypes }}:</strong><br /></p>
|
<tr valign="top"><td><p class="l1"><strong>{{ bib.sectiontypes }}:</strong><br /></p>
|
||||||
{% for section in bib.sections %}
|
{% for section in bib.sections %}
|
||||||
<p class="l2"><a href="#{{ section.slug }}">{{ section.name }}</a></p>
|
<p class="l2"><a href="#{{ section.slug }}">{{ section.name }}</a></p>
|
||||||
@@ -56,10 +50,9 @@
|
|||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table><!-- End of table 2 -->
|
</table><!-- End of table 2 -->
|
||||||
</td>
|
{% endblock %}
|
||||||
|
|
||||||
<td width="85%%">
|
|
||||||
|
|
||||||
|
{% block content %}
|
||||||
<h2>Publications by {{ bib.field }}</h2>
|
<h2>Publications by {{ bib.field }}</h2>
|
||||||
|
|
||||||
<ul class="sections">
|
<ul class="sections">
|
||||||
@@ -73,13 +66,6 @@
|
|||||||
{% endfor %}
|
{% endfor %}
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
</td>
|
|
||||||
|
|
||||||
<td width="5%%"><br /></td>
|
|
||||||
|
|
||||||
</tr>
|
|
||||||
</table><!-- End of table 1 -->
|
|
||||||
|
|
||||||
<p class="contact">{% trans email="press@i2<!-- -->p2.de"|safe,
|
<p class="contact">{% trans email="press@i2<!-- -->p2.de"|safe,
|
||||||
bibtex = get_url('papers_bibtex', tag=bib.tag) if bib.tag else get_url('papers_bibtex'),
|
bibtex = get_url('papers_bibtex', tag=bib.tag) if bib.tag else get_url('papers_bibtex'),
|
||||||
citeseer = 'http://citeseer.ist.psu.edu/online-nature01/' -%}
|
citeseer = 'http://citeseer.ist.psu.edu/online-nature01/' -%}
|
||||||
|
@@ -1,10 +1,6 @@
|
|||||||
{% extends "global/layout.html" %}
|
{% extends "global/layout.html" %}
|
||||||
{% block title %}{% trans %}Supported Applications{% endtrans %}{% endblock %}
|
{% block title %}{% trans %}Supported Applications{% endtrans %}{% endblock %}
|
||||||
{% block content %}
|
{% block content_nav %}
|
||||||
|
|
||||||
<h1 class="title">{% trans %}Supported Applications{% endtrans %}</h1>
|
|
||||||
|
|
||||||
<div id="TOC">
|
|
||||||
<ul>
|
<ul>
|
||||||
<li><a href="#blogging-and-forums">{% trans %}Blogging, Forums, and Wikis{% endtrans %}</a></li>
|
<li><a href="#blogging-and-forums">{% trans %}Blogging, Forums, and Wikis{% endtrans %}</a></li>
|
||||||
|
|
||||||
@@ -80,8 +76,9 @@
|
|||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
{% endblock %}
|
||||||
|
|
||||||
|
{% block content %}
|
||||||
<p>{% trans trac='https://trac.i2p2.de/report/1' -%}
|
<p>{% trans trac='https://trac.i2p2.de/report/1' -%}
|
||||||
This is intended to be a comprehensive listing of applications used with
|
This is intended to be a comprehensive listing of applications used with
|
||||||
I2P. If you know of something that's missing please submit a ticket on
|
I2P. If you know of something that's missing please submit a ticket on
|
||||||
|
@@ -1,26 +1,22 @@
|
|||||||
{% extends "global/layout.html" %}
|
{% extends "global/layout.html" %}
|
||||||
{% block title %}{% trans %}Introducing I2P{% endtrans %}{% endblock %}
|
{% block title %}{% trans %}I2P: A scalable framework for anonymous communication{% endtrans %}{% endblock %}
|
||||||
|
{% block content_nav %}
|
||||||
|
<ul>
|
||||||
|
<li><a href="#intro">{% trans %}Introduction{% endtrans %}</a></li>
|
||||||
|
<li>
|
||||||
|
<a href="#op">{% trans %}I2P Operation{% endtrans %}</a>
|
||||||
|
<ul>
|
||||||
|
<li><a href="#op.overview">{% trans %}Overview{% endtrans %}</a></li>
|
||||||
|
<li><a href="#op.tunnels">{% trans %}Tunnels{% endtrans %}</a></li>
|
||||||
|
<li><a href="#op.netdb">{% trans %}Network Database{% endtrans %}</a></li>
|
||||||
|
<li><a href="#op.transport">{% trans %}Transport protocols{% endtrans %}</a></li>
|
||||||
|
<li><a href="#op.crypto">{% trans %}Cryptography{% endtrans %}</a></li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
{% endblock %}
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
|
|
||||||
<h1 class="title">{% trans %}I2P: A scalable framework for anonymous communication{% endtrans %}</h1>
|
|
||||||
<div id="toc">
|
|
||||||
<h2>{% trans %}Table of Contents{% endtrans %}</h2>
|
|
||||||
<ul>
|
|
||||||
<li><a href="#intro">{% trans %}Introduction{% endtrans %}</a></li>
|
|
||||||
<li>
|
|
||||||
<a href="#op">{% trans %}I2P Operation{% endtrans %}</a>
|
|
||||||
<ul>
|
|
||||||
<li><a href="#op.overview">{% trans %}Overview{% endtrans %}</a></li>
|
|
||||||
<li><a href="#op.tunnels">{% trans %}Tunnels{% endtrans %}</a></li>
|
|
||||||
<li><a href="#op.netdb">{% trans %}Network Database{% endtrans %}</a></li>
|
|
||||||
<li><a href="#op.transport">{% trans %}Transport protocols{% endtrans %}</a></li>
|
|
||||||
<li><a href="#op.crypto">{% trans %}Cryptography{% endtrans %}</a></li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<br/>
|
|
||||||
<h1 id="intro">{% trans %}Introduction{% endtrans %}</h1>
|
<h1 id="intro">{% trans %}Introduction{% endtrans %}</h1>
|
||||||
<p>{% trans -%}
|
<p>{% trans -%}
|
||||||
I2P is a scalable, self organizing, resilient packet switched anonymous
|
I2P is a scalable, self organizing, resilient packet switched anonymous
|
||||||
|
@@ -41,6 +41,30 @@
|
|||||||
</ul>
|
</ul>
|
||||||
{% endmacro %}
|
{% endmacro %}
|
||||||
|
|
||||||
|
{% block content_nav %}
|
||||||
|
<h3>{% trans %}Index of Attacks{% endtrans %}</h3>
|
||||||
|
<ul>
|
||||||
|
<li><a href="#bruteforce">{% trans %}Brute force attacks{% endtrans %}</a></li>
|
||||||
|
<li><a href="#timing">{% trans %}Timing attacks{% endtrans %}</a></li>
|
||||||
|
<li><a href="#intersection">{% trans %}Intersection attacks{% endtrans %}</a></li>
|
||||||
|
<li><a href="#dos">{% trans %}Denial of service attacks{% endtrans %}</a></li>
|
||||||
|
<li><a href="#tagging">{% trans %}Tagging attacks{% endtrans %}</a></li>
|
||||||
|
<li><a href="#partitioning">{% trans %}Partitioning attacks{% endtrans %}</a></li>
|
||||||
|
<li><a href="#predecessor">{% trans %}Predecessor attacks{% endtrans %}</a></li>
|
||||||
|
<li><a href="#harvesting">{% trans %}Harvesting attacks{% endtrans %}</a></li>
|
||||||
|
<li><a href="#traffic">{% trans %}Identification Through Traffic Analysis{% endtrans %}</a></li>
|
||||||
|
<li><a href="#sybil">{% trans %}Sybil attacks{% endtrans %}</a></li>
|
||||||
|
<li><a href="#buddy">{% trans %}Buddy Exhaustion attacks{% endtrans %}</a></li>
|
||||||
|
<li><a href="#crypto">{% trans %}Cryptographic attacks{% endtrans %}</a></li>
|
||||||
|
<li><a href="#floodfill">{% trans %}Floodfill attacks{% endtrans %}</a></li>
|
||||||
|
<li><a href="#netdb">{% trans %}Other Network Database attacks{% endtrans %}</a></li>
|
||||||
|
<li><a href="#central">{% trans %}Attacks on centralized resources{% endtrans %}</a></li>
|
||||||
|
<li><a href="#dev">{% trans %}Development attacks{% endtrans %}</a></li>
|
||||||
|
<li><a href="#impl">{% trans %}Implementation attacks{% endtrans %}</a></li>
|
||||||
|
<li><a href="#blocklist">{% trans %}Other Defenses{% endtrans %}</a></li>
|
||||||
|
</ul>
|
||||||
|
{% endblock %}
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<h2>{% trans %}What do we mean by "anonymous"?{% endtrans %}</h2>
|
<h2>{% trans %}What do we mean by "anonymous"?{% endtrans %}</h2>
|
||||||
|
|
||||||
@@ -179,28 +203,6 @@ and priority scores are calculated using the equations outlined
|
|||||||
|
|
||||||
#}
|
#}
|
||||||
|
|
||||||
<h3 id="index">{% trans %}Index of Attacks{% endtrans %}</h3>
|
|
||||||
<ul>
|
|
||||||
<li><a href="#bruteforce">{% trans %}Brute force attacks{% endtrans %}</a></li>
|
|
||||||
<li><a href="#timing">{% trans %}Timing attacks{% endtrans %}</a></li>
|
|
||||||
<li><a href="#intersection">{% trans %}Intersection attacks{% endtrans %}</a></li>
|
|
||||||
<li><a href="#dos">{% trans %}Denial of service attacks{% endtrans %}</a></li>
|
|
||||||
<li><a href="#tagging">{% trans %}Tagging attacks{% endtrans %}</a></li>
|
|
||||||
<li><a href="#partitioning">{% trans %}Partitioning attacks{% endtrans %}</a></li>
|
|
||||||
<li><a href="#predecessor">{% trans %}Predecessor attacks{% endtrans %}</a></li>
|
|
||||||
<li><a href="#harvesting">{% trans %}Harvesting attacks{% endtrans %}</a></li>
|
|
||||||
<li><a href="#traffic">{% trans %}Identification Through Traffic Analysis{% endtrans %}</a></li>
|
|
||||||
<li><a href="#sybil">{% trans %}Sybil attacks{% endtrans %}</a></li>
|
|
||||||
<li><a href="#buddy">{% trans %}Buddy Exhaustion attacks{% endtrans %}</a></li>
|
|
||||||
<li><a href="#crypto">{% trans %}Cryptographic attacks{% endtrans %}</a></li>
|
|
||||||
<li><a href="#floodfill">{% trans %}Floodfill attacks{% endtrans %}</a></li>
|
|
||||||
<li><a href="#netdb">{% trans %}Other Network Database attacks{% endtrans %}</a></li>
|
|
||||||
<li><a href="#central">{% trans %}Attacks on centralized resources{% endtrans %}</a></li>
|
|
||||||
<li><a href="#dev">{% trans %}Development attacks{% endtrans %}</a></li>
|
|
||||||
<li><a href="#impl">{% trans %}Implementation attacks{% endtrans %}</a></li>
|
|
||||||
<li><a href="#blocklist">{% trans %}Other Defenses{% endtrans %}</a></li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h3 id="bruteforce">{% trans %}Brute force attacks{% endtrans %}</h3>
|
<h3 id="bruteforce">{% trans %}Brute force attacks{% endtrans %}</h3>
|
||||||
|
|
||||||
{# DREAD_score(2, 1, 1, 1, 3) #}
|
{# DREAD_score(2, 1, 1, 1, 3) #}
|
||||||
|
@@ -2,16 +2,7 @@
|
|||||||
{% block title %}{% trans %}Common structures Specification{% endtrans %}{% endblock %}
|
{% block title %}{% trans %}Common structures Specification{% endtrans %}{% endblock %}
|
||||||
{% block lastupdated %}{% trans %}April 2015{% endtrans %}{% endblock %}
|
{% block lastupdated %}{% trans %}April 2015{% endtrans %}{% endblock %}
|
||||||
{% block accuratefor %}0.9.19{% endblock %}
|
{% block accuratefor %}0.9.19{% endblock %}
|
||||||
{% block content %}
|
{% block content_nav %}
|
||||||
<p>{% trans i2np=site_url('docs/protocol/i2np'),
|
|
||||||
i2cp=site_url('docs/protocol/i2cp'),
|
|
||||||
ssu=site_url('docs/transport/ssu') -%}
|
|
||||||
This document describes some data types common to all I2P protocols, like
|
|
||||||
<a href="{{ i2np }}">I2NP</a>, <a href="{{ i2cp }}">I2CP</a>,
|
|
||||||
<a href="{{ ssu }}">SSU</a>, etc.
|
|
||||||
{%- endtrans %}</p>
|
|
||||||
|
|
||||||
<h2>Index</h2>
|
|
||||||
<table border=1>
|
<table border=1>
|
||||||
<tr><th>{% trans %}Type{% endtrans %}</th></tr>
|
<tr><th>{% trans %}Type{% endtrans %}</th></tr>
|
||||||
<tr><td><a href="#type_Boolean">Boolean</a></td></tr>
|
<tr><td><a href="#type_Boolean">Boolean</a></td></tr>
|
||||||
@@ -37,6 +28,16 @@ This document describes some data types common to all I2P protocols, like
|
|||||||
<tr><td><a href="#type_String">String</a></td></tr>
|
<tr><td><a href="#type_String">String</a></td></tr>
|
||||||
<tr><td><a href="#type_TunnelId">TunnelId</a></td></tr>
|
<tr><td><a href="#type_TunnelId">TunnelId</a></td></tr>
|
||||||
</table>
|
</table>
|
||||||
|
{% endblock %}
|
||||||
|
|
||||||
|
{% block content %}
|
||||||
|
<p>{% trans i2np=site_url('docs/protocol/i2np'),
|
||||||
|
i2cp=site_url('docs/protocol/i2cp'),
|
||||||
|
ssu=site_url('docs/transport/ssu') -%}
|
||||||
|
This document describes some data types common to all I2P protocols, like
|
||||||
|
<a href="{{ i2np }}">I2NP</a>, <a href="{{ i2cp }}">I2CP</a>,
|
||||||
|
<a href="{{ ssu }}">SSU</a>, etc.
|
||||||
|
{%- endtrans %}</p>
|
||||||
|
|
||||||
<h2 id="type_Integer">Integer</h2>
|
<h2 id="type_Integer">Integer</h2>
|
||||||
<h4>{% trans %}Description{% endtrans %}</h4>
|
<h4>{% trans %}Description{% endtrans %}</h4>
|
||||||
|
@@ -1,7 +1,6 @@
|
|||||||
{% extends "global/layout.html" %}
|
{% extends "global/layout.html" %}
|
||||||
{% block title %}{{ _('Frequently Asked Questions') }}{% endblock %}
|
{% block title %}{{ _('Frequently Asked Questions') }}{% endblock %}
|
||||||
{% block content %}
|
{% block content_nav %}
|
||||||
<h3 id="index">{{ _('Index') }}</h3>
|
|
||||||
<ol>
|
<ol>
|
||||||
<li style="list-style: none; display: inline">
|
<li style="list-style: none; display: inline">
|
||||||
<h4>{{ _('General') }}</h4>
|
<h4>{{ _('General') }}</h4>
|
||||||
@@ -47,7 +46,9 @@
|
|||||||
<li><a href="#compat6x">{% trans %}I'm using FreeBSD and when I start I2P I receive an error about <code>libm.so.4</code>!{% endtrans %}</a></li>
|
<li><a href="#compat6x">{% trans %}I'm using FreeBSD and when I start I2P I receive an error about <code>libm.so.4</code>!{% endtrans %}</a></li>
|
||||||
<li><a href="#protocolfamily">{% trans %}In <code>wrapper.log</code> I see an error stating <code>Protocol family unavailable</code> when I2P is loading{% endtrans %}</a></li>
|
<li><a href="#protocolfamily">{% trans %}In <code>wrapper.log</code> I see an error stating <code>Protocol family unavailable</code> when I2P is loading{% endtrans %}</a></li>
|
||||||
</ol>
|
</ol>
|
||||||
|
{% endblock %}
|
||||||
|
|
||||||
|
{% block content %}
|
||||||
<h3 id="systems">{% trans %}What systems will I2P run on?{% endtrans %}
|
<h3 id="systems">{% trans %}What systems will I2P run on?{% endtrans %}
|
||||||
<span class="permalink">(<a href="#systems">{{ _('link') }}</a>)</span></h3>
|
<span class="permalink">(<a href="#systems">{{ _('link') }}</a>)</span></h3>
|
||||||
<p>{% trans chart='https://trac.i2p2.de/wiki/java' -%}
|
<p>{% trans chart='https://trac.i2p2.de/wiki/java' -%}
|
||||||
|
@@ -2,17 +2,16 @@
|
|||||||
{% block title %}{{ _('Application Development') }}{% endblock %}
|
{% block title %}{{ _('Application Development') }}{% endblock %}
|
||||||
{% block lastupdated %}{% trans %}May 2013{% endtrans %}{% endblock %}
|
{% block lastupdated %}{% trans %}May 2013{% endtrans %}{% endblock %}
|
||||||
{% block accuratefor %}0.9.6{% endblock %}
|
{% block accuratefor %}0.9.6{% endblock %}
|
||||||
{% block content %}
|
{% block content_nav %}
|
||||||
<h1>{{ _('Application Development Guide') }}</h1>
|
|
||||||
|
|
||||||
<h2>{{ _('Contents') }}</h2>
|
|
||||||
<ul>
|
<ul>
|
||||||
<li><a href="#why">{{ _('Why write I2P-specific code?') }}</a></li>
|
<li><a href="#why">{{ _('Why write I2P-specific code?') }}</a></li>
|
||||||
<li><a href="#concepts">{{ _('Important concepts') }}</a></li>
|
<li><a href="#concepts">{{ _('Important concepts') }}</a></li>
|
||||||
<li><a href="#options">{{ _('Development options') }}</a></li>
|
<li><a href="#options">{{ _('Development options') }}</a></li>
|
||||||
<li><a href="#start"><b>{{ _('Start developing - a simple guide') }}</b></a></li>
|
<li><a href="#start"><b>{{ _('Start developing - a simple guide') }}</b></a></li>
|
||||||
</ul>
|
</ul>
|
||||||
|
{% endblock %}
|
||||||
|
|
||||||
|
{% block content %}
|
||||||
<h2 id="why">{{ _('Why write I2P-specific code?') }}</h2>
|
<h2 id="why">{{ _('Why write I2P-specific code?') }}</h2>
|
||||||
|
|
||||||
<p>{% trans i2ptunnel=site_url('docs/api/i2ptunnel') -%}
|
<p>{% trans i2ptunnel=site_url('docs/api/i2ptunnel') -%}
|
||||||
|
@@ -1,7 +1,6 @@
|
|||||||
{% extends "global/layout.html" %}
|
{% extends "global/layout.html" %}
|
||||||
{% block title %}{% trans %}Monotone Guide{% endtrans %}{% endblock %}
|
{% block title %}{% trans %}Monotone Guide{% endtrans %}{% endblock %}
|
||||||
{% block content %}
|
{% block content_nav %}
|
||||||
<div id="TOC">
|
|
||||||
<ol>
|
<ol>
|
||||||
<li>
|
<li>
|
||||||
<a href="#operating-a-monotone-client">{% trans %}Operating a Monotone client{% endtrans %}</a>
|
<a href="#operating-a-monotone-client">{% trans %}Operating a Monotone client{% endtrans %}</a>
|
||||||
@@ -26,8 +25,9 @@
|
|||||||
</ol>
|
</ol>
|
||||||
</li>
|
</li>
|
||||||
</ol>
|
</ol>
|
||||||
</div>
|
{% endblock %}
|
||||||
|
|
||||||
|
{% block content %}
|
||||||
<p><i>
|
<p><i>
|
||||||
{% trans transitionguide=site_url('misc/transition-guide'), newdevs=site_url('get-involved/guides/new-developers') -%}
|
{% trans transitionguide=site_url('misc/transition-guide'), newdevs=site_url('get-involved/guides/new-developers') -%}
|
||||||
This is a revised version of <a href="{{ transitionguide }}">Complication's original
|
This is a revised version of <a href="{{ transitionguide }}">Complication's original
|
||||||
|
@@ -1,17 +1,6 @@
|
|||||||
{% extends "global/layout.html" %}
|
{% extends "global/layout.html" %}
|
||||||
{% block title %}{% trans %}New Developer's Guide{% endtrans %}{% endblock %}
|
{% block title %}{% trans %}New Developer's Guide{% endtrans %}{% endblock %}
|
||||||
{% block content %}
|
{% block content_nav %}
|
||||||
<p>{% trans %}
|
|
||||||
So you want to start work on I2P? Great!
|
|
||||||
Here's a quick guide to getting started
|
|
||||||
on contributing to the website or the software, doing development or creating translations.
|
|
||||||
{%- endtrans %}</p>
|
|
||||||
<p>{% trans volunteer=site_url('get-involved') %}
|
|
||||||
Not quite ready for coding?
|
|
||||||
Try <a href="{{ volunteer }}">getting involved</a> first.
|
|
||||||
{%- endtrans %}</p>
|
|
||||||
|
|
||||||
<div id="TOC">
|
|
||||||
<ol>
|
<ol>
|
||||||
<li><a href="#basic-study">{% trans %}Basic study{% endtrans %}</a></li>
|
<li><a href="#basic-study">{% trans %}Basic study{% endtrans %}</a></li>
|
||||||
<li><a href="#getting-the-i2p-code">{% trans %}Getting the I2P code{% endtrans %}</a></li>
|
<li><a href="#getting-the-i2p-code">{% trans %}Getting the I2P code{% endtrans %}</a></li>
|
||||||
@@ -22,7 +11,18 @@ Try <a href="{{ volunteer }}">getting involved</a> first.
|
|||||||
<li><a href="#translations">{% trans %}Translations{% endtrans %}</a></li>
|
<li><a href="#translations">{% trans %}Translations{% endtrans %}</a></li>
|
||||||
<li><a href="#tools">{% trans %}Tools{% endtrans %}</a></li>
|
<li><a href="#tools">{% trans %}Tools{% endtrans %}</a></li>
|
||||||
</ol>
|
</ol>
|
||||||
</div>
|
{% endblock %}
|
||||||
|
|
||||||
|
{% block content %}
|
||||||
|
<p>{% trans %}
|
||||||
|
So you want to start work on I2P? Great!
|
||||||
|
Here's a quick guide to getting started
|
||||||
|
on contributing to the website or the software, doing development or creating translations.
|
||||||
|
{%- endtrans %}</p>
|
||||||
|
<p>{% trans volunteer=site_url('get-involved') %}
|
||||||
|
Not quite ready for coding?
|
||||||
|
Try <a href="{{ volunteer }}">getting involved</a> first.
|
||||||
|
{%- endtrans %}</p>
|
||||||
|
|
||||||
<h2 id="basic-study">{% trans %}Basic study{% endtrans %}</h2>
|
<h2 id="basic-study">{% trans %}Basic study{% endtrans %}</h2>
|
||||||
|
|
||||||
|
@@ -1,24 +1,14 @@
|
|||||||
{% extends "global/layout.html" %}
|
{% extends "global/layout.html" %}
|
||||||
{% block title %}{{ _('I2P Project Targets') }}{% endblock %}
|
{% block title %}{{ _('I2P Project Targets') }}{% endblock %}
|
||||||
{% block content %}
|
{% block content_nav %}
|
||||||
<p>{% trans roadmap=site_url('get-involved/roadmap'), volunteer=site_url('get-involved') -%}
|
<ul>
|
||||||
Below is a more detailed (yet still incomplete) discussion of the major areas
|
<li><a href="#core">{{ _('Core functionality') }}</a>
|
||||||
of future development on the core I2P network, spanning the plausibly planned
|
|
||||||
releases. This does not include stego transports, porting to wireless devices,
|
|
||||||
or tools to secure the local machine, nor does it include client applications
|
|
||||||
that will be essential in I2P's success. There are probably other things that
|
|
||||||
will come up, especially as I2P gets more peer review, but these are the main
|
|
||||||
'big things'. See also <a href="{{ roadmap }}">the roadmap</a>. Want to help?
|
|
||||||
<a href="{{ volunteer }}">Get involved</a>!
|
|
||||||
{%- endtrans %}</p>
|
|
||||||
|
|
||||||
<h2>{{ _('Core functionality') }} <span class="permalink"><a href="#core">[{{ _('link') }}]</a></span></h2>
|
|
||||||
<ul class="targetlist">
|
<ul class="targetlist">
|
||||||
<li><a href="#netdb">{% trans -%}
|
<li><a href="#netdb">{% trans -%}
|
||||||
NetworkDB and profile tuning and ejection policy for large nets
|
NetworkDB and profile tuning and ejection policy for large nets
|
||||||
{%- endtrans %}</a></li>
|
{%- endtrans %}</a></li>
|
||||||
</ul>
|
</ul></li>
|
||||||
<h2>{{ _('Security / anonymity') }} <span class="permalink"><a href="#security">[{{ _('link') }}]</a></span></h2>
|
<li><a href="#security">{{ _('Security / anonymity') }}</a>
|
||||||
<ul class="targetlist">
|
<ul class="targetlist">
|
||||||
<li><a href="#fullRestrictedRoutes">{% trans -%}
|
<li><a href="#fullRestrictedRoutes">{% trans -%}
|
||||||
Full blown n-hop restricted routes with optional trusted links
|
Full blown n-hop restricted routes with optional trusted links
|
||||||
@@ -32,8 +22,22 @@ Advanced tunnel operation (batching/mixing/throttling/padding)
|
|||||||
<li><a href="#stop">{% trans -%}
|
<li><a href="#stop">{% trans -%}
|
||||||
Stop & go mix w/ garlics & tunnels
|
Stop & go mix w/ garlics & tunnels
|
||||||
{%- endtrans %}</a></li>
|
{%- endtrans %}</a></li>
|
||||||
</ul>
|
</ul></li>
|
||||||
<h2>{{ _('Performance') }} <span class="permalink"><a href="{{ site_url('about/performance/future') }}">[{{ _('link') }}]</a></span></h2>
|
<li><a href="{{ site_url('about/performance/future') }}">{{ _('Performance') }}</a></li>
|
||||||
|
</ul>
|
||||||
|
{% endblock %}
|
||||||
|
|
||||||
|
{% block content %}
|
||||||
|
<p>{% trans roadmap=site_url('get-involved/roadmap'), volunteer=site_url('get-involved') -%}
|
||||||
|
Below is a more detailed (yet still incomplete) discussion of the major areas
|
||||||
|
of future development on the core I2P network, spanning the plausibly planned
|
||||||
|
releases. This does not include stego transports, porting to wireless devices,
|
||||||
|
or tools to secure the local machine, nor does it include client applications
|
||||||
|
that will be essential in I2P's success. There are probably other things that
|
||||||
|
will come up, especially as I2P gets more peer review, but these are the main
|
||||||
|
'big things'. See also <a href="{{ roadmap }}">the roadmap</a>. Want to help?
|
||||||
|
<a href="{{ volunteer }}">Get involved</a>!
|
||||||
|
{%- endtrans %}</p>
|
||||||
|
|
||||||
<h2 id="core">{{ _('Core functionality') }}</h2>
|
<h2 id="core">{{ _('Core functionality') }}</h2>
|
||||||
<ul class="targetlist">
|
<ul class="targetlist">
|
||||||
|
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
body {
|
body {
|
||||||
font-family: Droid Sans, Helvetica, sans-serif;
|
font-family: Droid Sans, Helvetica, sans-serif;
|
||||||
font-size: 10px;
|
|
||||||
background-color: #ffffdd;
|
background-color: #ffffdd;
|
||||||
min-height: 800px;
|
min-height: 800px;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
@@ -23,10 +22,20 @@ div.hide {
|
|||||||
display: none
|
display: none
|
||||||
}
|
}
|
||||||
|
|
||||||
|
div#topbar .title, div#content > .title {
|
||||||
|
font-family: "URW Gothic L", "Century Gothic", sans-serif;
|
||||||
|
text-transform: uppercase;
|
||||||
|
font-size: 2.1875rem;
|
||||||
|
font-weight: bold;
|
||||||
|
text-shadow: 1px 1px 1px rgba(0,0,0,.2);
|
||||||
|
color: #333333;
|
||||||
|
line-height:41px;
|
||||||
|
vertical-align:middle;
|
||||||
|
}
|
||||||
|
|
||||||
div#topbar {
|
div#topbar {
|
||||||
width: 80%;
|
width: 80%;
|
||||||
/*margin: 1em auto;*/
|
margin: 0.625em auto;
|
||||||
margin: 1em auto;
|
|
||||||
position: relative;
|
position: relative;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -60,7 +69,6 @@ div#content .main {
|
|||||||
position: relative;
|
position: relative;
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
text-shadow: 1px 1px 1px rgba(255,255,255,.5);
|
text-shadow: 1px 1px 1px rgba(255,255,255,.5);
|
||||||
font-size: 1.6em;
|
|
||||||
line-height: 1.5em;
|
line-height: 1.5em;
|
||||||
border: 2px solid #abcc71;
|
border: 2px solid #abcc71;
|
||||||
border-left: none;
|
border-left: none;
|
||||||
@@ -71,6 +79,7 @@ div#content .main {
|
|||||||
div#content .main h1 {
|
div#content .main h1 {
|
||||||
font-family: "URW Gothic L", "Century Gothic", sans-serif;
|
font-family: "URW Gothic L", "Century Gothic", sans-serif;
|
||||||
font-size: 2.5em;
|
font-size: 2.5em;
|
||||||
|
line-height: 1em;
|
||||||
text-shadow: 1px 1px 2px rgba(0,0,0,.3);
|
text-shadow: 1px 1px 2px rgba(0,0,0,.3);
|
||||||
color: white;
|
color: white;
|
||||||
margin-bottom: .5em;
|
margin-bottom: .5em;
|
||||||
@@ -96,14 +105,14 @@ div#content .main h1 {
|
|||||||
|
|
||||||
div#content .aside-wrap {
|
div#content .aside-wrap {
|
||||||
width: 80%;
|
width: 80%;
|
||||||
margin: 2em auto;
|
margin: 1.25em auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
div#content .aside {
|
div#content .aside {
|
||||||
position: relative;
|
position: relative;
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
vertical-align: top;
|
vertical-align: top;
|
||||||
font-size: 1.2em;
|
font-size: 0.75rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
div#content .aside a {
|
div#content .aside a {
|
||||||
@@ -129,7 +138,7 @@ div#content .aside ul {
|
|||||||
div#content .aside ul li {
|
div#content .aside ul li {
|
||||||
list-style-type: none;
|
list-style-type: none;
|
||||||
margin: 1em 0;
|
margin: 1em 0;
|
||||||
line-height: 1.3em;
|
line-height: 1.5em;
|
||||||
}
|
}
|
||||||
|
|
||||||
div#content .feed-icon {
|
div#content .feed-icon {
|
||||||
@@ -142,53 +151,83 @@ div#content .feed-icon {
|
|||||||
width: 28px;
|
width: 28px;
|
||||||
}
|
}
|
||||||
|
|
||||||
div#content .lastupdated {
|
|
||||||
background-color: #ffffdd;
|
|
||||||
border-radius: 0 0 5px 5px;
|
|
||||||
padding: 2px 4px;
|
|
||||||
position: relative;
|
|
||||||
left: 8%;
|
|
||||||
text-align: right;
|
|
||||||
width: 80%;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The .inner class is for the content wrapper on inner pages (as opposed to the home page)
|
* The .inner class is for the content wrapper on inner pages (as opposed to the home page)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
div#content .inner {
|
div#content .inner {
|
||||||
width: auto;
|
background: rgba(0, 0, 0, 0.05);
|
||||||
margin: 0 5%;
|
|
||||||
padding: 0 5% 0.1em;
|
|
||||||
position: relative;
|
|
||||||
background: rgba(171, 204, 113, 0.6);
|
|
||||||
border-top: 2px solid #abcc71;
|
border-top: 2px solid #abcc71;
|
||||||
border-left: 2px solid #abcc71;
|
|
||||||
border-right: 2px solid #abcc71;
|
|
||||||
border-radius: 5px 5px 0 0;
|
|
||||||
color: black;
|
color: black;
|
||||||
font-size: 1.2em;
|
line-height: 1.5em;
|
||||||
line-height: 1.4em;
|
position: relative;
|
||||||
|
width: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
div#content .inner:before {
|
||||||
|
box-shadow: 0 6px 12px -12px inset;
|
||||||
|
content: " ";
|
||||||
|
height: 12px;
|
||||||
|
left: 0;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
div#content .inner .fluid {
|
||||||
|
background-color: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
div#content .sidebar {
|
||||||
|
background: white;
|
||||||
|
border-bottom: 1px solid #abcc71;
|
||||||
|
font-size: 0.875rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
div#content .sidebar .top {
|
||||||
|
border-bottom: 2px solid #abcc71;
|
||||||
|
}
|
||||||
|
|
||||||
|
div#content .sidebar nav {
|
||||||
|
background: rgba(171, 204, 113, 0.6);
|
||||||
|
padding: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
div#content .sidebar nav ol {
|
||||||
|
margin: 0;
|
||||||
|
padding-left: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
div#content .sidebar nav ul {
|
||||||
|
margin: 0;
|
||||||
|
padding-left: 0.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
div#content .inner .meta,
|
||||||
|
div#content .inner .box {
|
||||||
|
background-color: #ffffdd;
|
||||||
|
border: 1px dashed;
|
||||||
|
padding: 0.5em 1em;
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
|
||||||
|
div#content .inner .meta {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
div#content .content-inner {
|
||||||
|
padding: 1em 2em;
|
||||||
}
|
}
|
||||||
|
|
||||||
div#content .inner h1,
|
div#content .inner h1,
|
||||||
div#content .inner h2,
|
div#content .inner h2,
|
||||||
div#content .inner h3,
|
div#content .inner h3,
|
||||||
div#content .inner h4 {
|
div#content .inner h4 {
|
||||||
color: white;
|
|
||||||
text-shadow: 1px 1px 1px rgba(0,0,0,.3);
|
|
||||||
margin: 1em 0 .5em;
|
margin: 1em 0 .5em;
|
||||||
padding-bottom: .2em;
|
padding-bottom: .2em;
|
||||||
clear: both;
|
|
||||||
line-height: 110%;
|
line-height: 110%;
|
||||||
}
|
}
|
||||||
|
|
||||||
div#content .inner h2,
|
|
||||||
div#content .inner h3,
|
|
||||||
div#content .inner h4 {
|
|
||||||
border-bottom: 1px solid white
|
|
||||||
}
|
|
||||||
|
|
||||||
div#content .inner h1 {
|
div#content .inner h1 {
|
||||||
font-size: 2.2em;
|
font-size: 2.2em;
|
||||||
margin: 1em 0 0.5em;
|
margin: 1em 0 0.5em;
|
||||||
@@ -197,7 +236,8 @@ div#content .inner h1 {
|
|||||||
}
|
}
|
||||||
|
|
||||||
div#content .inner h2 {
|
div#content .inner h2 {
|
||||||
font-size: 1.6em
|
font-size: 1.6em;
|
||||||
|
border-bottom: 1px solid black
|
||||||
}
|
}
|
||||||
|
|
||||||
div#content .inner h3 {
|
div#content .inner h3 {
|
||||||
@@ -235,6 +275,11 @@ div#content .inner td.blue {
|
|||||||
color: blue;
|
color: blue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
div#content .inner .box img {
|
||||||
|
height: auto;
|
||||||
|
max-width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Download page
|
* Download page
|
||||||
*/
|
*/
|
||||||
@@ -248,13 +293,17 @@ div#content .inner td.blue {
|
|||||||
|
|
||||||
.os {
|
.os {
|
||||||
color: white;
|
color: white;
|
||||||
font-size: 1.6em;
|
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
text-decoration: underline;
|
text-decoration: underline;
|
||||||
text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3);
|
text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.os img {
|
||||||
|
height: auto;
|
||||||
|
max-width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
.file {
|
.file {
|
||||||
margin-bottom: 10px
|
margin-bottom: 10px
|
||||||
}
|
}
|
||||||
@@ -274,8 +323,8 @@ div#content .inner td.blue {
|
|||||||
padding: 10px;
|
padding: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.file .default .name {
|
.file .default .mirror {
|
||||||
font-size: 1.6em
|
font-size: 0.75em;
|
||||||
}
|
}
|
||||||
|
|
||||||
.file .mirrors,
|
.file .mirrors,
|
||||||
@@ -284,6 +333,8 @@ div#content .inner td.blue {
|
|||||||
-moz-box-sizing: border-box;
|
-moz-box-sizing: border-box;
|
||||||
-webkit-box-sizing: border-box;
|
-webkit-box-sizing: border-box;
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
|
font-size: 0.75em;
|
||||||
|
line-height: 1em;
|
||||||
width: 50%;
|
width: 50%;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -297,7 +348,8 @@ div#content .inner td.blue {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.details .hash:before {
|
.details .hash:before {
|
||||||
content: 'SHA256: '
|
content: 'SHA256: ';
|
||||||
|
font-size: 0.8125em;
|
||||||
}
|
}
|
||||||
|
|
||||||
.warning {
|
.warning {
|
||||||
@@ -379,6 +431,19 @@ div#content .inner ul.DREAD {
|
|||||||
text-align: left !important;
|
text-align: left !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pre.literal-block {
|
||||||
|
overflow: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Papers
|
||||||
|
*/
|
||||||
|
|
||||||
|
.biblinks {
|
||||||
|
border-bottom: 1px solid;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Footer
|
* Footer
|
||||||
*/
|
*/
|
||||||
@@ -388,6 +453,7 @@ div#content .inner ul.DREAD {
|
|||||||
border-top: 3px solid #883333;
|
border-top: 3px solid #883333;
|
||||||
background: #552222;
|
background: #552222;
|
||||||
box-shadow: 0px -4px 8px rgba(0,0,0,.3);
|
box-shadow: 0px -4px 8px rgba(0,0,0,.3);
|
||||||
|
font-size: 0.75rem;
|
||||||
padding: 1em 10%;
|
padding: 1em 10%;
|
||||||
background: -moz-linear-gradient(#883333, #772222);
|
background: -moz-linear-gradient(#883333, #772222);
|
||||||
}
|
}
|
||||||
|
@@ -8,4 +8,16 @@ div#topbar #logo {
|
|||||||
|
|
||||||
div#content .feed-icon {
|
div#content .feed-icon {
|
||||||
float: left
|
float: left
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** Content **/
|
||||||
|
|
||||||
|
div#content .sidebar nav ol {
|
||||||
|
padding-left: 0;
|
||||||
|
padding-right: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
div#content .sidebar nav ul {
|
||||||
|
padding-left: 0;
|
||||||
|
padding-right: 0.5em;
|
||||||
|
}
|
||||||
|
@@ -1,9 +1,9 @@
|
|||||||
body {
|
body {
|
||||||
padding-top: 1em;
|
padding-top: 0.625em;
|
||||||
}
|
}
|
||||||
|
|
||||||
div#topbar {
|
div#topbar {
|
||||||
margin: 1em auto 0;
|
margin: 0.625em auto 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
div#topbar #logo img:hover {
|
div#topbar #logo img:hover {
|
||||||
@@ -13,12 +13,6 @@ div#topbar #logo img:hover {
|
|||||||
}
|
}
|
||||||
|
|
||||||
div#topbar .title {
|
div#topbar .title {
|
||||||
font-family: "URW Gothic L", "Century Gothic", sans-serif;
|
|
||||||
text-transform: uppercase;
|
|
||||||
font-size: 3.5em;
|
|
||||||
font-weight: bold;
|
|
||||||
text-shadow: 1px 1px 1px rgba(0,0,0,.2);
|
|
||||||
color: #333333;
|
|
||||||
/*position: absolute;*/
|
/*position: absolute;*/
|
||||||
top:0;
|
top:0;
|
||||||
right:0;
|
right:0;
|
||||||
@@ -84,7 +78,7 @@ menu ul,
|
|||||||
color: #d00e0e;
|
color: #d00e0e;
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
font-family: "URW Gothic L", "Century Gothic", sans-serif;
|
font-family: "URW Gothic L", "Century Gothic", sans-serif;
|
||||||
font-size: 2em;
|
font-size: 1.25em;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
text-shadow: 1px 1px 1px rgba(100,20,20,.2);
|
text-shadow: 1px 1px 1px rgba(100,20,20,.2);
|
||||||
line-height: 40px;
|
line-height: 40px;
|
||||||
@@ -234,31 +228,37 @@ div#content .main {
|
|||||||
div#content .aside {
|
div#content .aside {
|
||||||
width: 30.9%;
|
width: 30.9%;
|
||||||
margin-left: 3%;
|
margin-left: 3%;
|
||||||
font-size: 1.3em;
|
font-size: 0.875rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
div#content .aside:first-child {
|
div#content .aside:first-child {
|
||||||
margin-left: 0%
|
margin-left: 0%
|
||||||
}
|
}
|
||||||
|
|
||||||
div#content .lastupdated {
|
|
||||||
left: auto;
|
|
||||||
position: absolute;
|
|
||||||
right: 10%;
|
|
||||||
top: 0;
|
|
||||||
width: 200px;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The .inner class is for the content wrapper on inner pages (as opposed to the home page)
|
* The .inner class is for the content wrapper on inner pages (as opposed to the home page)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
div#content .inner {
|
div#content .inner .fluid {
|
||||||
padding: 4em 5% 2em;
|
background-image: url('images/bg-sidebar.png');
|
||||||
font-size: 1.3em;
|
background-repeat: repeat-y;
|
||||||
|
border-left: 1px solid #abcc71;
|
||||||
|
margin-left: 0.625rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
div#content .inner > .title {
|
div#content .inner .sidebar {
|
||||||
|
border-radius: 0 0 10px 0;
|
||||||
|
border-right: 1px solid #abcc71;
|
||||||
|
float: left;
|
||||||
|
width: 250px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div#content .content-inner {
|
||||||
|
margin-left: 252px;
|
||||||
|
padding-right: 4em;
|
||||||
|
}
|
||||||
|
|
||||||
|
div#content > .title {
|
||||||
display: none
|
display: none
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -304,13 +304,6 @@ div#content .inner > .title {
|
|||||||
|
|
||||||
/* End of downloads list CSS */
|
/* End of downloads list CSS */
|
||||||
|
|
||||||
.biblinks {
|
|
||||||
left: auto;
|
|
||||||
position: absolute;
|
|
||||||
right: 10%;
|
|
||||||
top: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
#global-footer .aside {
|
#global-footer .aside {
|
||||||
width: 15%;
|
width: 15%;
|
||||||
margin-left: 1%;
|
margin-left: 1%;
|
||||||
|
@@ -57,6 +57,28 @@ div#content .main {
|
|||||||
-o-transform: rotate(5deg);
|
-o-transform: rotate(5deg);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** Content **/
|
||||||
|
|
||||||
|
div#content .inner .fluid {
|
||||||
|
border-left: none;
|
||||||
|
border-right: 2px solid #abcc71;
|
||||||
|
margin-left: 0;
|
||||||
|
margin-right: 0.625rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
div#content .inner .sidebar {
|
||||||
|
border-radius: 0 0 0 10px;
|
||||||
|
border-left: 2px solid #abcc71;
|
||||||
|
border-right: none;
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
|
||||||
|
div#content .content-inner {
|
||||||
|
margin-left: 0;
|
||||||
|
margin-right: 252px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/** Downloads list **/
|
/** Downloads list **/
|
||||||
|
|
||||||
.package .os {
|
.package .os {
|
||||||
@@ -73,4 +95,4 @@ div#content .main {
|
|||||||
|
|
||||||
.details .hash {
|
.details .hash {
|
||||||
float: left
|
float: left
|
||||||
}
|
}
|
||||||
|
BIN
i2p2www/static/styles/duck/images/bg-sidebar.png
Normal file
BIN
i2p2www/static/styles/duck/images/bg-sidebar.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 11 KiB |
@@ -117,11 +117,12 @@ div#content .aside {
|
|||||||
width: 100%
|
width: 100%
|
||||||
}
|
}
|
||||||
|
|
||||||
div#content .inner {
|
div#content > .title {
|
||||||
margin-top: 1em
|
margin-top: 0.5em;
|
||||||
|
text-align: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
div#content .inner .title {
|
div#content .inner {
|
||||||
margin-top: 1em
|
margin-top: 1em
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -138,4 +139,4 @@ div#content .inner .title {
|
|||||||
#global-footer .aside.third,
|
#global-footer .aside.third,
|
||||||
#global-footer .aside.fifth {
|
#global-footer .aside.fifth {
|
||||||
margin-left: 0
|
margin-left: 0
|
||||||
}
|
}
|
||||||
|
12
i2p2www/static/styles/duck/widescreen.css
Normal file
12
i2p2www/static/styles/duck/widescreen.css
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
div#content .inner .fluid {
|
||||||
|
border-right: 1px solid #abcc71;
|
||||||
|
margin-right: 30%;
|
||||||
|
}
|
||||||
|
|
||||||
|
div#content .inner .meta {
|
||||||
|
position: absolute;
|
||||||
|
left: 72%;
|
||||||
|
margin: 1em 0;
|
||||||
|
right: 2%;
|
||||||
|
text-align: left;
|
||||||
|
}
|
11
i2p2www/static/styles/duck/widescreen.rtl.css
Normal file
11
i2p2www/static/styles/duck/widescreen.rtl.css
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
div#content .inner .fluid {
|
||||||
|
border-left: 2px solid #abcc71;
|
||||||
|
margin-left: 30%;
|
||||||
|
}
|
||||||
|
|
||||||
|
div#content .inner .meta {
|
||||||
|
position: absolute;
|
||||||
|
left: 2%;
|
||||||
|
right: 72%;
|
||||||
|
text-align: right;
|
||||||
|
}
|
Reference in New Issue
Block a user