X-Git-Url: https://git.rapsys.eu/airbundle/blobdiff_plain/10353cd86e6b37f239cad3c59b57bd8e220aa2e9..d2cc96771dfe99250fc381de504c374c0a4e4e49:/Resources/views/body.html.twig?ds=inline

diff --git a/Resources/views/body.html.twig b/Resources/views/body.html.twig
index fbfefbe..73aa677 100644
--- a/Resources/views/body.html.twig
+++ b/Resources/views/body.html.twig
@@ -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 %}
 {#
@@ -69,7 +108,7 @@
 		{# 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>
@@ -90,9 +129,26 @@
 	{% 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 %}