mirror of
https://github.com/torproject/community.git
synced 2024-11-23 01:39:50 +00:00
Create trainer's guide pages
This commit is contained in:
parent
c35e4fc7fc
commit
67d83549bf
@ -13,3 +13,25 @@
|
||||
.gap-10-px {
|
||||
gap: 10px;
|
||||
}
|
||||
|
||||
.image-thumb-200px {
|
||||
width: 200px;
|
||||
height: 200px;
|
||||
object-fit: cover;
|
||||
}
|
||||
|
||||
table.resource-table {
|
||||
max-width: min-content;
|
||||
|
||||
tr {
|
||||
background-color: unset !important;
|
||||
|
||||
&:first-child td {
|
||||
border-top: none !important;
|
||||
}
|
||||
}
|
||||
|
||||
td > span {
|
||||
white-space: nowrap;
|
||||
}
|
||||
}
|
||||
|
@ -1,6 +1,6 @@
|
||||
_model: resource
|
||||
---
|
||||
name: All About Tor
|
||||
title: All About Tor
|
||||
---
|
||||
link: https://gitweb.torproject.org/community/training.git/plain/2021/all-about-tor/all-about-tor-full-pack.odp
|
||||
---
|
||||
@ -14,6 +14,11 @@ date: 2021
|
||||
---
|
||||
cover: /static/images/training/all-about-tor.png
|
||||
---
|
||||
topics:
|
||||
foo
|
||||
bar
|
||||
baz
|
||||
---
|
||||
languages: English
|
||||
---
|
||||
key: all-about-tor
|
||||
key: all-about-tor
|
||||
|
@ -1,6 +1,6 @@
|
||||
_model: resource
|
||||
---
|
||||
name: Cómo usar Tor Browser en tu computadora
|
||||
title: Cómo usar Tor Browser en tu computadora
|
||||
---
|
||||
link: https://vesinfiltro.com/bloqueos/torbrowser/
|
||||
---
|
||||
|
@ -1,6 +1,6 @@
|
||||
_model: resource
|
||||
---
|
||||
name: Cuidados Digitales: ¿Qué es el Tor Browser?
|
||||
title: Cuidados Digitales: ¿Qué es el Tor Browser?
|
||||
---
|
||||
link: https://cuidadosdigitales.sursiendo.org/mod/page/view.php?id=13
|
||||
---
|
||||
|
@ -1,6 +1,6 @@
|
||||
_model: resource
|
||||
---
|
||||
name: Currícula de capacitación en seguridad digital holística para defensoras de derechos humanos
|
||||
title: Currícula de capacitación en seguridad digital holística para defensoras de derechos humanos
|
||||
---
|
||||
link: https://cyber-women.com/es/anonimato/anonimato/
|
||||
---
|
||||
|
@ -1,6 +1,6 @@
|
||||
_model: resource
|
||||
---
|
||||
name: Digital Safety kit
|
||||
title: Digital Safety kit
|
||||
---
|
||||
link: https://cpj.org/2019/07/digital-safety-kit-journalists/
|
||||
---
|
||||
|
@ -1,6 +1,6 @@
|
||||
_model: resource
|
||||
---
|
||||
name: Defend Dissent: Digital Suppression and Cryptographic Defense of Social Movements
|
||||
title: Defend Dissent: Digital Suppression and Cryptographic Defense of Social Movements
|
||||
---
|
||||
link: https://open.oregonstate.education/defenddissent/
|
||||
---
|
||||
|
@ -1,6 +1,6 @@
|
||||
_model: resource
|
||||
---
|
||||
name: Evadir la censura y la vigilancia con Tor
|
||||
title: Evadir la censura y la vigilancia con Tor
|
||||
---
|
||||
link: https://milpadigital.org/milpadigital-8
|
||||
---
|
||||
|
@ -1,6 +1,6 @@
|
||||
_model: resource
|
||||
---
|
||||
name: Exploring the Tor network (poster)
|
||||
title: Exploring the Tor network (poster)
|
||||
---
|
||||
link: https://catnip.article19.org/data/ARTICLE19-Catnip-Tor-Network-2021-web.pdf
|
||||
---
|
||||
|
@ -1,6 +1,6 @@
|
||||
_model: resource
|
||||
---
|
||||
name: Getting your hands started with Tails
|
||||
title: Getting your hands started with Tails
|
||||
---
|
||||
link: mailto:geb@riseup.net
|
||||
---
|
||||
|
@ -1,6 +1,6 @@
|
||||
_model: resource
|
||||
---
|
||||
name: How to bypass internet censorship
|
||||
title: How to bypass internet censorship
|
||||
---
|
||||
link: https://learn.totem-project.org/courses/course-v1:Totem+TP_CT_EN+001/about
|
||||
---
|
||||
|
@ -1,6 +1,6 @@
|
||||
_model: resource
|
||||
---
|
||||
name: How to: Use Tor
|
||||
title: How to: Use Tor
|
||||
---
|
||||
link: https://ssd.eff.org/en/node/97
|
||||
---
|
||||
|
@ -1,6 +1,6 @@
|
||||
_model: resource
|
||||
---
|
||||
name: An in-depth guide to choosing a web browser
|
||||
title: An in-depth guide to choosing a web browser
|
||||
---
|
||||
link: https://freedom.press/training/-depth-guide-choosing-web-browser/
|
||||
---
|
||||
|
@ -1,6 +1,6 @@
|
||||
_model: resource
|
||||
---
|
||||
name: Leak and Onion Soup
|
||||
title: Leak and Onion Soup
|
||||
---
|
||||
link: https://exposingtheinvisible.org/en/guides/leak-and-onion-soup
|
||||
---
|
||||
|
@ -1,6 +1,6 @@
|
||||
_model: resource
|
||||
---
|
||||
name: Onion Browser: Tu conexión confiable a Tor desde iOS
|
||||
title: Onion Browser: Tu conexión confiable a Tor desde iOS
|
||||
---
|
||||
link: https://gitlab.com/guardianproject/pluto/-/blob/main/Onion_Browser.pdf
|
||||
---
|
||||
|
@ -1,6 +1,6 @@
|
||||
_model: resource
|
||||
---
|
||||
name: Onion Browser Tutorial
|
||||
title: Onion Browser Tutorial
|
||||
---
|
||||
link: https://guardianproject.info/2020/06/02/onion-browser-release-2.6-tutorial/
|
||||
---
|
||||
|
@ -1,6 +1,6 @@
|
||||
_model: resource
|
||||
---
|
||||
name: Onion Browser Video Tutorial
|
||||
title: Onion Browser Video Tutorial
|
||||
---
|
||||
link: https://www.youtube.com/playlist?list=PL4-CVUWabKWeHeBpadBLjzlWVa7binXpj
|
||||
---
|
||||
|
@ -1,6 +1,6 @@
|
||||
_model: resource
|
||||
---
|
||||
name: Orbot: Tor VPN para iOS y Android
|
||||
title: Orbot: Tor VPN para iOS y Android
|
||||
---
|
||||
link: https://gitlab.com/guardianproject/pluto/-/blob/main/Orbot_Spanish.pdf
|
||||
---
|
||||
|
@ -1,6 +1,6 @@
|
||||
_model: resource
|
||||
---
|
||||
name: Running Tor bridges
|
||||
title: Running Tor bridges
|
||||
---
|
||||
link: https://gitweb.torproject.org/community/training.git/plain/2021/private-bridges/private-bridges-workshop.odp
|
||||
---
|
||||
|
@ -1,6 +1,6 @@
|
||||
_model: resource
|
||||
---
|
||||
name: 'Que no quede huella... que no, que no': diálogos feministas para las libertades y autocuidados digitales
|
||||
title: 'Que no quede huella... que no, que no': diálogos feministas para las libertades y autocuidados digitales
|
||||
---
|
||||
link: https://www.derechosdigitales.org/wp-content/uploads/que-no-quede-huella.pdf
|
||||
---
|
||||
|
@ -1,6 +1,6 @@
|
||||
_model: resource
|
||||
---
|
||||
name: Tails: Tu computadora segura en cualquier lugar
|
||||
title: Tails: Tu computadora segura en cualquier lugar
|
||||
---
|
||||
link: https://tails.boum.org/contribute/how/promote/material/slides/Ciclo_Autodefensa_Digital_202204/Tails-Spanish.odp
|
||||
---
|
||||
|
@ -1,6 +1,6 @@
|
||||
_model: resource
|
||||
---
|
||||
name: Todo sobre Tor
|
||||
title: Todo sobre Tor
|
||||
---
|
||||
link: https://gitweb.torproject.org/community/training.git/plain/2019/all-about-tor/all-about-tor-full-pack+es.odp
|
||||
---
|
||||
|
@ -1,6 +1,6 @@
|
||||
_model: resource
|
||||
---
|
||||
name: Tor: ¿Cómo protegerte mientras navegas en Internet?
|
||||
title: Tor: ¿Cómo protegerte mientras navegas en Internet?
|
||||
---
|
||||
link: https://www.youtube.com/watch?v=Zj0FYhcngZ8
|
||||
---
|
||||
|
@ -1,6 +1,6 @@
|
||||
_model: resource
|
||||
---
|
||||
name: The Tor network
|
||||
title: The Tor network
|
||||
---
|
||||
link: https://community.torproject.org/training/resources/tor-relay-workshop/
|
||||
---
|
||||
|
@ -1,6 +1,6 @@
|
||||
_model: resource
|
||||
---
|
||||
name: Understanding and Circumventing Network Censorship
|
||||
title: Understanding and Circumventing Network Censorship
|
||||
---
|
||||
link: https://ssd.eff.org/en/module/understanding-and-circumventing-network-censorship
|
||||
---
|
||||
|
@ -1,6 +1,6 @@
|
||||
_model: resource
|
||||
---
|
||||
name: Use Tor Browser to Become Harder to Trace
|
||||
title: Use Tor Browser to Become Harder to Trace
|
||||
---
|
||||
link: https://securityplanner.consumerreports.org/tool/browse-privately-with-tor
|
||||
---
|
||||
|
@ -1,6 +1,6 @@
|
||||
_model: resource
|
||||
---
|
||||
name: What's fingerprinting?
|
||||
title: What's fingerprinting?
|
||||
---
|
||||
link: https://ssd.eff.org/en/module/what-fingerprinting
|
||||
---
|
||||
|
@ -6,8 +6,11 @@ label = {{ this.title }}
|
||||
enabled = yes
|
||||
per_page = 10
|
||||
|
||||
[fields.name]
|
||||
label = Name
|
||||
[fields.html]
|
||||
default = resource-detail.html
|
||||
|
||||
[fields.title]
|
||||
label = Title
|
||||
type = string
|
||||
translate = True
|
||||
|
||||
@ -44,6 +47,24 @@ type = strings
|
||||
label = Key
|
||||
type = string
|
||||
|
||||
[fields.trainer_guide]
|
||||
label = Trainer's Guide
|
||||
type = url
|
||||
[fields.topics]
|
||||
label = Topics
|
||||
type = strings
|
||||
|
||||
[fields.color]
|
||||
label = Color
|
||||
type = string
|
||||
default = primary
|
||||
|
||||
[fields.section]
|
||||
label = Section
|
||||
type = string
|
||||
default = Training
|
||||
|
||||
[fields.objectives]
|
||||
label = Objectives
|
||||
type = strings
|
||||
|
||||
[fields.external_sources]
|
||||
label = External Reading Sources
|
||||
type = strings
|
||||
|
@ -7,17 +7,17 @@
|
||||
<div class="my-3 w-100 border p-3">
|
||||
<div class="h-100 d-flex align-items-stretch">
|
||||
<div class="bg-white border-0 col-sm-3 p-0 pr-4 align-self-center">
|
||||
<a href="{{ child|url }}" class="d-block"><img src="{{ child.cover | url }}" class="img-fluid" alt="{{ child.name }}"></a>
|
||||
<a href="{{ child }}" class="d-block"><img src="{{ child.cover | url }}" class="img-fluid" alt="{{ child.title }}"></a>
|
||||
</div>
|
||||
<div class="d-flex flex-column w-100">
|
||||
<div class="d-flex flex-row gap-10-px align-items-start">
|
||||
<h3 class="card-title font-weight-600 m-0">{{ child.name }}</h3>
|
||||
<a href="{{ child|url }}" title="{{ child.name }}" class="btn btn-primary font-weight-600">{{ _('View') }}</a>
|
||||
{% if child.trainer_guide %}
|
||||
<a href="{{ child.trainer_guide }}" title="{{ child.name }}" class="btn btn-outline-primary font-weight-600">{{ _("Trainer's guide") }}</a>
|
||||
<h3 class="card-title font-weight-600 m-0">{{ child.title }}</h3>
|
||||
<a href="{{ child.link|url }}" title="{{ child.title }}" class="btn btn-primary font-weight-600">{{ _('View') }}</a>
|
||||
{% if child.author.lower() == 'tor project' %}
|
||||
<a href="{{ child|url }}" title="{{ child.title }}" class="btn btn-outline-primary font-weight-600">{{ _("Trainer's guide") }}</a>
|
||||
{% endif %}
|
||||
<span class="flex-grow-1"></span> {# spacer so the updated date appears at the end #}
|
||||
<span class="text-muted font-weight-600 font-size-18-px">{{ _('Updated: {}').format('<u>' + child.date + '</u>')|safe }}</span>
|
||||
<span class="text-muted font-weight-600 font-size-18-px">{{ _('Updated: {}').format(child.date) }}</span>
|
||||
</div>
|
||||
<span class="text-primary font-weight-600 my-2 font-size-18-px">{{ _('By {}').format(child.author) }}</span>
|
||||
<span class="m-0 font-size-18-px p-0 flex-grow-1">{{ child.description }}</span>
|
||||
|
77
templates/resource-detail.html
Normal file
77
templates/resource-detail.html
Normal file
@ -0,0 +1,77 @@
|
||||
{% set sidenav_items = this.parent.parent.children %}
|
||||
<div class="row pt-5">
|
||||
{% include 'sidenav.html' %}
|
||||
<div class="col-sm-12 col-xs-12 ml-sm-auto col-md-9 col-lg-9 {{ bag('alternatives', this.alt, 'order') }}">
|
||||
<div>
|
||||
<img src="{{ this.cover | url }}" class="image-thumb-200px mb-5" alt="{{ this.title }}">
|
||||
<h1 class="mb-5">{{ this.title }}</h1>
|
||||
<div>
|
||||
<table class="resource-table mb-5">
|
||||
<tr>
|
||||
<td>
|
||||
<span class="text-muted h5 font-weight-600">{{ _('Maintained by') }}</span>
|
||||
</td>
|
||||
<td>
|
||||
<span class="h5 font-weight-600">{{ this.author }}</span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<span class="text-muted h5 font-weight-600">{{ _('Last updated') }}</span>
|
||||
</td>
|
||||
<td>
|
||||
<span class="h5 font-weight-600">{{ this.date }}</span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<span class="text-muted h5 font-weight-600">{{ _('Estimated time') }}</span>
|
||||
</td>
|
||||
<td>
|
||||
<span class="h5 font-weight-600">{{ this.estimated_time or 'FIXME: NO TIME ESTIMATE' }}</span>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<p class="mb-5">{{ this.description }}</p>
|
||||
{% if this.objectives %}
|
||||
<div class="mb-5">
|
||||
<h4>{{ _('Objectives') }}</h4>
|
||||
<ul>
|
||||
{% for objective in this.objectives %}
|
||||
<li>{{ objective }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% if this.external_sources %}
|
||||
<div class="mb-5">
|
||||
<h4>{{ _('External reading sources') }}</h4>
|
||||
<ul>
|
||||
{% for external_source in this.external_sources %}
|
||||
<li>{{ external_source }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
{% endif %}
|
||||
<h4 class="mb-5">{{ _('Download sample slides') }}</h4>
|
||||
{% if this.topics %}
|
||||
<div class="mb-5">
|
||||
<h4>{{ _('Topics') }}</h4>
|
||||
<p>
|
||||
{% for topic in this.topics %}
|
||||
<span>{{ topic }}</span>
|
||||
{%- if loop.index != this.topics|length -%}
|
||||
{{ ', ' }}
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
</p>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="d-flex my-4">
|
||||
</div>
|
||||
<hr class="mb-5 mt-0">
|
||||
<h2 class="text-primary">{{ _('Join the Conversation') }}</h2>
|
||||
</div>
|
||||
</div>
|
@ -1 +1,5 @@
|
||||
{{ this.name }}
|
||||
{#- resource pages are intended to be trainer guides, but we only want trainer guides for resoureces written by Tor Project -#}
|
||||
{#- empty pages are generated for non-Tor Project resources, and should be removed after the build -#}
|
||||
{%- if this.author.lower().strip() == 'tor project' -%}
|
||||
{% extends 'layout.html' %}
|
||||
{%- endif -%}
|
||||
|
@ -1,3 +1,4 @@
|
||||
{% set sidenav_items = sidenav_items or this.parent.children %}
|
||||
<div class="container-fluid sidebar col-xs-12 col-sm-12 col-md-3 col-lg-3">
|
||||
<nav class="smalltopics no-background navbar navbar-expand-lg navbar-light bg-white p-0 fixed">
|
||||
<label class="side-toggler" for="menu-toggle">
|
||||
@ -9,7 +10,7 @@
|
||||
|
||||
<div class="collapse navbar-collapse burger-menu" id="navbarSupportedTopicsContent">
|
||||
<ul class="nav nav-pills flex-column">
|
||||
{% for child in this.parent.children %}
|
||||
{% for child in sidenav_items %}
|
||||
<li{% if this.is_child_of(child.path) %} class="toc-entry toc-h2 active nav-item" {% else %} class="toc-entry toc-h2 nav-item" {% endif %}>
|
||||
<a role="button" {% if this.is_child_of(child.path) %} class="nav-link active" {% else %} class="nav-link" {% endif %}
|
||||
href="{{ child.path|url(alt=this.alt) }}">{{ _(child.title) }}</a>
|
||||
@ -22,7 +23,7 @@
|
||||
|
||||
<nav class="d-none d-sm-block bg-white border-right sidetopics" id="sidenav-topics" style="top:172px;">
|
||||
<ul class="nav nav-pills flex-column">
|
||||
{% for child in this.parent.children|sort(attribute='key') %}
|
||||
{% for child in sidenav_items|sort(attribute='key') %}
|
||||
<li{% if this.is_child_of(child.path) %} class="toc-entry toc-h2 active nav-item" {% else %} class="toc-entry toc-h2 nav-item" {% endif %}>
|
||||
<a role="button" {% if this.is_child_of(child.path) %} class="nav-link active" {% else %} class="nav-link" {% endif %}
|
||||
href="{{ child.path|url(alt=this.alt) }}">{{ _(child.title) }}</a>
|
||||
|
Loading…
Reference in New Issue
Block a user