{% extends 'dashboard_layout.html.twig' %}
{% block title %} {{ parent() }} | {{ boutique.nom }}{% endblock %}
{% block real_content %}
<div class="main-card mb-3 card">
<div class="card-body">
<div>
<h3>{{ 'admin.expensives.label' | trans }}</h3>
<form id="formFilter" method="POST" action="{{ path('admin.expensives', {'slug': boutique.slug}) }}">
<div class="row">
<div class="col-md-1 position-relative">
<label for="">{{ 'admin.period' | trans }}</label>
</div>
<div class="col-md-3 position-relative">
<select class="form-select" id="selPeriode">
<option value="{{ 'now' | date('Y-m-d') }}@{{ 'now' | date('Y-m-d') }}">{{ 'admin.today' | trans }}</option>
<option value="{{ dateDebut | date('Y-m-d') }}@{{ dateFin | date('Y-m-d') }}" selected>{{ 'admin.this_week' | trans }}</option>
<option value="{{ startMonth | date('Y-m-d') }}@{{ endMonth | date('Y-m-d') }}">{{ 'admin.this_month' | trans }}</option>
<option value="{{ startYear | date('Y-m-d') }}@{{ endYear | date('Y-m-d') }}">{{ 'admin.this_year' | trans }}</option>
<option value="p@p">{{ 'admin.customized' | trans }}</option>
</select>
</div>
<div class="col-md-2 blocDate">
<div class="form-group position-relative">
<input value="{{ dateDebut | date('Y-m-d') }}" class="form-control" type="date" id="dateDebut" name="dateDebut" />
</div>
</div>
<div class="col-md-2 blocDate">
<div class="form-group position-relative">
<input value="{{ dateFin | date('Y-m-d') }}" class="form-control" type="date" id="dateFin" name="dateFin" />
</div>
</div>
<div class="col-md-3 position-relative">
<button id="btnActualiserTable" class="btn btn-primary">{{ 'admin.actualiser' | trans }}</button>
</div>
</div>
</form>
<br/>
{% if userBoutique.droits[4].valeurDroit.ajout == true %}
<a type="button" href="{{ path('admin.new_expensive', {'slug': boutique.slug}) }}" class=" item-menu-travail btn btn-secondary pull-right btn-icon">
{{ 'admin.new' | trans }} <i class="bi bi-plus"></i>
</a>
{% endif %}
{% if userBoutique.droits[4].valeurDroit.lecture == true %}
<a type="button" href="{{ path('admin_categorie_depenses', {'slug': boutique.slug}) }}" class=" item-menu-travail btn btn-primary pull-right btn-icon">
{{ 'admin.categorie_depense.categorie_depense' | trans }}
</a>
{% endif %}
</div><br/>
<div class="table-responsive">
<table class="table table-hover" id="factureAVoirTable">
<thead class="thead-dark">
<tr>
<th>{{ 'admin.categorie_depense.categorie_depense' | trans }}</th>
<th>{{ 'admin.date' | trans }}</th>
<th>{{ 'admin.expensives.piece_2' | trans }}</th>
<th>{{ 'admin.third.label' | trans }}</th>
<th>{{ 'admin.amount' | trans }}</th>
<th>{{ 'admin.detail' | trans }}</th>
<th>{{ 'admin.actions' | trans }}</th>
</tr>
</thead>
<tbody id="contenuListeCommande">
{{ include('admin/expensives_table_content.html.twig') }}
</tbody>
</table>
</div>
</div>
</div>
{% endblock real_content %}
{% block javascripts %}
{{ parent() }}
<script type="text/javascript">
$(function(){
var $deleteItem = $('.delete-item');
var $btnActualiserTable = $('#btnActualiserTable');
var $contenuListeCommande = $('#contenuListeCommande'), $formFilter = $('#formFilter');
var $selPeriode = $('#selPeriode');
var $dateDebut = $('#dateDebut'), $dateFin = $('#dateFin');
$('.blocDate').css('display', 'none');
$('#invoiceTable').DataTable();
$selPeriode.change(function(){
var per = $(this).val().split('@');
if($(this).val() == 'p@p'){
$('.blocDate').css('display', 'inline-block');
} else{
$('.blocDate').css('display', 'none');
}
$dateDebut.val(per[0]);
$dateFin.val(per[1]);
});
$btnActualiserTable.click(function(e){
e.preventDefault();
toggleLoading();
$.ajax({
url: $formFilter.attr('action'),
method: 'POST',
data: $formFilter.serialize(),
//processData: false,
//contentType: false,
success: function (data, textStatus, jqXHR) {
toggleLoading();
$contenuListeCommande.html(data);
var $deleteItem = $('.delete-item');
$deleteItem.click(function(e){
e.preventDefault();
var lien = $(this).attr('href');
var $theRow = $(this).parent().parent();
swal({
title: 'Voulez-vous supprimer ?',
inputAttributes: {
autocapitalize: 'off'
},
buttons:{
cancel: 'Annuler',
submit: {
text: 'Supprimer',
value: 'submit'
}
}
}
).then((value) =>{
switch(value){
case 'submit':
toggleLoading();
$.ajax({
url: lien,
method: 'GET',
//processData: false,
//contentType: false,
success: function (data, textStatus, jqXHR) {
toggleLoading();
toggleMessage("success", "Ligne supprimée");
$theRow.remove();
},
error: function(jqXHR, textStatus, errorThrown ){
toggleLoading();
toggleMessage("error", "Une erreur s'est produite");
}
});
break;
default:
swal(
{
title: "Annulé!",
timer: 500
}
);
}
}
);
});
},
error: function(jqXHR, textStatus, errorThrown ){
toggleLoading();
toggleMessage('error', 'Erreur survenue');
}
});
});
$deleteItem.click(function(e){
e.preventDefault();
var lien = $(this).attr('href');
var $theRow = $(this).parent().parent();
swal({
title: 'Voulez-vous supprimer ?',
inputAttributes: {
autocapitalize: 'off'
},
buttons:{
cancel: 'Annuler',
submit: {
text: 'Supprimer',
value: 'submit'
}
}
}
).then((value) =>{
switch(value){
case 'submit':
toggleLoading();
$.ajax({
url: lien,
method: 'GET',
//processData: false,
//contentType: false,
success: function (data, textStatus, jqXHR) {
toggleMessage("success", "Ligne supprimée");
$theRow.remove();
toggleLoading();
},
error: function(jqXHR, textStatus, errorThrown ){
toggleLoading();
toggleMessage("error", "Une erreur s'est produite");
}
});
break;
default:
swal(
{
title: "Annulé!",
timer: 500
}
);
}
}
);
});
$('#factureAVoirTable').DataTable();
});
</script>
{% endblock javascripts %}