174 lines
8.7 KiB
HTML
174 lines
8.7 KiB
HTML
|
{% import 'macros.html' as macros %}
|
||
|
|
||
|
<!DOCTYPE html>
|
||
|
<html lang="{{lang}}">
|
||
|
|
||
|
<head>
|
||
|
<meta charset="utf-8" />
|
||
|
<meta content="width=device-width, initial-scale=1" name="viewport" />
|
||
|
<meta content="#ffffff" name="theme-color" />
|
||
|
<meta content="#da532c" name="msapplication-TileColor" />
|
||
|
|
||
|
{% if config.extra.favicon.webmanifest %}
|
||
|
<link href='{{ config.extra.favicon.webmanifest }}' rel="manifest" />
|
||
|
{% endif %}
|
||
|
{% if config.extra.favicon.safari_pinned_tab %}
|
||
|
<link color="#5bbad5" href='{{ config.extra.favicon.safari_pinned_tab }}' rel="mask-icon" />
|
||
|
{% endif %}
|
||
|
{% if config.extra.favicon.favicon_16x16 %}
|
||
|
<link href='{{ config.extra.favicon.favicon_16x16 }}' rel="icon" sizes="16x16" type="image/png" />
|
||
|
{% endif %}
|
||
|
{% if config.extra.favicon.favicon_32x32 %}
|
||
|
<link href='{{ config.extra.favicon.favicon_32x32 }}' rel="icon" sizes="32x32" type="image/png" />
|
||
|
{% endif %}
|
||
|
{% if config.extra.favicon.apple_touch_icon %}
|
||
|
<link href='{{ config.extra.favicon.apple_touch_icon }}' rel="apple-touch-icon" sizes="180x180" />
|
||
|
{% endif %}
|
||
|
|
||
|
{% if config.extra.galleria.enabled %}
|
||
|
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/galleria@1.6.1/dist/themes/folio/galleria.folio.min.css" integrity="sha384-+rY0QD+LRnTOquDMzGa9lXU6jIwdiQuwCJQ2cdcW0qeP/0UbjQCZlXnRsUMA+9pH" crossorigin="anonymous">
|
||
|
{% endif %}
|
||
|
|
||
|
{% if config.extra.mapbox.enabled %}
|
||
|
<link rel="stylesheet" href="https://api.mapbox.com/mapbox-gl-js/v2.6.1/mapbox-gl.css" integrity="sha384-oGm59HWAkwO32h2w8u0B98wKBZJwd6MbWtAJwQKCTffZjOXHXrnyv9Syjovgc+UV" crossorigin="anonymous">
|
||
|
{% endif %}
|
||
|
|
||
|
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/jpswalsh/academicons@1.9.1/css/academicons.min.css" integrity="sha384-FIue+PI4SsI9XfHCz8dBLg33b0c1fMJgNU3X//L26FYbGnlSEfWmNT7zgWc2N9b6" crossorigin="anonymous">
|
||
|
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5.15.4/css/all.min.css" integrity="sha384-DyZ88mC6Up2uqS4h/KRgHuoeGwBcD4Ng9SiP4dIRy0EXTlnuz47vAwmeGwVChigm" crossorigin="anonymous">
|
||
|
<link href="{{ get_url(path='style.css') }}" rel="stylesheet" />
|
||
|
|
||
|
{% block user_custom_stylesheet %}
|
||
|
{% endblock %}
|
||
|
|
||
|
<title>
|
||
|
{% block title %}
|
||
|
{{ config.title }}
|
||
|
{% endblock title %}
|
||
|
</title>
|
||
|
|
||
|
{% if config.extra.katex.enabled %}
|
||
|
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.15.1/dist/katex.min.css" integrity="sha384-R4558gYOUz8mP9YWpZJjofhk+zx0AS11p36HnD2ZKj/6JR5z27gSSULCNHIRReVs" crossorigin="anonymous">
|
||
|
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.15.1/dist/katex.min.js" integrity="sha384-z1fJDqw8ZApjGO3/unPWUPsIymfsJmyrDVWC8Tv/a1HeOtGmkwNd/7xUS0Xcnvsx" crossorigin="anonymous"></script>
|
||
|
|
||
|
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.15.1/dist/contrib/mathtex-script-type.min.js" integrity="sha384-jiBVvJ8NGGj5n7kJaiWwWp9AjC+Yh8rhZY3GtAX8yU28azcLgoRo4oukO87g7zDT" crossorigin="anonymous"></script>
|
||
|
{% if config.extra.katex.auto_render %}
|
||
|
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.15.1/dist/contrib/auto-render.min.js" integrity="sha384-+XBljXPPiv+OzfbB3cVmLHf4hdUFHlWNZN5spNQ7rmHTXpd7WvJum6fIACpNNfIR" crossorigin="anonymous"></script>
|
||
|
{% endif %}
|
||
|
{% endif %}
|
||
|
</head>
|
||
|
|
||
|
<body class="has-background-white">
|
||
|
<nav aria-label="section navigation" class="navbar is-light" role="navigation">
|
||
|
<div class="flex items-center justify-between py-1 px-8 text-garage-gray bg-garage-orange bg-opacity-20">
|
||
|
<div class="navbar-brand">
|
||
|
<a class="hover:rounded-full hover:bg-white" href="{{config.base_url}}">
|
||
|
<img class="transform duration-150 focus:bg-white hover:bg-white hover:shadow rounded-lg hover:scale-90" src="{{ config.extra.organization.logo }}" width="65px">
|
||
|
</a>
|
||
|
<a aria-expanded="false" aria-label="menu" class="navbar-burger burger" data-target="navMenu" role="button">
|
||
|
<span aria-hidden="true"></span>
|
||
|
<span aria-hidden="true"></span>
|
||
|
<span aria-hidden="true"></span>
|
||
|
</a>
|
||
|
</div>
|
||
|
<div class="navbar-menu" id="navMenu">
|
||
|
<div class="flex items-center">
|
||
|
{% for item in config.extra.navbar_items %}
|
||
|
{% if lang == item.code %}
|
||
|
{% for nav in item.nav_items %}
|
||
|
<a class="font-semibold focus:bg-white hover:bg-white hover:shadow px-4 py-2 rounded-lg" href="{{ nav.url | replace(from='$BASE_URL', to=config.base_url) }}">
|
||
|
{{ nav.name }}
|
||
|
</a>
|
||
|
{% endfor %}
|
||
|
{% endif %}
|
||
|
{% endfor %}
|
||
|
<div class="flex space-x-4 ml-6">
|
||
|
<a class="navbar-item" id="nav-search" title="Search" data-target="#search-modal">
|
||
|
<span class="icon">
|
||
|
<i class="fas fa-search"></i>
|
||
|
</span>
|
||
|
</a>
|
||
|
</div>
|
||
|
</div>
|
||
|
</div>
|
||
|
</div>
|
||
|
</nav>
|
||
|
|
||
|
<div>
|
||
|
{% block content %}{% endblock %}
|
||
|
</div>
|
||
|
|
||
|
|
||
|
{% block pagination %}
|
||
|
{% if paginator.previous or paginator.next %}
|
||
|
<section class="section">
|
||
|
<div class="container max-w-5xl mx-auto flex items-center justify-center">
|
||
|
<nav class="pagination flex items-center my-12 text-garage-gray" role="navigation" aria-label="pagination">
|
||
|
{% if paginator.previous %}
|
||
|
<a class="flex items-center justify-center space-x-2 hover:text-garage-orange" href='{{ paginator.previous }}' {% if not paginator.previous %}disabled{% endif %}>
|
||
|
<svg class="w-6 h-6" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M7 16l-4-4m0 0l4-4m-4 4h18"></path></svg>
|
||
|
<span>Prev</span>
|
||
|
</a>
|
||
|
{% endif %}
|
||
|
<ul class="flex space-x-4 px-4">
|
||
|
{% for pager in range(start=1, end=paginator.number_pagers+1) %}
|
||
|
<li>
|
||
|
<a class="font-semibold inline-flex items-center justify-center h-7 w-7 rounded hover:shadow hover:bg-garage-orange bg-garage-gray bg-opacity-20 border-b-2 {% if paginator.current_index == pager %}border-garage-orange{% else %}border-transparent{% endif %}" href='{{ paginator.base_url }}{{pager}}' aria-label="Goto page {{pager}}">
|
||
|
{{pager}}
|
||
|
</a>
|
||
|
</li>
|
||
|
{% endfor %}
|
||
|
</ul>
|
||
|
{% if paginator.next %}
|
||
|
<a class="flex items-center justify-center space-x-2 hover:text-garage-orange" href='{{ paginator.next }}' {% if not paginator.next %}disabled{% endif %}>
|
||
|
<span>Next</span>
|
||
|
<svg class="mt-0.5 w-6 h-6" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M17 8l4 4m0 0l-4 4m4-4H3"></path></svg>
|
||
|
</a>
|
||
|
{% endif %}
|
||
|
</nav>
|
||
|
</div>
|
||
|
</section>
|
||
|
{% endif %}
|
||
|
{% endblock %}
|
||
|
|
||
|
{% block comment %}
|
||
|
{% endblock %}
|
||
|
|
||
|
<footer class="py-4 bg-garage-orange bg-opacity-20">
|
||
|
<div class="content has-text-centered flex flex-col items-center justify-center">
|
||
|
<p>
|
||
|
{{ macros:: social_links( social_config=config.extra.social) }}
|
||
|
</p>
|
||
|
<p class="text-gray-600 py-2">
|
||
|
Powered by <a href="https://www.getzola.org" target="_blank" class="font-semibold hover:text-garage-orange">Zola</a>
|
||
|
</p>
|
||
|
</div>
|
||
|
</footer>
|
||
|
|
||
|
{% if config.extra.galleria.enabled %}
|
||
|
<script src="https://cdn.jsdelivr.net/npm/jquery@3.6.0/dist/jquery.min.js" integrity="sha384-vtXRMe3mGCbOeY7l30aIg8H9p3GdeSe4IFlP6G8JMa7o7lXvnz3GFKzPxzJdPfGK" crossorigin="anonymous"></script>
|
||
|
<script src="https://cdn.jsdelivr.net/npm/galleria@1.6.1/dist/galleria.min.js" integrity="sha384-QSfwGT8/EU536DKdtyP2D6SLlh8zBaZ0cVkwfrwhqzIU9VCfJT00CLVP5t+HAiYg" crossorigin="anonymous"></script>
|
||
|
<script src="https://cdn.jsdelivr.net/npm/galleria@1.6.1/dist/themes/folio/galleria.folio.min.js" integrity="sha384-DwpKI+deZB267+hPKwiOIc5Y2GKsVL0mR6hgz7GgIu7AgAMYqJwcJKY1YBNfhWcY" crossorigin="anonymous"></script>
|
||
|
{% endif %}
|
||
|
{% if config.extra.mermaid.enabled %}
|
||
|
<script src="https://cdn.jsdelivr.net/npm/mermaid@8.13.5/dist/mermaid.min.js" integrity="sha384-0yWn54pSGtfKCU+skfA69l25VsCw+MZt4LQov3xNRoS7YkAMrFokGgSBnAWSK4pv" crossorigin="anonymous"></script>
|
||
|
{% endif %}
|
||
|
{% if config.extra.chart.enabled %}
|
||
|
<script src="https://cdn.jsdelivr.net/npm/chart.xkcd@1.1.13/dist/chart.xkcd.min.js" integrity="sha384-xC3h1+IHXK8seA+8KfT79Z4e0GPsznjXBoMa5nd8ooWKplPyXx92NOmljWxLC/cs" crossorigin="anonymous"></script>
|
||
|
{% endif %}
|
||
|
<script src="{{ get_url(path='elasticlunr.min.js') }}"></script>
|
||
|
<script src="{{ get_url(path='search_index.' ~ lang ~ '.js') }}"></script>
|
||
|
{%- if lang != "en" -%}
|
||
|
{%- block other_lang_search_js -%}
|
||
|
{%- endblock -%}
|
||
|
{%- endif -%}
|
||
|
<script src="{{ get_url(path='js/site.js') }}"></script>
|
||
|
|
||
|
{% block custom_js %}
|
||
|
{% endblock %}
|
||
|
|
||
|
{% block user_custom_js %}
|
||
|
{% endblock %}
|
||
|
</body>
|
||
|
|
||
|
</html>
|