<?php
use Twig\Environment;
use Twig\Error\LoaderError;
use Twig\Error\RuntimeError;
use Twig\Extension\CoreExtension;
use Twig\Extension\SandboxExtension;
use Twig\Markup;
use Twig\Sandbox\SecurityError;
use Twig\Sandbox\SecurityNotAllowedTagError;
use Twig\Sandbox\SecurityNotAllowedFilterError;
use Twig\Sandbox\SecurityNotAllowedFunctionError;
use Twig\Source;
use Twig\Template;
use Twig\TemplateWrapper;
/* layout/base.html.twig */
class __TwigTemplate_50509fdc1c07d8d005877a1e8660f74f extends Template
{
private Source $source;
/**
* @var array<string, Template>
*/
private array $macros = [];
public function __construct(Environment $env)
{
parent::__construct($env);
$this->source = $this->getSourceContext();
$this->parent = false;
$this->blocks = [
'title' => [$this, 'block_title'],
'stylesheets' => [$this, 'block_stylesheets'],
'main' => [$this, 'block_main'],
'partials' => [$this, 'block_partials'],
'body' => [$this, 'block_body'],
'footer' => [$this, 'block_footer'],
'javascripts' => [$this, 'block_javascripts'],
];
}
protected function doDisplay(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "layout/base.html.twig"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "layout/base.html.twig"));
// line 1
yield "<!DOCTYPE html>
<html lang=\"fr\">
\t<head>
\t\t<meta charset=\"UTF-8\">
\t\t<title>
\t\t\t";
// line 6
yield from $this->unwrap()->yieldBlock('title', $context, $blocks);
// line 7
yield "\t\t</title>
\t\t<meta
\t\tname=\"viewport\" content=\"width=device-width, initial-scale=1, user-scalable=no\"/>
\t\t<!-- Basic -->
\t\t<meta
\t\thttp-equiv=\"X-UA-Compatible\" content=\"IE=edge\">
\t\t<!-- Site Metas -->
\t\t<meta name=\"keywords\" content=\"bethesda isbb\">
\t\t<meta name=\"description\" content=\"Institut secondaire bilingue bethesda\">
\t\t<meta
\t\tname=\"author\" content=\"Arsene Fokam Poka, Ing\">
\t\t<!-- Site Icons -->
\t\t";
// line 23
yield from $this->unwrap()->yieldBlock('stylesheets', $context, $blocks);
// line 38
yield "
\t</head>
\t<body class=\"host_version\">
\t\t";
// line 43
yield from $this->unwrap()->yieldBlock('main', $context, $blocks);
// line 46
yield "\t\t";
yield from $this->unwrap()->yieldBlock('partials', $context, $blocks);
// line 61
yield "
\t\t<div>
\t\t\t";
// line 64
yield from $this->unwrap()->yieldBlock('body', $context, $blocks);
// line 67
yield "\t\t\t";
yield from $this->unwrap()->yieldBlock('footer', $context, $blocks);
// line 72
yield "\t\t</div>
\t\t<!-- in order to record the current route -->
\t\t";
// line 75
yield "\t\t";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, (isset($context["app"]) || array_key_exists("app", $context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.', 75, $this->source); })()), "session", [], "any", false, false, false, 75), "set", ["referer", CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, (isset($context["app"]) || array_key_exists("app", $context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.', 75, $this->source); })()), "request", [], "any", false, false, false, 75), "get", ["_route"], "method", false, false, false, 75)], "method", false, false, false, 75), "html", null, true);
yield "
\t\t";
// line 77
yield from $this->unwrap()->yieldBlock('javascripts', $context, $blocks);
// line 210
yield "
\t</body>
</html>
";
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
yield from [];
}
// line 6
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_title(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "title"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "title"));
yield "BETHESDA";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 23
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_stylesheets(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "stylesheets"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "stylesheets"));
// line 24
yield "\t\t\t";
// line 25
yield "\t\t\t<link rel=\"icon\" type=\"image/png\" href=\"";
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/images/BethesdaLogo.png"), "html", null, true);
yield "\"/>
\t\t\t<link rel=\"apple-touch-icon\" href=\"";
// line 26
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/images/BethesdaLogo.png"), "html", null, true);
yield "\">
\t\t\t<link href=\"";
// line 27
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/css/style.css"), "html", null, true);
yield "\" rel=\"stylesheet\">
\t\t\t<link href=\"";
// line 28
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/css/font-awesome.min.css"), "html", null, true);
yield "\" rel=\"stylesheet\">
\t\t\t<link rel=\"stylesheet\" href=\"";
// line 29
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/css/bootstrap.min.css"), "html", null, true);
yield "\"/>
\t\t\t<link href=\"";
// line 30
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/css/bootstrap-grid.min.css"), "html", null, true);
yield "\" rel=\"stylesheet\" type=\"text/css\"/>
\t\t\t<link href=\"";
// line 31
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/css/bootstrap-reboot.min.css"), "html", null, true);
yield "\" rel=\"stylesheet\" type=\"text/css\"/>
\t\t\t<link href=\"";
// line 33
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/css/custom.css"), "html", null, true);
yield "\" rel=\"stylesheet\">
<link href=\"";
// line 35
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/css/navbar-fix.css"), "html", null, true);
yield "\" rel=\"stylesheet\" type=\"text/css\" />
\t\t";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 43
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_main(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "main"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "main"));
// line 44
yield "\t\t\t<!-- JUST FOR BACKEND -->
\t\t";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 46
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_partials(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "partials"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "partials"));
// line 47
yield "
\t\t\t<!-- Flash Messages -->
\t\t\t";
// line 49
yield from $this->load("layout/partials/flash_messages.html.twig", 49)->unwrap()->yield($context);
// line 50
yield "
\t\t\t";
// line 51
if ((($tmp = !CoreExtension::getAttribute($this->env, $this->source, (isset($context["app"]) || array_key_exists("app", $context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.', 51, $this->source); })()), "user", [], "any", false, false, false, 51)) && $tmp instanceof Markup ? (string) $tmp : $tmp)) {
// line 52
yield "\t\t\t\t<!-- Modal -->
\t\t\t\t";
// line 53
yield from $this->load("layout/partials/modal.html.twig", 53)->unwrap()->yield($context);
// line 54
yield "\t\t\t\t<!-- LOADER -->
\t\t\t\t";
// line 55
yield from $this->load("layout/partials/loader.html.twig", 55)->unwrap()->yield($context);
// line 56
yield "\t\t\t\t<!-- HEADER -->
\t\t\t\t";
// line 57
yield from $this->load("layout/partials/header.html.twig", 57)->unwrap()->yield($context);
// line 58
yield "\t\t\t";
}
// line 59
yield "
\t\t";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 64
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_body(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "body"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "body"));
// line 65
yield "\t\t\t\t<!-- JUST FOR FRONTEND -->
\t\t\t";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 67
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_footer(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "footer"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "footer"));
// line 68
yield "\t\t\t\t<!-- Header -->
\t\t\t\t";
// line 69
yield from $this->load("layout/partials/partners.html.twig", 69)->unwrap()->yield($context);
// line 70
yield "\t\t\t\t";
yield from $this->load("layout/partials/footer.html.twig", 70)->unwrap()->yield($context);
// line 71
yield "\t\t\t";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
// line 77
/**
* @return iterable<null|scalar|\Stringable>
*/
public function block_javascripts(array $context, array $blocks = []): iterable
{
$macros = $this->macros;
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "javascripts"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "javascripts"));
// line 78
yield "
\t\t\t<!-- 1. jQuery EN PREMIER -->
\t\t\t<script src=\"https://code.jquery.com/jquery-3.7.1.min.js\" integrity=\"sha256-/JqT3SQfawRcv/BIHPThkBvs0OEvtFFmqPF/lYI/Cxo=\" crossorigin=\"anonymous\"></script>
\t\t\t<!-- 2. jQuery UI -->
\t\t\t<script type=\"text/javascript\" src=\"";
// line 83
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/js/jquery-ui.min.js"), "html", null, true);
yield "\"></script>
\t\t\t<!-- 3. Bootstrap 4.6.0 (compatible avec votre CSS) -->
\t\t\t<script src=\"https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.6.0/js/bootstrap.bundle.min.js\"></script>
\t\t\t<!-- 4. Chart.js -->
\t\t\t<script src=\"https://cdnjs.cloudflare.com/ajax/libs/Chart.js/3.7.0/chart.min.js\"></script>
\t\t\t<!-- 5. Vos scripts personnalisés -->
\t\t\t<script type=\"text/javascript\" src=\"";
// line 92
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/js/jquery.mCustomScrollbar.concat.min.js"), "html", null, true);
yield "\"></script>
\t\t\t<script type=\"text/javascript\" src=\"";
// line 93
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/js/menu.js"), "html", null, true);
yield "\"></script>
\t\t\t<script type=\"text/javascript\" src=\"";
// line 94
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/js/all.js"), "html", null, true);
yield "\"></script>
\t\t\t<script type=\"text/javascript\" src=\"";
// line 95
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/js/front.js"), "html", null, true);
yield "\"></script>
\t\t\t<script type=\"text/javascript\" src=\"";
// line 96
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/js/custom.js"), "html", null, true);
yield "\"></script>
\t\t\t<script type=\"text/javascript\" src=\"";
// line 97
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/js/timeline.min.js"), "html", null, true);
yield "\"></script>
\t\t\t<script src=\"";
// line 98
yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/js/d3.v4.min.js"), "html", null, true);
yield "\"></script>
<script>
\$(document).ready(function() {
console.log('jQuery version:', \$.fn.jquery);
console.log('Bootstrap loaded:', typeof \$.fn.modal);
\$('#toggle-btn').on('click', function(e) {
e.preventDefault();
console.log('Toggle button clicked!');
\$('body').toggleClass('sidebar-collapsed');
\$('.side-navbar').toggleClass('shrinked');
\$('.page').toggleClass('active');
});
});
// Remplacez le script existant dans admin.html.twig par celui-ci
\$(document).ready(function() {
// Toggle sidebar menu
\$('#toggle-btn').on('click', function(e) {
e.preventDefault();
// Vérifier si on est sur mobile ou desktop
var windowWidth = \$(window).width();
if (windowWidth > 1199) {
// Desktop: toggle entre 200px et 70px
\$('body').toggleClass('sidebar-collapsed');
\$('.side-navbar').toggleClass('shrinked');
\$('.page').toggleClass('active');
console.log('Desktop toggle - sidebar-collapsed:', \$('body').hasClass('sidebar-collapsed'));
} else {
// Mobile: afficher/masquer complètement
\$('.side-navbar').toggleClass('show-sm');
\$('.page').toggleClass('active-sm');
console.log('Mobile toggle - show-sm:', \$('.side-navbar').hasClass('show-sm'));
}
});
// Fermer le sidebar en cliquant en dehors sur 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');
}
}
});
// Change school year
\$('#select_year').on('change', function() {
var postData = {
\"selectedSchoolYear\": \$(this).val()
};
\$.ajax({
type: \"POST\",
url: \"";
// line 160
yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("update_school_year");
yield "\",
data: postData,
datatype: \"json\",
success: function(data) {
console.log(\"Changement d'annee.\");
location.reload();
},
error: function(e) {
console.log(e.message);
alert(\"Echec.\");
}
});
});
// Debug: afficher l'état actuel
console.log('Initial state:');
console.log('- Sidebar width:', \$('.side-navbar').width());
console.log('- Page width:', \$('.page').width());
console.log('- Window width:', \$(window).width());
});
</script>
\t\t\t<script>
\t\t\t\ttimeline(document.querySelectorAll('.timeline'), {
forceVerticalMode: 700,
mode: 'horizontal',
verticalStartPosition: 'left',
visibleItems: 4
});
\t\t\t</script>
\t\t\t<!-- Global site tag (gtag.js) - Google Analytics -->
\t\t\t<script async src=\"https://www.googletagmanager.com/gtag/js?id=UA-208287842-1\"></script>
\t\t\t<script>
\t\t\t\twindow.dataLayer = window.dataLayer || [];
function gtag() {
dataLayer.push(arguments);
}
gtag('js', new Date());
gtag('config', 'UA-208287842-1');
\t\t\t</script>
\t\t";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
yield from [];
}
/**
* @codeCoverageIgnore
*/
public function getTemplateName(): string
{
return "layout/base.html.twig";
}
/**
* @codeCoverageIgnore
*/
public function isTraitable(): bool
{
return false;
}
/**
* @codeCoverageIgnore
*/
public function getDebugInfo(): array
{
return array ( 477 => 160, 412 => 98, 408 => 97, 404 => 96, 400 => 95, 396 => 94, 392 => 93, 388 => 92, 376 => 83, 369 => 78, 356 => 77, 345 => 71, 342 => 70, 340 => 69, 337 => 68, 324 => 67, 312 => 65, 299 => 64, 287 => 59, 284 => 58, 282 => 57, 279 => 56, 277 => 55, 274 => 54, 272 => 53, 269 => 52, 267 => 51, 264 => 50, 262 => 49, 258 => 47, 245 => 46, 233 => 44, 220 => 43, 206 => 35, 201 => 33, 196 => 31, 192 => 30, 188 => 29, 184 => 28, 180 => 27, 176 => 26, 171 => 25, 169 => 24, 156 => 23, 133 => 6, 118 => 210, 116 => 77, 110 => 75, 106 => 72, 103 => 67, 101 => 64, 96 => 61, 93 => 46, 91 => 43, 84 => 38, 82 => 23, 64 => 7, 62 => 6, 55 => 1,);
}
public function getSourceContext(): Source
{
return new Source("<!DOCTYPE html>
<html lang=\"fr\">
\t<head>
\t\t<meta charset=\"UTF-8\">
\t\t<title>
\t\t\t{% block title 'BETHESDA' %}
\t\t</title>
\t\t<meta
\t\tname=\"viewport\" content=\"width=device-width, initial-scale=1, user-scalable=no\"/>
\t\t<!-- Basic -->
\t\t<meta
\t\thttp-equiv=\"X-UA-Compatible\" content=\"IE=edge\">
\t\t<!-- Site Metas -->
\t\t<meta name=\"keywords\" content=\"bethesda isbb\">
\t\t<meta name=\"description\" content=\"Institut secondaire bilingue bethesda\">
\t\t<meta
\t\tname=\"author\" content=\"Arsene Fokam Poka, Ing\">
\t\t<!-- Site Icons -->
\t\t{% block stylesheets %}
\t\t\t{# {{encore_entry_link_tags('main')}} #}
\t\t\t<link rel=\"icon\" type=\"image/png\" href=\"{{ asset('assets/images/BethesdaLogo.png') }}\"/>
\t\t\t<link rel=\"apple-touch-icon\" href=\"{{ asset('assets/images/BethesdaLogo.png') }}\">
\t\t\t<link href=\"{{ asset('assets/css/style.css') }}\" rel=\"stylesheet\">
\t\t\t<link href=\"{{ asset('assets/css/font-awesome.min.css') }}\" rel=\"stylesheet\">
\t\t\t<link rel=\"stylesheet\" href=\"{{ asset('assets/css/bootstrap.min.css') }}\"/>
\t\t\t<link href=\"{{ asset('assets/css/bootstrap-grid.min.css') }}\" rel=\"stylesheet\" type=\"text/css\"/>
\t\t\t<link href=\"{{ asset('assets/css/bootstrap-reboot.min.css') }}\" rel=\"stylesheet\" type=\"text/css\"/>
\t\t\t<link href=\"{{ asset('assets/css/custom.css') }}\" rel=\"stylesheet\">
<link href=\"{{ asset('assets/css/navbar-fix.css') }}\" rel=\"stylesheet\" type=\"text/css\" />
\t\t{% endblock %}
\t</head>
\t<body class=\"host_version\">
\t\t{% block main %}
\t\t\t<!-- JUST FOR BACKEND -->
\t\t{% endblock %}
\t\t{% block partials %}
\t\t\t<!-- Flash Messages -->
\t\t\t{% include 'layout/partials/flash_messages.html.twig' %}
\t\t\t{% if not app.user %}
\t\t\t\t<!-- Modal -->
\t\t\t\t{% include 'layout/partials/modal.html.twig' %}
\t\t\t\t<!-- LOADER -->
\t\t\t\t{% include 'layout/partials/loader.html.twig' %}
\t\t\t\t<!-- HEADER -->
\t\t\t\t{% include 'layout/partials/header.html.twig' %}
\t\t\t{% endif %}
\t\t{% endblock %}
\t\t<div>
\t\t\t{% block body %}
\t\t\t\t<!-- JUST FOR FRONTEND -->
\t\t\t{% endblock %}
\t\t\t{% block footer %}
\t\t\t\t<!-- Header -->
\t\t\t\t{% include 'layout/partials/partners.html.twig' %}
\t\t\t\t{% include 'layout/partials/footer.html.twig' %}
\t\t\t{% endblock footer %}
\t\t</div>
\t\t<!-- in order to record the current route -->
\t\t{# {{ app.session.set('referer', path(app.request.attributes.get('_route')) ) }} #}
\t\t{{ app.session.set('referer', app.request.get('_route') ) }}
\t\t{% block javascripts %}
\t\t\t<!-- 1. jQuery EN PREMIER -->
\t\t\t<script src=\"https://code.jquery.com/jquery-3.7.1.min.js\" integrity=\"sha256-/JqT3SQfawRcv/BIHPThkBvs0OEvtFFmqPF/lYI/Cxo=\" crossorigin=\"anonymous\"></script>
\t\t\t<!-- 2. jQuery UI -->
\t\t\t<script type=\"text/javascript\" src=\"{{ asset('assets/js/jquery-ui.min.js') }}\"></script>
\t\t\t<!-- 3. Bootstrap 4.6.0 (compatible avec votre CSS) -->
\t\t\t<script src=\"https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.6.0/js/bootstrap.bundle.min.js\"></script>
\t\t\t<!-- 4. Chart.js -->
\t\t\t<script src=\"https://cdnjs.cloudflare.com/ajax/libs/Chart.js/3.7.0/chart.min.js\"></script>
\t\t\t<!-- 5. Vos scripts personnalisés -->
\t\t\t<script type=\"text/javascript\" src=\"{{ asset('assets/js/jquery.mCustomScrollbar.concat.min.js') }}\"></script>
\t\t\t<script type=\"text/javascript\" src=\"{{ asset('assets/js/menu.js') }}\"></script>
\t\t\t<script type=\"text/javascript\" src=\"{{ asset('assets/js/all.js') }}\"></script>
\t\t\t<script type=\"text/javascript\" src=\"{{ asset('assets/js/front.js') }}\"></script>
\t\t\t<script type=\"text/javascript\" src=\"{{ asset('assets/js/custom.js') }}\"></script>
\t\t\t<script type=\"text/javascript\" src=\"{{ asset('assets/js/timeline.min.js') }}\"></script>
\t\t\t<script src=\"{{ asset('assets/js/d3.v4.min.js') }}\"></script>
<script>
\$(document).ready(function() {
console.log('jQuery version:', \$.fn.jquery);
console.log('Bootstrap loaded:', typeof \$.fn.modal);
\$('#toggle-btn').on('click', function(e) {
e.preventDefault();
console.log('Toggle button clicked!');
\$('body').toggleClass('sidebar-collapsed');
\$('.side-navbar').toggleClass('shrinked');
\$('.page').toggleClass('active');
});
});
// Remplacez le script existant dans admin.html.twig par celui-ci
\$(document).ready(function() {
// Toggle sidebar menu
\$('#toggle-btn').on('click', function(e) {
e.preventDefault();
// Vérifier si on est sur mobile ou desktop
var windowWidth = \$(window).width();
if (windowWidth > 1199) {
// Desktop: toggle entre 200px et 70px
\$('body').toggleClass('sidebar-collapsed');
\$('.side-navbar').toggleClass('shrinked');
\$('.page').toggleClass('active');
console.log('Desktop toggle - sidebar-collapsed:', \$('body').hasClass('sidebar-collapsed'));
} else {
// Mobile: afficher/masquer complètement
\$('.side-navbar').toggleClass('show-sm');
\$('.page').toggleClass('active-sm');
console.log('Mobile toggle - show-sm:', \$('.side-navbar').hasClass('show-sm'));
}
});
// Fermer le sidebar en cliquant en dehors sur 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');
}
}
});
// Change school year
\$('#select_year').on('change', function() {
var postData = {
\"selectedSchoolYear\": \$(this).val()
};
\$.ajax({
type: \"POST\",
url: \"{{ path('update_school_year') }}\",
data: postData,
datatype: \"json\",
success: function(data) {
console.log(\"Changement d'annee.\");
location.reload();
},
error: function(e) {
console.log(e.message);
alert(\"Echec.\");
}
});
});
// Debug: afficher l'état actuel
console.log('Initial state:');
console.log('- Sidebar width:', \$('.side-navbar').width());
console.log('- Page width:', \$('.page').width());
console.log('- Window width:', \$(window).width());
});
</script>
\t\t\t<script>
\t\t\t\ttimeline(document.querySelectorAll('.timeline'), {
forceVerticalMode: 700,
mode: 'horizontal',
verticalStartPosition: 'left',
visibleItems: 4
});
\t\t\t</script>
\t\t\t<!-- Global site tag (gtag.js) - Google Analytics -->
\t\t\t<script async src=\"https://www.googletagmanager.com/gtag/js?id=UA-208287842-1\"></script>
\t\t\t<script>
\t\t\t\twindow.dataLayer = window.dataLayer || [];
function gtag() {
dataLayer.push(arguments);
}
gtag('js', new Date());
gtag('config', 'UA-208287842-1');
\t\t\t</script>
\t\t{% endblock javascripts %}
\t</body>
</html>
", "layout/base.html.twig", "/var/www/bethesda/templates/layout/base.html.twig");
}
}