Previous version made GPDR-friendly

This commit is contained in:
2025-08-18 16:06:37 +02:00
commit fa64b62d5a
357 changed files with 10137 additions and 0 deletions

View File

@@ -0,0 +1,63 @@
<!DOCTYPE html>
<html lang="en" class="no-js">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="google-site-verification" content="-haql21y-2aWWdYUVglG0kBA4yjCcyG6y8mAzTrZ-Eg" />
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<link rel="icon" href="{{ site.faviconPath }}" type="image/png" />
{% include "partials/global/meta-info.njk" %}
<script>document.documentElement.classList.remove('no-js');</script>
<link rel = "stylesheet" href="/vendor/css/leaflet.css"/>
<link rel = "stylesheet" href="/vendor/css/bootstrap.min.css"/>
<style>{% include "assets/css/global.css" %}</style>
{% block head %}
{% endblock %}
</head>
<body>
{% include "partials/global/site-head.njk" %}
{% block content %}
{% endblock content %}
{% include "partials/global/site-foot.njk" %}
{% block foot %}
{% endblock %}
<script type="text/javascript" src="/js/components/menu-toggle.js" async defer></script>
<script type="text/javascript" src="/js/components/search.js" async defer></script>
<script type="text/javascript" src="/vendor/js/bootstrap.min.js" async defer></script>
<script>
if ('serviceWorker' in navigator) {
window.addEventListener('load', () => {
navigator.serviceWorker.register('/service-worker.js');
});
}
</script>
<script>
var $buoop = {required:{e:-4,f:-3,o:-3,s:-1,c:-3},insecure:true,api:2021.04 };
function $buo_f(){
var e = document.createElement("script");
e.src = "//browser-update.org/update.min.js";
document.body.appendChild(e);
};
try {document.addEventListener("DOMContentLoaded", $buo_f,false)}
catch(e){window.attachEvent("onload", $buo_f)}
</script>
<!-- Matomo -->
<script>
var _paq = window._paq = window._paq || [];
/* tracker methods like "setCustomDimension" should be called before "trackPageView" */
_paq.push(["setDoNotTrack", true]);
_paq.push(["disableCookies"]);
_paq.push(['trackPageView']);
_paq.push(['enableLinkTracking']);
(function() {
var u="https://analytics.astrolabe.coop/";
_paq.push(['setTrackerUrl', u+'matomo.php']);
_paq.push(['setSiteId', '1']);
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
})();
</script>
<noscript><p><img src="https://analytics.astrolabe.coop/matomo.php?idsite=1&amp;rec=1" style="border:0;" alt="" /></p></noscript>
<!-- End Matomo Code -->
</body>
</html>

View File

@@ -0,0 +1,11 @@
{% extends 'layouts/base.njk' %}
{% block content %}
<main id="main-content" tabindex="-1">
{% include "partials/components/meeting.njk" %}
{% include "partials/components/faq.njk" %}
{% include "partials/components/contact-form.njk" %}
</main>
{% endblock %}
{{ content | safe }}

View File

