taler-www

Main taler.net website
Log | Files | Refs | Submodules | README | LICENSE

commit 8e51037a1b2fe228dd7f8a460011f0a331820f34
parent e7b269f9f5dac0270694171154076f3d29a67977
Author: Andreas HABEGGER <andreas.habegger@bfh.ch>
Date:   Mon, 10 Nov 2025 00:24:38 +0100

Clean up formating and lagacy code; Added event filter

Diffstat:
Mtemplate/ngi-taler.html.j2 | 555+++++++++++++++++++++++++++++++++++++------------------------------------------
1 file changed, 258 insertions(+), 297 deletions(-)

diff --git a/template/ngi-taler.html.j2 b/template/ngi-taler.html.j2 @@ -1,351 +1,311 @@ {% extends "common/consortium.j2" %} -{% block subtitle %}{{ _("NGI TALER")}}{% endblock subtitle %} +{% block subtitle %}{{ _("NGI TALER") }}{% endblock subtitle %} {% block body_content %} <main id="maincontent"> -<div class="container consortium dark-grey-text"> - <article> - <div class="row"> - <div class="col-lg-6"> - <img class="img-fluid" src="{{ url_static('images/logo-NGI_TALER_Bold.svg') }}" alt="NGI Taler logo" width="500px"> - </div> - <h4 class="font-weight-bold pb-2 mb-4">NGI TALER</h4> - <!-- {# <div class="col col-md-auto"></div> #} project intro --> - <div class="col-md-11 col-md-4 mb-4 px-md-4"> - <p class="w-responsive mx-auto mb-3"> - GNU Taler (<em>Taxable Anonymous Libre Electronic Resources</em>) is a new secure - electronic payment system based on open standards, free software, and advanced cryptography. - GNU Taler provides privacy guarantees to the buyer while offering the possibility - to audit merchants, making sale incomes transparent and fraud difficult. - To online merchants and retailers, GNU Taler offers instant transaction clearance - without risks of fake payment methods. Computations needed to clear the payments - are efficient and scalable so that banks can pass on lower transaction costs to - consumers and merchants. Consumers can withdraw money from their existing bank account - into their GNU Taler wallet, detaching their spending habits from scrutiny, in the way cash does. - </p> - <p class="w-responsive mx-auto mb-3"> - The NGI TALER project is funded under Horizon Europe (Pilots for the Next Generation Internet) with the aim of bringing GNU Taler to market across Europe. - </p> - <p class="w-responsive mx-auto mb-3"> - To make GNU Taler accessible to European citizens, we need a commercially viable use of - the GNU Taler technology. We will achieve this through the four key project objectives. - </p> - <div class="accordion" id="accordionObjectives"> - {% for objective in conf['objectives'] %} - <div class="accordion-item"> - <h2 class="accordion-header" id="heading_{{ loop.index }}"> - <button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" - data-bs-target="#collapse_{{ loop.index }}" aria-expanded="false" - aria-controls="collapse_{{ loop.index }}"> - Objective {{ loop.index }}: {{ objective.title }} - </button> - </h2> - <div id="collapse_{{ loop.index }}" class="accordion-collapse collapse" - aria-labelledby="heading_{{ loop.index }}" data-bs-parent="#accordionObjectives"> - <p class="accordion-body text-muted w-responsive"> - {{ objective.text }} - </p> + <div class="container consortium dark-grey-text"> + <article> + <div class="row"> + <div class="col-lg-6"> + <img class="img-fluid" src="{{ url_static('images/logo-NGI_TALER_Bold.svg') }}" alt="NGI Taler logo" + width="500px"> + </div> + <h4 class="font-weight-bold pb-2 mb-4">NGI TALER</h4> + <!-- {# <div class="col col-md-auto"></div> #} project intro --> + <div class="col-md-11 col-md-4 mb-4 px-md-4"> + <p class="w-responsive mx-auto mb-3"> + GNU Taler (<em>Taxable Anonymous Libre Electronic Resources</em>) is a new secure + electronic payment system based on open standards, free software, and advanced cryptography. + GNU Taler provides privacy guarantees to the buyer while offering the possibility + to audit merchants, making sale incomes transparent and fraud difficult. + To online merchants and retailers, GNU Taler offers instant transaction clearance + without risks of fake payment methods. Computations needed to clear the payments + are efficient and scalable so that banks can pass on lower transaction costs to + consumers and merchants. Consumers can withdraw money from their existing bank account + into their GNU Taler wallet, detaching their spending habits from scrutiny, in the way cash does. + </p> + <p class="w-responsive mx-auto mb-3"> + The NGI TALER project is funded under Horizon Europe (Pilots for the Next Generation Internet) with the aim + of bringing GNU Taler to market across Europe. + </p> + <p class="w-responsive mx-auto mb-3"> + To make GNU Taler accessible to European citizens, we need a commercially viable use of + the GNU Taler technology. We will achieve this through the four key project objectives. + </p> + <div class="accordion" id="accordionObjectives"> + {% for objective in conf['objectives'] %} + <div class="accordion-item"> + <h2 class="accordion-header" id="heading_{{ loop.index }}"> + <button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" + data-bs-target="#collapse_{{ loop.index }}" aria-expanded="false" + aria-controls="collapse_{{ loop.index }}"> + Objective {{ loop.index }}: {{ objective.title }} + </button> + </h2> + <div id="collapse_{{ loop.index }}" class="accordion-collapse collapse" + aria-labelledby="heading_{{ loop.index }}" data-bs-parent="#accordionObjectives"> + <p class="accordion-body text-muted w-responsive"> + {{ objective.text }} + </p> + </div> </div> + {% endfor %} </div> - {% endfor %} </div> </div> - </div> - </article> + </article> - <article> - <div class="row"> - <h4 class="font-weight-bold pb-2 mb-4">Open Calls</h4> - <div class="col-md-11 col-md-4 mb-4 px-md-4"> - <p class="w-responsive mx-auto mb-3"> - NGI TALER has frequent open calls for funding to third parties. - The deadlines were April 1<sup>st</sup> 2024, June 1<sup>st</sup>, October 1<sup>st</sup>, December 1<sup>st</sup>, February 1<sup>st</sup> 2025, April 1<sup>st</sup>, June 1<sup>st</sup>, August 1<sup>st</sup>, and October 1<sup>st</sup>. - <b>The 10<sup>th</sup> open call of NGI TALER</b> opened up on October 1<sup>st</sup> 2025 with a deadline of <b>December 1<sup>st</sup> 2025 (12:00 CET)</b>. - You can find more information at the <strong><a href="https://nlnet.nl/taler" target="_blank" rel="noopener noreferrer">Open Calls</a></strong> page and - get feedback and support at the <strong><a href="https://ich.taler.net/pub/open-calls-helpdesk" target="_blank" rel="noopener noreferrer"> - TALER Integration Community Hub</a></strong>. - </p> - <p class="w-responsive mx-auto mb-3"> - In the program's first open call <strong>five teams</strong> have been selected by an external experts committee: - <ul> - <li><strong><a href="https://nlnet.nl/project/TALER-LookupService" target="_blank" rel="noopener noreferrer">GNU Taler Wallet ID Lookup Service</a> + <article> + <div class="row"> + <h4 class="font-weight-bold pb-2 mb-4">Open Calls</h4> + <div class="col-md-11 col-md-4 mb-4 px-md-4"> + <p class="w-responsive mx-auto mb-3"> + NGI TALER has frequent open calls for funding to third parties. + The deadlines were April 1<sup>st</sup> 2024, June 1<sup>st</sup>, October 1<sup>st</sup>, December + 1<sup>st</sup>, February 1<sup>st</sup> 2025, April 1<sup>st</sup>, June 1<sup>st</sup>, August + 1<sup>st</sup>, and October 1<sup>st</sup>. + <b>The 10<sup>th</sup> open call of NGI TALER</b> opened up on October 1<sup>st</sup> 2025 with a deadline + of <b>December 1<sup>st</sup> 2025 (12:00 CET)</b>. + You can find more information at the <strong><a href="https://nlnet.nl/taler" target="_blank" + rel="noopener noreferrer">Open Calls</a></strong> page and + get feedback and support at the <strong><a href="https://ich.taler.net/pub/open-calls-helpdesk" + target="_blank" rel="noopener noreferrer"> + TALER Integration Community Hub</a></strong>. + </p> + <p class="w-responsive mx-auto mb-3"> + In the program's first open call <strong>five teams</strong> have been selected by an external experts + committee: + <ul> + <li><strong><a href="https://nlnet.nl/project/TALER-LookupService" target="_blank" + rel="noopener noreferrer">GNU Taler Wallet ID Lookup Service</a> </strong> will provide the optional discovery of wallet addresses linked to digital identities</li> - <li><strong><a href="https://nlnet.nl/project/TALER-OIM" target="_blank" rel="noopener noreferrer">Road Signs for Digital Payments</a> + <li><strong><a href="https://nlnet.nl/project/TALER-OIM" target="_blank" rel="noopener noreferrer">Road + Signs for Digital Payments</a> </strong> will work on an interface for people who can not read or write</li> - <li><strong><a href="https://nlnet.nl/project/TALER-Bullion" target="_blank" rel="noopener noreferrer">TALER Bullion</a> - </strong> will add an infrastructure for Taler payments with non-fiat currencies such as gold and silver</li> - <li><strong><a href="https://nlnet.nl/project/MTE" target="_blank" rel="noopener noreferrer">MTE - the MirageOS Taler Exchange</a> + <li><strong><a href="https://nlnet.nl/project/TALER-Bullion" target="_blank" rel="noopener noreferrer">TALER + Bullion</a> + </strong> will add an infrastructure for Taler payments with non-fiat currencies such as gold and silver + </li> + <li><strong><a href="https://nlnet.nl/project/MTE" target="_blank" rel="noopener noreferrer">MTE - the + MirageOS Taler Exchange</a> </strong> will implement Taler Exchange functionality in OCaml-based unikernel</li> - <li><strong><a href="https://nlnet.nl/project/TALER-Odoo-module" target="_blank" rel="noopener noreferrer">Taler-Odoo Payment System</a> + <li><strong><a href="https://nlnet.nl/project/TALER-Odoo-module" target="_blank" + rel="noopener noreferrer">Taler-Odoo Payment System</a> </strong> will integrate Taler in the <em>Odoo</em> business management software suite</li> - </ul> - </p> - <p class="w-responsive mx-auto mb-3"> - In NGI TALER's second open call <strong>two teams</strong> have been selected by the external experts committee: - <ul> - <li><strong><a href="https://nlnet.nl/project/TALER-Tryton" target="_blank" rel="noopener noreferrer">GNU Taler Tryton/GNUHealth Integration</a> + </ul> + </p> + <p class="w-responsive mx-auto mb-3"> + In NGI TALER's second open call <strong>two teams</strong> have been selected by the external experts + committee: + <ul> + <li><strong><a href="https://nlnet.nl/project/TALER-Tryton" target="_blank" rel="noopener noreferrer">GNU + Taler Tryton/GNUHealth Integration</a> </strong> will develop a <em>Tryton</em> module which would - allow users to integrate payments with GNU Taler into their web shops and businesses, going - hand in hand with <em>GNU Health</em>, which is built on <em>Tryton</em> and provides a suite of libre - alternatives for hospital management software, health information systems and electronic health records</li> - <li><strong><a href="https://nlnet.nl/project/TALER-Interledger-study" target="_blank" rel="noopener noreferrer">Interledger Interoperability Inquiry</a> + allow users to integrate payments with GNU Taler into their web shops and businesses, going + hand in hand with <em>GNU Health</em>, which is built on <em>Tryton</em> and provides a suite of libre + alternatives for hospital management software, health information systems and electronic health records + </li> + <li><strong><a href="https://nlnet.nl/project/TALER-Interledger-study" target="_blank" + rel="noopener noreferrer">Interledger Interoperability Inquiry</a> </strong> will investigate the technical feasibility of using - Taler as a payment method on the <em>Interledger payment network</em> to support web monetization</li> - </ul> + Taler as a payment method on the <em>Interledger payment network</em> to support web monetization</li> + </ul> </p> - <p class="w-responsive mx-auto mb-3"> - In NGI TALER's third open call <strong>three teams</strong> have been selected by the external experts committee: - <ul> - <li><strong><a href="https://nlnet.nl/project/TALER-OpenBankingGateway" target="_blank" rel="noopener noreferrer"> - Taler Open Banking Gateway</a></strong> will provide the technology to top-up a Taler wallet in a + <p class="w-responsive mx-auto mb-3"> + In NGI TALER's third open call <strong>three teams</strong> have been selected by the external experts + committee: + <ul> + <li><strong><a href="https://nlnet.nl/project/TALER-OpenBankingGateway" target="_blank" + rel="noopener noreferrer"> + Taler Open Banking Gateway</a></strong> will provide the technology to top-up a Taler wallet in a regulatory-compliant, instant and user-friendly way</li> - <li><strong><a href="https://nlnet.nl/project/TALER-flohmarkt" target="_blank" rel="noopener noreferrer"> - Flohmarkt</a></strong> will integrate Taler payments into <em>Flohmarkt</em>, a decentral federated small advertisement platform, + <li><strong><a href="https://nlnet.nl/project/TALER-flohmarkt" target="_blank" rel="noopener noreferrer"> + Flohmarkt</a></strong> will integrate Taler payments into <em>Flohmarkt</em>, a decentral federated + small advertisement platform, and allows individuals to informally sell goods to each other in a privacy-preserving manner</li> - <li><strong><a href="https://nlnet.nl/project/TALER-integration-Nuxt" target="_blank" rel="noopener noreferrer"> - Payment Module for Nuxt/Vue.js</a></strong> will create a dedicated GNU Taler module for <em>Nuxt</em> - including Vue.js components for donation and order payment, documentation and examples such as a file-based webshop</li> - </ul> - </p> - <p class="w-responsive mx-auto mb-3"> - In NGI TALER's fourth and fifth open call <strong>four teams</strong> have been selected by the external experts committee: - <ul> - <li><strong><a href="https://nlnet.nl/project/Taler-Dolibarr" target="_blank" rel="noopener noreferrer"> - Taler-Dolibarr Integration</a></strong> will provide a comprehensive module to integrate the privacy-preserving payment system GNU Taler - with Dolibarr, an open-source Enterprise Resource Planning used by many small businesses around the world</li> - <li><strong><a href="https://nlnet.nl/project/Contributron" target="_blank" rel="noopener noreferrer"> - Contributron</a></strong>, a privacy-aware donation portal with Taler-based payments, delivers a self-hostable personal website to collect donations - and track crowd-funding efforts on various external platforms, including one-time and recurring donations</li> - <li><strong><a href="https://nlnet.nl/project/Taler-on-BSD" target="_blank" rel="noopener noreferrer"> - xBSD</a></strong>, porting and packaging of Taler components for xBSD systems, will make sure that the entire Taler software stack - is natively available on a number of operating systems beyond the already available (and obviously popular) Linux operating system + <li><strong><a href="https://nlnet.nl/project/TALER-integration-Nuxt" target="_blank" + rel="noopener noreferrer"> + Payment Module for Nuxt/Vue.js</a></strong> will create a dedicated GNU Taler module for <em>Nuxt</em> + including Vue.js components for donation and order payment, documentation and examples such as a + file-based webshop</li> + </ul> + </p> + <p class="w-responsive mx-auto mb-3"> + In NGI TALER's fourth and fifth open call <strong>four teams</strong> have been selected by the external + experts committee: + <ul> + <li><strong><a href="https://nlnet.nl/project/Taler-Dolibarr" target="_blank" rel="noopener noreferrer"> + Taler-Dolibarr Integration</a></strong> will provide a comprehensive module to integrate the + privacy-preserving payment system GNU Taler + with Dolibarr, an open-source Enterprise Resource Planning used by many small businesses around the world + </li> + <li><strong><a href="https://nlnet.nl/project/Contributron" target="_blank" rel="noopener noreferrer"> + Contributron</a></strong>, a privacy-aware donation portal with Taler-based payments, delivers a + self-hostable personal website to collect donations + and track crowd-funding efforts on various external platforms, including one-time and recurring donations + </li> + <li><strong><a href="https://nlnet.nl/project/Taler-on-BSD" target="_blank" rel="noopener noreferrer"> + xBSD</a></strong>, porting and packaging of Taler components for xBSD systems, will make sure that the + entire Taler software stack + is natively available on a number of operating systems beyond the already available (and obviously + popular) Linux operating system — NetBSD, OpenBSD, FreeBSD and Apple's MacOS X</li> - <li><strong><a href="https://nlnet.nl/project/TalerPHP" target="_blank" rel="noopener noreferrer"> - TalerPHP</a></strong> will develop an open-source PHP library to interact with GNU Taler’s REST APIs, + <li><strong><a href="https://nlnet.nl/project/TalerPHP" target="_blank" rel="noopener noreferrer"> + TalerPHP</a></strong> will develop an open-source PHP library to interact with GNU Taler’s REST APIs, enabling PHP-based applications to more easily support privacy-preserving payments</li> - </ul> + </ul> </p> <p class="w-responsive mx-auto mb-3"> - In the sixth and seventh open call <strong>three teams</strong> have been selected by the external experts committee: - <ul> - <li><strong><a href="https://nlnet.nl/project/TALER-Ruby-OFN" target="_blank" rel="noopener noreferrer"> - Libre Payments in Ruby</a></strong> integrates GNU Taler into Ruby-based e-commerce applications — supporting GNU Taler for ethical trade + In the sixth and seventh open call <strong>three teams</strong> have been selected by the external experts + committee: + <ul> + <li><strong><a href="https://nlnet.nl/project/TALER-Ruby-OFN" target="_blank" rel="noopener noreferrer"> + Libre Payments in Ruby</a></strong> integrates GNU Taler into Ruby-based e-commerce applications — + supporting GNU Taler for ethical trade and starting with the Open Food Network (OFN)</li> - <li><strong><a href="https://nlnet.nl/project/TALER-Liberapay" target="_blank" rel="noopener noreferrer"> - Taler in Liberapay</a></strong> aims at implementing GNU Taler for payments in Liberapay, a recurrent donations platform, enabling users with a + <li><strong><a href="https://nlnet.nl/project/TALER-Liberapay" target="_blank" rel="noopener noreferrer"> + Taler in Liberapay</a></strong> aims at implementing GNU Taler for payments in Liberapay, a recurrent + donations platform, enabling users with a Taler wallet to support projects and creators in a privacy-preserving manner</li> - <li><strong><a href="https://nlnet.nl/project/TALER-APIs" target="_blank" rel="noopener noreferrer"> - Taler OpenAPI specification</a></strong> adds automatic OpenAPI specification generation to GNU Taler's bank APIs and the wallet-core API</li> - </ul> - We congratulate the grantees! More information regarding the grantees' projects can be found at the - <strong><a href="https://nlnet.nl/thema/NGITALERFund.html" target="_blank" rel="noopener noreferrer">NGI TALER grants selection page</a></strong>. - </p> - </div> - </div> - </article> - - <article> - <div class="row"> - <h4 class="font-weight-bold pb-2 mb-4">Events</h4> - </div> - - <div class="row mb-4"> - <p> - The consortium will organize or participate in different types of events across Europe. - </p> - {# Events will include talks presenting GNU Taler and related technologies, expert panels discussing - financial problems and possible solutions, workshops to jointly work on GNU Taler integrations, - usability studies with interested volunteers, and public consultations to gather ideas and requirements - from the general public. #} - - <div> - {% for year, yitem in eventsdata|groupby('date.year')|reverse %} - <p><b>{{ year }}</b></p> - - <ul class="timeline"> - {% for item in yitem|sort(attribute='date',reverse=true) %} - <li> - <section class="item-preview"> - <header> - <h5> {{ item['date']}}: {{ item['title']|e }}</h5> - <p class="item-date"> - {{ item['teaser'] }} - </p> - </header> - <p class="item-abstract"> - {{ item['location']}} - Speaker: {{ item['speaker']}} - </p> - <p class="item-date"> - <a href="{{ item['url_ext']}}" target="_blank" rel="noopener noreferrer">External link: {{ item['url_ext']}}</a> - </p> - </section> - </li> - {% endfor %} + <li><strong><a href="https://nlnet.nl/project/TALER-APIs" target="_blank" rel="noopener noreferrer"> + Taler OpenAPI specification</a></strong> adds automatic OpenAPI specification generation to GNU + Taler's bank APIs and the wallet-core API</li> </ul> - {% endfor %} + We congratulate the grantees! More information regarding the grantees' projects can be found at the + <strong><a href="https://nlnet.nl/thema/NGITALERFund.html" target="_blank" rel="noopener noreferrer">NGI TALER + grants selection page</a></strong>. + </p> </div> - </div> - </article> - -{# DEPRECATED EVENTS AND DELIVERABLES IN CAROUSEL JS - <article> - <div class="row"> - <h4 class="font-weight-bold pb-2 mb-4">Events</h4> - <div class="col-md-6 mb-6"> - <!-- events carousel --> - <div class="container announce"> - <div id="AnnouncCarousel" class="carousel slide" data-bs-ride="carousel"> - <!-- Carousel indicators --> - <div class="carousel-indicators"> - {% for number in range(0, conf['events']|count) %} - <button data-bs-target="#AnnouncCarousel" data-bs-slide-to="{{ number }}" {% if number==0 %} - class="active" {% endif %} aria-current="true" aria-label="Slide {{ number + 1 }}"></button> - {% endfor %} - </div> + </div> + </article> - <!-- Wrapper for carousel items --> - <div class="carousel-inner vevent"> - {% for item in conf['events'] %} + <article> + {% for year, yitem in eventsdata|groupby('date.year')|reverse %} + <p><b>{{ year }}</b></p> + <ul class="timeline"> + {% for item in yitem|sort(attribute='date', reverse=true) %} + <li> + <section class="item-preview"> + <header> + <h5>{{ item.date.strftime("%Y-%m-%d") }}: {{ item.title|e }}</h5> + <p class="item-date">{{ item.teaser }}</p> + </header> + <p class="item-abstract">{{ item.location }} - Speaker: {{ item.speaker }}</p> + {% if item.url_ext %} + <p class="item-date"> + <a href="{{ item.url_ext }}" target="_blank" rel="noopener noreferrer"> + External link: {{ item.url_ext }} + </a> + </p> + {% endif %} + </section> + </li> + {% endfor %} + </ul> + {% endfor %} + </article> - <div {% if loop.first %} class="carousel-item active" {% else %} class="carousel-item" {% endif %} - data-bs-interval="5000"> - <h5 class="summary">{{ item['title'] }}</h5> - <div class="img-box"> - {% if item['url_ext'] is defined and item['url_ext'] and item['url_ext'] != "" %} - <a href="{{ item['url_ext'] }}" target="_blank" rel="noopener noreferrer"> - {% endif %} - <img src="{{ url( item['url_img']|default('images/logo-2021.svg', true) ) }}" alt="" width="300px"> - {% if item['url_ext'] is defined and item['url_ext'] and item['url_ext'] != "" %} - </a> - {% endif %} - </div> - <p class="description"> - {{ item['teaser'] }} - </p> - <div class="contact"> - <div class="fas fa-calendar-alt"> Date: - <span class="dtstart"> - <abbr class="value" title="{{ item['date'] }}"> {{ item['date'] }}</abbr> - </span> - </div> - {% if item['url_ext'] is defined and item['url_ext'] and item['url_ext'] != "" %} - <div class="fa fa-globe"> <a target="_blank" href="{{ item['url_ext'] }}"> About</a></div> - {% endif %} - {% if item['location'] is defined and item['location'] and item['location'] != "" %} - <p class="fas fa-map-marker-alt"> Location: <span class="location">{{ item['location'] }}</span> - </p> - {% endif %} - <div class="fa fa-user"> <b>{{ item['speaker'] }}</b></div> - {% if item['email'] is defined and item['email'] and item['email'] != "" %} - <div class="fas fa-envelope"> <a href="mailto:{{ item['email'] }}?subject={{ item['title'] }}"><span - class="dark-grey-text"> Contact</span></a></div> - {% endif %} - </div> - </div> - {% endfor %} - </div> - </div> - </div> + <article> + <div class="row"> + <h4 class="font-weight-bold pb-2 mb-4">Deliverables</h4> </div> -#} + <div class="list-group"> + {% for item in conf['deliverables'] %} + {% set ns = namespace(symbol='images/file-cancel.svg') %} - <article> - <div class="row"> - <h4 class="font-weight-bold pb-2 mb-4">Deliverables</h4> - </div> - <div class="list-group"> - {% for item in conf['deliverables'] %} - {% set ns = namespace(symbol='images/file-cancel.svg') %} - - {% if item.url_pdf is defined and item.url_pdf %} + {% if item.url_pdf is defined and item.url_pdf %} {% set ns.symbol = 'images/pdf.svg' %} {% set target_url = url(item.url_pdf) %} - {% else %} + {% else %} {% set target_url = "#" %} - {% endif %} + {% endif %} - <a href="{{ target_url }}" class="list-group-item list-group-item-action py-3 text-decoration-none"> + <a href="{{ target_url }}" class="list-group-item list-group-item-action py-3 text-decoration-none"> - <div class="d-flex align-items-center"> - <img src="{{ url_static(ns.symbol) }}" - alt="" - width="32" height="32" - class="me-3 opacity-75" - > + <div class="d-flex align-items-center"> + <img src="{{ url_static(ns.symbol) }}" alt="" width="32" height="32" class="me-3 opacity-75"> - <div class="flex-grow-1"> - <div class="d-flex justify-content-between"> - <h5 class="mb-1 text-dark">{{ item.title }}</h5> - <small class="text-muted">{{ item.workpackage }}</small> - </div> + <div class="flex-grow-1"> + <div class="d-flex justify-content-between"> + <h5 class="mb-1 text-dark">{{ item.title }}</h5> + <small class="text-muted">{{ item.workpackage }}</small> + </div> - {% if item.comment %} - <p class="mb-1 text-secondary small fst-italic">{{ item.comment }}</p> - {% endif %} + {% if item.comment %} + <p class="mb-1 text-secondary small fst-italic">{{ item.comment }}</p> + {% endif %} - {% if item.page is defined and item.page and item.page != "" %} - </div></div></a><div><div> - <div class="small text-muted"> - <i class="fa fa-link me-1"></i> - Further reading: - <a href="{{ item.page }}" class="text-muted text-decoration-none">{{ item.page }} + {% if item.page is defined and item.page and item.page != "" %} + </div> + </div> + </a> + <div> + <div> + <div class="small text-muted"> + <i class="fa fa-link me-1"></i> + Further reading: + <a href="{{ item.page }}" class="text-muted text-decoration-none">{{ item.page }} + </div> + {% endif %} </div> - {% endif %} </div> - </div> - </a> - {% endfor %} + </a> + {% endfor %} -</div> + </div> - </article> + </article> - <article> - <div class="row"> - <h4 class="font-weight-bold pb-2 mb-4">Partners</h4> - </div> + <article> + <div class="row"> + <h4 class="font-weight-bold pb-2 mb-4">Partners</h4> + </div> - <div class="row mb-4"> - <!-- intro --> - <div class="col-md-11 col-md-4 mb-4 px-md-4"> - <p class="w-responsive mx-auto mb-3"> - The NGI TALER consortium consists of 11 partners from 8 European countries (the Netherlands, Belgium, France, - Germany, Greece, Hungary, Luxembourg and Switzerland). - </p> - <p class="w-responsive mx-auto mb-3"> - The consortium is diverse in terms of types of institutions, including research (Eindhoven University of Technology) and - applied science universities (Berner Fachhochschule BFH), small for-profit companies (Code Blau GmbH, Taler Systems S.A., VisualVest), - a structure (petites singularités), cooperative banks (GLS Bank, MagNet Bank), a foundation (Stichting NLnet) - and grassroots movements (E-Seniors Association, Homo Digitalis). - </p> + <div class="row mb-4"> + <!-- intro --> + <div class="col-md-11 col-md-4 mb-4 px-md-4"> + <p class="w-responsive mx-auto mb-3"> + The NGI TALER consortium consists of 11 partners from 8 European countries (the Netherlands, Belgium, + France, + Germany, Greece, Hungary, Luxembourg and Switzerland). + </p> + <p class="w-responsive mx-auto mb-3"> + The consortium is diverse in terms of types of institutions, including research (Eindhoven University of + Technology) and + applied science universities (Berner Fachhochschule BFH), small for-profit companies (Code Blau GmbH, Taler + Systems S.A., VisualVest), + a structure (petites singularités), cooperative banks (GLS Bank, MagNet Bank), a foundation (Stichting + NLnet) + and grassroots movements (E-Seniors Association, Homo Digitalis). + </p> + </div> </div> - </div> - <div class="row row-cols-1 row-cols-md-3 g-4 text-center"> - <!-- consortium board --> + <div class="row row-cols-1 row-cols-md-3 g-4 text-center"> + <!-- consortium board --> - {% for partner in conf['partners'] %} - <div class="col"> - <div class="card border-0 h-100"> - <a href="{{ partner.url }}" target="_blank" rel="noopener noreferrer"> - <img src="{{ url(partner.logo) }}" height="100" class="card-header rounded-circle z-depth-3" - alt="{{ partner.id + ' avatar'}}"> - </a> - {# <!-- <div class="card-note grey-text text-muted mt-3">{{ partner.contact }}</div> --> #} - <div class="card-body h-100"> - <h5 class="card-title font-weight-bold grey-text">{{ partner.name }} </h5> - {# <!-- <p class="card-text grey-text text-muted word-wrap"> {{ partner.role }} </p> --> #} - </div> - {# <!-- <div class="card-footer"> + {% for partner in conf['partners'] %} + <div class="col"> + <div class="card border-0 h-100"> + <a href="{{ partner.url }}" target="_blank" rel="noopener noreferrer"> + <img src="{{ url(partner.logo) }}" height="100" class="card-header rounded-circle z-depth-3" + alt="{{ partner.id + ' avatar' }}"> + </a> + {# <!-- <div class="card-note grey-text text-muted mt-3">{{ partner.contact }}</div> --> #} + <div class="card-body h-100"> + <h5 class="card-title font-weight-bold grey-text">{{ partner.name }} </h5> + {# <!-- <p class="card-text grey-text text-muted word-wrap"> {{ partner.role }} </p> --> #} + </div> + {# <!-- <div class="card-footer"> <p><small class="text-body-secondary dark-grey-text text-muted word-wrap"> <i>{{ partner.statement }}</i> </small></p> </div> --> #} + </div> </div> + {% endfor %} </div> - {% endfor %} - </div> - </article> + </article> - </div> + </div> </main> -{% endblock body_content %} +{% endblock body_content %} +\ No newline at end of file