<!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>