templates/layout/base.html.twig line 45

Open in your IDE?
  1. <!DOCTYPE html>
  2. <html lang="fr">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>
  6. {% block title 'BETHESDA' %}
  7. </title>
  8. <meta
  9. name="viewport" content="width=device-width, initial-scale=1, user-scalable=no"/>
  10. <!-- Basic -->
  11. <meta
  12. http-equiv="X-UA-Compatible" content="IE=edge">
  13. <!-- Site Metas -->
  14. <meta name="keywords" content="bethesda isbb">
  15. <meta name="description" content="Institut secondaire bilingue bethesda">
  16. <meta
  17. name="author" content="Arsene Fokam Poka, Ing">
  18. <!-- Site Icons -->
  19. {% block stylesheets %}
  20. {# {{encore_entry_link_tags('main')}} #}
  21. <link rel="icon" type="image/png" href="{{ asset('assets/images/BethesdaLogo.png') }}"/>
  22. <link rel="apple-touch-icon" href="{{ asset('assets/images/BethesdaLogo.png') }}">
  23. <link href="{{ asset('assets/css/style.css') }}" rel="stylesheet">
  24. <link href="{{ asset('assets/css/font-awesome.min.css') }}" rel="stylesheet">
  25. <link rel="stylesheet" href="{{ asset('assets/css/bootstrap.min.css') }}"/>
  26. <link href="{{ asset('assets/css/bootstrap-grid.min.css') }}" rel="stylesheet" type="text/css"/>
  27. <link href="{{ asset('assets/css/bootstrap-reboot.min.css') }}" rel="stylesheet" type="text/css"/>
  28. <link href="{{ asset('assets/css/custom.css') }}" rel="stylesheet">
  29. <link href="{{ asset('assets/css/navbar-fix.css') }}" rel="stylesheet" type="text/css" />
  30. {% endblock %}
  31. </head>
  32. <body class="host_version">
  33. {% block main %}
  34. <!-- JUST FOR BACKEND -->
  35. {% endblock %}
  36. {% block partials %}
  37. <!-- Flash Messages -->
  38. {% include 'layout/partials/flash_messages.html.twig' %}
  39. {% if not app.user %}
  40. <!-- Modal -->
  41. {% include 'layout/partials/modal.html.twig' %}
  42. <!-- LOADER -->
  43. {% include 'layout/partials/loader.html.twig' %}
  44. <!-- HEADER -->
  45. {% include 'layout/partials/header.html.twig' %}
  46. {% endif %}
  47. {% endblock %}
  48. <div>
  49. {% block body %}
  50. <!-- JUST FOR FRONTEND -->
  51. {% endblock %}
  52. {% block footer %}
  53. <!-- Header -->
  54. {% include 'layout/partials/partners.html.twig' %}
  55. {% include 'layout/partials/footer.html.twig' %}
  56. {% endblock footer %}
  57. </div>
  58. <!-- in order to record the current route -->
  59. {# {{ app.session.set('referer', path(app.request.attributes.get('_route')) ) }} #}
  60. {{ app.session.set('referer', app.request.get('_route') ) }}
  61. {% block javascripts %}
  62. <!-- 1. jQuery EN PREMIER -->
  63. <script src="https://code.jquery.com/jquery-3.7.1.min.js" integrity="sha256-/JqT3SQfawRcv/BIHPThkBvs0OEvtFFmqPF/lYI/Cxo=" crossorigin="anonymous"></script>
  64. <!-- 2. jQuery UI -->
  65. <script type="text/javascript" src="{{ asset('assets/js/jquery-ui.min.js') }}"></script>
  66. <!-- 3. Bootstrap 4.6.0 (compatible avec votre CSS) -->
  67. <script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.6.0/js/bootstrap.bundle.min.js"></script>
  68. <!-- 4. Chart.js -->
  69. <script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/3.7.0/chart.min.js"></script>
  70. <!-- 5. Vos scripts personnalisés -->
  71. <script type="text/javascript" src="{{ asset('assets/js/jquery.mCustomScrollbar.concat.min.js') }}"></script>
  72. <script type="text/javascript" src="{{ asset('assets/js/menu.js') }}"></script>
  73. <script type="text/javascript" src="{{ asset('assets/js/all.js') }}"></script>
  74. <script type="text/javascript" src="{{ asset('assets/js/front.js') }}"></script>
  75. <script type="text/javascript" src="{{ asset('assets/js/custom.js') }}"></script>
  76. <script type="text/javascript" src="{{ asset('assets/js/timeline.min.js') }}"></script>
  77. <script src="{{ asset('assets/js/d3.v4.min.js') }}"></script>
  78. <script>
  79. $(document).ready(function() {
  80. console.log('jQuery version:', $.fn.jquery);
  81. console.log('Bootstrap loaded:', typeof $.fn.modal);
  82. $('#toggle-btn').on('click', function(e) {
  83. e.preventDefault();
  84. console.log('Toggle button clicked!');
  85. $('body').toggleClass('sidebar-collapsed');
  86. $('.side-navbar').toggleClass('shrinked');
  87. $('.page').toggleClass('active');
  88. });
  89. });
  90. // Remplacez le script existant dans admin.html.twig par celui-ci
  91. $(document).ready(function() {
  92. // Toggle sidebar menu
  93. $('#toggle-btn').on('click', function(e) {
  94. e.preventDefault();
  95. // Vérifier si on est sur mobile ou desktop
  96. var windowWidth = $(window).width();
  97. if (windowWidth > 1199) {
  98. // Desktop: toggle entre 200px et 70px
  99. $('body').toggleClass('sidebar-collapsed');
  100. $('.side-navbar').toggleClass('shrinked');
  101. $('.page').toggleClass('active');
  102. console.log('Desktop toggle - sidebar-collapsed:', $('body').hasClass('sidebar-collapsed'));
  103. } else {
  104. // Mobile: afficher/masquer complètement
  105. $('.side-navbar').toggleClass('show-sm');
  106. $('.page').toggleClass('active-sm');
  107. console.log('Mobile toggle - show-sm:', $('.side-navbar').hasClass('show-sm'));
  108. }
  109. });
  110. // Fermer le sidebar en cliquant en dehors sur mobile
  111. $(document).on('click', function(e) {
  112. if ($(window).width() <= 1199) {
  113. if (!$(e.target).closest('.side-navbar, #toggle-btn').length) {
  114. $('.side-navbar').removeClass('show-sm');
  115. $('.page').removeClass('active-sm');
  116. }
  117. }
  118. });
  119. // Change school year
  120. $('#select_year').on('change', function() {
  121. var postData = {
  122. "selectedSchoolYear": $(this).val()
  123. };
  124. $.ajax({
  125. type: "POST",
  126. url: "{{ path('update_school_year') }}",
  127. data: postData,
  128. datatype: "json",
  129. success: function(data) {
  130. console.log("Changement d'annee.");
  131. location.reload();
  132. },
  133. error: function(e) {
  134. console.log(e.message);
  135. alert("Echec.");
  136. }
  137. });
  138. });
  139. // Debug: afficher l'état actuel
  140. console.log('Initial state:');
  141. console.log('- Sidebar width:', $('.side-navbar').width());
  142. console.log('- Page width:', $('.page').width());
  143. console.log('- Window width:', $(window).width());
  144. });
  145. </script>
  146. <script>
  147. timeline(document.querySelectorAll('.timeline'), {
  148. forceVerticalMode: 700,
  149. mode: 'horizontal',
  150. verticalStartPosition: 'left',
  151. visibleItems: 4
  152. });
  153. </script>
  154. <!-- Global site tag (gtag.js) - Google Analytics -->
  155. <script async src="https://www.googletagmanager.com/gtag/js?id=UA-208287842-1"></script>
  156. <script>
  157. window.dataLayer = window.dataLayer || [];
  158. function gtag() {
  159. dataLayer.push(arguments);
  160. }
  161. gtag('js', new Date());
  162. gtag('config', 'UA-208287842-1');
  163. </script>
  164. {% endblock javascripts %}
  165. </body>
  166. </html>