<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<title>{% block title 'BETHESDA' %}</title>
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no"/>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
{# ── SEO ── #}
<meta name="keywords" content="bethesda isbb">
<meta name="description" content="Institut secondaire bilingue bethesda">
<meta name="author" content="Arsene Fokam Poka, Ing">
{% block stylesheets %}
{# ── Favicon ── #}
<link rel="icon" type="image/png" href="{{ asset('assets/images/BethesdaLogo.png') }}"/>
<link rel="apple-touch-icon" href="{{ asset('assets/images/BethesdaLogo.png') }}">
{# ── Google Fonts (preconnect pour la performance) ── #}
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
{# ── Bootstrap ── #}
<link rel="stylesheet" href="{{ asset('assets/css/bootstrap.min.css') }}"/>
<link href="{{ asset('assets/css/bootstrap-grid.min.css') }}" rel="stylesheet" type="text/css"/>
<link href="{{ asset('assets/css/bootstrap-reboot.min.css') }}" rel="stylesheet" type="text/css"/>
{# ── Icônes ── #}
<link href="{{ asset('assets/css/font-awesome.min.css') }}" rel="stylesheet">
{# ── CSS personnalisé unifié (remplace l'ancien style.css) ── #}
<link href="{{ asset('assets/css/liveedu-custom.css') }}" rel="stylesheet" type="text/css"/>
{# ── Surcouches spécifiques (navbar, custom, etc.) ── #}
<link href="{{ asset('assets/css/custom.css') }}" rel="stylesheet" type="text/css"/>
<link href="{{ asset('assets/css/navbar-fix.css') }}" rel="stylesheet" type="text/css"/>
{% endblock %}
</head>
<body class="host_version">
{% block main %}
{# JUST FOR BACKEND #}
{% endblock %}
{% block partials %}
{# ── Flash Messages ── #}
{% include 'layout/partials/flash_messages.html.twig' %}
{% if not app.user %}
{% include 'layout/partials/modal.html.twig' %}
{% include 'layout/partials/loader.html.twig' %}
{% include 'layout/partials/header.html.twig' %}
{% endif %}
{% endblock %}
<div>
{% block body %}
{# JUST FOR FRONTEND #}
{% endblock %}
{% block footer %}
{% include 'layout/partials/partners.html.twig' %}
{% include 'layout/partials/footer.html.twig' %}
{% endblock footer %}
</div>
{# Enregistre la route courante en session #}
{{ app.session.set('referer', app.request.get('_route')) }}
{% block javascripts %}
{# ── 1. jQuery ── #}
<script src="https://code.jquery.com/jquery-3.7.1.min.js"
integrity="sha256-/JqT3SQfawRcv/BIHPThkBvs0OEvtFFmqPF/lYI/Cxo="
crossorigin="anonymous"></script>
{# ── 2. jQuery UI ── #}
<script src="{{ asset('assets/js/jquery-ui.min.js') }}"></script>
{# ── 3. Bootstrap 4.6 ── #}
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.6.0/js/bootstrap.bundle.min.js"></script>
{# ── 4. Chart.js ── #}
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/3.7.0/chart.min.js"></script>
{# ── 5. Scripts personnalisés ── #}
<script src="{{ asset('assets/js/jquery.mCustomScrollbar.concat.min.js') }}"></script>
<script src="{{ asset('assets/js/menu.js') }}"></script>
<script src="{{ asset('assets/js/all.js') }}"></script>
<script src="{{ asset('assets/js/front.js') }}"></script>
<script src="{{ asset('assets/js/custom.js') }}"></script>
<script src="{{ asset('assets/js/timeline.min.js') }}"></script>
<script src="{{ asset('assets/js/d3.v4.min.js') }}"></script>
{# ── 6. Sidebar toggle & school year ── #}
<script>
$(document).ready(function () {
$('#toggle-btn').on('click', function (e) {
e.preventDefault();
if ($(window).width() > 1199) {
$('body').toggleClass('sidebar-collapsed');
$('.side-navbar').toggleClass('shrinked');
$('.page').toggleClass('active');
} else {
$('.side-navbar').toggleClass('show-sm');
$('.page').toggleClass('active-sm');
}
});
{# Fermer le sidebar en cliquant en dehors (mobile) #}
$(document).on('click', function (e) {
if ($(window).width() <= 1199) {
if (!$(e.target).closest('.side-navbar, #toggle-btn').length) {
$('.side-navbar').removeClass('show-sm');
$('.page').removeClass('active-sm');
}
}
});
{# Changement d'année scolaire #}
$('#select_year').on('change', function () {
$.ajax({
type: 'POST',
url: '{{ path('update_school_year') }}',
data: { selectedSchoolYear: $(this).val() },
success: function () { location.reload(); },
error: function (e) { alert('Échec du changement d\'année.'); console.error(e); }
});
});
});
</script>
{# ── 7. Timeline ── #}
<script>
timeline(document.querySelectorAll('.timeline'), {
forceVerticalMode: 700,
mode: 'horizontal',
verticalStartPosition: 'left',
visibleItems: 4
});
</script>
{# ── 8. Google Analytics ── #}
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-208287842-1"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag() { dataLayer.push(arguments); }
gtag('js', new Date());
gtag('config', 'UA-208287842-1');
</script>
{% endblock javascripts %}
</body>
</html>