templates/base.html.twig line 1

Open in your IDE?
  1. {% apply spaceless %}
  2.     <!DOCTYPE html>
  3.     <html lang="{{ app.request.locale|split('_')[0] }}">
  4.         <head prefix="og: https://ogp.me/ns#">
  5.             <meta charset="UTF-8">
  6.             <meta name="viewport" content="width=device-width, initial-scale=1">
  7.             <title>{% block title %}{{ 'meta.title'|trans }}{% endblock %}</title>
  8.             <meta content="{% block description %}{{ 'meta.description'|trans }}{% endblock %}" name="description"/>
  9.             <link rel="preconnect" href="https://fonts.googleapis.com">
  10.             <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
  11.             <link rel="stylesheet" href="https://unpkg.com/dropzone@5/dist/min/dropzone.min.css" type="text/css" />
  12.             <link href="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/css/select2.min.css" rel="stylesheet" />
  13.             <script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
  14.             <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-rbsA2VBKQhggwzxH7pPCaAqO46MgnOM80zW1RWuH61DGLwZJEdK2Kadq2F9CUG65" crossorigin="anonymous">
  15.             <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
  16.             <script src="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/js/select2.min.js"></script>
  17.             <link href="https://fonts.googleapis.com/css2?family=Lato:wght@400;700;900&display=swap" rel="stylesheet">
  18.             {% block stylesheets %}
  19.                 {{ encore_entry_link_tags('app') }}
  20.             {% endblock %}
  21.         </head>
  22.         <body class="bg-light {% block body_class %}{% endblock %}" data-bs-no-jquery>
  23.             <nav id="navbar" class="navbar navbar-expand bg-dark text-white sticky-top ">
  24.                 <div class="container-fluid px-5 py-1">
  25.                     <a class="navbar-brand text-white fw-bold" href="{{ path('app_model_collection') }}" title="{{ 'nav.main.home'|trans }}">
  26.                         <img src="{{ asset('images/logo.png') }}" height="50" class="d-inline-block">
  27.                         DM.Collection
  28.                     </a>
  29.                     {% if is_granted('IS_AUTHENTICATED_REMEMBERED') %}
  30.                         {{ knp_menu_render('main') }}
  31.                         <div>
  32.                             <a href="{{ path('app_user_mon_compte') }}" class="btn btn-grad rounded-pill btn-outline-light border-0">
  33.                                 Mon compte
  34.                             </a>
  35.                             {% if 'ROLE_ADMIN' in app.user.roles %}
  36.                                 <span class="liquid_dropdown">
  37.                                     <input type="checkbox" id="dropdown">
  38.                                     <label class="liquid_dropdown__face ms-2 btn btn-grad btn-fab" for="dropdown">
  39.                                         <i class="fa-solid fa-screwdriver-wrench"></i>
  40.                                     </label>
  41.                                     <ul class="liquid_dropdown__items text-black">
  42.                                         <li><a href="{{ path('app_model_create') }}"><i class="fa-solid fa-circle-plus"></i><span>Modèle</span></a></li>
  43.                                         <li><a href="{{ path('app_armoire_create') }}"><i class="fa-solid fa-circle-plus"></i><span>Armoire</span></a></li>
  44.                                         <li><a href="{{ path('app_etagere_create') }}"><i class="fa-solid fa-circle-plus"></i><span>Etagère</span></a></li>
  45.                                         <li><a href="{{ path('app_classeur_create') }}"><i class="fa-solid fa-circle-plus"></i><span>Classeur</span></a></li>
  46.                                         <li><a href="{{ path('app_user_access') }}"><i class="fa-solid fa-circle-plus"></i><span>Membres</span></a></li>
  47.                                     </ul>
  48.                                 </span>
  49.                                 <svg>
  50.                                     <filter id="goo">
  51.                                         <feGaussianBlur in="SourceGraphic" stdDeviation="10" result="blur" />
  52.                                         <feColorMatrix in="blur" type="matrix" values="1 0 0 0 0  0 1 0 0 0  0 0 1 0 0  0 0 0 18 -7" result="goo" />
  53.                                         <feBlend in="SourceGraphic" in2="goo" />
  54.                                     </filter>
  55.                                 </svg>
  56.                             {% endif %}
  57.                             <a href="{{ path('app_logout') }}" class="ms-2 btn btn-dark btn-fab btn-outline-light">
  58.                                 <i class="fa-solid fa-arrow-right-from-bracket"></i>
  59.                             </a>
  60. {#                            <div class="dropdown">#}
  61. {#                                <div class="dropdown-menu dropdown-menu-end mt-1">#}
  62. {#                                    <p class="px-3 text-center text-nowrap fs-5">#}
  63. {#                                        {{ app.user.fullname }}#}
  64. {#                                    </p>#}
  65. {#                                    <div class="d-grid px-2">#}
  66. {#                                        <a href="{{ path('app_user_index') }}" class="btn btn-primary">#}
  67. {#                                            <i class="bi bi-person-circle"></i> {{ 'nav.user.account'|trans }}#}
  68. {#                                        </a>#}
  69. {#                                    </div>#}
  70. {#                                    <hr class="dropdown-divider">#}
  71. {#                                    <a href="{{ path('app_logout') }}" class="dropdown-item">#}
  72. {#                                        <i class="bi bi-box-arrow-in-left"></i> {{ 'nav.user.logout'|trans }}#}
  73. {#                                    </a>#}
  74. {#                                </div>#}
  75. {#                            </div>#}
  76.                         </div>
  77.                     {% endif %}
  78.                 </div>
  79.             </nav>
  80.             <div class="offcanvas offcanvas-end" tabindex="-1" id="offcanvasNavbar"
  81.                  aria-labelledby="offcanvasNavbarLabel">
  82.                 <div class="offcanvas-header">
  83.                     {# <h5 class="offcanvas-title" id="offcanvasNavbarLabel">ATS Bus</h5> #}
  84.                     <button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Close"></button>
  85.                 </div>
  86.                 <div class="offcanvas-body">
  87. {#                    {% set shopMenu = knp_menu_get('main', ['nav.main.shop']) %}#}
  88. {#                    {{ knp_menu_render(shopMenu, {'ancestorClass': 'active', 'currentClass' : 'active', 'template': 'menu/off_canvas_menu.html.twig'}) }}#}
  89.                 </div>
  90.             </div>
  91.             <div aria-live="polite" aria-atomic="true" class="position-relative">
  92.                 <div class="toast-container top-0 end-0 p-2 mt-8">
  93.                     {% for label, messages in app.flashes %}
  94.                         {% for message in messages %}
  95.                             <div class="toast" role="alert" aria-live="assertive" aria-atomic="true">
  96.                                 <div class="toast-header text-bg-{{ label }}">
  97.                                     <i class="bi bi-check2 me-2"></i>
  98.                                     <strong class="me-auto">{{ (message ~ '.title')|trans }}</strong>
  99.                                     <button type="button" class="btn-close btn-close-white" data-bs-dismiss="toast"
  100.                                             aria-label="Close"></button>
  101.                                 </div>
  102.                                 <div class="toast-body">
  103.                                     {{ (message ~ '.message')|trans }}
  104.                                 </div>
  105.                             </div>
  106.                         {% endfor %}
  107.                     {% endfor %}
  108.                 </div>
  109.             </div>
  110.             <main class="d-flex flex-column">
  111.                 {% block banner %}{% endblock %}
  112.                 <div class="container-fluid py-3 {% block breadcrumb_class %}d-none{% endblock %}">
  113.                     {% block breadcrumb %}{% endblock %}
  114.                 </div>
  115.                 <div class="d-flex flex-row flex-fill">
  116.                     {% block body %}{% endblock %}
  117.                 </div>
  118.             </main>
  119.             <footer>
  120.                 <div class="container-fluid">
  121.                     <div class="row">
  122.                         <div class="col-6 footer-contact">
  123.                             <p>Des questions ? Contactez moi à cette adresse mail :</p>
  124.                             <p><a href="mailto:michelin.david01@gmail.com"> michelin.david01@gmail.com</a>
  125.                             </p>
  126.                         </div>
  127.                         <div class="col-6 footer-logo">
  128.                             <img src="/images/logo_ecusson_bleu_grand_format.png" class="img-fluid rounded- ">
  129.                         </div>
  130.                         <span class="footer-copyright">
  131.                             <a href="https://www.n2m-solution.com/" target="_blank">©N2M-Solution</a>
  132.                         </span>
  133.                     </div>
  134.                 </div>
  135.             </footer>
  136.             {% block modal %}{% endblock %}
  137.             {% block javascripts %}
  138.                 {{ encore_entry_script_tags('app') }}
  139.             {% endblock %}
  140.             <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-kenU1KFdBIe4zVF0s0G1M5b4hcpxyD9F7jL+jjXkk+Q2h455rYXK/7HAuoJl+0I4" crossorigin="anonymous"></script>
  141.         </body>
  142.     </html>
  143. {% endapply %}