templates/progression_detail/index.html.twig line 1

Open in your IDE?
  1. {% extends 'base.html.twig' %}
  2. {% block title %}ProgressionDetail index{% endblock %}
  3. {% set estVacance = 0 %}
  4. {% block breakcumb %}
  5.     <li class="breadcrumb-item text-muted">
  6.         <a href="{{ path('app_progression_index') }}" class="text-muted">Progression</a>
  7.     </li>
  8.     <li class="breadcrumb-item text-dark">Détail</li>
  9. {% endblock %}
  10. {% block stylesheets %}
  11.     <!--begin::Page Custom Javascript(used by this page)-->
  12.     <link href="{{ asset("theme/plugins/custom/datatables/datatables.bundle.css") }}" rel="stylesheet" type="text/css" />
  13.     <link href="https://cdn.datatables.net/searchpanes/2.0.2/css/searchPanes.dataTables.min.css" rel="stylesheet" type="text/css" />
  14.     <link href="https://cdn.datatables.net/select/1.4.0/css/select.dataTables.min.css" rel="stylesheet" type="text/css" />
  15.     <!--end::Page Custom Javascript-->
  16.     {{ parent() }}
  17. {% endblock %}
  18. {% block javascripts %}
  19.     {{ parent() }}
  20.     <!--begin::Page Custom Javascript(used by this page)-->
  21.     <script src="{{ asset("theme/plugins/custom/datatables/datatables.bundle.js") }}"></script>
  22.     <script src="https://cdn.datatables.net/searchpanes/2.0.2/js/dataTables.searchPanes.min.js"></script>
  23.     <script src="https://cdn.datatables.net/select/1.4.0/js/dataTables.select.min.js"></script>
  24.     <!--end::Page Custom Javascript-->
  25.     <script>
  26.         let colonne = 2;
  27.         $.fn.dataTable.ext.search.push(function (settings, data, dataIndex) {
  28.             var dateMin = $('#min').val().split('-');
  29.             var dateMax = $('#max').val().split('-');
  30.             var min = parseInt(dateMin[0]+""+dateMin[1]+""+dateMin[2], 10);
  31.             var max = parseInt(dateMax[0]+""+dateMax[1]+""+dateMax[2], 10);
  32.             var age = parseInt(data[colonne]) || 0; // use data for the age column
  33.             if (
  34.                 (isNaN(min) && isNaN(max)) ||
  35.                 (isNaN(min) && age <= max) ||
  36.                 (min <= age && isNaN(max)) ||
  37.                 (min <= age && age <= max)
  38.             ) {
  39.                 return true;
  40.             }
  41.             return false;
  42.         });
  43.         $(document).ready(function () {
  44.             table = $('#kt_datatable_example_1').DataTable({
  45.                 order: [[2, 'asc'], [0, 'asc'], [1, 'asc']],
  46.                 "ordering": false,
  47.                 paging: false,
  48.                 rowGroup: {
  49.                     dataSrc: [0, 1]
  50.                 },
  51.                 columnDefs: [{
  52.                     targets: [1, 0],
  53.                     visible: false
  54.                 }],
  55.                 dom: 'PBfrtip',
  56.                 searchPanes: {
  57.                     columns: [0, 1, 3, 4],
  58.                     initCollapsed: true,
  59.                     cascadePanes: true
  60.                 },
  61.                 stateSave: true,
  62.                 stateSaveCallback: function (settings, data) {
  63.                     localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data))
  64.                 },
  65.                 stateLoadCallback: function (settings) {
  66.                     return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance))
  67.                 }
  68.             });
  69.             $('#min, #max').change(function () {
  70.                 table.draw();
  71.             });
  72.         });
  73.     </script>
  74.     <style>
  75.         tr.odd td:first-child,
  76.         tr.even td:first-child {
  77.             padding-left: 4em;
  78.         }
  79.     </style>
  80. {% endblock %}
  81. {% block body %}
  82.     <!--begin::Engage Widget 1-->
  83.     <div class="card card-xxl-stretch">
  84.         <div class="card-header">
  85.             <h3 class="card-title">Détail de la progression {{ progression }}</h3>
  86.             <div class="card-toolbar">
  87.                 <a type="button" class="btn btn-sm btn-light" href="{{ path('app_progression_detail_new', {"id": progression.id}) }}">
  88.                     Ajouter
  89.                 </a>
  90.             </div>
  91.         </div>
  92.         <!--begin::Card body-->
  93.         <div class="card-body d-flex flex-column justify-content-between h-100">
  94.             <!--begin::Section-->
  95.             <div class="">
  96.                 <!--begin::Action-->
  97.                 <table cellspacing="5" cellpadding="5" border="0">
  98.                     <tbody><tr>
  99.                         <td>Filtrer De :</td>
  100.                         <td><input class="form form-control form-control-solid" type="date" id="min" name="min" ></td>
  101.                         <td>A :</td>
  102.                         <td><input class="form form-control form-control-solid" type="date" id="max" name="max"></td>
  103.                     </tr>
  104.                     <tr>
  105.                     </tr>
  106.                     </tbody></table>
  107.                 <table id="kt_datatable_example_1" class="table table-striped table-row-bordered gy-5 gs-7">
  108.                     <thead>
  109.                     <tr>
  110.                         <th>Semaine</th>
  111.                         <th>Jour</th>
  112.                         <th>Date</th>
  113.                         <th>bloc</th>
  114.                         <th>Séquence</th>
  115.                         <th>Objectif</th>
  116.                         <th>Séance</th>
  117.                         <th>actions</th>
  118.                     </tr>
  119.                     </thead>
  120.                     <tbody>
  121.                     {% for progression_detail in progression.refProgressionDetails %}
  122.                         {% if progression_detail.refPeriodeCle is null%}
  123.                             {% set estVacance = 0 %}
  124.                             <tr>
  125.                                 <td>Semaine {{ progression_detail.date ? progression_detail.date|date('W') : '' }}</td>
  126.                                 <td>{{ jours[progression_detail.jour] }}</td>
  127.                                 <td data-sort="{{ progression_detail.date ? progression_detail.date|date('Ymd') : '' }}" data-filter="{{ progression_detail.date ? progression_detail.date|date('Ymd') : '' }}">
  128.                                     {{ progression_detail.date ? progression_detail.date|date('d/m/Y') : '' }}</td>
  129.                                 <td>{{ progression_detail.refBlocHeure }}</td>
  130.                                 <td>{{ progression_detail.refSeance ? progression_detail.refSeance.refSequence : '' }}</td>
  131.                                 <td>{{ progression_detail.refSeance ? progression_detail.refSeance.refSequence.objectif : '' }}</td>
  132.                                 <td>{{ progression_detail.refSeance ? progression_detail.refSeance : '' }}</td>
  133.                                 <td>
  134.                                     {% if progression_detail.refSeance is not null %}
  135.                                         <a href="{{ path('app_seance_show', {'id': progression_detail.refSeance.id}) }}"><i class="lar la-eye fs-1"></i></a>
  136.                                         <a href="{{ path('app_progression_detail_edit', {'id': progression_detail.id}) }}"><i class="lar la-edit fs-1"></i></a>
  137.                                         <a href="{{ path('app_progression_detail_seance_remove', {'id': progression_detail.id}) }}"><i class="lar la-trash-alt fs-1"></i></a>
  138.                                     {% else %}
  139.                                         <a href="{{ path('app_progression_detail_seance', {'id': progression_detail.id}) }}"><i class="las la-link fs-1"></i></a>
  140.                                         <a href="{{ path('app_progression_detail_periode', {'id': progression_detail.id}) }}"><i class="las la-lock fs-1"></i></a>
  141.                                     {% endif %}
  142.                                 </td>
  143.                             </tr>
  144.                         {% else %}
  145.                             {% if estVacance == 0  %}
  146.                                 {% set estVacance = 1 %}
  147.                                 <tr>
  148.                                     <td>Semaine {{ progression_detail.refPeriodeCle.debut ? progression_detail.refPeriodeCle.debut|date('W')+1 : '' }}</td>
  149.                                     <td>{{ progression_detail.refPeriodeCle }}</td>
  150.                                     <td data-sort="{{ progression_detail.refPeriodeCle.debut ? progression_detail.refPeriodeCle.debut|date('Ymd') : '' }}">
  151.                                         {{ progression_detail.refPeriodeCle.debut ? progression_detail.refPeriodeCle.debut|date('d/m/Y') : '' }}</td>
  152.                                     <td></td>
  153.                                     <td>{{ progression_detail.refPeriodeCle }}</td>
  154.                                     <td></td>
  155.                                     <td></td>
  156.                                     <td> </td>
  157.                                 </tr>
  158.                             {% endif %}
  159.                         {% endif %}
  160.                     {% endfor %}
  161.                     </tbody>
  162.                 </table>
  163.                 <!--end::Action-->
  164.             </div>
  165.             <!--end::Section-->
  166.         </div>
  167.         <!--end::Card body-->
  168.     </div>
  169.     <!--end::Engage Widget 1-->
  170. {% endblock %}