2023-07-05 18:39:33 +03:00
|
|
|
<!--
|
|
|
|
Copyright (c) 2016-2023 Martin Donath <martin.donath@squidfunk.com>
|
|
|
|
|
|
|
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
|
|
of this software and associated documentation files (the "Software"), to
|
|
|
|
deal in the Software without restriction, including without limitation the
|
|
|
|
rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
|
|
|
sell copies of the Software, and to permit persons to whom the Software is
|
|
|
|
furnished to do so, subject to the following conditions:
|
|
|
|
|
|
|
|
The above copyright notice and this permission notice shall be included in
|
|
|
|
all copies or substantial portions of the Software.
|
|
|
|
|
|
|
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
|
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
|
|
FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE
|
|
|
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
|
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
|
|
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
|
|
|
IN THE SOFTWARE.
|
|
|
|
-->
|
|
|
|
|
|
|
|
{% extends "main.html" %}
|
|
|
|
|
|
|
|
{% import "partials/nav-item.html" as item with context %}
|
|
|
|
|
|
|
|
<!-- Page content -->
|
|
|
|
{% block container %}
|
|
|
|
<div class="md-content md-content--post" data-md-component="content">
|
|
|
|
|
|
|
|
<!-- Sidebar -->
|
|
|
|
<div
|
|
|
|
class="md-sidebar md-sidebar--post"
|
|
|
|
data-md-component="sidebar"
|
|
|
|
data-md-type="navigation"
|
|
|
|
>
|
|
|
|
<div class="md-sidebar__scrollwrap">
|
|
|
|
<div class="md-sidebar__inner md-post">
|
|
|
|
<nav class="md-nav">
|
|
|
|
|
|
|
|
<!-- Back to overview link -->
|
|
|
|
<div class="md-post__back">
|
|
|
|
<div class="md-nav__title md-nav__container">
|
|
|
|
<a href="{{ page.parent.url | url }}" class=" md-nav__link">
|
|
|
|
{% include ".icons/material/arrow-left.svg" %}
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
{{ lang.t("blog.index") }}
|
|
|
|
</span>
|
|
|
|
</a>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<!-- Page authors -->
|
|
|
|
{% if page.authors %}
|
|
|
|
<div class="md-post__authors md-typeset">
|
|
|
|
{% for author in page.authors %}
|
|
|
|
<div class="md-profile md-post__profile">
|
|
|
|
<span class="md-author md-author--long">
|
|
|
|
<img src="{{ author.avatar }}" alt="{{ author.name }}" />
|
|
|
|
</span>
|
|
|
|
<span class="md-profile__description">
|
|
|
|
<strong>{{ author.name }}</strong><br />
|
|
|
|
{{ author.description }}
|
|
|
|
</span>
|
|
|
|
</div>
|
|
|
|
{% endfor %}
|
|
|
|
</div>
|
|
|
|
{% endif %}
|
|
|
|
|
|
|
|
<!-- Page metadata -->
|
|
|
|
<ul class="md-post__meta md-nav__list">
|
|
|
|
<li class="md-nav__item md-nav__title">
|
|
|
|
<div class="md-nav__link">
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
{{ lang.t("blog.meta") }}
|
|
|
|
</span>
|
|
|
|
</div>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
<!-- Page date -->
|
|
|
|
<li class="md-nav__item">
|
|
|
|
<div class="md-nav__link">
|
|
|
|
{% include ".icons/material/calendar.svg" %}
|
|
|
|
<time datetime="{{ page.meta.date }}" class="md-ellipsis">
|
|
|
|
{{- page.meta.date_format -}}
|
|
|
|
</time>
|
|
|
|
</div>
|
|
|
|
</li>
|
|
|
|
|
2023-08-01 20:10:11 +03:00
|
|
|
<!-- Page date updated -->
|
|
|
|
{% if page.meta.date_updated %}
|
|
|
|
<li class="md-nav__item">
|
|
|
|
<div class="md-nav__link">
|
|
|
|
{% include ".icons/material/calendar-clock.svg" %}
|
|
|
|
<time datetime="{{ page.meta.date_updated }}" class="md-ellipsis">
|
|
|
|
{{- page.meta.date_updated_format -}}
|
|
|
|
</time>
|
|
|
|
</div>
|
|
|
|
</li>
|
|
|
|
{% endif %}
|
|
|
|
|
2023-07-05 18:39:33 +03:00
|
|
|
<!-- Page categories -->
|
|
|
|
{% if page.categories %}
|
|
|
|
<li class="md-nav__item">
|
|
|
|
<div class="md-nav__link">
|
|
|
|
{% include ".icons/material/bookshelf.svg" %}
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
{{ lang.t("blog.categories.in") }}
|
|
|
|
{% for category in page.categories %}
|
|
|
|
<a href="{{ category.url | url }}">
|
|
|
|
{{- category.title -}}
|
|
|
|
</a>
|
|
|
|
{%- if loop.revindex > 1 %}, {% endif -%}
|
|
|
|
{% endfor -%}
|
|
|
|
</span>
|
|
|
|
</div>
|
|
|
|
</li>
|
|
|
|
{% endif %}
|
|
|
|
|
|
|
|
<!-- Page readtime -->
|
|
|
|
{% if page.meta.readtime %}
|
|
|
|
{% set time = page.meta.readtime %}
|
|
|
|
<li class="md-nav__item">
|
|
|
|
<div class="md-nav__link">
|
|
|
|
{% include ".icons/material/clock-outline.svg" %}
|
|
|
|
<span class="md-ellipsis">
|
|
|
|
{% if time == 1 %}
|
|
|
|
{{ lang.t("readtime.one") }}
|
|
|
|
{% else %}
|
|
|
|
{{ lang.t("readtime.other") | replace("#", time) }}
|
|
|
|
{% endif %}
|
|
|
|
</span>
|
|
|
|
</div>
|
|
|
|
</li>
|
|
|
|
{% endif %}
|
|
|
|
</ul>
|
|
|
|
</nav>
|
|
|
|
|
|
|
|
<!-- Table of contents, if integrated -->
|
|
|
|
{% if "toc.integrate" in features %}
|
|
|
|
{% include "partials/toc.html" %}
|
|
|
|
{% endif %}
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<!-- Page content -->
|
|
|
|
<article class="md-content__inner md-typeset">
|
|
|
|
{% block content %}
|
|
|
|
{% include "partials/content.html" %}
|
|
|
|
{% endblock %}
|
|
|
|
</article>
|
|
|
|
</div>
|
|
|
|
{% endblock %}
|