]> Raphaël G. Git Repositories - airbundle/blobdiff - Resources/views/base.html.twig
Force string cast of simple xml elements
[airbundle] / Resources / views / base.html.twig
index a95e21af33c8426fbb41cf98dee37ca3a70b43c9..9dc95439c443661f5152fa03b3ffa8fcb360459d 100644 (file)
 <!DOCTYPE html>
-<html>
-       <head>
-               <meta charset="UTF-8" />
-               <title>{% block title %}{{ title }}{% endblock %}</title>
-               <meta name="viewport" content="width=device-width, initial-scale=1" />
+<html{% if locale is defined and locale %} lang="{{ locale }}"{% endif %}>
+       <head{% if facebook is defined and facebook %} prefix="og: http://ogp.me/ns# fb: http://ogp.me/ns/fb#"{% endif %}>
+               {% block meta %}<meta charset="UTF-8">{% endblock %}
+               <title>{% block title %}{{ [title.page, title.section, title.site]|filter(v => v)|join(' - ') }}{% endblock %}</title>
                {% block stylesheet %}
-                       {% stylesheet '//fonts.googleapis.com/css?family=Irish+Grover' '//fonts.googleapis.com/css?family=La+Belle+Aurore' '@RapsysAirBundle/Resources/public/css/{reset,screen}.css' %}
-                               <link href="{{ asset_url }}" type="text/css" rel="stylesheet" />
-                       {% endstylesheet %}
+                       <meta name="viewport" content="width=device-width, initial-scale=1" />
+                       {% if description is defined and description %}
+                               <meta name="description" content="{{ description }}" />
+                       {% endif %}
+                       {% if keywords is defined and keywords %}
+                               <meta name="keywords" content="{{ keywords|join(', ') }}" />
+                       {% endif %}
+                       {% if icon is defined and icon %}
+                               <link rel="shortcut icon" type="image/x-icon" href="{{ asset(icon.ico) }}" />
+                               <link rel="icon" type="image/svg+xml" href="{{ asset(icon.svg) }}" />
+                               {% for size, icon in icon.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 %}
+                               {% 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' #}
+                       {% stopwatch 'stylesheet' %}
+                               {% stylesheet '@rapsys_air_bundle/css/{reset,droidsans,lemon,notoemoji,screen}.css' %}
+                                       <link rel="stylesheet" type="text/css" href="{{ asset_url }}?20221024100144" />
+                               {% 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 is defined and facebook %}
+                               {% for property, contents in facebook %}
+                                       {% 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 javascript %}
-                       {% javascript '@RapsysAirBundle/Resources/public/js/*.js' %}
-                               <script src="{{ asset_url }}"></script>
-                       {% endjavascript %}
-               {% endblock %}-->
-               <link rel="icon" type="image/png" href="{{ asset('bundles/rapsysair/png/favicon.png') }}" sizes="192x192" />
-               <link rel="shortcut icon" type="image/x-icon" href="{{ asset('bundles/rapsysair/ico/favicon.ico') }}" />
        </head>
-       {% block body %}
-               <body>
+       <body>
+               {% block body %}
                        {% block header %}
                                <header id="header">
-                                       {% block header_title %}
-                                               {% block blog_title %}<h1><a href="{{ path('rapsys_air_homepage') }}"><img src="{{ asset('bundles/rapsysair/png/logo.png') }}" alt="{% trans %}Open Air{% endtrans %}" /></a></h1>{% endblock %}
-                                               {% block header_nav %}
-                                                       <nav>
-                                                               <h2>{% trans %}Navigation{% endtrans %}</h2>
-                                                               <a href="{{ path('rapsys_air_admin') }}">{% trans %}Admin{% endtrans %}</a>
-                                                               <a href="{{ path('rapsys_air_contact') }}">{% trans %}Contact{% endtrans %}</a>
-                                                               {% if is_granted('IS_AUTHENTICATED_REMEMBERED') %}
-                                                                       <a href="{{ path('rapsys_user_logout') }}">{% trans %}Logout{% endtrans %}</a>
-                                                               {% else %}
-                                                                       <a href="{{ path('rapsys_user_register') }}">{% trans %}Register{% endtrans %}</a>
-                                                               {% endif %}
-                                                       </nav>
-                                               {% endblock %}
-                                               {% block blog_subtitle %}{% endblock %}
-                                               {% block blog_tagline %}
-                                                       {% if tags is defined and tags %}
-                                                               <ul>
-                                                                       {% for id, tag in tags %}
-                                                                               <li><h2><a href="#">Tag</a></h2></li>
-                                                                       {% endfor %}
-                                                               </ul>
+                                       <div>
+                                               {% if logo is defined and logo %}
+                                                       {% block header_title %}<a id="logo" href="{{ root }}" title="{{ title.site }}"><img src="{{ asset(logo.svg) }}?20221024100144" srcset="{{ asset(logo.png) }}?20221024100144 200w, {{ asset(logo.svg) }}?20221024100144 400w" sizes="(min-width:400px) 400px, 200px" alt="{{ title.site }}" width="100" height="45" /><span>{{ title.site }}</span></a>{% endblock %}
+                                               {% endif %}
+                                               <h1 id="title"><a href="{{ canonical }}">{{ title.page }}</a></h1>
+                                       </div>
+                                       {% block header_nav %}
+                                               <nav id="nav">
+                                                       {#<h2>{% trans %}Navigation{% endtrans %}</h2>#}
+                                                       <a href="{{ path('rapsys_air') }}" rel="home">{% trans %}Home{% endtrans %}</a>
+                                                       <a href="{{ path('rapsys_air_contact') }}" rel="contact">{% trans %}Contact{% endtrans %}</a>
+                                                       <a href="{{ path('rapsys_air_frequently_asked_questions') }}">{% trans %}Frequently asked questions{% endtrans %}</a>
+                                                       {% if is_granted('ROLE_ADMIN') %}
+                                                               <a href="{{ path('rapsys_air_user') }}">{% trans %}Users{% endtrans %}</a>
+                                                       {% endif %}
+                                                       {% if is_granted('ROLE_GUEST') %}
+                                                               <a href="{{ path('rapsys_air_organizer_regulation') }}">{% trans %}Organizer regulation{% endtrans %}</a>
+                                                       {% endif %}
+                                                       {% if is_granted('IS_AUTHENTICATED_REMEMBERED') %}
+                                                               <a href="{{ path('rapsys_user_edit', {mail: app.user.mail|short, hash: app.user.mail|short|hash}) }}">{% trans %}My account{% endtrans %}</a>
+                                                               <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 %}
-                                               {% endblock %}
+                                               </nav>
                                        {% endblock %}
+                       {#
+                                       {% block site_subtitle %}{% endblock %}
+                                       {% block site_tagline %}
+                                               {% if tags is defined and tags %}
+                                                       <ul>
+                                                               {% for id, tag in tags %}
+                                                                       <li><h2><a href="#{{id}}">{{tag}}</a></h2></li>
+                                                               {% endfor %}
+                                                       </ul>
+                                               {% endif %}
+                                       {% endblock %}
+                       #}
                                </header>
                        {% 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}}">
-                                               <ul>
-                                                       {% for message in messages %}
-                                                               <li>{{ message }}</li>
-                                                       {% endfor %}
-                                               </ul>
-                                       </div>
-                               {% endif %}
-                       {% endfor %}
-
+                       {% block message %}
+                               {# pass an array argument to get the messages of those types (['warning', 'error']) #}
+                               {% for label, messages in app.flashes %}
+                                       {% if messages %}
+                                               <div class="message {{label}}">
+                                                       <ul>
+                                                               {% for message in messages %}
+                                                                       <li>{{ message }}</li>
+                                                               {% endfor %}
+                                                       </ul>
+                                               </div>
+                                       {% endif %}
+                               {% endfor %}
+                       {% endblock %}
+               {#
                        {% block sidebar %}<aside id="sidebar"></aside>{% endblock %}
-
-                       {% block content %}<section id="content"></section>{% endblock %}
-
+               #}
+                       {% block content %}
+                               <article>
+                                       <header>
+                                               <h2>{% trans %}Outdoor space reservation system{% endtrans %}</h2>
+                                       </header>
+                               </article>
+                       {% endblock %}
                        {% block footer %}
                                <footer id="footer">
-                                       <span>&nbsp;</span>
-                                       <details><summary>{% trans %}Raphaël Gertz all rights reserved{% endtrans %}</summary><span>{% trans %}Copyright 2018{% endtrans %}.</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 %}
-               </body>
-       {% endblock %}
+               {% endblock %}
+               {% block javascript %}
+                       {% stopwatch 'javascript' %}
+                               {#{% javascript '@RapsysAir/js/*.js' %}
+                                       <script type="text/javascript" src="{{ asset_url }}"></script>
+                               {% endjavascript %}#}
+                       {% endstopwatch %}
+               {% endblock %}
+       </body>
 </html>