From 589b0cfa96cced7a6551d9eb4c6ce819e2e2c549 Mon Sep 17 00:00:00 2001 From: hankhill19580 Date: Wed, 4 Sep 2019 17:25:47 +0000 Subject: [PATCH] Update the menus, add the browser pages, re-organize site navigation --- i2p2www/browser.py | 19 ++- i2p2www/pages/downloads/list.html | 21 +++ i2p2www/pages/downloads/macros | 5 + i2p2www/pages/global/footer.html | 90 ++++++++++++ i2p2www/pages/global/nav.html | 129 ++++++++++++------ i2p2www/pages/site/about/glossary.html | 32 ++--- i2p2www/pages/site/browser/_front.html | 20 +-- i2p2www/pages/site/browser/download.html | 20 +-- i2p2www/pages/site/browser/intro.html | 34 ++++- i2p2www/pages/site/browser/known_issues.html | 23 ---- .../pages/site/browser/troubleshooting.html | 23 ---- i2p2www/pages/site/contact.html | 10 +- i2p2www/static/images/browser/garlic.svg | 1 + i2p2www/static/styles/duck/default.css | 81 +++++++++++ i2p2www/static/styles/duck/desktop.css | 19 +++ i2p2www/templatevars.py | 2 +- i2p2www/urls.py | 2 + 17 files changed, 388 insertions(+), 143 deletions(-) delete mode 100644 i2p2www/pages/site/browser/known_issues.html delete mode 100644 i2p2www/pages/site/browser/troubleshooting.html create mode 100644 i2p2www/static/images/browser/garlic.svg diff --git a/i2p2www/browser.py b/i2p2www/browser.py index 2c0713e2..e26dfeb1 100644 --- a/i2p2www/browser.py +++ b/i2p2www/browser.py @@ -21,14 +21,21 @@ def browser_download(): def browser_releasenotes(): return render_template('site/browser/releasenotes.html') -def browser_known_issues(): - return render_template('site/browser/known_issues.html') +#def browser_known_issues(): +# return render_template('site/browser/known_issues.html') -def browser_troubleshooting(): - return render_template('site/browser/troubleshooting.html') +#def browser_troubleshooting(): +# return render_template('site/browser/troubleshooting.html') + +#def browser_updating(): +# return render_template('site/browser/updating.html') + +def browser_develop(): + return render_template('site/browser/develop.html') + +def browser_donate(): + return render_template('site/browser/donate.html') -def browser_updating(): - return render_template('site/browser/updating.html') def browser_faq(): if request.headers.get('X-I2P-Desthash') and not request.headers.get('X-Forwarded-Server'): diff --git a/i2p2www/pages/downloads/list.html b/i2p2www/pages/downloads/list.html index bbe4f013..03d5bd4b 100644 --- a/i2p2www/pages/downloads/list.html +++ b/i2p2www/pages/downloads/list.html @@ -138,6 +138,27 @@ Java 9 support is in development and it is not recommended for general use. {% endcall %} +{% call package_outer('docker', 'Docker', 'images/download/docker.png') %} +
+
+ 35cb620d82c6cab8764792720c061379bb8493325d75ad2e376455b44718935 +
+
+

{% trans -%}I2P is now available as a Docker package from the Docker hub. + You may retrieve the image by running the 'docker pull' command. + {%- endtrans %} +

+
{% trans-%}
+    docker pull meeh/i2p.i2p
+      {%- endtrans %}
+    
+ Docker Hub + +{% endcall %} + + + + {% call package('source') %}

