var/cache/dev/twig/42/42f334731b3d01d9a7cce9eec39281bf.php line 355

Open in your IDE?
  1. <?php
  2. use Twig\Environment;
  3. use Twig\Error\LoaderError;
  4. use Twig\Error\RuntimeError;
  5. use Twig\Extension\CoreExtension;
  6. use Twig\Extension\SandboxExtension;
  7. use Twig\Markup;
  8. use Twig\Sandbox\SecurityError;
  9. use Twig\Sandbox\SecurityNotAllowedTagError;
  10. use Twig\Sandbox\SecurityNotAllowedFilterError;
  11. use Twig\Sandbox\SecurityNotAllowedFunctionError;
  12. use Twig\Source;
  13. use Twig\Template;
  14. use Twig\TemplateWrapper;
  15. /* layout/backEndLayout.html.twig */
  16. class __TwigTemplate_b50bbc2aedacfc0fd3e66e16b4273e81 extends Template
  17. {
  18. private Source $source;
  19. /**
  20. * @var array<string, Template>
  21. */
  22. private array $macros = [];
  23. public function __construct(Environment $env)
  24. {
  25. parent::__construct($env);
  26. $this->source = $this->getSourceContext();
  27. $this->blocks = [
  28. 'stylesheets' => [$this, 'block_stylesheets'],
  29. 'title' => [$this, 'block_title'],
  30. 'main' => [$this, 'block_main'],
  31. 'sidebar' => [$this, 'block_sidebar'],
  32. 'identification' => [$this, 'block_identification'],
  33. 'menu' => [$this, 'block_menu'],
  34. 'header' => [$this, 'block_header'],
  35. 'content' => [$this, 'block_content'],
  36. 'footer' => [$this, 'block_footer'],
  37. 'javascripts' => [$this, 'block_javascripts'],
  38. ];
  39. }
  40. protected function doGetParent(array $context): bool|string|Template|TemplateWrapper
  41. {
  42. // line 1
  43. return "layout/base.html.twig";
  44. }
  45. protected function doDisplay(array $context, array $blocks = []): iterable
  46. {
  47. $macros = $this->macros;
  48. $__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  49. $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "layout/backEndLayout.html.twig"));
  50. $__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  51. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "layout/backEndLayout.html.twig"));
  52. $this->parent = $this->load("layout/base.html.twig", 1);
  53. yield from $this->parent->unwrap()->yield($context, array_merge($this->blocks, $blocks));
  54. $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  55. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  56. }
  57. // line 3
  58. /**
  59. * @return iterable<null|scalar|\Stringable>
  60. */
  61. public function block_stylesheets(array $context, array $blocks = []): iterable
  62. {
  63. $macros = $this->macros;
  64. $__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  65. $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "stylesheets"));
  66. $__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  67. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "stylesheets"));
  68. // line 4
  69. yield " ";
  70. yield from $this->yieldParentBlock("stylesheets", $context, $blocks);
  71. yield "
  72. <link rel=\"stylesheet\" href=\"";
  73. // line 5
  74. yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/css/style.blue.css"), "html", null, true);
  75. yield "\">
  76. <link rel=\"stylesheet\" href=\"";
  77. // line 6
  78. yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/css/jquery.mCustomScrollbar.css"), "html", null, true);
  79. yield "\">
  80. <link rel=\"stylesheet\" href=\"";
  81. // line 7
  82. yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/cdnjs.cloudflare.com/ajax/libs/Chart.js/2.9.3/Chart.min.css"), "html", null, true);
  83. yield "\">
  84. <style>
  85. /* Sidebar */
  86. .side-navbar {
  87. position: fixed;
  88. top: 0;
  89. left: 0;
  90. width: 220px;
  91. height: 100vh;
  92. background: #2f3e47;
  93. color: white;
  94. overflow-y: auto;
  95. transition: all 0.3s ease;
  96. z-index: 999;
  97. }
  98. .side-navbar a { color: #d1d4d6; display:block; padding:10px 15px; }
  99. .side-navbar a:hover { background:#1e2a31; color:white; }
  100. .sidenav-header img { width:70px; border-radius:50%; margin-bottom:10px; }
  101. /* Collapsed sidebar (mobile) */
  102. .side-navbar.collapsed {
  103. left: -220px;
  104. }
  105. /* Content */
  106. .flex-grow-1 {
  107. margin-left: 220px;
  108. transition: margin 0.3s ease;
  109. }
  110. .side-navbar.collapsed ~ .flex-grow-1 {
  111. margin-left: 0;
  112. }
  113. /* Header */
  114. .header { background:white; border-bottom:1px solid #eee; padding:10px 20px; display:flex; justify-content:space-between; align-items:center; }
  115. /* Dashboard cards */
  116. .dashboard-card { background:white; border-radius:8px; padding:15px; box-shadow:0 2px 6px rgba(0,0,0,0.1); text-align:center; }
  117. .dashboard-card i { font-size:2em; margin-bottom:5px; }
  118. /* Toggle button */
  119. #toggle-btn { font-size:1.3em; cursor:pointer; color:#2f3e47; }
  120. /* Responsive */
  121. @media (max-width: 768px) {
  122. .flex-grow-1 { margin-left: 0; }
  123. .side-navbar { left: -220px; }
  124. .side-navbar.collapsed { left: 0; }
  125. }
  126. </style>
  127. ";
  128. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  129. $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  130. yield from [];
  131. }
  132. // line 60
  133. /**
  134. * @return iterable<null|scalar|\Stringable>
  135. */
  136. public function block_title(array $context, array $blocks = []): iterable
  137. {
  138. $macros = $this->macros;
  139. $__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  140. $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "title"));
  141. $__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  142. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "title"));
  143. // line 61
  144. yield " ";
  145. yield from $this->yieldParentBlock("title", $context, $blocks);
  146. yield " / Administration
  147. ";
  148. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  149. $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  150. yield from [];
  151. }
  152. // line 64
  153. /**
  154. * @return iterable<null|scalar|\Stringable>
  155. */
  156. public function block_main(array $context, array $blocks = []): iterable
  157. {
  158. $macros = $this->macros;
  159. $__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  160. $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "main"));
  161. $__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  162. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "main"));
  163. // line 65
  164. yield "<div class=\"d-flex\">
  165. ";
  166. // line 68
  167. yield " ";
  168. yield from $this->unwrap()->yieldBlock('sidebar', $context, $blocks);
  169. // line 286
  170. yield "
  171. <div class=\"page home-page\">
  172. ";
  173. // line 288
  174. yield from $this->unwrap()->yieldBlock('header', $context, $blocks);
  175. // line 304
  176. yield "
  177. <section class=\"container-fluid mt-4\">
  178. ";
  179. // line 306
  180. if ((($tmp = $this->extensions['Symfony\Bridge\Twig\Extension\SecurityExtension']->isGranted("ROLE_ADMIN")) && $tmp instanceof Markup ? (string) $tmp : $tmp)) {
  181. // line 307
  182. yield " <div class=\"row mb-4\">
  183. <div class=\"col-md-3\">
  184. <div class=\"dashboard-card text-center\">
  185. <i class=\"fa fa-graduation-cap text-primary\"></i>
  186. <h4>";
  187. // line 311
  188. yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['App\Twig\StatExtension']->students(), "html", null, true);
  189. yield "</h4>
  190. <p>Élèves</p>
  191. </div>
  192. </div>
  193. <div class=\"col-md-3\">
  194. <div class=\"dashboard-card text-center\">
  195. <i class=\"fa fa-users text-success\"></i>
  196. <h4>";
  197. // line 318
  198. yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['App\Twig\StatExtension']->teachers(), "html", null, true);
  199. yield "</h4>
  200. <p>Enseignants</p>
  201. </div>
  202. </div>
  203. <div class=\"col-md-3\">
  204. <div class=\"dashboard-card text-center\">
  205. <i class=\"fa fa-home text-warning\"></i>
  206. <h4>";
  207. // line 325
  208. yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['App\Twig\StatExtension']->rooms(), "html", null, true);
  209. yield "</h4>
  210. <p>Classes</p>
  211. </div>
  212. </div>
  213. <div class=\"col-md-3\">
  214. <select class=\"form-control\" id=\"select_year\">
  215. ";
  216. // line 331
  217. $context['_parent'] = $context;
  218. $context['_seq'] = CoreExtension::ensureTraversable(Twig\Extension\CoreExtension::reverse($this->env->getCharset(), $this->extensions['App\Twig\AppExtension']->years()));
  219. foreach ($context['_seq'] as $context["_key"] => $context["year"]) {
  220. // line 332
  221. yield " <option value=\"";
  222. yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["year"], "id", [], "any", false, false, false, 332), "html", null, true);
  223. yield "\" ";
  224. if ((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.', 332, $this->source); })()), "session", [], "any", false, false, false, 332), "get", ["session_school_year"], "method", false, false, false, 332) == CoreExtension::getAttribute($this->env, $this->source, $context["year"], "id", [], "any", false, false, false, 332))) {
  225. yield "selected";
  226. }
  227. yield ">";
  228. yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, $context["year"], "code", [], "any", false, false, false, 332), "html", null, true);
  229. yield "</option>
  230. ";
  231. }
  232. $_parent = $context['_parent'];
  233. unset($context['_seq'], $context['_key'], $context['year'], $context['_parent']);
  234. $context = array_intersect_key($context, $_parent) + $_parent;
  235. // line 334
  236. yield " </select>
  237. </div>
  238. </div>
  239. ";
  240. }
  241. // line 338
  242. yield "
  243. ";
  244. // line 339
  245. yield from $this->unwrap()->yieldBlock('content', $context, $blocks);
  246. // line 340
  247. yield " </section>
  248. </div>
  249. </div>
  250. ";
  251. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  252. $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  253. yield from [];
  254. }
  255. // line 68
  256. /**
  257. * @return iterable<null|scalar|\Stringable>
  258. */
  259. public function block_sidebar(array $context, array $blocks = []): iterable
  260. {
  261. $macros = $this->macros;
  262. $__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  263. $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "sidebar"));
  264. $__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  265. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "sidebar"));
  266. // line 69
  267. yield " <nav class=\"side-navbar\">
  268. <div class=\"side-navbar-wrapper\">
  269. ";
  270. // line 71
  271. yield from $this->unwrap()->yieldBlock('identification', $context, $blocks);
  272. // line 90
  273. yield "
  274. ";
  275. // line 91
  276. yield from $this->unwrap()->yieldBlock('menu', $context, $blocks);
  277. // line 283
  278. yield " </div>
  279. </nav>
  280. ";
  281. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  282. $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  283. yield from [];
  284. }
  285. // line 71
  286. /**
  287. * @return iterable<null|scalar|\Stringable>
  288. */
  289. public function block_identification(array $context, array $blocks = []): iterable
  290. {
  291. $macros = $this->macros;
  292. $__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  293. $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "identification"));
  294. $__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  295. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "identification"));
  296. // line 72
  297. yield " <div class=\"sidenav-header d-flex align-items-center justify-content-center\">
  298. <div class=\"sidenav-header-inner text-center\">
  299. <img src=";
  300. // line 74
  301. if ((($tmp = $this->extensions['Symfony\Bridge\Twig\Extension\SecurityExtension']->isGranted("IS_AUTHENTICATED_REMEMBERED")) && $tmp instanceof Markup ? (string) $tmp : $tmp)) {
  302. yield " \"";
  303. 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.', 74, $this->source); })()), "user", [], "any", false, false, false, 74), "avatar", [75], "method", false, false, false, 74), "html", null, true);
  304. yield "\" ";
  305. } else {
  306. yield " ";
  307. yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("img/avatar-2.jpg"), "html", null, true);
  308. yield " ";
  309. }
  310. yield " class=\"img-fluid rounded-circle\" alt=\"user-avatar\">
  311. <h2 class=\"h5 text-uppercase\"></h2>
  312. <span class=\"text-uppercase\">
  313. ";
  314. // line 77
  315. if ((($tmp = $this->extensions['Symfony\Bridge\Twig\Extension\SecurityExtension']->isGranted("IS_AUTHENTICATED_REMEMBERED")) && $tmp instanceof Markup ? (string) $tmp : $tmp)) {
  316. // line 78
  317. yield " ";
  318. 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.', 78, $this->source); })()), "user", [], "any", false, false, false, 78), "username", [], "any", false, false, false, 78), "html", null, true);
  319. yield "
  320. ";
  321. }
  322. // line 80
  323. yield " </span>
  324. </div>
  325. <div class=\"sidenav-header-logo\">
  326. <a href=\"index.html\" class=\"brand-small text-center\">
  327. <strong></strong>
  328. <strong class=\"text-primary\">D</strong>
  329. </a>
  330. </div>
  331. </div>
  332. ";
  333. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  334. $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  335. yield from [];
  336. }
  337. // line 91
  338. /**
  339. * @return iterable<null|scalar|\Stringable>
  340. */
  341. public function block_menu(array $context, array $blocks = []): iterable
  342. {
  343. $macros = $this->macros;
  344. $__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  345. $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "menu"));
  346. $__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  347. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "menu"));
  348. // line 92
  349. yield " <div class=\"main-menu\">
  350. <ul id=\"side-main-menu\" class=\"side-menu list-unstyled\">
  351. ";
  352. // line 94
  353. if ((($tmp = $this->extensions['Symfony\Bridge\Twig\Extension\SecurityExtension']->isGranted("ROLE_ADMIN")) && $tmp instanceof Markup ? (string) $tmp : $tmp)) {
  354. // line 95
  355. yield " <li class=\"";
  356. if ((CoreExtension::getAttribute($this->env, $this->source, 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.', 95, $this->source); })()), "request", [], "any", false, false, false, 95), "attributes", [], "any", false, false, false, 95), "get", ["_route"], "method", false, false, false, 95) == "admin_school_years")) {
  357. yield "active";
  358. }
  359. yield "\">
  360. <a href=\"";
  361. // line 96
  362. yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("admin_school_years");
  363. yield "\">
  364. <i class=\"fa fa-calendar\" aria-hidden=\"true\"></i>
  365. <span>Années scolaires</span>
  366. </a>
  367. </li>
  368. <li class=\"";
  369. // line 101
  370. if ((CoreExtension::getAttribute($this->env, $this->source, 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.', 101, $this->source); })()), "request", [], "any", false, false, false, 101), "attributes", [], "any", false, false, false, 101), "get", ["_route"], "method", false, false, false, 101) == "admin_quaters")) {
  371. yield "active";
  372. }
  373. yield "\">
  374. <a href=\"";
  375. // line 102
  376. yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("admin_quaters");
  377. yield "\">
  378. <i class=\"fa fa-calendar-check-o\" aria-hidden=\"true\"></i>
  379. <span>Trimestres</span>
  380. </a>
  381. </li>
  382. <li class=\"";
  383. // line 107
  384. if ((CoreExtension::getAttribute($this->env, $this->source, 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.', 107, $this->source); })()), "request", [], "any", false, false, false, 107), "attributes", [], "any", false, false, false, 107), "get", ["_route"], "method", false, false, false, 107) == "admin_sequences")) {
  385. yield "active";
  386. }
  387. yield "\">
  388. <a href=\"";
  389. // line 108
  390. yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("admin_sequences");
  391. yield "\">
  392. <i class=\"fa fa-calendar-minus-o\" aria-hidden=\"true\"></i>
  393. <span>Séquences</span>
  394. </a>
  395. </li>
  396. <li class=\"";
  397. // line 113
  398. if ((CoreExtension::getAttribute($this->env, $this->source, 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.', 113, $this->source); })()), "request", [], "any", false, false, false, 113), "attributes", [], "any", false, false, false, 113), "get", ["_route"], "method", false, false, false, 113) == "admin_programs")) {
  399. yield "active";
  400. }
  401. yield "\">
  402. <a href=\"";
  403. // line 114
  404. yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("admin_programs");
  405. yield "\">
  406. <i class=\"fa fa-table\" aria-hidden=\"true\"></i>
  407. <span>Programmes</span>
  408. </a>
  409. </li>
  410. <li class=\"";
  411. // line 119
  412. if ((CoreExtension::getAttribute($this->env, $this->source, 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.', 119, $this->source); })()), "request", [], "any", false, false, false, 119), "attributes", [], "any", false, false, false, 119), "get", ["_route"], "method", false, false, false, 119) == "admin_sections")) {
  413. yield "active";
  414. }
  415. yield "\">
  416. <a href=\"";
  417. // line 120
  418. yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("admin_sections");
  419. yield "\">
  420. <i class=\"fa fa-th-large\" aria-hidden=\"true\"></i>
  421. <span>Sections</span>
  422. </a>
  423. </li>
  424. <li class=\"";
  425. // line 125
  426. if ((CoreExtension::getAttribute($this->env, $this->source, 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.', 125, $this->source); })()), "request", [], "any", false, false, false, 125), "attributes", [], "any", false, false, false, 125), "get", ["_route"], "method", false, false, false, 125) == "admin_cycles")) {
  427. yield "active";
  428. }
  429. yield "\">
  430. <a href=\"";
  431. // line 126
  432. yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("admin_cycles");
  433. yield "\">
  434. <i class=\"fa fa-th-list\" aria-hidden=\"true\"></i>
  435. <span>Cycles</span>
  436. </a>
  437. </li>
  438. <li class=\"";
  439. // line 131
  440. if ((CoreExtension::getAttribute($this->env, $this->source, 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.', 131, $this->source); })()), "request", [], "any", false, false, false, 131), "attributes", [], "any", false, false, false, 131), "get", ["_route"], "method", false, false, false, 131) == "admin_levels")) {
  441. yield "active";
  442. }
  443. yield "\">
  444. <a href=\"";
  445. // line 132
  446. yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("admin_levels");
  447. yield "\">
  448. <i class=\"fa fa-list-ul\" aria-hidden=\"true\"></i>
  449. <span>Niveaux</span>
  450. </a>
  451. </li>
  452. <li class=\"";
  453. // line 137
  454. if ((CoreExtension::getAttribute($this->env, $this->source, 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.', 137, $this->source); })()), "request", [], "any", false, false, false, 137), "attributes", [], "any", false, false, false, 137), "get", ["_route"], "method", false, false, false, 137) == "admin_classrooms")) {
  455. yield "active";
  456. }
  457. yield "\">
  458. <a href=\"";
  459. // line 138
  460. yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("admin_classrooms");
  461. yield "\">
  462. <i class=\"fa fa-indent\" aria-hidden=\"true\"></i>
  463. <span>Classes</span>
  464. </a>
  465. </li>
  466. <li class=\"";
  467. // line 143
  468. if ((CoreExtension::getAttribute($this->env, $this->source, 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.', 143, $this->source); })()), "request", [], "any", false, false, false, 143), "attributes", [], "any", false, false, false, 143), "get", ["_route"], "method", false, false, false, 143) == "admin_modules")) {
  469. yield "active";
  470. }
  471. yield "\">
  472. <a href=\"";
  473. // line 144
  474. yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("admin_modules");
  475. yield "\">
  476. <i class=\"fa fa-folder-open-o\" aria-hidden=\"true\"></i>
  477. <span>Module</span>
  478. </a>
  479. </li>
  480. <li class=\"";
  481. // line 149
  482. if ((CoreExtension::getAttribute($this->env, $this->source, 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.', 149, $this->source); })()), "request", [], "any", false, false, false, 149), "attributes", [], "any", false, false, false, 149), "get", ["_route"], "method", false, false, false, 149) == "admin_domains")) {
  483. yield "active";
  484. }
  485. yield "\">
  486. <a href=\"";
  487. // line 150
  488. yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("admin_domains");
  489. yield "\">
  490. <i class=\"fa fa-user-md\" aria-hidden=\"true\"></i>
  491. <span>Departement.</span>
  492. </a>
  493. </li>
  494. <li class=\"";
  495. // line 155
  496. if ((CoreExtension::getAttribute($this->env, $this->source, 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.', 155, $this->source); })()), "request", [], "any", false, false, false, 155), "attributes", [], "any", false, false, false, 155), "get", ["_route"], "method", false, false, false, 155) == "admin_courses")) {
  497. yield "active";
  498. }
  499. yield "\">
  500. <a href=\"";
  501. // line 156
  502. yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("admin_courses");
  503. yield "\">
  504. <i class=\"fa fa-book\" aria-hidden=\"true\"></i>
  505. <span>Matières</span>
  506. </a>
  507. </li>
  508. <li class=\"";
  509. // line 161
  510. if ((CoreExtension::getAttribute($this->env, $this->source, 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.', 161, $this->source); })()), "request", [], "any", false, false, false, 161), "attributes", [], "any", false, false, false, 161), "get", ["_route"], "method", false, false, false, 161) == "admin_subscriptions")) {
  511. yield "active";
  512. }
  513. yield "\">
  514. <a href=\"";
  515. // line 162
  516. yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("admin_subscriptions");
  517. yield "\">
  518. <i class=\"fa fa-exchange\" aria-hidden=\"true\"></i>
  519. <span>Inscriptions</span>
  520. </a>
  521. </li>
  522. <li class=\"";
  523. // line 167
  524. if ((CoreExtension::getAttribute($this->env, $this->source, 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.', 167, $this->source); })()), "request", [], "any", false, false, false, 167), "attributes", [], "any", false, false, false, 167), "get", ["_route"], "method", false, false, false, 167) == "admin_students")) {
  525. yield "active";
  526. }
  527. yield "\">
  528. <a href=\"";
  529. // line 168
  530. yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("admin_students", ["type" => "new_students_not_yet_registered_checkbox"]);
  531. yield "\">
  532. <i class=\"fa fa-users\"></i>
  533. <span>Eleves</span>
  534. </a>
  535. </li>
  536. <li class=\"";
  537. // line 173
  538. if ((CoreExtension::getAttribute($this->env, $this->source, 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.', 173, $this->source); })()), "request", [], "any", false, false, false, 173), "attributes", [], "any", false, false, false, 173), "get", ["_route"], "method", false, false, false, 173) == "admin_attributions")) {
  539. yield "active";
  540. }
  541. yield "\">
  542. <a href=\"";
  543. // line 174
  544. yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("admin_attributions");
  545. yield "\">
  546. <i class=\"fa fa-map-signs\" aria-hidden=\"true\"></i>
  547. <span>Attributions</span>
  548. </a>
  549. </li>
  550. <li class=\"";
  551. // line 179
  552. if ((CoreExtension::getAttribute($this->env, $this->source, 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.', 179, $this->source); })()), "request", [], "any", false, false, false, 179), "attributes", [], "any", false, false, false, 179), "get", ["_route"], "method", false, false, false, 179) == "admin_users")) {
  553. yield "active";
  554. }
  555. yield "\">
  556. <a href=\"";
  557. // line 180
  558. yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("admin_users");
  559. yield "\">
  560. <i class=\"fa fa-user\" aria-hidden=\"true\"></i>
  561. <span>Personnel</span>
  562. </a>
  563. </li>
  564. ";
  565. // line 187
  566. yield " ";
  567. // line 188
  568. yield " ";
  569. // line 189
  570. yield "
  571. <li class=\"
  572. ";
  573. // line 191
  574. if ((is_string($_v0 = CoreExtension::getAttribute($this->env, $this->source, 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.', 191, $this->source); })()), "request", [], "any", false, false, false, 191), "attributes", [], "any", false, false, false, 191), "get", ["_route"], "method", false, false, false, 191)) && is_string($_v1 = "app_finance_") && str_starts_with($_v0, $_v1))) {
  575. // line 192
  576. yield " active
  577. ";
  578. }
  579. // line 194
  580. yield " \">
  581. <a href=\"";
  582. // line 195
  583. yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("app_finance_dashboard");
  584. yield "\">
  585. <i class=\"fa fa-money\"></i>
  586. <span>Finances</span>
  587. </a>
  588. <ul class=\"list-unstyled\">
  589. <li class=\"";
  590. // line 202
  591. if ((CoreExtension::getAttribute($this->env, $this->source, 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.', 202, $this->source); })()), "request", [], "any", false, false, false, 202), "attributes", [], "any", false, false, false, 202), "get", ["_route"], "method", false, false, false, 202) == "app_finance_dashboard")) {
  592. yield "active";
  593. }
  594. yield "\">
  595. <a href=\"";
  596. // line 203
  597. yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("app_finance_dashboard");
  598. yield "\">
  599. <i class=\"fa fa-dashboard\"></i>
  600. Tableau de bord
  601. </a>
  602. </li>
  603. <li class=\"";
  604. // line 209
  605. if ((is_string($_v2 = CoreExtension::getAttribute($this->env, $this->source, 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.', 209, $this->source); })()), "request", [], "any", false, false, false, 209), "attributes", [], "any", false, false, false, 209), "get", ["_route"], "method", false, false, false, 209)) && is_string($_v3 = "app_finance_fee_definition") && str_starts_with($_v2, $_v3))) {
  606. yield "active";
  607. }
  608. yield "\">
  609. <a href=\"";
  610. // line 210
  611. yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("app_finance_fee_definition_index");
  612. yield "\">
  613. <i class=\"fa fa-list-alt\"></i>
  614. Définitions des frais
  615. </a>
  616. </li>
  617. <li class=\"";
  618. // line 216
  619. if ((is_string($_v4 = CoreExtension::getAttribute($this->env, $this->source, 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.', 216, $this->source); })()), "request", [], "any", false, false, false, 216), "attributes", [], "any", false, false, false, 216), "get", ["_route"], "method", false, false, false, 216)) && is_string($_v5 = "app_finance_payment_") && str_starts_with($_v4, $_v5))) {
  620. yield "active";
  621. }
  622. yield "\">
  623. <a href=\"";
  624. // line 217
  625. yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("app_finance_payment_list");
  626. yield "\">
  627. <i class=\"fa fa-credit-card\"></i>
  628. Paiements
  629. </a>
  630. </li>
  631. </ul>
  632. </li>
  633. ";
  634. // line 227
  635. yield "
  636. <li class=\"";
  637. // line 229
  638. if ((CoreExtension::getAttribute($this->env, $this->source, 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.', 229, $this->source); })()), "request", [], "any", false, false, false, 229), "attributes", [], "any", false, false, false, 229), "get", ["_route"], "method", false, false, false, 229) == "financial_scope_index")) {
  639. yield "active";
  640. }
  641. yield "\">
  642. <a href=\"";
  643. // line 230
  644. yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("financial_scope_index");
  645. yield "\">
  646. <i class=\"fa fa-hand-holding-usd\" aria-hidden=\"true\"></i>
  647. <span>Financier</span>
  648. </a>
  649. </li>
  650. <li class=\"";
  651. // line 235
  652. if ((CoreExtension::getAttribute($this->env, $this->source, 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.', 235, $this->source); })()), "request", [], "any", false, false, false, 235), "attributes", [], "any", false, false, false, 235), "get", ["_route"], "method", false, false, false, 235) == "admin_statistics")) {
  653. yield "active";
  654. }
  655. yield "\">
  656. <a href=\"";
  657. // line 236
  658. yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("admin_statistics");
  659. yield "\">
  660. <i class=\"fa fa-area-chart\" aria-hidden=\"true\"></i>
  661. <span>Statistiques</span>
  662. </a>
  663. </li>
  664. ";
  665. }
  666. // line 242
  667. yield "
  668. <li class=\"";
  669. // line 243
  670. if ((CoreExtension::getAttribute($this->env, $this->source, 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.', 243, $this->source); })()), "request", [], "any", false, false, false, 243), "attributes", [], "any", false, false, false, 243), "get", ["_route"], "method", false, false, false, 243) == "admin_evaluations")) {
  671. yield "active";
  672. }
  673. yield "\">
  674. <a href=\"";
  675. // line 244
  676. yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("admin_evaluations");
  677. yield "\">
  678. <i class=\"fa fa-file-pdf-o\" aria-hidden=\"true\"></i>
  679. <span>Evaluations</span>
  680. </a>
  681. </li>
  682. ";
  683. // line 250
  684. if ((($tmp = $this->extensions['Symfony\Bridge\Twig\Extension\SecurityExtension']->isGranted("ROLE_DISCIPLINE")) && $tmp instanceof Markup ? (string) $tmp : $tmp)) {
  685. // line 251
  686. yield " <li class=\"";
  687. if ((CoreExtension::getAttribute($this->env, $this->source, 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.', 251, $this->source); })()), "request", [], "any", false, false, false, 251), "attributes", [], "any", false, false, false, 251), "get", ["_route"], "method", false, false, false, 251) == "admin_abscences_sheet_index")) {
  688. yield "active";
  689. }
  690. yield "\">
  691. <a href=\"";
  692. // line 252
  693. yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("admin_abscences_sheet_index");
  694. yield "\">
  695. <i class=\"fa fa-exclamation-triangle\" aria-hidden=\"true\"></i>
  696. <span>Discipline</span>
  697. </a>
  698. </li>
  699. ";
  700. }
  701. // line 258
  702. yield "
  703. ";
  704. // line 259
  705. if ((($tmp = $this->extensions['Symfony\Bridge\Twig\Extension\SecurityExtension']->isGranted("ROLE_FINANCIAL")) && $tmp instanceof Markup ? (string) $tmp : $tmp)) {
  706. // line 260
  707. yield " <li class=\"";
  708. if ((CoreExtension::getAttribute($this->env, $this->source, 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.', 260, $this->source); })()), "request", [], "any", false, false, false, 260), "attributes", [], "any", false, false, false, 260), "get", ["_route"], "method", false, false, false, 260) == "app_payment_index")) {
  709. yield "active";
  710. }
  711. yield "\">
  712. <a href=\"";
  713. // line 261
  714. yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("app_payment_index");
  715. yield "\">
  716. <i class=\"fa fa-credit-card\" aria-hidden=\"true\"></i>
  717. <span>Payment</span>
  718. </a>
  719. </li>
  720. <li class=\"";
  721. // line 266
  722. if ((CoreExtension::getAttribute($this->env, $this->source, 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.', 266, $this->source); })()), "request", [], "any", false, false, false, 266), "attributes", [], "any", false, false, false, 266), "get", ["_route"], "method", false, false, false, 266) == "admin_paymentPlans")) {
  723. yield "active";
  724. }
  725. yield "\">
  726. <a href=\"";
  727. // line 267
  728. yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("admin_paymentPlans");
  729. yield "\">
  730. <i class=\"fa fa-clock-o\" aria-hidden=\"true\"></i>
  731. <span>Scolarite</span>
  732. </a>
  733. </li>
  734. ";
  735. }
  736. // line 273
  737. yield "
  738. <li class=\"";
  739. // line 274
  740. if ((CoreExtension::getAttribute($this->env, $this->source, 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.', 274, $this->source); })()), "request", [], "any", false, false, false, 274), "attributes", [], "any", false, false, false, 274), "get", ["_route"], "method", false, false, false, 274) == "app_account")) {
  741. yield "active";
  742. }
  743. yield "\">
  744. <a href=\"";
  745. // line 275
  746. yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("app_account");
  747. yield "\">
  748. <i class=\"fa fa-user-circle\"></i>
  749. <span>Account</span>
  750. </a>
  751. </li>
  752. </ul>
  753. </div>
  754. ";
  755. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  756. $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  757. yield from [];
  758. }
  759. // line 288
  760. /**
  761. * @return iterable<null|scalar|\Stringable>
  762. */
  763. public function block_header(array $context, array $blocks = []): iterable
  764. {
  765. $macros = $this->macros;
  766. $__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  767. $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "header"));
  768. $__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  769. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "header"));
  770. // line 289
  771. yield " <header class=\"header d-flex align-items-center justify-content-between\">
  772. <a id=\"toggle-btn\" href=\"#\" class=\"menu-btn\"><i class=\"fa fa-bars\"></i></a>
  773. <a href=\"";
  774. // line 291
  775. yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("app_home");
  776. yield "\" class=\"navbar-brand text-center\">
  777. <strong class=\"text-primary\">SCHOOL MANAGEMENT SYSTEM</strong>
  778. </a>
  779. ";
  780. // line 294
  781. 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.', 294, $this->source); })()), "user", [], "any", false, false, false, 294)) && $tmp instanceof Markup ? (string) $tmp : $tmp)) {
  782. // line 295
  783. yield " <a id=\"logout_btn\" href=\"#\" onclick=\"event.preventDefault(); document.getElementById('js-logout-form').submit();\" class=\"btn btn-warning\">
  784. <i class=\"fa fa-sign-out\"></i>
  785. </a>
  786. <form id=\"js-logout-form\" action=\"";
  787. // line 298
  788. yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("app_logout");
  789. yield "\" style=\"display:none;\" method=\"POST\">
  790. <input type=\"hidden\" name=\"_csrf_token\" value=\"";
  791. // line 299
  792. yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->env->getRuntime('Symfony\Component\Form\FormRenderer')->renderCsrfToken("logout"), "html", null, true);
  793. yield "\">
  794. </form>
  795. ";
  796. }
  797. // line 302
  798. yield " </header>
  799. ";
  800. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  801. $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  802. yield from [];
  803. }
  804. // line 339
  805. /**
  806. * @return iterable<null|scalar|\Stringable>
  807. */
  808. public function block_content(array $context, array $blocks = []): iterable
  809. {
  810. $macros = $this->macros;
  811. $__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  812. $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "content"));
  813. $__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  814. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "content"));
  815. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  816. $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  817. yield from [];
  818. }
  819. // line 347
  820. /**
  821. * @return iterable<null|scalar|\Stringable>
  822. */
  823. public function block_footer(array $context, array $blocks = []): iterable
  824. {
  825. $macros = $this->macros;
  826. $__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  827. $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "footer"));
  828. $__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  829. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "footer"));
  830. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  831. $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  832. yield from [];
  833. }
  834. // line 349
  835. /**
  836. * @return iterable<null|scalar|\Stringable>
  837. */
  838. public function block_javascripts(array $context, array $blocks = []): iterable
  839. {
  840. $macros = $this->macros;
  841. $__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  842. $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "javascripts"));
  843. $__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  844. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "javascripts"));
  845. // line 350
  846. yield from $this->yieldParentBlock("javascripts", $context, $blocks);
  847. yield "
  848. <script src=\"";
  849. // line 351
  850. yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/js/jquery.cookie.js"), "html", null, true);
  851. yield "\"></script>
  852. <script src=\"";
  853. // line 352
  854. yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/js/grasp_mobile_progress_circle-1.0.0.min.js"), "html", null, true);
  855. yield "\"></script>
  856. <script src=\"";
  857. // line 353
  858. yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/js/jquery.validate.min.js"), "html", null, true);
  859. yield "\"></script>
  860. <script src=\"";
  861. // line 354
  862. 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);
  863. yield "\"></script>
  864. <script>
  865. // Toggle sidebar menu
  866. \$('#toggle-btn').on('click', function(e) {
  867. e.preventDefault();
  868. \$('.side-navbar').toggleClass('collapsed');
  869. });
  870. // Changement d'année scolaire
  871. \$('#select_year').on('change', function() {
  872. \$.ajax({
  873. type: \"POST\",
  874. url: \"";
  875. // line 367
  876. yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("update_school_year");
  877. yield "\",
  878. data: { selectedSchoolYear: \$(this).val() },
  879. success: function(){ location.reload(); },
  880. error: function(e){ console.log(e); alert(\"Echec.\"); }
  881. });
  882. });
  883. </script>
  884. ";
  885. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  886. $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  887. yield from [];
  888. }
  889. /**
  890. * @codeCoverageIgnore
  891. */
  892. public function getTemplateName(): string
  893. {
  894. return "layout/backEndLayout.html.twig";
  895. }
  896. /**
  897. * @codeCoverageIgnore
  898. */
  899. public function isTraitable(): bool
  900. {
  901. return false;
  902. }
  903. /**
  904. * @codeCoverageIgnore
  905. */
  906. public function getDebugInfo(): array
  907. {
  908. return array ( 976 => 367, 960 => 354, 956 => 353, 952 => 352, 948 => 351, 944 => 350, 931 => 349, 909 => 347, 887 => 339, 875 => 302, 869 => 299, 865 => 298, 860 => 295, 858 => 294, 852 => 291, 848 => 289, 835 => 288, 816 => 275, 810 => 274, 807 => 273, 798 => 267, 792 => 266, 784 => 261, 777 => 260, 775 => 259, 772 => 258, 763 => 252, 756 => 251, 754 => 250, 745 => 244, 739 => 243, 736 => 242, 727 => 236, 721 => 235, 713 => 230, 707 => 229, 703 => 227, 691 => 217, 685 => 216, 676 => 210, 670 => 209, 661 => 203, 655 => 202, 645 => 195, 642 => 194, 638 => 192, 636 => 191, 632 => 189, 630 => 188, 628 => 187, 619 => 180, 613 => 179, 605 => 174, 599 => 173, 591 => 168, 585 => 167, 577 => 162, 571 => 161, 563 => 156, 557 => 155, 549 => 150, 543 => 149, 535 => 144, 529 => 143, 521 => 138, 515 => 137, 507 => 132, 501 => 131, 493 => 126, 487 => 125, 479 => 120, 473 => 119, 465 => 114, 459 => 113, 451 => 108, 445 => 107, 437 => 102, 431 => 101, 423 => 96, 416 => 95, 414 => 94, 410 => 92, 397 => 91, 377 => 80, 371 => 78, 369 => 77, 355 => 74, 351 => 72, 338 => 71, 325 => 283, 323 => 91, 320 => 90, 318 => 71, 314 => 69, 301 => 68, 285 => 340, 283 => 339, 280 => 338, 274 => 334, 259 => 332, 255 => 331, 246 => 325, 236 => 318, 226 => 311, 220 => 307, 218 => 306, 214 => 304, 212 => 288, 208 => 286, 205 => 68, 201 => 65, 188 => 64, 174 => 61, 161 => 60, 98 => 7, 94 => 6, 90 => 5, 85 => 4, 72 => 3, 49 => 1,);
  909. }
  910. public function getSourceContext(): Source
  911. {
  912. return new Source("{% extends 'layout/base.html.twig' %}
  913. {% block stylesheets %}
  914. {{ parent() }}
  915. <link rel=\"stylesheet\" href=\"{{ asset('assets/css/style.blue.css') }}\">
  916. <link rel=\"stylesheet\" href=\"{{ asset('assets/css/jquery.mCustomScrollbar.css') }}\">
  917. <link rel=\"stylesheet\" href=\"{{ asset('assets/cdnjs.cloudflare.com/ajax/libs/Chart.js/2.9.3/Chart.min.css') }}\">
  918. <style>
  919. /* Sidebar */
  920. .side-navbar {
  921. position: fixed;
  922. top: 0;
  923. left: 0;
  924. width: 220px;
  925. height: 100vh;
  926. background: #2f3e47;
  927. color: white;
  928. overflow-y: auto;
  929. transition: all 0.3s ease;
  930. z-index: 999;
  931. }
  932. .side-navbar a { color: #d1d4d6; display:block; padding:10px 15px; }
  933. .side-navbar a:hover { background:#1e2a31; color:white; }
  934. .sidenav-header img { width:70px; border-radius:50%; margin-bottom:10px; }
  935. /* Collapsed sidebar (mobile) */
  936. .side-navbar.collapsed {
  937. left: -220px;
  938. }
  939. /* Content */
  940. .flex-grow-1 {
  941. margin-left: 220px;
  942. transition: margin 0.3s ease;
  943. }
  944. .side-navbar.collapsed ~ .flex-grow-1 {
  945. margin-left: 0;
  946. }
  947. /* Header */
  948. .header { background:white; border-bottom:1px solid #eee; padding:10px 20px; display:flex; justify-content:space-between; align-items:center; }
  949. /* Dashboard cards */
  950. .dashboard-card { background:white; border-radius:8px; padding:15px; box-shadow:0 2px 6px rgba(0,0,0,0.1); text-align:center; }
  951. .dashboard-card i { font-size:2em; margin-bottom:5px; }
  952. /* Toggle button */
  953. #toggle-btn { font-size:1.3em; cursor:pointer; color:#2f3e47; }
  954. /* Responsive */
  955. @media (max-width: 768px) {
  956. .flex-grow-1 { margin-left: 0; }
  957. .side-navbar { left: -220px; }
  958. .side-navbar.collapsed { left: 0; }
  959. }
  960. </style>
  961. {% endblock %}
  962. {% block title %}
  963. {{ parent() }} / Administration
  964. {% endblock %}
  965. {% block main %}
  966. <div class=\"d-flex\">
  967. {# Sidebar #}
  968. {% block sidebar %}
  969. <nav class=\"side-navbar\">
  970. <div class=\"side-navbar-wrapper\">
  971. {% block identification %}
  972. <div class=\"sidenav-header d-flex align-items-center justify-content-center\">
  973. <div class=\"sidenav-header-inner text-center\">
  974. <img src={% if is_granted(\"IS_AUTHENTICATED_REMEMBERED\") %} \"{{ app.user.avatar(75) }}\" {% else %} {{ asset(\"img/avatar-2.jpg\") }} {% endif %} class=\"img-fluid rounded-circle\" alt=\"user-avatar\">
  975. <h2 class=\"h5 text-uppercase\"></h2>
  976. <span class=\"text-uppercase\">
  977. {% if is_granted(\"IS_AUTHENTICATED_REMEMBERED\") %}
  978. {{ app.user.username }}
  979. {% endif %}
  980. </span>
  981. </div>
  982. <div class=\"sidenav-header-logo\">
  983. <a href=\"index.html\" class=\"brand-small text-center\">
  984. <strong></strong>
  985. <strong class=\"text-primary\">D</strong>
  986. </a>
  987. </div>
  988. </div>
  989. {% endblock identification %}
  990. {% block menu %}
  991. <div class=\"main-menu\">
  992. <ul id=\"side-main-menu\" class=\"side-menu list-unstyled\">
  993. {% if is_granted('ROLE_ADMIN') %}
  994. <li class=\"{% if app.request.attributes.get('_route') == \"admin_school_years\" %}active{% endif %}\">
  995. <a href=\"{{ path('admin_school_years') }}\">
  996. <i class=\"fa fa-calendar\" aria-hidden=\"true\"></i>
  997. <span>Années scolaires</span>
  998. </a>
  999. </li>
  1000. <li class=\"{% if app.request.attributes.get('_route') == \"admin_quaters\" %}active{% endif %}\">
  1001. <a href=\"{{ path('admin_quaters') }}\">
  1002. <i class=\"fa fa-calendar-check-o\" aria-hidden=\"true\"></i>
  1003. <span>Trimestres</span>
  1004. </a>
  1005. </li>
  1006. <li class=\"{% if app.request.attributes.get('_route') == \"admin_sequences\" %}active{% endif %}\">
  1007. <a href=\"{{ path('admin_sequences') }}\">
  1008. <i class=\"fa fa-calendar-minus-o\" aria-hidden=\"true\"></i>
  1009. <span>Séquences</span>
  1010. </a>
  1011. </li>
  1012. <li class=\"{% if app.request.attributes.get('_route') == \"admin_programs\" %}active{% endif %}\">
  1013. <a href=\"{{ path('admin_programs') }}\">
  1014. <i class=\"fa fa-table\" aria-hidden=\"true\"></i>
  1015. <span>Programmes</span>
  1016. </a>
  1017. </li>
  1018. <li class=\"{% if app.request.attributes.get('_route') == \"admin_sections\" %}active{% endif %}\">
  1019. <a href=\"{{ path('admin_sections') }}\">
  1020. <i class=\"fa fa-th-large\" aria-hidden=\"true\"></i>
  1021. <span>Sections</span>
  1022. </a>
  1023. </li>
  1024. <li class=\"{% if app.request.attributes.get('_route') == \"admin_cycles\" %}active{% endif %}\">
  1025. <a href=\"{{ path('admin_cycles') }}\">
  1026. <i class=\"fa fa-th-list\" aria-hidden=\"true\"></i>
  1027. <span>Cycles</span>
  1028. </a>
  1029. </li>
  1030. <li class=\"{% if app.request.attributes.get('_route') == \"admin_levels\" %}active{% endif %}\">
  1031. <a href=\"{{ path('admin_levels') }}\">
  1032. <i class=\"fa fa-list-ul\" aria-hidden=\"true\"></i>
  1033. <span>Niveaux</span>
  1034. </a>
  1035. </li>
  1036. <li class=\"{% if app.request.attributes.get('_route') == \"admin_classrooms\" %}active{% endif %}\">
  1037. <a href=\"{{ path('admin_classrooms') }}\">
  1038. <i class=\"fa fa-indent\" aria-hidden=\"true\"></i>
  1039. <span>Classes</span>
  1040. </a>
  1041. </li>
  1042. <li class=\"{% if app.request.attributes.get('_route') == \"admin_modules\" %}active{% endif %}\">
  1043. <a href=\"{{ path('admin_modules') }}\">
  1044. <i class=\"fa fa-folder-open-o\" aria-hidden=\"true\"></i>
  1045. <span>Module</span>
  1046. </a>
  1047. </li>
  1048. <li class=\"{% if app.request.attributes.get('_route') == \"admin_domains\" %}active{% endif %}\">
  1049. <a href=\"{{ path('admin_domains') }}\">
  1050. <i class=\"fa fa-user-md\" aria-hidden=\"true\"></i>
  1051. <span>Departement.</span>
  1052. </a>
  1053. </li>
  1054. <li class=\"{% if app.request.attributes.get('_route') == \"admin_courses\" %}active{% endif %}\">
  1055. <a href=\"{{ path('admin_courses') }}\">
  1056. <i class=\"fa fa-book\" aria-hidden=\"true\"></i>
  1057. <span>Matières</span>
  1058. </a>
  1059. </li>
  1060. <li class=\"{% if app.request.attributes.get('_route') == \"admin_subscriptions\" %}active{% endif %}\">
  1061. <a href=\"{{ path('admin_subscriptions') }}\">
  1062. <i class=\"fa fa-exchange\" aria-hidden=\"true\"></i>
  1063. <span>Inscriptions</span>
  1064. </a>
  1065. </li>
  1066. <li class=\"{% if app.request.attributes.get('_route') == \"admin_students\" %}active{% endif %}\">
  1067. <a href=\"{{ path('admin_students', { 'type': \"new_students_not_yet_registered_checkbox\" }) }}\">
  1068. <i class=\"fa fa-users\"></i>
  1069. <span>Eleves</span>
  1070. </a>
  1071. </li>
  1072. <li class=\"{% if app.request.attributes.get('_route') == \"admin_attributions\" %}active{% endif %}\">
  1073. <a href=\"{{ path('admin_attributions') }}\">
  1074. <i class=\"fa fa-map-signs\" aria-hidden=\"true\"></i>
  1075. <span>Attributions</span>
  1076. </a>
  1077. </li>
  1078. <li class=\"{% if app.request.attributes.get('_route') == \"admin_users\" %}active{% endif %}\">
  1079. <a href=\"{{ path('admin_users') }}\">
  1080. <i class=\"fa fa-user\" aria-hidden=\"true\"></i>
  1081. <span>Personnel</span>
  1082. </a>
  1083. </li>
  1084. {# ================================================= #}
  1085. {# ================= MENU FINANCES ================= #}
  1086. {# ================================================= #}
  1087. <li class=\"
  1088. {% if app.request.attributes.get('_route') starts with 'app_finance_' %}
  1089. active
  1090. {% endif %}
  1091. \">
  1092. <a href=\"{{ path('app_finance_dashboard') }}\">
  1093. <i class=\"fa fa-money\"></i>
  1094. <span>Finances</span>
  1095. </a>
  1096. <ul class=\"list-unstyled\">
  1097. <li class=\"{% if app.request.attributes.get('_route') == 'app_finance_dashboard' %}active{% endif %}\">
  1098. <a href=\"{{ path('app_finance_dashboard') }}\">
  1099. <i class=\"fa fa-dashboard\"></i>
  1100. Tableau de bord
  1101. </a>
  1102. </li>
  1103. <li class=\"{% if app.request.attributes.get('_route') starts with 'app_finance_fee_definition' %}active{% endif %}\">
  1104. <a href=\"{{ path('app_finance_fee_definition_index') }}\">
  1105. <i class=\"fa fa-list-alt\"></i>
  1106. Définitions des frais
  1107. </a>
  1108. </li>
  1109. <li class=\"{% if app.request.attributes.get('_route') starts with 'app_finance_payment_' %}active{% endif %}\">
  1110. <a href=\"{{ path('app_finance_payment_list') }}\">
  1111. <i class=\"fa fa-credit-card\"></i>
  1112. Paiements
  1113. </a>
  1114. </li>
  1115. </ul>
  1116. </li>
  1117. {# ============== FIN MENU FINANCES ============== #}
  1118. <li class=\"{% if app.request.attributes.get('_route') == \"financial_scope_index\" %}active{% endif %}\">
  1119. <a href=\"{{ path('financial_scope_index') }}\">
  1120. <i class=\"fa fa-hand-holding-usd\" aria-hidden=\"true\"></i>
  1121. <span>Financier</span>
  1122. </a>
  1123. </li>
  1124. <li class=\"{% if app.request.attributes.get('_route') == \"admin_statistics\" %}active{% endif %}\">
  1125. <a href=\"{{ path('admin_statistics') }}\">
  1126. <i class=\"fa fa-area-chart\" aria-hidden=\"true\"></i>
  1127. <span>Statistiques</span>
  1128. </a>
  1129. </li>
  1130. {% endif %}
  1131. <li class=\"{% if app.request.attributes.get('_route') == \"admin_evaluations\" %}active{% endif %}\">
  1132. <a href=\"{{ path('admin_evaluations') }}\">
  1133. <i class=\"fa fa-file-pdf-o\" aria-hidden=\"true\"></i>
  1134. <span>Evaluations</span>
  1135. </a>
  1136. </li>
  1137. {% if is_granted('ROLE_DISCIPLINE') %}
  1138. <li class=\"{% if app.request.attributes.get('_route') == \"admin_abscences_sheet_index\" %}active{% endif %}\">
  1139. <a href=\"{{ path('admin_abscences_sheet_index') }}\">
  1140. <i class=\"fa fa-exclamation-triangle\" aria-hidden=\"true\"></i>
  1141. <span>Discipline</span>
  1142. </a>
  1143. </li>
  1144. {% endif %}
  1145. {% if is_granted('ROLE_FINANCIAL') %}
  1146. <li class=\"{% if app.request.attributes.get('_route') == \"app_payment_index\" %}active{% endif %}\">
  1147. <a href=\"{{ path('app_payment_index') }}\">
  1148. <i class=\"fa fa-credit-card\" aria-hidden=\"true\"></i>
  1149. <span>Payment</span>
  1150. </a>
  1151. </li>
  1152. <li class=\"{% if app.request.attributes.get('_route') == \"admin_paymentPlans\" %}active{% endif %}\">
  1153. <a href=\"{{ path('admin_paymentPlans') }}\">
  1154. <i class=\"fa fa-clock-o\" aria-hidden=\"true\"></i>
  1155. <span>Scolarite</span>
  1156. </a>
  1157. </li>
  1158. {% endif %}
  1159. <li class=\"{% if app.request.attributes.get('_route') == \"app_account\" %}active{% endif %}\">
  1160. <a href=\"{{ path('app_account') }}\">
  1161. <i class=\"fa fa-user-circle\"></i>
  1162. <span>Account</span>
  1163. </a>
  1164. </li>
  1165. </ul>
  1166. </div>
  1167. {% endblock menu %}
  1168. </div>
  1169. </nav>
  1170. {% endblock sidebar %}
  1171. <div class=\"page home-page\">
  1172. {% block header %}
  1173. <header class=\"header d-flex align-items-center justify-content-between\">
  1174. <a id=\"toggle-btn\" href=\"#\" class=\"menu-btn\"><i class=\"fa fa-bars\"></i></a>
  1175. <a href=\"{{ path('app_home') }}\" class=\"navbar-brand text-center\">
  1176. <strong class=\"text-primary\">SCHOOL MANAGEMENT SYSTEM</strong>
  1177. </a>
  1178. {% if app.user %}
  1179. <a id=\"logout_btn\" href=\"#\" onclick=\"event.preventDefault(); document.getElementById('js-logout-form').submit();\" class=\"btn btn-warning\">
  1180. <i class=\"fa fa-sign-out\"></i>
  1181. </a>
  1182. <form id=\"js-logout-form\" action=\"{{ path('app_logout') }}\" style=\"display:none;\" method=\"POST\">
  1183. <input type=\"hidden\" name=\"_csrf_token\" value=\"{{ csrf_token('logout') }}\">
  1184. </form>
  1185. {% endif %}
  1186. </header>
  1187. {% endblock %}
  1188. <section class=\"container-fluid mt-4\">
  1189. {% if is_granted('ROLE_ADMIN') %}
  1190. <div class=\"row mb-4\">
  1191. <div class=\"col-md-3\">
  1192. <div class=\"dashboard-card text-center\">
  1193. <i class=\"fa fa-graduation-cap text-primary\"></i>
  1194. <h4>{{ students_count() }}</h4>
  1195. <p>Élèves</p>
  1196. </div>
  1197. </div>
  1198. <div class=\"col-md-3\">
  1199. <div class=\"dashboard-card text-center\">
  1200. <i class=\"fa fa-users text-success\"></i>
  1201. <h4>{{ teachers_count() }}</h4>
  1202. <p>Enseignants</p>
  1203. </div>
  1204. </div>
  1205. <div class=\"col-md-3\">
  1206. <div class=\"dashboard-card text-center\">
  1207. <i class=\"fa fa-home text-warning\"></i>
  1208. <h4>{{ rooms_count() }}</h4>
  1209. <p>Classes</p>
  1210. </div>
  1211. </div>
  1212. <div class=\"col-md-3\">
  1213. <select class=\"form-control\" id=\"select_year\">
  1214. {% for year in years()|reverse %}
  1215. <option value=\"{{ year.id }}\" {% if app.session.get('session_school_year') == year.id %}selected{% endif %}>{{ year.code }}</option>
  1216. {% endfor %}
  1217. </select>
  1218. </div>
  1219. </div>
  1220. {% endif %}
  1221. {% block content %}{% endblock %}
  1222. </section>
  1223. </div>
  1224. </div>
  1225. {% endblock %}
  1226. {% block footer %}{% endblock %}
  1227. {% block javascripts %}
  1228. {{ parent() }}
  1229. <script src=\"{{ asset('assets/js/jquery.cookie.js') }}\"></script>
  1230. <script src=\"{{ asset('assets/js/grasp_mobile_progress_circle-1.0.0.min.js') }}\"></script>
  1231. <script src=\"{{ asset('assets/js/jquery.validate.min.js') }}\"></script>
  1232. <script src=\"{{ asset('assets/js/jquery.mCustomScrollbar.concat.min.js') }}\"></script>
  1233. <script>
  1234. // Toggle sidebar menu
  1235. \$('#toggle-btn').on('click', function(e) {
  1236. e.preventDefault();
  1237. \$('.side-navbar').toggleClass('collapsed');
  1238. });
  1239. // Changement d'année scolaire
  1240. \$('#select_year').on('change', function() {
  1241. \$.ajax({
  1242. type: \"POST\",
  1243. url: \"{{ path('update_school_year') }}\",
  1244. data: { selectedSchoolYear: \$(this).val() },
  1245. success: function(){ location.reload(); },
  1246. error: function(e){ console.log(e); alert(\"Echec.\"); }
  1247. });
  1248. });
  1249. </script>
  1250. {% endblock %}", "layout/backEndLayout.html.twig", "/var/www/bethesda/templates/layout/backEndLayout.html.twig");
  1251. }
  1252. }