templates/base_baux.html.twig line 1

Open in your IDE?
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4.     <!-- Required Meta Tags Always Come First -->
  5.     <meta charset="utf-8">
  6.     <meta
  7.             name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
  8.     <!-- Title -->
  9.     <title>Dashboard | Front - Admin &amp; Dashboard Template</title>
  10.     <!-- Favicon -->
  11.     <linkrel="shortcut icon" href="{{ asset('assets/img/logo-MUAT.png') }}">
  12.     <link rel="icon" href="{{ asset('assets/img/logo-MUAT-2.png') }}" type="image/x-icon">
  13.     <!-- Font -->
  14.     <linkhref="https://fonts.googleapis.com/css2?family=Inter:wght@400;600&display=swap" rel="stylesheet">
  15.     <!-- CSS Implementing Plugins -->
  16.     <link rel="stylesheet" href="{{ asset('assets/vendor/bootstrap-icons/font/bootstrap-icons.css') }}">
  17.     <link rel="stylesheet" href="{{ asset('assets/vendor/daterangepicker/daterangepicker.css') }}">
  18.     <link rel="stylesheet" href="{{ asset('assets/vendor/tom-select/dist/css/tom-select.bootstrap5.css') }}">
  19.     <link rel="stylesheet" href="{{ asset('assets/vendor/quill/dist/quill.snow.css') }}">
  20.     <!-- CSS Front Template -->
  21.     <link rel="preload" href="{{ asset('assets/css/theme.min.css') }}" data-hs-appearance="default" as="style">
  22.     <link rel="preload" href="{{ asset('assets/css/theme-dark.min.css') }}" data-hs-appearance="dark" as="style">
  23.     <link rel="stylesheet" href="{{ asset('assets/vendor/daterangepicker/daterangepicker.css') }}">
  24.     <link rel="preload" href="{{ asset('assets/css/etat-civil.css') }}" data-hs-appearance="default" as="style">
  25.     {% block javascripts %}
  26.         {{ encore_entry_script_tags('app') }}
  27.         <link rel="stylesheet" href="https://unpkg.com/leaflet@1.9.3/dist/leaflet.css" crossorigin=""/>
  28.     {% endblock %}
  29.     <style data-hs-appearance-onload-styles>
  30.         * {
  31.             transition: unset !important;
  32.         }
  33.         body {
  34.             opacity: 0;
  35.         }
  36.     </style>
  37.     {% block javascript %}
  38.     {{ encore_entry_script_tags('app') }}
  39.         <script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
  40.         <script src="https://unpkg.com/leaflet@1.9.3/dist/leaflet.js"  crossorigin=""></script>
  41.     {% endblock %}
  42.     <!-- parse-ignore-start -->
  43.     <script>
  44.         window.hs_config = {
  45.             "autopath": "@@autopath",
  46.             "deleteLine": "hs-builder:delete",
  47.             "deleteLine:build": "hs-builder:build-delete",
  48.             "deleteLine:dist": "hs-builder:dist-delete",
  49.             "previewMode": false,
  50.             "startPath": "/index.html",
  51.             "vars": {
  52.                 "themeFont": "https://fonts.googleapis.com/css2?family=Inter:wght@400;600&display=swap",
  53.                 "version": "?v=1.0"
  54.             },
  55.             "layoutBuilder": {
  56.                 "extend": {
  57.                     "switcherSupport": true
  58.                 },
  59.                 "header": {
  60.                     "layoutMode": "default",
  61.                     "containerMode": "container-fluid"
  62.                 },
  63.                 "sidebarLayout": "default"
  64.             },
  65.             "themeAppearance": {
  66.                 "layoutSkin": "default",
  67.                 "sidebarSkin": "default",
  68.                 "styles": {
  69.                     "colors": {
  70.                         "primary": "#377dff",
  71.                         "transparent": "transparent",
  72.                         "white": "#fff",
  73.                         "dark": "132144",
  74.                         "gray": {
  75.                             "100": "#f9fafc",
  76.                             "900": "#1e2022"
  77.                         }
  78.                     },
  79.                     "font": "Inter"
  80.                 }
  81.             },
  82.             "languageDirection": {
  83.                 "lang": "en"
  84.             },
  85.             "skipFilesFromBundle": {
  86.                 "dist": ["assets/js/hs.theme-appearance.js", "assets/js/hs.theme-appearance-charts.js", "assets/js/demo.js"],
  87.                 "build": ["assets/css/theme.css", "assets/vendor/hs-navbar-vertical-aside/dist/hs-navbar-vertical-aside-mini-cache.js", "assets/js/demo.js", "assets/css/theme-dark.css", "assets/css/docs.css", "assets/vendor/icon-set/style.css", "assets/js/hs.theme-appearance.js", "assets/js/hs.theme-appearance-charts.js", "node_modules/chartjs-plugin-datalabels/dist/chartjs-plugin-datalabels.min.js", "assets/js/demo.js"]
  88.             },
  89.             "minifyCSSFiles": ["assets/css/theme.css", "assets/css/theme-dark.css"],
  90.             "copyDependencies": {
  91.                 "dist": {
  92.                     "*assets/js/theme-custom.js": ""
  93.                 },
  94.                 "build": {
  95.                     "*assets/js/theme-custom.js": "",
  96.                     "node_modules/bootstrap-icons/font/*fonts/**": "assets/css"
  97.                 }
  98.             },
  99.             "buildFolder": "",
  100.             "replacePathsToCDN": {},
  101.             "directoryNames": {
  102.                 "src": "./src",
  103.                 "dist": "./dist",
  104.                 "build": "./build"
  105.             },
  106.             "fileNames": {
  107.                 "dist": {
  108.                     "js": "theme.min.js",
  109.                     "css": "theme.min.css"
  110.                 },
  111.                 "build": {
  112.                     "css": "theme.min.css",
  113.                     "js": "theme.min.js",
  114.                     "vendorCSS": "vendor.min.css",
  115.                     "vendorJS": "vendor.min.js"
  116.                 }
  117.             },
  118.             "fileTypes": "jpg|png|svg|mp4|webm|ogv|json"
  119.         }
  120.         window.hs_config.gulpRGBA = (p1) => {
  121.             const options = p1.split(',')
  122.             const hex = options[0].toString()
  123.             const transparent = options[1].toString()
  124.             var c;
  125.             if (/^#([A-Fa-f0-9]{3}){1,2}$/.test(hex)) {
  126.                 c = hex.substring(1).split('');
  127.                 if (c.length == 3) {
  128.                     c = [c[0], c[0], c[1], c[1], c[2], c[2]];
  129.                 }
  130.                 c = '0x' + c.join('');
  131.                 return 'rgba(' + [(c >> 16) & 255, (c >> 8) & 255, c & 255].join(',') + ',' + transparent + ')';
  132.             }
  133.             throw new Error('Bad Hex');
  134.         }
  135.         window.hs_config.gulpDarken = (p1) => {
  136.             const options = p1.split(',')
  137.             let col = options[0].toString()
  138.             let amt = -parseInt(options[1])
  139.             var usePound = false
  140.             if (col[0] == "#") {
  141.                 col = col.slice(1)
  142.                 usePound = true
  143.             }
  144.             var num = parseInt(col, 16)
  145.             var r = (num >> 16) + amt
  146.             if (r > 255) {
  147.                 r = 255
  148.             } else if (r < 0) {
  149.                 r = 0
  150.             }
  151.             var b = ((num >> 8) & 0x00FF) + amt
  152.             if (b > 255) {
  153.                 b = 255
  154.             } else if (b < 0) {
  155.                 b = 0
  156.             }
  157.             var g = (num & 0x0000FF) + amt
  158.             if (g > 255) {
  159.                 g = 255
  160.             } else if (g < 0) {
  161.                 g = 0
  162.             }
  163.             return (usePound ? "#" : "") + (g | (b << 8) | (r << 16)).toString(16)
  164.         }
  165.         window.hs_config.gulpLighten = (p1) => {
  166.             const options = p1.split(',')
  167.             let col = options[0].toString()
  168.             let amt = parseInt(options[1])
  169.             var usePound = false
  170.             if (col[0] == "#") {
  171.                 col = col.slice(1)
  172.                 usePound = true
  173.             }
  174.             var num = parseInt(col, 16)
  175.             var r = (num >> 16) + amt
  176.             if (r > 255) {
  177.                 r = 255
  178.             } else if (r < 0) {
  179.                 r = 0
  180.             }
  181.             var b = ((num >> 8) & 0x00FF) + amt
  182.             if (b > 255) {
  183.                 b = 255
  184.             } else if (b < 0) {
  185.                 b = 0
  186.             }
  187.             var g = (num & 0x0000FF) + amt
  188.             if (g > 255) {
  189.                 g = 255
  190.             } else if (g < 0) {
  191.                 g = 0
  192.             }
  193.             return (usePound ? "#" : "") + (g | (b << 8) | (r << 16)).toString(16)
  194.         }
  195.     </script>
  196.     <!-- parse-ignore-end -->
  197. </head>
  198. <body class="has-navbar-vertical-aside navbar-vertical-aside-show-xl footer-offset">
  199. <script src="{{ asset('assets/js/hs.theme-appearance.js') }}"></script>
  200. <script src="{{ asset('assets/vendor/hs-navbar-vertical-aside/dist/hs-navbar-vertical-aside-mini-cache.js') }}"></script>
  201. <!-- ========== HEADER ========== -->
  202. <header id="header"
  203.         class="navbar navbar-expand-lg navbar-fixed navbar-height navbar-container navbar-bordered bg-white">
  204.     <div
  205.             class="navbar-nav-wrap">
  206.         <!-- Logo -->
  207.         <a class="navbar-brand" href="#" aria-label="Front">
  208.             <img class="navbar-brand-logo" src="{{ asset('assets/img/Guinea_Logo_New_2.png') }}" alt="Logo"
  209.                  data-hs-theme-appearance="default">
  210.             {#
  211.             <img class="navbar-brand-logo" src="{{ asset('assets/svg/logos/logo.svg') }}" alt="Logo" data-hs-theme-appearance="default">
  212.             <img class="navbar-brand-logo" src="{{ asset('assets/svg/logos-light/logo.svg') }}" alt="Logo" data-hs-theme-appearance="dark">
  213.             <img class="navbar-brand-logo-mini" src="{{ asset('assets/svg/logos/logo-short.svg') }}" alt="Logo" data-hs-theme-appearance="default">
  214.             <img class="navbar-brand-logo-mini" src="{{ asset('assets/svg/logos-light/logo-short.svg') }}" alt="Logo" data-hs-theme-appearance="dark"> #}
  215.         </a>
  216.         <!-- End Logo -->
  217.         <div
  218.                 class="navbar-nav-wrap-content-start">
  219.             <!-- Navbar Vertical Toggle -->
  220.             <button type="button" class="js-navbar-vertical-aside-toggle-invoker navbar-aside-toggler">
  221.                 <i class="bi-arrow-bar-left navbar-toggler-short-align"
  222.                    data-bs-template='<div class="tooltip d-none d-md-block" role="tooltip"><div class="arrow"></div><div class="tooltip-inner"></div></div>'
  223.                    data-bs-toggle="tooltip" data-bs-placement="right" title="Collapse"></i>
  224.                 <i class="bi-arrow-bar-right navbar-toggler-full-align"
  225.                    data-bs-template='<div class="tooltip d-none d-md-block" role="tooltip"><div class="arrow"></div><div class="tooltip-inner"></div></div>'
  226.                    data-bs-toggle="tooltip" data-bs-placement="right" title="Expand"></i>
  227.             </button>
  228.             <!-- End Navbar Vertical Toggle -->
  229.             {# <div {{react_component('Search')}}></div> #}
  230.         </div>
  231.         {% if app.user %}
  232.         <div class="navbar-nav-wrap-content-end">
  233.             <!-- Navbar -->
  234.             <ul class="navbar-nav">
  235.                 <li class="nav-item">
  236.                     <!-- Account -->
  237.                     <div class="dropdown">
  238.                         <a class="navbar-dropdown-account-wrapper" href="javascript:;" id="accountNavbarDropdown"
  239.                            data-bs-toggle="dropdown" aria-expanded="false" data-bs-auto-close="outside"
  240.                            data-bs-dropdown-animation>
  241.                             <div class="avatar avatar-sm avatar-circle">
  242.                                 <img class="avatar-img" src="{{ asset('assets/img/Guinea_Logo_New_2.png') }}"
  243.                                      alt="Image Description">
  244.                                 <span class="avatar-status avatar-sm-status avatar-status-success"></span>
  245.                             </div>
  246.                         </a>
  247.                         <div class="dropdown-menu dropdown-menu-end navbar-dropdown-menu navbar-dropdown-menu-borderless navbar-dropdown-account"
  248.                              aria-labelledby="accountNavbarDropdown" style="width: 16rem;">
  249.                             <div class="dropdown-item-text">
  250.                                 <div class="d-flex align-items-center">
  251.                                     <div class="avatar avatar-sm avatar-circle">
  252.                                         <img class="avatar-img" src="{{ asset('assets/img/Guinea_Logo_New_2.png') }}"
  253.                                              alt="Image Description">
  254.                                     </div>
  255.                                     <div class="flex-grow-1 ms-3">
  256.                                         <h5 class="mb-0">Agent Habitat
  257.                                         </h5>
  258.                                         <p class="card-text text-body">
  259.                                             {{ app.user.email }} </p>
  260.                                     </div>
  261.                                 </div>
  262.                             </div>
  263.                             <div class="dropdown-divider"></div>
  264.                             <a class="dropdown-item" href="#">Profil & Paramètres</a>
  265.                             <div class="dropdown-divider"></div>
  266.                             <a class="dropdown-item" href="{{path('app_logout')}} ">Deconnexion</a>
  267.                         </div>
  268.                     </div>
  269.                     <!-- End Account -->
  270.                 </li>
  271.             </ul>
  272.             <!-- End Navbar -->
  273.         </div>
  274.         {% endif %}
  275.     </div>
  276. </header>
  277. <!-- ========== END HEADER ========== -->
  278. <!-- ========== MAIN CONTENT ========== -->
  279. <!-- Navbar Vertical -->
  280. {% if is_granted('ROLE_ADMIN') %}
  281.     {% include '_header.html.twig' %}
  282. {% endif %}
  283. <!-- End Navbar Vertical -->
  284. <main id="content" role="main" class="main">
  285.     <!-- Content -->
  286.     <div class="content container-fluid">
  287.         
  288.         {% include '_page_header.html.twig' %}
  289.         {% block stats %}{% endblock %}
  290.         {% block body %}{% endblock %}
  291.     </div>
  292.     <!-- End Content -->
  293.     <!-- Footer -->
  294.     <div class="footer">
  295.         <div class="row justify-content-between align-items-center">
  296.             <div class="col">
  297.                 <p class="fs-6 mb-0">&copy; Innovation StartUp BrainSense
  298.                     <span class="d-none d-sm-inline-block">{{ 'now'|date('Y') }}</span>
  299.                 </p>
  300.             </div>
  301.             <!-- End Col -->
  302.         </div>
  303.     </div>
  304.     <!-- End Row -->
  305.     <!-- End Footer -->
  306. </main>
  307. <!-- ========== END MAIN CONTENT ========== -->
  308. </body>
  309. <!-- JS Global Compulsory  -->
  310. <script src="{{ asset('assets/vendor/jquery/dist/jquery.min.js') }}"></script>
  311. <script src="{{ asset('assets/vendor/jquery-migrate/dist/jquery-migrate.min.js') }}"></script>
  312. <script src="{{ asset('assets/vendor/bootstrap/dist/js/bootstrap.bundle.min.js') }}"></script>
  313. <!-- JS Implementing Plugins -->
  314. <script src="{{ asset('assets/vendor/hs-navbar-vertical-aside/dist/hs-navbar-vertical-aside.min.js') }}"></script>
  315. <script src="{{ asset('assets/vendor/hs-form-search/dist/hs-form-search.min.js') }}"></script>
  316. <script src="{{ asset('assets/vendor/daterangepicker/moment.min.js') }}"></script>
  317. <script src="{{ asset('assets/vendor/daterangepicker/daterangepicker.js') }}"></script>
  318. <script src="{{ asset('assets/vendor/tom-select/dist/js/tom-select.complete.min.js') }}"></script>
  319. <script src="{{ asset('assets/vendor/clipboard/dist/clipboard.min.js') }}"></script>
  320. <script src="{{ asset('assets/vendor/datatables/media/js/jquery.dataTables.min.js') }}"></script>
  321. <script src="{{ asset('assets/vendor/dropzone/dist/min/dropzone.min.js') }}"></script>
  322. <script src="{{ asset('assets/vendor/hs-step-form/dist/hs-step-form.min.js') }}"></script>
  323. <!-- JS Front -->
  324. <script src="{{ asset('assets/js/theme.min.js') }}"></script>
  325. <script src="{{ asset('assets/js/theme-custom.js') }}"></script>
  326. <!-- JS Plugins Init. -->
  327. <script src="{{ asset('script.js') }}"></script>
  328. {% block scripts %}{% endblock %}
  329. <script>
  330.     const formModals = document.querySelectorAll('.modal');
  331.     if (formModals !== null) {
  332.         formModals.forEach((modal) => {
  333.             const error = modal.dataset.error
  334.             if (error) {
  335.                 const formModalBtn = document.querySelector(modal.dataset.target)
  336.                 const formModalHasError = JSON.parse(error)
  337.                 console.log(formModalHasError)
  338.                 if (formModalBtn !== null && formModalHasError === 1) {
  339.                     formModalBtn.click();
  340.                 }
  341.             }
  342.         })
  343.     }
  344. </script>
  345. </html>