view default/base/base.html @ 70:90a303a14112

base: use <main> for main area, for better semantic.
author Goffi <goffi@goffi.org>
date Mon, 04 Dec 2017 00:46:43 +0100
parents 9834106678da
children 9471c7309ecc
line wrap: on
line source

{% set embedded = True %} {# embedded is set to avoid including base.html several times if a generic page is included (e.g. blog/articles.html) #}
{% import 'components/common.html' as component with context %}
{{ script.include('css') }} {# css.js is a common script, so it's useful to import it here #}
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />

    {% if norobots %}
        <meta name="robots" content="noindex, nofollow">
    {% endif %}

    <title>{% block title %}{{C.APP_NAME}}{% endblock %}</title>

    {% if css_content is defined %}
        <style type="text/css">
            {{css_content}}
        </style>
    {% else %}
        {% for css_file in css_files %}
            <link rel='stylesheet' type="text/css" href='{{root_path}}{{css_file}}'>
        {% endfor %}
    {% endif %}

    {% if background_image is defined %}
        {# Q&D workaround to implement dynamic background-image
           it should be replaced by a better mechanism in the future, avoid using it #}
        <style type="text/css">
            html {
                background-image: url('{{background_image}}');
                background-size: 15em;
            }
        </style>
    {% endif %}

    {{ script.generate_scripts() }}
</head>
<body>
    {% if main_menu is defined %}
        {% block main_menu %}
            {{ component.menu(main_menu, class="main_menu") }}
        {% endblock main_menu %}
    {% endif %}

    <main id='main_area'>
        <header>
            {% if confirm %}
            {# confirmation message used when post data has been handled correctly #}
                {% block confirm %}
                    <div class="box post_confirm">
                        {% block confirm_message %}
                            {% trans %}Your data has been sent correctly.{% endtrans %}
                        {% endblock confirm_message %}
                    </div>
                {% endblock confirm %}
            {% endif %}

        </header>

        <div id="body">
        {% block category_menu scoped %}
            {% if category_menu is defined %}
                {{ component.menu(category_menu, class="category_menu") }}
            {% endif %}
        {% endblock category_menu %}
        {% block body %}
        {% endblock body %}
        </div>
        <footer>{% block footer %}{% trans app_name=C.APP_NAME %}Powered by {{app_name}}{% endtrans %}{% endblock %}</footer>
    </main>
</body>
</html>