@@ -0,0 +1,19 @@
{% extends 'layouts/base.njk' %}
{# Set lists content #}
{% set newsListHeading = newsHeading %}
{% set newsListItems = collections.newsFeed %}
{% set customersListItems = collections.customers %}
{% set partnersListItems = collections.partners %}
{% block content %}
<main id="main-content" class="home" tabindex="-1">
{% include "partials/components/intro.njk" %}
{% include "partials/components/meeting.njk" %}
{% include "partials/components/posts-list-home.njk" %}
{% include "partials/components/presentation.njk" %}
{% include "partials/components/customers.njk" %}
{% include "partials/components/contact-form.njk" %}
{% include "partials/components/partners.njk" %}
</main>
{% endblock %}

View File

@@ -0,0 +1,70 @@
{% extends 'layouts/base.njk' %}
{% set title = name %}
{% block content %}
<main id="main-content" tabindex="-1">
<section class="[ wrapper member ]">
<article>
<h1>{{ name }}</h1>
<p class="position">{{ position }}</p>
{% if positionInternal %}
<p>{{ positionInternal }}</p>
{% endif %}
<div class="[ member__wrapper ]">
<div class="member__info">
<img src="{{ profile }}" alt="photo de {{ name }}">
{% if personalSite %}
<p class="member-url">
<strong>site web :</strong>
<a href="{{ personalSite }}">{{ personalSite }}</a>
</p>
{% endif %}
<ul class="social-links">
<li><a href="{{ [url , "/contact/"] | join | url }}" title="Écrire à {{ name }}" class="member-contact-at"><span>@</span></a></li>
{% if socialMastodon %}
<li><a href="{{ socialMastodon }}" title="mastodon"><svg width="24" height="24" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M16.956 18.293c3.007-.36 5.625-2.212 5.954-3.905.519-2.667.476-6.508.476-6.508 0-5.207-3.411-6.733-3.411-6.733C18.255.357 15.302.025 12.233 0h-.075c-3.068.025-6.02.357-7.74 1.147 0 0-3.41 1.526-3.41 6.733 0 .315-.003.647-.004.993-.005.96-.01 2.024.018 3.136.123 5.091.933 10.11 5.64 11.355 2.171.575 4.035.695 5.535.613 2.722-.151 4.25-.972 4.25-.972l-.09-1.974s-1.945.613-4.13.538c-2.163-.074-4.448-.233-4.798-2.89a5.448 5.448 0 01-.048-.745s2.124.519 4.816.642c1.647.076 3.19-.096 4.759-.283zm2.406-3.705V8.283c0-1.288-.328-2.312-.987-3.07-.68-.757-1.57-1.145-2.674-1.145-1.278 0-2.246.491-2.885 1.474l-.623 1.043-.622-1.043c-.64-.983-1.608-1.474-2.886-1.474-1.104 0-1.994.388-2.674 1.146-.659.757-.987 1.781-.987 3.07v6.303h2.498V8.47c0-1.29.543-1.945 1.628-1.945 1.2 0 1.802.777 1.802 2.312v3.35h2.483v-3.35c0-1.535.601-2.312 1.801-2.312 1.086 0 1.629.655 1.629 1.945v6.119h2.497z"/></svg></a></li>
{% endif %}
{% if socialTwitter %}
<li><a href="{{ socialTwitter }}" title="twitter"><svg width="24" height="24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M24 4.309a9.83 9.83 0 01-2.828.775 4.932 4.932 0 002.165-2.724 9.864 9.864 0 01-3.127 1.195A4.916 4.916 0 0016.616 2c-3.179 0-5.515 2.966-4.797 6.045A13.978 13.978 0 011.671 2.901a4.93 4.93 0 001.523 6.574 4.903 4.903 0 01-2.229-.616c-.054 2.281 1.581 4.415 3.949 4.89a4.935 4.935 0 01-2.224.084 4.928 4.928 0 004.6 3.419A9.9 9.9 0 010 19.292a13.94 13.94 0 007.548 2.212c9.142 0 14.307-7.721 13.995-14.646A10.025 10.025 0 0024 4.309z"/></svg></a></li>
{% endif %}
{% if socialLinkedin %}
<li><a href="{{ socialLinkedin }}" title="linkedin"><svg width="24" height="24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M4.98 2.5A2.49 2.49 0 012.5 5 2.49 2.49 0 01.02 2.5C.02 1.12 1.13 0 2.5 0a2.49 2.49 0 012.48 2.5zM5 7H0v16h5V7zm7.982 0H8.014v16h4.969v-8.399c0-4.67 6.029-5.052 6.029 0V23H24V12.869c0-7.88-8.922-7.593-11.018-3.714V7z"/></svg></a></li>
{% endif %}
{% if socialGithub %}
<li><a href="{{ socialGithub }}" title="github"><svg width="24" height="24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 0C5.374 0 0 5.373 0 12c0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23A11.509 11.509 0 0 1 12 5.803c1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v3.293c0 .319.192.694.801.576C20.566 21.797 24 17.3 24 12c0-6.627-5.373-12-12-12Z"/></svg></a></li>
{% endif %}
{% if socialInstagram %}
<li><a href="{{ socialInstagram }}" title="instagram"><svg width="29" height="29" fill="none" viewBox="0 0 29 29" xmlns="http://www.w3.org/2000/svg"><path d="M 9.9980469 3 C 6.1390469 3 3 6.1419531 3 10.001953 L 3 20.001953 C 3 23.860953 6.1419531 27 10.001953 27 L 20.001953 27 C 23.860953 27 27 23.858047 27 19.998047 L 27 9.9980469 C 27 6.1390469 23.858047 3 19.998047 3 L 9.9980469 3 z M 22 7 C 22.552 7 23 7.448 23 8 C 23 8.552 22.552 9 22 9 C 21.448 9 21 8.552 21 8 C 21 7.448 21.448 7 22 7 z M 15 9 C 18.309 9 21 11.691 21 15 C 21 18.309 18.309 21 15 21 C 11.691 21 9 18.309 9 15 C 9 11.691 11.691 9 15 9 z M 15 11 A 4 4 0 0 0 11 15 A 4 4 0 0 0 15 19 A 4 4 0 0 0 19 15 A 4 4 0 0 0 15 11 z"></path></svg></a></li>
{% endif %}
{% if socialBehance %}
<li><a href="{{ socialBehance }}" title="behance"><svg width="29" height="29" fill="none" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M22 7h-7v-2h7v2zm1.726 10c-.442 1.297-2.029 3-5.101 3-3.074 0-5.564-1.729-5.564-5.675 0-3.91 2.325-5.92 5.466-5.92 3.082 0 4.964 1.782 5.375 4.426.078.506.109 1.188.095 2.14h-8.027c.13 3.211 3.483 3.312 4.588 2.029h3.168zm-7.686-4h4.965c-.105-1.547-1.136-2.219-2.477-2.219-1.466 0-2.277.768-2.488 2.219zm-9.574 6.988h-6.466v-14.967h6.953c5.476.081 5.58 5.444 2.72 6.906 3.461 1.26 3.577 8.061-3.207 8.061zm-3.466-8.988h3.584c2.508 0 2.906-3-.312-3h-3.272v3zm3.391 3h-3.391v3.016h3.341c3.055 0 2.868-3.016.05-3.016z"/></svg></a></li>
{% endif %}
</ul>
</div>
<div class="member__bio">
{{ content | safe }}
{% if tags %}
<h2 class="font-base weight-mid mt-5">Mots-clés</h2>
<ul class="tag-list mt-3">
{% for item in tags %}
<li class="tag-item">
<a href="/equipe/{{ item }}/">{{ item }}</a>
</li>
{% endfor %}
</ul>
{% endif %}
</div>
</div>
</article>
<a class="return-link" href="/equipe/">Voir tous les membres</a>
</section>
{% if emailSlug %}
{% set contactMember = emailSlug %}
{% elif url %}
{% set contactMember = url | replace("/members/","") | replace("-",".") %}
{% endif %}
{% set contactTitle = ["Écrire à ",name] | join %}
{% include "partials/components/contact-form.njk" %}
</main>
{% endblock %}

View File

@@ -0,0 +1,12 @@
{% extends 'layouts/base.njk' %}
{% block content %}
<main id="main-content" tabindex="-1">
<article class="[ post ]">
<div class="[ post__body ] [ wrapper ]">
{{ content | safe }}
</div>
</article>
{% include "partials/components/contact-form.njk" %}
</main>
{% endblock %}

View File

@@ -0,0 +1,20 @@
{% extends 'layouts/base.njk' %}
{% block content %}
<main id="main-content" tabindex="-1">
<article class="[ post wrapper ]">
<div class="[ post__body ]">
<h1>{{ title }}</h1>
<div class="post-info">
Publié le <strong>{{ date | dateFilter }}</strong>{%if author %} | {{ author }}{% endif %}
</div>
{% if illustration %}
<img class="post-pic" src="{{ illustration }}" alt="illustration de l'article">
{% endif %}
{{ content | safe }}
<a class="return-link" href="/posts/">Voir toute l'actualité</a>
</div>
</article>
{% include "partials/components/contact-form.njk" %}
</main>
{% endblock %}

View File

@@ -0,0 +1,26 @@
{% extends 'layouts/base.njk' %}
{% set newsListItems = collections.events %}
{% block content %}
<main id="main-content" class="posts" tabindex="-1">
<div class="[ wrapper ]">
<h1 class="[ member-list__heading ]">{{ pageHeading }}</h1>
<ul class="post-filter">
<li>
<a href="/posts/">Tout</a>
</li>
<li>
<a href="/posts-news/">Actualités</a>
</li>
<li class="active">
<a href="/posts-events/">Évènements</a>
</li>
</ul>
</div>
<section class="[ news-list wrapper ]">
{% include "partials/components/posts-list.njk" %}
</section>
{% include "partials/components/contact-form.njk" %}
</main>
{% endblock %}

View File

@@ -0,0 +1,26 @@
{% extends 'layouts/base.njk' %}
{% set newsListItems = collections.news %}
{% block content %}
<main id="main-content" class="posts" tabindex="-1">
<div class="[ wrapper ]">
<h1 class="[ member-list__heading ]">{{ pageHeading }}</h1>
<ul class="post-filter">
<li>
<a href="/posts/">Tout</a>
</li>
<li class="active">
<a href="/posts-news/">Actualités</a>
</li>
<li>
<a href="/posts-events/">Évènements</a>
</li>
</ul>
</div>
<section class="[ news-list wrapper ]">
{% include "partials/components/posts-list.njk" %}
</section>
{% include "partials/components/contact-form.njk" %}
</main>
{% endblock %}

View File

@@ -0,0 +1,27 @@
{% extends 'layouts/base.njk' %}
{% set newsListItems = collections.posts %}
{% block content %}
<main id="main-content" class="posts" tabindex="-1">
<div class="[ wrapper ]">
<h1 class="[ member-list__heading ]">{{ pageHeading }}</h1>
<ul class="post-filter">
<li class="active">
<a href="/posts/">Tout</a>
</li>
<li>
<a href="/posts-news/">Actualités</a>
</li>
<li>
<a href="/posts-events/">Évènements</a>
</li>
</ul>
</div>
<section class="[ news-list wrapper ]">
{% include "partials/components/posts-list.njk" %}
</section>
{% include "partials/components/contact-form.njk" %}
</main>
{% endblock %}

View File

@@ -0,0 +1,25 @@
{% extends 'layouts/base.njk' %}
{% set teamListItems = collections.members %}
{% block content %}
<main id="main-content" tabindex="-1">
<div class="[ wrapper ]">
<h1 class="[ member-list__heading ]">{{ teamListHeading }}</h1>
{{ content | safe }}
<div class="search-bar">
<label for="site-search">Rechercher par mots-clés :</label>
<input type="search" id="searchInput" name="q" aria-label="Filtrer par mots-clés" oninput="doSearch()" placeholder="dev, linux, ...">
</div>
<ul class="tag-list mt-3" id="tagList">
{% for skill in collections.skillsList %}
<li class="tag-item visually-hidden"><a href="/equipe/{{ skill }}/">{{ skill }}</a></li>
{% endfor %}
</ul>
</div>
{% include "partials/components/member-list.njk" %}
{% include "partials/components/map.njk" %}
{% include "partials/components/contact-form.njk" %}
</main>
{% endblock %}