]> Raphaƫl G. Git Repositories - airbundle/blobdiff - Resources/views/body.html.twig
New page title schema
[airbundle] / Resources / views / body.html.twig
index fbfefbe12091d70eb3173f634982c8f22737bade..73aa6779d8d89a660503d1e35d128e5de28a43d0 100644 (file)
@@ -4,51 +4,90 @@
 {% endblock %}
 {% block stylesheets %}
        <meta name="viewport" content="width=device-width, initial-scale=1" />
-       <link rel="shortcut icon" type="image/x-icon" href="{{ asset(site_ico) }}" />
-       <link ref="icon" type="image/svg+xml" href="{{ asset(site_svg) }}" />
-       {% for size, icon in site_png %}
-               {# Apple #}
-               {% if size in [152, 167, 180] %}
-                       {% if size == 180 %}
-                               <link rel="apple-touch-icon" href="{{ asset(icon) }}" />
+       {% if page.description is defined and page.description %}
+               <meta name="description" content="{{ page.description }}" />
+       {% endif %}
+       {% if keywords is defined and keywords %}
+               <meta name="keywords" content="{{ keywords|join(', ') }}" />
+       {% endif %}
+       {% if site is defined and site %}
+               <link rel="shortcut icon" type="image/x-icon" href="{{ asset(site.ico) }}" />
+               <link rel="icon" type="image/svg+xml" href="{{ asset(site.svg) }}" />
+               {% for size, icon in site.png %}
+                       {# Apple #}
+                       {% if size in [120, 152, 167, 180] %}
+                               {% if size == 180 %}
+                                       <link rel="apple-touch-icon" href="{{ asset(icon) }}" />
+                               {% endif %}
+                               <link rel="apple-touch-icon" sizes="{{ size }}x{{ size }}" href="{{ asset(icon) }}" />
+                       {# Windows #}
+                       {% elseif size in [70, 150, 310] %}
+                               <meta name="msapplication-square{{ size }}x{{ size }}logo" content="{{ asset(icon) }}" />
+                       {# Others #}
+                       {% else %}
+                               <link rel="icon" type="image/png" sizes="{{ size }}x{{ size }}" href="{{ asset(icon) }}" />
                        {% endif %}
-                       <link rel="apple-touch-icon" sizes="{{ size }}x{{ size }}" href="{{ asset(icon) }}" />
-               {# Windows #}
-               {% elseif size in [70, 150, 310] %}
-                       <meta name="msapplication-square{{ size }}x{{ size }}logo" content="{{ asset(icon) }}" />
-               {# Others #}
-               {% else %}
-                       <link rel="icon" type="image/png" size="{{ size }}x{{ size }}" href="{{ asset(icon) }}" />
-               {% endif %}
-       {% endfor %}
+               {% endfor %}
+       {% endif %}
        {# stylesheet '//fonts.googleapis.com/css?family=Irish+Grover' '//fonts.googleapis.com/css?family=La+Belle+Aurore' '@RapsysAirBundle/Resources/public/css/{reset,screen}.css' #}
-       {% stylesheet '@rapsys_air_bundle/css/{reset,droidsans,screen}.css' %}
-               <link rel="stylesheet" type="text/css" href="{{ asset_url }}" />
-       {% endstylesheet %}
+       {% stopwatch 'stylesheet' %}
+               {% stylesheet '@rapsys_air_bundle/css/{reset,droidsans,screen}.css' %}
+                       <link rel="stylesheet" type="text/css" href="{{ asset_url }}" />
+               {% endstylesheet %}
+       {% endstopwatch %}
+       {% if canonical is defined and canonical %}
+               <link rel="canonical" href="{{ canonical }}"{% if locale is defined and locale %} hreflang="{{ locale }}"{% endif %} />
+       {% endif %}
+       {% if alternates is defined and alternates %}
+               {% for lang, alternate in alternates %}
+                       <link rel="alternate" href="{{ alternate.absolute }}" hreflang="{{ lang }}" />
+               {% endfor %}
+       {% endif %}
+       {% if facebook['metas'] is defined and facebook['metas'] %}
+               {% for property, contents in facebook['metas'] %}
+                       {% if contents is iterable %}
+                               {% for content in contents %}
+                                       <meta property="{{ property }}" content="{{ content }}" />
+                               {% endfor %}
+                       {% else %}
+                               <meta property="{{ property }}" content="{{ contents }}" />
+                       {% endif %}
+               {% endfor %}
+       {% endif %}
 {% endblock %}
 {% block javascripts %}
-       {#{% javascript '@RapsysAir/js/*.js' %}
-               <script type="text/javascript" src="{{ asset_url }}"></script>
-       {% endjavascript %}#}
+       {% stopwatch 'javascript' %}
+               {#{% javascript '@RapsysAir/js/*.js' %}
+                       <script type="text/javascript" src="{{ asset_url }}"></script>
+               {% endjavascript %}#}
+       {% endstopwatch %}
 {% endblock %}
-{% block title %}{{ title }}{% endblock %}
+{% block title %}{{ [site.title, page.section, page.title]|filter(v => v)|join(' - ') }}{% endblock %}
 {% block body %}
        {% block header %}
                <header id="header">
-                       {% block header_title %}<h1><a href="{{ site_url }}"><img src="{{ asset(site_logo) }}" alt="{{ site_title }}" /></a></h1>{% endblock %}
+                       {% if site is defined and site %}
+                               {% block header_title %}<h1><a href="{{ site.url }}" title="{{ site.title }}"><img src="{{ asset(site.logo) }}" alt="{{ site.title }}" width="171" height="32" /></a></h1>{% endblock %}
+                       {% endif %}
                        {% block header_nav %}
                                <nav>
                                        <h2>{% trans %}Navigation{% endtrans %}</h2>
-                                       <a href="{{ path('rapsys_air_location') }}">{% trans %}Locations{% endtrans %}</a>
-                                       <a href="{{ path('rapsys_air_user') }}">{% trans %}Users{% endtrans %}</a>
-                                       <a href="{{ path('rapsys_air_contact') }}">{% trans %}Contact{% endtrans %}</a>
-                                       <a href="{{ path('rapsys_air_policy') }}">{% trans %}Policy{% endtrans %}</a>
-                                       {% if is_granted('IS_AUTHENTICATED_REMEMBERED') %}
-                                               <a href="{{ path('rapsys_user_logout') }}">{% trans %}Logout{% endtrans %}</a>
-                                       {% else %}
-                                               <a href="{{ path('rapsys_user_login') }}">{% trans %}Login{% endtrans %}</a>
-                                               <a href="{{ path('rapsys_user_register') }}">{% trans %}Register{% endtrans %}</a>
-                                       {% endif %}
+                                       <ul>
+                                               <li><a href="{{ path('rapsys_air') }}" rel="home">{% trans %}Home{% endtrans %}</a></li>
+                                               <li><a href="{{ path('rapsys_air_contact') }}" rel="contact">{% trans %}Contact{% endtrans %}</a></li>
+                                               <li><a href="{{ path('rapsys_air_frequently_asked_questions') }}">{% trans %}Frequently asked questions{% endtrans %}</a></li>
+                                               <li><a href="{{ path('rapsys_air_user') }}">{% trans %}Users{% endtrans %}</a></li>
+                                               {% if is_granted('ROLE_GUEST') %}
+                                                       <li><a href="{{ path('rapsys_air_organizer_regulation') }}">{% trans %}Organizer regulation{% endtrans %}</a></li>
+                                               {% endif %}
+                                               {% if is_granted('IS_AUTHENTICATED_REMEMBERED') %}
+                                                       <li><a href="{{ path('rapsys_user_edit', {mail: app.user.mail|short, hash: app.user.mail|short|hash}) }}">{% trans %}My account{% endtrans %}</a></li>
+                                                       <li><a href="{{ path('rapsys_user_logout') }}">{% trans %}Logout{% endtrans %}</a></li>
+                                               {% else %}
+                                                       <li><a href="{{ path('rapsys_user_login') }}">{% trans %}Login{% endtrans %}</a></li>
+                                                       <li><a href="{{ path('rapsys_user_register') }}">{% trans %}Register{% endtrans %}</a></li>
+                                               {% endif %}
+                                       </ul>
                                </nav>
                        {% endblock %}
 {#
                {# pass an array argument to get the messages of those types (['warning', 'error']) #}
                {% for label, messages in app.flashes %}
                        {% if messages %}
-                               <div class="flash {{label}}">
+                               <div class="message {{label}}">
                                        <ul>
                                                {% for message in messages %}
                                                        <li>{{ message }}</li>
        {% endblock %}
        {% block footer %}
                <footer id="footer">
-                       <span>&nbsp;</span>
-                       <details><summary>{{ copy_long }}</summary><span>{{ copy_short }}</span></details>
-                       <span>&nbsp;</span>
+                       <a href="{{ path('rapsys_air_about') }}">{% trans %}About{% endtrans %}</a>
+                       {% if copy is defined and copy %}
+                               <details><summary>{{ copy.long }}</summary><span>{{ copy.short }} <a href="{{ copy.link }}" title="{{ copy.title }}" rel="author">{{ copy.by }}</a></span></details>
+                       {% endif %}
+                       <a href="{{ path('rapsys_air_terms_of_service') }}">{% trans %}Terms of service{% endtrans %}</a>
+                       {% if alternates is defined and alternates %}
+                               {% set langs = alternates|keys|filter(v => v|length == 5) %}
+                               {% if langs|length > 1 %}
+                                       <ul>
+                                               {% for lang in langs %}
+                                                       <li><a href="{{ alternates[lang].relative }}" hreflang="{{ lang|replace({'_': '-'}) }}" title="{{ alternates[lang].title }}">{{ alternates[lang].translated }}</a></li>
+                                               {% endfor %}
+                                       </ul>
+                               {% else %}
+                                       {% set lang = langs|first %}
+                                       <a href="{{ alternates[lang].relative }}" hreflang="{{ lang|replace({'_': '-'}) }}" title="{{ alternates[lang].title }}">{{ alternates[lang].translated }}</a>
+                               {% endif %}
+                       {% else %}
+                               <span>&nbsp;</span>
+                       {% endif %}
                </footer>
        {% endblock %}
 {% endblock %}