143 lines
4.8 KiB
XML
143 lines
4.8 KiB
XML
<metal:block use-macro="main_template">
|
|
<div metal:fill-slot="content">
|
|
<style>
|
|
.redClass{
|
|
background-color : #E6E6E6;
|
|
color : #9C9C9C !important;
|
|
}
|
|
</style>
|
|
|
|
<p>
|
|
<a href="${request.application_url}/moniteurs" class="btn btn-default" role="button">
|
|
<span class="glyphicon glyphicon-chevron-left"></span> Retour</a>
|
|
</p>
|
|
<div class="row" style="margin:20px;">
|
|
<div class="form-group">
|
|
<label class="control-label col-md-1" for="agencefilter">Agence</label>
|
|
<div class="col-md-4">
|
|
<select class="form-control" id="agencefilter" >
|
|
<div tal:repeat="item agences">
|
|
<option value="${item.CODE}" tal:attributes="selected agencefilter==item.CODE and 'selected' or None">${item.CODE} | ${item.LIBELLE}</option>
|
|
</div>
|
|
</select>
|
|
</div>
|
|
<label class="control-label col-md-1" for="datefilter"> Date </label>
|
|
<div class="col-md-4">
|
|
<div class="input-group date">
|
|
<input class="form-control" type="text" id="datefilter" name="datefilter" value="${datefilter}"/>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<table id="moniteurs_agence_list" class="table table-condensed table-bordered">
|
|
<thead>
|
|
<tr>
|
|
<th>Code</th>
|
|
<th>Prénom Nom</th>
|
|
<th >Début</th>
|
|
<th >Fin</th>
|
|
<th>Matin</th>
|
|
<th>Aprés-midi</th>
|
|
<th>Agence</th>
|
|
</tr>
|
|
</thead>
|
|
</table>
|
|
|
|
<br />
|
|
<br />
|
|
|
|
<script type="text/javascript">
|
|
var dataSet = ${dt_data};
|
|
|
|
$.fn.dataTable.ext.search.push(
|
|
function( settings, data, dataIndex ) {
|
|
var currentagence = $('#agencefilter').val();
|
|
var date = $('#datefilter').val();
|
|
var dated = data[2].substring(8);
|
|
var datef = data[3].substring(8);
|
|
var agence = data[6];
|
|
if(parseInt(agence) === parseInt(currentagence)){
|
|
var currentdate = moment(date.replaceAll('/','-'),'DD-MM-YYYY',true);
|
|
var ddate = moment(dated.replaceAll('/','-'),'DD-MM-YYYY',true);
|
|
var fdate = moment(datef.replaceAll('/','-'),'DD-MM-YYYY',true);
|
|
if(currentdate.isValid() && ddate.isValid() && fdate.isValid()){
|
|
var timesf = fdate.toDate().getTime() - currentdate.toDate().getTime();
|
|
var timesd = ddate.toDate().getTime() - currentdate.toDate().getTime();
|
|
var daysf = Math.round(timesf /(1000 * 3600 * 24));
|
|
var daysd = Math.round(timesd /(1000 * 3600 * 24));
|
|
if(daysf >= 0 && daysd <= 0){
|
|
return true;
|
|
}else{
|
|
return false;
|
|
}
|
|
}
|
|
else{
|
|
return false
|
|
}
|
|
|
|
|
|
}
|
|
else{
|
|
return false
|
|
}
|
|
return true;
|
|
}
|
|
);
|
|
|
|
|
|
|
|
$(document).ready(function() {
|
|
var table = $('#moniteurs_agence_list').DataTable({
|
|
data: dataSet,
|
|
pageLength: 10,
|
|
bLengthChange: false,
|
|
bInfo: true,
|
|
sDom: 'frtlip',
|
|
language: {
|
|
url: 'https://cdn.datatables.net/plug-ins/1.10.16/i18n/French.json'
|
|
},
|
|
columnDefs: [
|
|
|
|
{ targets: 1,
|
|
render: function (data, type, full, meta) {
|
|
return '<a href="/moniteur_aff_edit/' + full[0] +'/'+ full[7] + '?origin=1">' + data + '</a>';
|
|
}
|
|
},
|
|
{ targets: 2,
|
|
render: function (data, type, full, meta) {
|
|
return '<span style="display:none" >'+parseInt(full[8])+'</span>'+data;
|
|
}
|
|
},
|
|
{ targets: 3,
|
|
render: function (data, type, full, meta) {
|
|
return '<span style="display:none" >'+parseInt(full[9])+'</span>'+data;
|
|
}
|
|
}
|
|
|
|
]
|
|
});
|
|
|
|
$('#datefilter').datetimepicker({
|
|
format: 'DD/MM/YYYY',
|
|
}).on('dp.change',function (e) {
|
|
table.draw();
|
|
});;
|
|
|
|
$('#datefilter').on('input change', function(){
|
|
var date = moment(this.value.replaceAll('/','-'),'DD-MM-YYYY',true);
|
|
if(date.isValid()){
|
|
console.log('valid');
|
|
table.draw();
|
|
}
|
|
});
|
|
$('#agencefilter').change(function(){
|
|
table.draw();
|
|
});
|
|
|
|
});
|
|
</script>
|
|
|
|
</div><!-- content -->
|
|
</metal:block>
|