templates/front/_partials/_header.html.twig line 1

Open in your IDE?
  1. {% if app.user %}
  2.     {% set nbUnread = countunreadmessages(app.user) %}
  3. {% endif %}
  4. <header class="header {% if menu is defined and menu == 'homepage' %}homepage{% endif %}" data-locale="{{ app.request.locale }}">
  5.     <div class="container-fluid menu-container">
  6.         <div class="logo-wrap">
  7.             <div class="logo">
  8.                 <a href="{{ path('homepage') }}">
  9.                     <img loading="lazy" src="{{ asset('/images/logo-light.png') }}" class="logo-light hide" alt="Racket Trip">
  10.                     <img loading="lazy" src="{{ asset('/images/logo-dark.png') }}" class="logo-dark hide" alt="Racket Trip">
  11.                 </a>
  12.             </div>
  13.         </div>
  14.         <div class="mobile-only">
  15.             <div class="website-locale hide-desktop">
  16.                 {% include "front/_partials/_locale.html.twig" %}
  17.             </div>
  18.             <div class="mobile-nav">
  19.                 <div id="nav-icon">
  20.                     <span></span>
  21.                     <span></span>
  22.                     <span></span>
  23.                     <span></span>
  24.                 </div>
  25.             </div>
  26.         </div>
  27.         {% if app.user %}
  28.         <div class="hide-desktop">
  29.             <div class="menu-item-header">
  30.                 <a href="{{ path('message') }}">
  31.                     <img loading="lazy" src="/images/icons/messaging-hover.svg" class="icon-light hide" alt="Messagerie">
  32.                     <img loading="lazy" src="/images/icons/message.svg" class="icon-dark hide" alt="Messagerie">
  33.                 </a>
  34.             </div>
  35.         </div>
  36.         <span class="hide" {% if app.user %}id="logged-user-id" data-user={{ app.user.id }}{% endif %}></span>
  37.         {% endif %}
  38.         <div class="links-wrap">
  39.             <div class="menu-wrap">
  40.                 <nav class="main-nav">
  41.                     <ul class="main-nav-list">
  42.                         <div class="website-locale hide-mobile">
  43.                             {% include "front/_partials/_locale.html.twig" %}
  44.                         </div>
  45.                         <li class="menu-item {% if menu is defined and menu == 'homepage' %}active{% endif %}">
  46.                             <a class="menu-item-link" href="{{ path('homepage') }}">{{ 'header.home'| trans }}</a>
  47.                         </li>
  48.                         <li class="menu-item {% if menu is defined and menu == 'courses' %}active{% endif %}">
  49.                             <a class="menu-item-link" href="{{ path('courses') }}">{{ 'header.courses'| trans }}</a>
  50.                         </li>
  51.                         <li class="menu-item {% if menu is defined and menu == 'directory' %}active{% endif %}">
  52.                             <a class="menu-item-link" href="{{ path('directory') }}">{{ 'header.directory'| trans }}</a>
  53.                         </li>
  54.                         <li class="menu-item {% if menu is defined and menu == 'blog' %}active{% endif %}">
  55.                             <a class="menu-item-link" href="{{ path('blog') }}">{{ 'header.blog'| trans }}</a>
  56.                         </li>
  57.                         {% if app.user %}
  58.                             <li class="menu-item message-header-link {% if menu is defined and menu == 'messages' %}active{% endif %}">
  59.                                 <a class="menu-item-link" href="{{ path('message') }}" id="message-link">
  60.                                     {{ 'header.messages'| trans }}
  61.                                     {% if nbUnread > 0 %}
  62.                                     {#<span class="unread">{{ nbUnread }}</span>#}
  63.                                     <span class="unread"></span>
  64.                                     {% endif %}
  65.                                 </a>
  66.                             </li>
  67.                         {% endif %}
  68.                         {% if not app.user %}
  69.                             <li class="menu-item mb-3 hide-desktop">
  70.                                 <a href="{{ path('user_login', {'type': 'trainee'}) }}" class="btn btn-menu btn-menu-trainee">{{ 'header.trainee'| trans }}</a>
  71.                             </li>
  72.                             <li class="menu-item hide-desktop">
  73.                                 <a href="{{ path('user_login', {'type': 'pro'}) }}" class="btn btn-menu btn-login-pro">{{ 'header.pro'| trans }}</a>
  74.                             </li>
  75.                         {% else %}
  76.                             {% if app.user.isPro %}
  77.                                 <li class="menu-item menu-item-btn hide-desktop">
  78.                                     <a href="{{ path('user_login', {'type': 'pro'}) }}" class="btn btn-menu btn-menu-pro rounded">
  79.                                         <i class="fal fa-user"></i>
  80.                                     </a>
  81.                                     <ul class="menu-item-submenu">
  82.                                         <li>
  83.                                             <a href="{{ path('pro_subscription') }}">{{ 'header.subscription'| trans }}</a>
  84.                                         </li>
  85.                                         <li>
  86.                                             <a href="{{ path('pro_parameters') }}">{{ 'header.parameters'| trans }}</a>
  87.                                         </li>
  88.                                         <li>
  89.                                             <a href="{{ path('pro_internal_partners') }}">{{ 'pro_partner_page.my_partners'| trans }}</a>
  90.                                         </li>
  91.                                         <li>
  92.                                             <a href="{{ path('user_logout') }}">{{ 'header.logout'| trans }}</a>
  93.                                         </li>
  94.                                     </ul>
  95.                                 </li>
  96.                             {% else %}
  97.                                 <li class="menu-item menu-item-btn hide-desktop">
  98.                                     <a href="{{ path('trainee_profile') }}" class="btn btn-menu btn-menu-trainee rounded">
  99.                                         <i class="fal fa-user"></i>
  100.                                     </a>
  101.                                     <ul class="menu-item-submenu">
  102.                                         <li>
  103.                                             <a href="{{ path('user_logout') }}">{{ 'header.logout'| trans }}</a>
  104.                                         </li>
  105.                                     </ul>
  106.                                 </li>
  107.                             {% endif %}
  108.                         {% endif %}
  109.                     </ul>
  110.                 </nav>
  111.             </div>
  112.         </div>
  113.         <div class="account-wrap hide-mobile">
  114.             {% if app.user %}
  115.                 {% if app.user is instanceof('App\\Entity\\Trainee') %}
  116.                     <div class="menu-burger btn-menu-account">
  117.                         <div class="burger" id="burger">
  118.                             <div></div>
  119.                             <div></div>
  120.                             <div></div>
  121.                         </div>
  122.                         <i class="close"></i>
  123.                         <div class="profile-header">
  124.                             {% if app.user.photo %}
  125.                                 <img loading="lazy" class="profile-pic" src="{{ asset('/images/profiles/' ~ app.user.photo) }}">
  126.                             {% else %}
  127.                                 <i class="fal fa-user"></i>
  128.                             {% endif %}
  129.                             
  130.                         </div>
  131.                     </div>
  132.                     
  133.                     <div class="trainee-menu-sidebar">
  134.                         <div class="menu-content">
  135.                             <div class="trainee-menu-item">
  136.                                 <a href="{{ path('trainee_courses_favorites') }}" class="trainee-menu-link">
  137.                                     <img loading="lazy" src="/images/icons/favoris.svg" class="main-image" alt="">
  138.                                     <img loading="lazy" src="/images/icons/favoris-hover.svg" class="hover-image" alt="">
  139.                                     <span class="trainee-menu-title">{{ 'header.favorite'| trans }}</span>
  140.                                 </a>
  141.                             </div>
  142.                             <div class="trainee-menu-item">
  143.                                 <a href="{{ path('trainee_alerts') }}" class="trainee-menu-link">
  144.                                     <img loading="lazy" src="/images/icons/alert.svg" class="main-image" alt="">
  145.                                     <img loading="lazy" src="/images/icons/alert-hover.svg" class="hover-image" alt="">
  146.                                     <span class="trainee-menu-title">{{ 'header.alerts'| trans }}</span>
  147.                                 </a>
  148.                             </div>
  149.                             <div class="trainee-menu-item">
  150.                                 <a href="{{ path('calendar_weekly', {'type': 'trainee'}) }}" class="trainee-menu-link">
  151.                                     <img loading="lazy" src="/images/icons/calendar.svg" class="main-image" alt="">
  152.                                     <img loading="lazy" src="/images/icons/calendar-hover.svg" class="hover-image" alt="">
  153.                                     <span class="trainee-menu-title">{{ 'header.calendar'| trans }}</span>
  154.                                 </a>
  155.                             </div>
  156.                             <div class="trainee-menu-item">
  157.                                 <a href="{{ path('message') }}" class="trainee-menu-link">
  158.                                     <img loading="lazy" src="/images/icons/messaging.svg" class="main-image" alt="">
  159.                                     <img loading="lazy" src="/images/icons/messaging-hover.svg" class="hover-image" alt="">
  160.                                     <span class="trainee-menu-title">{{ 'header.messages'| trans }}</span>
  161.                                 </a>
  162.                             </div>
  163.                             <div class="trainee-menu-item">
  164.                                 <a href="{{ path('list_bookings') }}" class="trainee-menu-link">
  165.                                     <img loading="lazy" src="/images/icons/bookings.svg" class="main-image" alt="">
  166.                                     <img loading="lazy" src="/images/icons/bookings-hover.svg" class="hover-image" alt="">
  167.                                     <span class="trainee-menu-title">{{ 'header.booking'| trans }}</span>
  168.                                 </a>
  169.                             </div>
  170.                             <div class="trainee-menu-item">
  171.                                 <a href="{{ path('trainee_profile') }}" class="trainee-menu-link">
  172.                                     <img loading="lazy" src="/images/icons/parameter.svg" class="main-image" alt="">
  173.                                     <img loading="lazy" src="/images/icons/parameter-hover.svg" class="hover-image" alt="">
  174.                                     <span class="trainee-menu-title">{{ 'header.profile'| trans }}</span>
  175.                                 </a>
  176.                             </div>
  177.                             <div class="trainee-menu-item">
  178.                                 <a href="{{ path('trainee_note_given') }}" class="trainee-menu-link">
  179.                                     <img loading="lazy" src="/images/icons/reviews.svg" class="main-image" alt="">
  180.                                     <img loading="lazy" src="/images/icons/reviews-hover.svg" class="hover-image" alt="">
  181.                                     <span class="trainee-menu-title">Mes avis</span>
  182.                                 </a>
  183.                             </div>
  184.                             <div class="trainee-menu-item">
  185.                                 <a href="{{ path('user_logout') }}" class="trainee-menu-link">
  186.                                     <img loading="lazy" src="/images/icons/logout.svg" class="main-image" alt="">
  187.                                     <img loading="lazy" src="/images/icons/logout-hover.svg" class="hover-image" alt="">
  188.                                     <span class="trainee-menu-title">{{ 'header.logout'| trans }}</span>
  189.                                 </a>
  190.                             </div>
  191.                         </div>
  192.                     </div>
  193.                 {% elseif app.user is instanceof('App\\Entity\\Coach') or app.user is instanceof('App\\Entity\\Club') or app.user is instanceof('App\\Entity\\Operator') %}
  194.                     
  195.                         <a href="/fr/logout" class="btn btn-menu-pro btn-logout hide">
  196.                             <i class="far fa-power-off"></i>
  197.                         </a>
  198.                         <a href="{{ path('new_course') }}" class="btn btn-menu-pro create-course">
  199.                             <i class="far fa-plus-square"></i>
  200.                             {{ 'manage_courses.create_course'| trans }}
  201.                         </a>
  202.                     <button class="btn btn-menu-account open-pro-menu">
  203.                         <i class="fas fa-grid-2"></i>
  204.                     </button>
  205.                 {% elseif app.user is instanceof('App\\Entity\\Admin') %}
  206.                     <a href="{{ path('admin_course') }}" class="btn btn-menu btn-login-pro">Revenir aux stages</a>
  207.                 {% endif %}
  208.             {% else %}
  209.                 <a href="{{ path('user_login', {'type': 'trainee'}) }}" class="btn btn-menu btn-menu-trainee">{{ 'header.trainee'| trans }}</a>
  210.                 <a href="{{ path('user_login', {'type': 'pro'}) }}" class="btn btn-menu btn-login-pro">{{ 'header.pro'| trans }}</a>
  211.             {% endif %}
  212.         </div>
  213.     </div>
  214. </header>
  215. {% if app.user and app.user.isPro %}
  216.     <div class="pro-menu-sidebar hide-mobile">
  217.         <div class="menu-content">
  218.             <div class="pro-menu-item">
  219.                 <a href="{{ path('pro_dashboard') }}" class="pro-menu-link">
  220.                     <img loading="lazy" src="/images/icons/dashboard.svg" class="main-image" alt="">
  221.                     <img loading="lazy" src="/images/icons/dashboard-hover.svg" class="hover-image" alt="">
  222.                     <span class="pro-menu-title">{{ 'header.dashboard'| trans }}</span>
  223.                 </a>
  224.             </div>
  225.             <div class="pro-menu-item">
  226.                 <a href="{{ path('pro_page') }}" class="pro-menu-link">
  227.                     <img loading="lazy" src="/images/icons/pro-page.svg" class="main-image" alt="">
  228.                     <img loading="lazy" src="/images/icons/pro-page-hover.svg" class="hover-image" alt="">
  229.                     <span class="pro-menu-title">{{ 'header.page_pro'| trans }}</span>
  230.                 </a>
  231.             </div>
  232.             <div class="pro-menu-item">
  233.                 <a href="{{ path('manage_courses') }}" class="pro-menu-link">
  234.                     <img loading="lazy" src="/images/icons/courses.svg" class="main-image" alt="">
  235.                     <img loading="lazy" src="/images/icons/courses-hover.svg" class="hover-image" alt="">
  236.                     <span class="pro-menu-title">{{ 'header.course_management'| trans }}</span>
  237.                 </a>
  238.             </div>
  239.             <div class="pro-menu-item">
  240.                 <a href="{{ path('pro_manage_booking') }}" class="pro-menu-link">
  241.                     <img loading="lazy" src="/images/icons/bookings.svg" class="main-image" alt="">
  242.                     <img loading="lazy" src="/images/icons/bookings-hover.svg" class="hover-image" alt="">
  243.                     <span class="pro-menu-title">{{ 'header.trainee_management'| trans }}</span>
  244.                 </a>
  245.             </div>
  246.             <div class="pro-menu-item">
  247.                 <a href="{{ path('message') }}" class="pro-menu-link">
  248.                     <img loading="lazy" src="/images/icons/messaging.svg" class="main-image" alt="">
  249.                     <img loading="lazy" src="/images/icons/messaging-hover.svg" class="hover-image" alt="">
  250.                     <span class="pro-menu-title">{{ 'header.messages'| trans }}</span>
  251.                 </a>
  252.             </div>
  253.             <div class="pro-menu-item">
  254.                 <a href="{{ path('pro_note_received') }}" class="pro-menu-link">
  255.                     <img loading="lazy" src="/images/icons/reviews.svg" class="main-image" alt="">
  256.                     <img loading="lazy" src="/images/icons/reviews-hover.svg" class="hover-image" alt="">
  257.                     <span class="pro-menu-title">Gestion des avis</span>
  258.                 </a>
  259.             </div>
  260.             <div class="pro-menu-item">
  261.                 <a href="{{ path('calendar_weekly', {'type': 'pro'}) }}" class="pro-menu-link">
  262.                     <img loading="lazy" src="/images/icons/calendar.svg" class="main-image" alt="">
  263.                     <img loading="lazy" src="/images/icons/calendar-hover.svg" class="hover-image" alt="">
  264.                     <span class="pro-menu-title">{{ 'header.calendar'| trans }}</span>
  265.                 </a>
  266.             </div>
  267.             <div class="pro-menu-item">
  268.                 <a href="{{ path('pro_internal_partners') }}" class="pro-menu-link">
  269.                     <img loading="lazy" src="/images/icons/partners.svg" class="main-image" alt="">
  270.                     <img loading="lazy" src="/images/icons/partners-hover.svg" class="hover-image" alt="">
  271.                     <span class="pro-menu-title">{{ 'pro_partner_page.my_partners'| trans }}</span>
  272.                 </a>
  273.             </div>
  274.             <div class="pro-menu-item">
  275.                 <a href="{{ path('pro_subscription') }}" class="pro-menu-link">
  276.                     <img loading="lazy" src="/images/icons/subscription.svg" class="main-image" alt="">
  277.                     <img loading="lazy" src="/images/icons/subscription-hover.svg" class="hover-image" alt="">
  278.                     <span class="pro-menu-title">{{ 'header.subscription'| trans }}</span>
  279.                 </a>
  280.             </div>
  281.             <div class="pro-menu-item">
  282.                 <a href="{{ path('pro_parameters') }}" class="pro-menu-link">
  283.                     <img loading="lazy" src="/images/icons/parameter.svg" class="main-image" alt="">
  284.                     <img loading="lazy" src="/images/icons/parameter-hover.svg" class="hover-image" alt="">
  285.                     <span class="pro-menu-title">{{ 'header.parameters'| trans }}</span>
  286.                 </a>
  287.             </div>
  288.             {#
  289.             <div class="pro-menu-item">
  290.                 <a href="{{ path('user_logout') }}" class="pro-menu-link">
  291.                     <img loading="lazy" src="/images/icons/logout.svg" class="main-image" alt="">
  292.                     <img loading="lazy" src="/images/icons/logout-hover.svg" class="hover-image" alt="">
  293.                     <span class="pro-menu-title">{{ 'header.logout'| trans }}</span>
  294.                 </a>
  295.             </div>
  296.             #}
  297.         </div>
  298.     </div>
  299. {% endif %}