{% trans monotoneurl=site_url('get-involved/guides/new-developers'), gitrepo='http://'+i2pconv('git.repo.i2p')+'/w/i2p.i2p.git', diff --git a/i2p2www/pages/downloads/macros b/i2p2www/pages/downloads/macros index b9faf6ab..6da0e8cc 100644 --- a/i2p2www/pages/downloads/macros +++ b/i2p2www/pages/downloads/macros @@ -53,6 +53,11 @@ {%- set filename = 'I2PMacLauncher-%s-beta-'+i2p_macosx_launcher_version+'.dmg' -%} {%- set signame = 'I2PMacLauncher-%s-beta-'+i2p_macosx_launcher_version+'.dmg.sig' -%} {%- set hash = i2p_macnative_hash -%} +{%- elif type == 'docker' -%} + {%- set name = _('Docker') -%} + {%- set icon = 'images/download/docker.png' -%} + {%- set filename = '' -%} + {%- set hash = 'geti2p/i2p@sha256:e622209388edc49b99d8216baa731b1f54a0634c87cd47c1739f2188891daf3a' -%} {%- else -%} {%- if type == 'mac' -%} {%- set name = 'Mac OS X' -%} diff --git a/i2p2www/pages/global/footer.html b/i2p2www/pages/global/footer.html index 1cbd6def..934ba876 100644 --- a/i2p2www/pages/global/footer.html +++ b/i2p2www/pages/global/footer.html @@ -35,3 +35,93 @@ {{ footer_div('fourth', get_url('downloads_debian'), 'Debian / Ubuntu') }} {{ footer_download('fifth', 'android', 'Android') }} {{ footer_div('sixth', site_url('get-involved/donate'), _('Donate')) }}--> + + + + diff --git a/i2p2www/pages/global/nav.html b/i2p2www/pages/global/nav.html index 83c27d30..be9f1c94 100644 --- a/i2p2www/pages/global/nav.html +++ b/i2p2www/pages/global/nav.html @@ -4,6 +4,33 @@

  • +
  • +
  • -
  • -
  • -
  • -
  • -
  • -
  • -
  • -
  • - - -
  • +
  • +
  • -
  • +
  • -
  • +
  • + +
  • {% include "global/lang.html" %}
  • diff --git a/i2p2www/pages/site/about/glossary.html b/i2p2www/pages/site/about/glossary.html index 73f4a77d..67c6ff26 100644 --- a/i2p2www/pages/site/about/glossary.html +++ b/i2p2www/pages/site/about/glossary.html @@ -5,29 +5,13 @@ This page lists often-used terminology when discussing I2P and cryptography. {%- endtrans %} - - - - - - - - - - - - - - - - - - - - - - - - +
      +
    • I2P: Invisible Internet Project: a project meant to provide an anonymity layer, so user can communicate anonymously using a range of applications.
    • +
    • Router: The core I2P software, which routes encrypted packets on the I2P network. All routers by default participate in the network, which both helps the network and provides cover traffic for any clients or servers connecting to the I2P network through the router.
    • +
    • RouterIdentity: A collection of information required to communicate directly with a router, such as its IP address and listening port, public signing and encryption keys etc.
    • +
    • Tunnel: An anonymous communication pathway between a client or server and the I2P network. Tunnels are unidirectional, so any one client or server must have at least two Tunnels - one for inbound traffic and one for outbound traffic.
    • +
    • Destination: The cryptographic identity of a tunnel. These are the identities of clients and servers within the I2P network, and are analogous to the IP:port of a computer on the normal internet.
    • +
    • LeaseSet: A collection of information required to communicate with a client or server at a particular Destination, such as the gateways of the inbound Tunnels for that Destination.
    • +
    I2PInvisible Internet Project: a project meant to provide an anonymity layer, so user can communicate anonymously using a range of applications.
    RouterThe core I2P software, which routes encrypted packets on the I2P network. All routers by default participate in the network, which both helps the network and provides cover traffic for any clients or servers connecting to the I2P network through the router.
    RouterIdentityA collection of information required to communicate directly with a router, such as its IP address and listening port, public signing and encryption keys etc.
    TunnelAn anonymous communication pathway between a client or server and the I2P network. Tunnels are unidirectional, so any one client or server must have at least two Tunnels - one for inbound traffic and one for outbound traffic.
    DestinationThe cryptographic identity of a tunnel. These are the identities of clients and servers within the I2P network, and are analogous to the IP:port of a computer on the normal internet.
    LeaseSetA collection of information required to communicate with a client or server at a particular Destination, such as the gateways of the inbound Tunnels for that Destination.
    {% endblock %} diff --git a/i2p2www/pages/site/browser/_front.html b/i2p2www/pages/site/browser/_front.html index a25cb6ae..5b6572c0 100644 --- a/i2p2www/pages/site/browser/_front.html +++ b/i2p2www/pages/site/browser/_front.html @@ -5,13 +5,15 @@
  • {{ _('Navigation') }}

  • -
  • {% trans intro=get_url('browser_intro') %}Introduction{% endtrans %}
  • -
  • {% trans download=get_url('browser_download') %}The downloads{% endtrans %}
  • -
  • {% trans troubleshooting=get_url('browser_troubleshooting') %}Troubleshooting{% endtrans %}
  • -
  • {% trans known_issues=get_url('browser_known_issues') %}Known Issues{% endtrans %}
  • +
  • {% trans intro=get_url('browser_intro') %}About{% endtrans %}
  • +
  • {% trans download=get_url('browser_download') %}Download{% endtrans %}
  • + +
  • {% trans releasenotes=get_url('browser_releasenotes') %}Release Notes{% endtrans %}
  • -
  • {% trans updates=get_url('browser_updating') %}Updating{% endtrans %}
  • -
  • {% trans faq=get_url('browser_faq') %}I2P Browser FAQ{% endtrans %}
  • +
  • {% trans develop=get_url('browser_develop') %}Get Involved{% endtrans %}
  • +
  • {% trans donate=site_url('get-involved/donate') %}Donate{% endtrans %}
  • + + {% endblock %} @@ -35,7 +37,7 @@

    {% trans %}Resist. Block. Defend.{% endtrans %}

    {%- if detected_os == 'windows' -%} {%- set name = 'Windows' -%} - {%- set icon = 'images/download/windows.png' -%} + {%- set icon = 'images/browser/garlic.svg' -%} {%- set link = 'https://download.i2p2.de/experimental/i2pbrowser-beta4/windows64/i2pbrowser-install-win64-2.0-beta4_en-US.exe' -%} {% call browser_download(name, icon, link) %} Download I2P Browser for Windows @@ -43,7 +45,7 @@ {%- elif detected_os == 'macosx' -%} {%- set name = 'Mac OS X' -%} - {%- set icon = 'images/download/mac-osx.png' -%} + {%- set icon = 'images/barowser/garlic.svg' -%} {%- set link = 'https://download.i2p2.de/experimental/i2pbrowser-beta4/macosx64/I2PBrowser-2.0-beta4-osx64_en-US.dmg' -%} {% call browser_download(name, icon, link) %} Download I2P Browser for Mac OS X @@ -51,7 +53,7 @@ {%- elif detected_os == 'linux' -%} {%- set name = 'Linux' -%} - {%- set icon = 'images/download/freebsd-tux.png' -%} + {%- set icon = 'images/browser/garlic.svg' -%} {%- set link = 'https://download.i2p2.de/experimental/i2pbrowser-beta4/linux64/i2p-browser-linux64-2.0-beta4_en-US.tar.xz' -%} {% call browser_download(name, icon, link) %} Download I2P Browser for Linux x64 diff --git a/i2p2www/pages/site/browser/download.html b/i2p2www/pages/site/browser/download.html index ed6b6830..d2706827 100644 --- a/i2p2www/pages/site/browser/download.html +++ b/i2p2www/pages/site/browser/download.html @@ -22,20 +22,22 @@
    -

    {{ _('I2P Browser download page') }}

    +

    {{ _('Download I2P Browser') }}

    {% trans -%} - The Invisible Internet browser is a fork of TorBrowser/Mozilla Firefox ESR that comes preconfigured with proxy - settings, NoScript and i2pbutton which contains some security/privacy improvements like a drag and drop filter and - external app blocker. + The Invisible Internet Browser is a fork of TorBrowser/Mozilla Firefox ESR + that comes preconfigured with proxy settings, NoScript and + I2PButton which contains + security and privacy improvements like a drag and drop filter and external + app blocker. {%- endtrans %}

    {% trans -%} - Builds for Linux, Windows and Mac OS X are available. Currently we provide binaries for 64bit systems. 32bit builds - for Linux and Windows are planned. + Builds for Linux, Windows and Mac OS X are available. Currently we provide + binaries for 64bit systems. 32bit builds for Linux and Windows are planned. {%- endtrans %}

    {% trans -%} - At this time I2P Browser does not ship with its own I2P router. Ensure that you have I2P installed and running - before you launch the I2P Browser. + At this time I2P Browser does not ship with its own I2P router. Ensure that + you have I2P installed and running before you launch the I2P Browser. {%- endtrans %}

    {% trans %} Status: Beta-4 @@ -125,4 +127,4 @@ {% endcall %}
    -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/i2p2www/pages/site/browser/intro.html b/i2p2www/pages/site/browser/intro.html index a4ed131f..eb570711 100644 --- a/i2p2www/pages/site/browser/intro.html +++ b/i2p2www/pages/site/browser/intro.html @@ -12,12 +12,32 @@ {% block content %} -

    The I2P Browser Introduction

    - - - - -TBA. - +

    About

    +

    +I2P Browser is for anyone who wants to protect their privacy either for +preference or safety. It enables netizens to defend themselves from tracking, +surveillance, spyware and in some cases it will help to circumvent censorship. +

    +

    +Like other browsers, I2P Browser enables you to browse and search the internet. +I2P Browser however, is very focused on the privacy rights of the user and does +not monetize data in trade of your privacy. +

    +

    +Most websites now use numerous third-party services, including social networking +“Like” buttons, analytics trackers, and advertising beacons, all of which can +link your activity across different sites. And because of that, the I2P Browser +is designed to prevent websites from “fingerprinting” or identifying you based +on your browser configuration. By default, I2P Browser does not keep any +browsing history. Cookies are only valid for a single session (until I2P Browser +is exited or a New Identity is requested). +

    +

    +I2P Browser blocks plugins like Flash, RealPlayer, Quicktime and others that can +be manipulated into revealing your IP address. I2P Browser also comes with +NoScript and other patches to protect your privacy and security. We do not +recommend installing additional plugins or add-ons to I2P Browser since they may +bypass or compromise your privacy. +

    {% endblock %} diff --git a/i2p2www/pages/site/browser/known_issues.html b/i2p2www/pages/site/browser/known_issues.html deleted file mode 100644 index c0e4e71d..00000000 --- a/i2p2www/pages/site/browser/known_issues.html +++ /dev/null @@ -1,23 +0,0 @@ -{% extends "global/layout.html" %} -{% block title %}{{ _('The I2P Browser') }}{% endblock %} -{% block content_nav %} -
      -
    1. -

      {{ _('Navigation') }}

      -
    2. -
    3. {% trans browser_main=get_url('browser_frontpage') %}Back to browser front page{% endtrans %}
    4. -
    -{% endblock %} - - -{% block content %} - -

    {% trans %}Known issues with the I2P Browser{% endtrans %}

    - - - - -TBA. - -{% endblock %} - diff --git a/i2p2www/pages/site/browser/troubleshooting.html b/i2p2www/pages/site/browser/troubleshooting.html deleted file mode 100644 index 383cfbcc..00000000 --- a/i2p2www/pages/site/browser/troubleshooting.html +++ /dev/null @@ -1,23 +0,0 @@ -{% extends "global/layout.html" %} -{% block title %}{{ _('The I2P Browser') }}{% endblock %} -{% block content_nav %} -
      -
    1. -

      {{ _('Navigation') }}

      -
    2. -
    3. {% trans browser_main=get_url('browser_frontpage') %}Back to browser front page{% endtrans %}
    4. -
    -{% endblock %} - - -{% block content %} - -

    {% trans %}Browser Troubleshooting{% endtrans %}

    - - - - -TBA. - -{% endblock %} - diff --git a/i2p2www/pages/site/contact.html b/i2p2www/pages/site/contact.html index 43059e98..4d8ba52a 100644 --- a/i2p2www/pages/site/contact.html +++ b/i2p2www/pages/site/contact.html @@ -49,7 +49,7 @@ GPG Key fingerprint: EA27 06D6 14F5 28DB 764B F47E CFCD C461 75E6 694A

    {{ _('Mailing lists') }}

    {% trans -%} - I2P does have a mailing list, but it is rarely used as the current small team of developers prefer to communicate via IRC or the developer forum. This may change in future. + I2P has recently reinstated it's mailing lists, and they are primarily used to discuss I2P browser development. {%- endtrans %}

    @@ -66,11 +66,15 @@ GPG Key fingerprint: EA27 06D6 14F5 28DB 764B F47E CFCD C461 75E6 694A

    {{ _('Lists') }}

    diff --git a/i2p2www/static/images/browser/garlic.svg b/i2p2www/static/images/browser/garlic.svg new file mode 100644 index 00000000..e7a3fd20 --- /dev/null +++ b/i2p2www/static/images/browser/garlic.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/i2p2www/static/styles/duck/default.css b/i2p2www/static/styles/duck/default.css index 63c84836..fd8483c9 100644 --- a/i2p2www/static/styles/duck/default.css +++ b/i2p2www/static/styles/duck/default.css @@ -711,6 +711,10 @@ pre.literal-block { box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3), 1em 3em 2em 0.5em rgba(255, 255, 255, 0.3) inset, inset -.2em -.5em 1em -0em rgba(0,0,0,.3); } +a.get-i2p-browser:hover { + color: var(--i2pgrey); +} + .browser-front-wrapper { text-align: center; } @@ -727,6 +731,7 @@ pre.literal-block { -ms-border-radius: 50%; -o-border-radius: 50%; border-radius: 50%; + padding-bottom: 1rem; } .browser-onboarding { @@ -835,3 +840,79 @@ div#content .emailbutton { div#content .messagebox { height: 100px; } + + +element { +} +.background-primary { + background-color: #4661A9; +} +.text-white { + color: #fff !important; +} +.p-5 { + padding: 3rem !important; +} +.col-12 { + -ms-flex: 0 0 100%; + flex: 0 0 100%; + max-width: 100%; +} +.col, .col-1, .col-10, .col-11, .col-12, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-auto, .col-lg, .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-auto, .col-md, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-auto, .col-sm, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-auto, .col-xl, .col-xl-1, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-auto { + position: relative; + width: 100%; + min-height: 1px; + padding-right: 15px; + padding-left: 15px; +} +*, ::after, ::before { + box-sizing: border-box; +} +body { + color: #212529; + font-family: "Source Sans Pro",sans-serif !important; + font-size: 1rem; +} +body { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #212529; + text-align: left; +} +:root { + --blue: #007bff; + --indigo: #6610f2; + --purple: #6f42c1; + --pink: #e83e8c; + --red: #dc3545; + --orange: #fd7e14; + --yellow: #ffc107; + --green: #28a745; + --teal: #20c997; + --cyan: #17a2b8; + --white: #fff; + --gray: #6c757d; + --gray-dark: #343a40; + --primary: #007bff; + --secondary: #6c757d; + --success: #28a745; + --info: #17a2b8; + --warning: #ffc107; + --danger: #dc3545; + --light: #f8f9fa; + --dark: #343a40; + --breakpoint-xs: 0; + --breakpoint-sm: 576px; + --breakpoint-md: 768px; + --breakpoint-lg: 992px; + --breakpoint-xl: 1200px; + --font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; + --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; +} +html { + font-family: sans-serif; + line-height: 1.15; + -webkit-text-size-adjust: 100%; +} diff --git a/i2p2www/static/styles/duck/desktop.css b/i2p2www/static/styles/duck/desktop.css index dfa4cca3..04c9b942 100644 --- a/i2p2www/static/styles/duck/desktop.css +++ b/i2p2www/static/styles/duck/desktop.css @@ -81,6 +81,25 @@ menu ul, position: relative; display: block; } +/* +#cssmenu span.donateitem { + background-color: #60ab60; + border-color: #60ab60; + border-radius: 15%; + padding-left: 10px; + padding-right: 10px; + border-style: ridge; + border-width: 5px; + display: inline; +} +*/ +#cssmenu span.browseritem { + font-weight: bold; +} + +#cssmenu span.donateitem:hover { + box-shadow: inset 0 0 500px 500px rgba(255, 255, 255, 0.5); +} #cssmenu { height: 40px diff --git a/i2p2www/templatevars.py b/i2p2www/templatevars.py index a201bdc7..767484d6 100644 --- a/i2p2www/templatevars.py +++ b/i2p2www/templatevars.py @@ -22,7 +22,7 @@ I2P_TO_CLEAR = { 'i2pforum.i2p': 'i2pforum.net', # New I2P Forum 'trac.i2p2.i2p': 'trac.i2p2.de', 'mail.i2p': 'i2pmail.org', - 'lists.i2p2.i2p': 'lists.i2p2.de', + 'lists.i2p': 'lists.i2p.email', 'i2p-javadocs.i2p': 'docs.i2p-projekt.de/javadoc', # Hacky to include the path, but it works! 'echelon.i2p/javadoc': 'docs.i2p-projekt.de/javadoc', # Hacky to include the path, but it works! 'stats.i2p': 'stats.i2p', # Inproxy disabled at request of site owner diff --git a/i2p2www/urls.py b/i2p2www/urls.py index 363ecd60..737979d4 100644 --- a/i2p2www/urls.py +++ b/i2p2www/urls.py @@ -84,6 +84,8 @@ url('//browser/troubleshooting', 'browser.browser_troubleshooting') url('//browser/releasenotes', 'browser.browser_releasenotes') url('//browser/updating', 'browser.browser_updating') url('//browser/download', 'browser.browser_download') +url('//browser/donate', 'browser.browser_donate') +url('//browser/develop', 'browser.browser_develop') url('//download', 'downloads.downloads_list') url('//download/debian', 'downloads.downloads_debian')