aboutsummaryrefslogblamecommitdiff
path: root/templates/base.html
blob: 1e44aa7bea6585dc03dcb9392b13581496dc08e6 (plain) (tree)
1
2
3
4
5
6





                                    





























































                                                                                                                      


                                   































                                                                                                                                                                    
              



                                         
          





























































































                                                                                                                                                                                                                                                                                         

       
      
{% 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 w-full" role="navigation">
        <div class="w-full flex flex-col space-y-2 md:space-y-0 md:flex-row 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" 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 justify-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 %}
                    <button type="button" class="focus:bg-white hover:bg-white hover:shadow px-4 py-2 rounded-lg" id="nav-search" title="Search">
                        <span class="icon">
                            <i class="fas fa-search"></i>
                        </span>
                    </button>
                </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>