{% extends 'base.html.twig' %}
{% block title %}ProgressionDetail index{% endblock %}
{% set estVacance = 0 %}
{% block breakcumb %}
<li class="breadcrumb-item text-muted">
<a href="{{ path('app_progression_index') }}" class="text-muted">Progression</a>
</li>
<li class="breadcrumb-item text-dark">Détail</li>
{% endblock %}
{% block stylesheets %}
<!--begin::Page Custom Javascript(used by this page)-->
<link href="{{ asset("theme/plugins/custom/datatables/datatables.bundle.css") }}" rel="stylesheet" type="text/css" />
<link href="https://cdn.datatables.net/searchpanes/2.0.2/css/searchPanes.dataTables.min.css" rel="stylesheet" type="text/css" />
<link href="https://cdn.datatables.net/select/1.4.0/css/select.dataTables.min.css" rel="stylesheet" type="text/css" />
<!--end::Page Custom Javascript-->
{{ parent() }}
{% endblock %}
{% block javascripts %}
{{ parent() }}
<!--begin::Page Custom Javascript(used by this page)-->
<script src="{{ asset("theme/plugins/custom/datatables/datatables.bundle.js") }}"></script>
<script src="https://cdn.datatables.net/searchpanes/2.0.2/js/dataTables.searchPanes.min.js"></script>
<script src="https://cdn.datatables.net/select/1.4.0/js/dataTables.select.min.js"></script>
<!--end::Page Custom Javascript-->
<script>
let colonne = 2;
$.fn.dataTable.ext.search.push(function (settings, data, dataIndex) {
var dateMin = $('#min').val().split('-');
var dateMax = $('#max').val().split('-');
var min = parseInt(dateMin[0]+""+dateMin[1]+""+dateMin[2], 10);
var max = parseInt(dateMax[0]+""+dateMax[1]+""+dateMax[2], 10);
var age = parseInt(data[colonne]) || 0; // use data for the age column
if (
(isNaN(min) && isNaN(max)) ||
(isNaN(min) && age <= max) ||
(min <= age && isNaN(max)) ||
(min <= age && age <= max)
) {
return true;
}
return false;
});
$(document).ready(function () {
table = $('#kt_datatable_example_1').DataTable({
order: [[2, 'asc'], [0, 'asc'], [1, 'asc']],
"ordering": false,
paging: false,
rowGroup: {
dataSrc: [0, 1]
},
columnDefs: [{
targets: [1, 0],
visible: false
}],
dom: 'PBfrtip',
searchPanes: {
columns: [0, 1, 3, 4],
initCollapsed: true,
cascadePanes: true
},
stateSave: true,
stateSaveCallback: function (settings, data) {
localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data))
},
stateLoadCallback: function (settings) {
return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance))
}
});
$('#min, #max').change(function () {
table.draw();
});
});
</script>
<style>
tr.odd td:first-child,
tr.even td:first-child {
padding-left: 4em;
}
</style>
{% endblock %}
{% block body %}
<!--begin::Engage Widget 1-->
<div class="card card-xxl-stretch">
<div class="card-header">
<h3 class="card-title">Détail de la progression {{ progression }}</h3>
<div class="card-toolbar">
<a type="button" class="btn btn-sm btn-light" href="{{ path('app_progression_detail_new', {"id": progression.id}) }}">
Ajouter
</a>
</div>
</div>
<!--begin::Card body-->
<div class="card-body d-flex flex-column justify-content-between h-100">
<!--begin::Section-->
<div class="">
<!--begin::Action-->
<table cellspacing="5" cellpadding="5" border="0">
<tbody><tr>
<td>Filtrer De :</td>
<td><input class="form form-control form-control-solid" type="date" id="min" name="min" ></td>
<td>A :</td>
<td><input class="form form-control form-control-solid" type="date" id="max" name="max"></td>
</tr>
<tr>
</tr>
</tbody></table>
<table id="kt_datatable_example_1" class="table table-striped table-row-bordered gy-5 gs-7">
<thead>
<tr>
<th>Semaine</th>
<th>Jour</th>
<th>Date</th>
<th>bloc</th>
<th>Séquence</th>
<th>Objectif</th>
<th>Séance</th>
<th>actions</th>
</tr>
</thead>
<tbody>
{% for progression_detail in progression.refProgressionDetails %}
{% if progression_detail.refPeriodeCle is null%}
{% set estVacance = 0 %}
<tr>
<td>Semaine {{ progression_detail.date ? progression_detail.date|date('W') : '' }}</td>
<td>{{ jours[progression_detail.jour] }}</td>
<td data-sort="{{ progression_detail.date ? progression_detail.date|date('Ymd') : '' }}" data-filter="{{ progression_detail.date ? progression_detail.date|date('Ymd') : '' }}">
{{ progression_detail.date ? progression_detail.date|date('d/m/Y') : '' }}</td>
<td>{{ progression_detail.refBlocHeure }}</td>
<td>{{ progression_detail.refSeance ? progression_detail.refSeance.refSequence : '' }}</td>
<td>{{ progression_detail.refSeance ? progression_detail.refSeance.refSequence.objectif : '' }}</td>
<td>{{ progression_detail.refSeance ? progression_detail.refSeance : '' }}</td>
<td>
{% if progression_detail.refSeance is not null %}
<a href="{{ path('app_seance_show', {'id': progression_detail.refSeance.id}) }}"><i class="lar la-eye fs-1"></i></a>
<a href="{{ path('app_progression_detail_edit', {'id': progression_detail.id}) }}"><i class="lar la-edit fs-1"></i></a>
<a href="{{ path('app_progression_detail_seance_remove', {'id': progression_detail.id}) }}"><i class="lar la-trash-alt fs-1"></i></a>
{% else %}
<a href="{{ path('app_progression_detail_seance', {'id': progression_detail.id}) }}"><i class="las la-link fs-1"></i></a>
<a href="{{ path('app_progression_detail_periode', {'id': progression_detail.id}) }}"><i class="las la-lock fs-1"></i></a>
{% endif %}
</td>
</tr>
{% else %}
{% if estVacance == 0 %}
{% set estVacance = 1 %}
<tr>
<td>Semaine {{ progression_detail.refPeriodeCle.debut ? progression_detail.refPeriodeCle.debut|date('W')+1 : '' }}</td>
<td>{{ progression_detail.refPeriodeCle }}</td>
<td data-sort="{{ progression_detail.refPeriodeCle.debut ? progression_detail.refPeriodeCle.debut|date('Ymd') : '' }}">
{{ progression_detail.refPeriodeCle.debut ? progression_detail.refPeriodeCle.debut|date('d/m/Y') : '' }}</td>
<td></td>
<td>{{ progression_detail.refPeriodeCle }}</td>
<td></td>
<td></td>
<td> </td>
</tr>
{% endif %}
{% endif %}
{% endfor %}
</tbody>
</table>
<!--end::Action-->
</div>
<!--end::Section-->
</div>
<!--end::Card body-->
</div>
<!--end::Engage Widget 1-->
{% endblock %}