<!DOCTYPE html>
<html lang="en">
<head>
    {% block meta %}
        {# This is far from perfect. The response headers should already come with this. #}
        {% if app.request.server.get('APP_ENV') not in ['test', 'dev'] %}
            <meta http-equiv="Content-Security-Policy" content="default-src https:">{% endif %}
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <link rel="home" href="/">
    {% endblock %}

    <title>
        {% block title %}{% endblock %}
    </title>

    {% block stylesheets %}
        <link rel='stylesheet' type='text/css' href="{{ asset('assets/default_theme/css/root.css') }}">
        <link rel='stylesheet' type='text/css' href="{{ asset('assets/default_theme/css/base.css') }}">

        {% for stylesheet in show_stylesheets(app.request.get('_route')) %}
            <link rel='preload' type='text/css' as='style' href="{{ preload(asset(stylesheet), { as: 'style' }) }}">
            <link rel='stylesheet' type='text/css' as='style' href="{{ asset(stylesheet) }}">
        {% endfor %}
    {% endblock %}

    {% for arr in handle_event('ShowHeadElements', app.request) %}
        {# Only one element, but has dynamic value, can't access it directly #}
        {% for type, element in arr %}
            <{{ type }} rel="{{ element['rel'] }}" type="{{ element['type'] }}" href="{{ element['href'] }}" title="{{ element['title'] }}">
        {% endfor %}
    {% endfor %}
</head>

<body>

<aside class="accessibility-menu">
    <h2 class="accessibility-menu-title" tabindex="0">{{ 'Accessibility menu.' | trans }}</h2>
    <p tabindex="0">{{ 'Here you can find fast shortcuts to various page regions!' | trans }}</p>
    <p tabindex="0">{{ 'Provided the following keyboard shortcut, the link is targeted.' | trans }}</p>
    <br>
    <p tabindex="0">{{ 'Be mindful that another ' | trans }}<kbd>Tab</kbd>{{ ' is needed in order to focus.' | trans }}
    </p>
    <p tabindex="0">
        {% if is_firefox() == true %}
            <em><kbd>Alt</kbd> + <kbd>Shift</kbd> + "access key"</em>
        {% else %}
            <em><kbd>Alt</kbd> + "access key"</em>
        {% endif %}
    </p>
    <br>

    <a id="anchor-accessibility-menu" accesskey="z" href="#anchor-accessibility-menu">
        <strong>{{ 'The keyboard key ' | trans }}<kbd>Z</kbd>{{ ' accesses this menu.' | trans }}</strong>
        <strong>{{ 'The other access keys are:' | trans }}</strong>
    </a>

    <nav>
        <ul>
            <li><a href="#anchor-left-panel" accesskey="h"><kbd>H</kbd>{{ ' for the Left panel.' | trans }}</a></li>
            <li><a href="#anchor-main-content" accesskey="k"><kbd>K</kbd>{{ ' for the main content.' | trans }}</a></li>
            <li><a href="#anchor-main-page" accesskey="j"><kbd>J</kbd>{{ ' for the main page.' | trans }}</a></li>
            <li><a href="#anchor-right-panel" accesskey="l"><kbd>L</kbd>{{ ' for the right panel.' | trans }}</a></li>
        </ul>
    </nav>
</aside>

{% block header %}
    {% set extra_header_forms = handle_event('AddExtraHeaderForms', request) %}

    <header class="page-header">
        {{ block("leftpanel", "stdgrid.html.twig") }}

        <a id="anchor-main-page" class="anchor-hidden"
           title="{{ 'Press tab to access instance\'s main page.' | trans }}"></a>
        <a class="accessibility-target header-instance" href="{{ path('main_public') }}" tabindex="0"
           title="{{ 'This instance\'s name. Access public feed.' | trans }}">
            <h1>{{ icon('logo', 'icon icon-logo') | raw }}{{ config('site', 'name') }}</h1>
        </a>

        <details class="header-extra-actions">
            <summary>
                {{ icon('kebab', 'icon icon-details-open') | raw }}
            </summary>
            <div class="header-extra-actions-open">
                {% for extra_form in extra_header_forms %}
                    {{ form(extra_form) }}
                {% endfor %}
            </div>
        </details>

        {{ block("rightpanel", "stdgrid.html.twig") }}
    </header>
{% endblock header %}

<div class="page-content-wrapper">
    <a role="navigation" rel="help" id="anchor-main-content" class="anchor-hidden"
       title="{{ 'Press tab to access main content.' | trans }}"></a>
    <div class='page-content accessibility-target'>
        {% block nav %}{% endblock %}
        {% block body %}{% endblock %}
        {% block javascripts %}{% endblock javascripts %}
    </div>
</div>
</body>
</html>