431 lines
14 KiB
PHP
Executable File
431 lines
14 KiB
PHP
Executable File
<link rel="stylesheet" href="<?php echo base_url('bower_components/jvectormap/jquery-jvectormap.css') ?>">
|
||
<link rel="stylesheet"
|
||
href="<?php echo base_url('bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker.min.css') ?>">
|
||
<link rel="stylesheet" href="<?php echo base_url('bower_components/bootstrap-daterangepicker/daterangepicker.css') ?>">
|
||
<link rel="stylesheet" href="<?php echo base_url('plugins/bootstrap-wysihtml5/bootstrap3-wysihtml5.min.css') ?>">
|
||
<link rel="stylesheet"
|
||
href="<?php echo base_url('bower_components/datatables.net-bs/css/dataTables.bootstrap.min.css') ?>">
|
||
<link rel="stylesheet" href="<?php echo base_url('bower_components/toastr/toastr.css') ?>">
|
||
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto|Varela+Round|Open+Sans">
|
||
<link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
|
||
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
|
||
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
|
||
<style type="text/css">
|
||
.table-wrapper {
|
||
width: 700px;
|
||
margin: 30px auto;
|
||
background: #fff;
|
||
padding: 20px;
|
||
box-shadow: 0 1px 1px rgba(0, 0, 0, .05);
|
||
}
|
||
|
||
.table-title {
|
||
padding-bottom: 10px;
|
||
margin: 0 0 10px;
|
||
}
|
||
|
||
.table-title h2 {
|
||
margin: 6px 0 0;
|
||
font-size: 22px;
|
||
}
|
||
|
||
.table-title .add-new {
|
||
float: right;
|
||
height: 30px;
|
||
font-weight: bold;
|
||
font-size: 12px;
|
||
text-shadow: none;
|
||
min-width: 100px;
|
||
border-radius: 50px;
|
||
line-height: 13px;
|
||
}
|
||
|
||
.table-title .add-new i {
|
||
margin-right: 4px;
|
||
}
|
||
|
||
table.table {
|
||
table-layout: fixed;
|
||
}
|
||
|
||
table.table tr th, table.table tr td {
|
||
border-color: #e9e9e9;
|
||
}
|
||
|
||
table.table th i {
|
||
font-size: 13px;
|
||
margin: 0 5px;
|
||
cursor: pointer;
|
||
}
|
||
|
||
table.table th:last-child {
|
||
width: 100px;
|
||
}
|
||
|
||
table.table td a {
|
||
cursor: pointer;
|
||
display: inline-block;
|
||
margin: 0 5px;
|
||
min-width: 24px;
|
||
}
|
||
|
||
table.table td a.add {
|
||
color: #27C46B;
|
||
}
|
||
|
||
table.table td a.edit {
|
||
color: #FFC107;
|
||
}
|
||
|
||
table.table td a.delete {
|
||
color: #E34724;
|
||
}
|
||
|
||
table.table td i {
|
||
font-size: 19px;
|
||
}
|
||
|
||
table.table td a.add i {
|
||
font-size: 24px;
|
||
margin-right: -1px;
|
||
position: relative;
|
||
top: 3px;
|
||
}
|
||
|
||
table.table .form-control {
|
||
height: 32px;
|
||
line-height: 32px;
|
||
box-shadow: none;
|
||
border-radius: 2px;
|
||
}
|
||
|
||
/*table.table .form-control.error {*/
|
||
/* border-color: #f50000;*/
|
||
/*}*/
|
||
.error {
|
||
border-color: #f50000;
|
||
}
|
||
|
||
table.table td .add {
|
||
display: none;
|
||
}
|
||
</style>
|
||
<?php
|
||
|
||
use Brick\Money\Context\CustomContext;
|
||
use Brick\Money\Money;
|
||
|
||
$context = new \Brick\Money\Context\AutoContext();
|
||
$fmt = new NumberFormatter('fr_FR', NumberFormatter::DECIMAL);
|
||
?>
|
||
|
||
<div class="content-wrapper">
|
||
<!-- Content Header (Page header) -->
|
||
<section class="content-header">
|
||
|
||
<h1>
|
||
<?php echo $this->lang->line('edit_tax'); ?>
|
||
</h1>
|
||
<?php
|
||
$site_url = base_url();
|
||
|
||
if ($alert == "ok") {
|
||
|
||
if (!$success == "ok") {
|
||
?>
|
||
<div class='alert alert-danger alert-dismissible col-xs-6'>
|
||
<button type='button' class='close' data-dismiss='alert' aria-hidden='true'>×</button>
|
||
<h4><i class='icon fa fa-ban'></i> Erreur!</h4>
|
||
<?php echo $message; ?>
|
||
</div>
|
||
|
||
<?php
|
||
} else {
|
||
?>
|
||
<div class="alert alert-success alert-dismissible col-xs-6">
|
||
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
||
<h4><i class="icon fa fa-check"></i> Success!</h4>
|
||
<?php echo $message; ?>
|
||
</div>
|
||
|
||
<?php
|
||
}
|
||
}
|
||
?>
|
||
|
||
</section>
|
||
|
||
<section class="content">
|
||
<div class="row">
|
||
<div class="col-lg-12">
|
||
<div class="margin">
|
||
<button type="button" class="btn btn-primary" data-toggle="modal" data-target="#modal-tax"
|
||
style="width: 100%"><?php echo $this->lang->line('Modifier la configuration') ?></button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="row centered">
|
||
<div class="col-lg-6 col-lg-offset-3 col-xs-12">
|
||
<div class="box">
|
||
<div class="box-header">
|
||
<h3 class="box-title"><?php echo $this->lang->line('transaction_taxes'); ?></h3>
|
||
</div>
|
||
<div class="box-body table-responsive" style="overflow-x:auto;">
|
||
<table class="table table-hover" >
|
||
<thead>
|
||
<tr>
|
||
<th><?php echo $this->lang->line('Nom') ; ?> </th>
|
||
<th>Type</th>
|
||
<th>Valeur</th>
|
||
<th>Destination</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<?php
|
||
if($taxes!=false){
|
||
foreach($taxes->result() as $row) {
|
||
echo "<tr>
|
||
<td>".$row->nom."</td>
|
||
<td>".$row->type."</td>
|
||
<td>".$row->valeur."</td>
|
||
<td>".$row->destination."</td>".'
|
||
</tr>';
|
||
}
|
||
}
|
||
?>
|
||
</tbody>
|
||
</table>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="modal fade" id="modal-tax">
|
||
<div class="modal-dialog">
|
||
<div class="modal-content">
|
||
<div class="modal-header">
|
||
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
|
||
<span aria-hidden="true">×</span>
|
||
</button>
|
||
<h3 class="modal-title"><?php echo $this->lang->line('configuration_of_tax'); ?></h3>
|
||
</div>
|
||
<div class="modal-body">
|
||
<form id="taxForm">
|
||
<div class="form-group" style="overflow-x:auto;">
|
||
<div class="table-title">
|
||
<div class="row">
|
||
<div class="col-sm-8">
|
||
<label for="nom"
|
||
class="col-form-label"><?php echo $this->lang->line('transaction_taxes') ; ?></label>
|
||
</div>
|
||
<div class="col-sm-4">
|
||
<button type="button" class="btn btn-info add-new new5"><i class="fa fa-plus"></i> <?php echo $this->lang->line('new_tax') ; ?></button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<table id="transactions_taxes" class="table table-bordered">
|
||
<thead>
|
||
<tr>
|
||
<th><?php echo $this->lang->line('Nom') ; ?> </th>
|
||
<th>Type</th>
|
||
<th>Valeur</th>
|
||
<th>Destination</th>
|
||
<th>Actions</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<?php
|
||
if($taxes!=false){
|
||
foreach($taxes->result() as $row) {
|
||
echo "<tr>
|
||
<td>".$row->nom."</td>
|
||
<td>".$row->type."</td>
|
||
<td>".$row->valeur."</td>
|
||
<td>".$row->destination."</td>".'
|
||
<td>
|
||
<a class="add add5" title="Add" data-toggle="tooltip"><i class="material-icons"></i></a>
|
||
<a class="edit edit5" title="Edit" data-toggle="tooltip"><i class="material-icons"></i></a>
|
||
<a class="delete delete5" title="Delete" data-toggle="tooltip"><i class="material-icons"></i></a>
|
||
</td>
|
||
</tr>';
|
||
}
|
||
}
|
||
// ?>
|
||
</tbody>
|
||
</table>
|
||
</div>
|
||
</form>
|
||
</div>
|
||
<div class="modal-footer">
|
||
<button type="button" class="btn btn-default pull-left"
|
||
data-dismiss="modal"><?php echo $this->lang->line('Fermer'); ?></button>
|
||
<button type="button" id="saveTaxes" data-network-id="<?= $network_id ?>" data-id-config="<?= $idConfig ?>"
|
||
class="btn btn-primary"><?php echo $this->lang->line('Continuer'); ?></button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
</div>
|
||
<!-- jQuery 3 -->
|
||
<script src="<?php echo base_url('bower_components/jquery/dist/jquery.min.js') ?>"></script>
|
||
<!-- Bootstrap 3.3.7 -->
|
||
<script src="<?php echo base_url('bower_components/bootstrap/dist/js/bootstrap.min.js') ?>"></script>
|
||
<!-- DataTables -->
|
||
<script src="<?php echo base_url('bower_components/datatables.net/js/jquery.dataTables.min.js') ?>"></script>
|
||
<script src="<?php echo base_url('bower_components/datatables.net-bs/js/dataTables.bootstrap.min.js') ?>"></script>
|
||
<!-- Slimscroll -->
|
||
<script src="<?php echo base_url('bower_components/jquery-slimscroll/jquery.slimscroll.min.js') ?>"></script>
|
||
<!-- FastClick -->
|
||
<script src="<?php echo base_url('bower_components/fastclick/lib/fastclick.js') ?>"></script>
|
||
<!-- AdminLTE App -->
|
||
<script src="<?php echo base_url('dist/js/adminlte.min.js') ?>"></script>
|
||
<!-- AdminLTE for demo purposes -->
|
||
<script src="<?php echo base_url('dist/js/demo.js') ?>"></script>
|
||
|
||
<script src="<?php echo base_url('bower_components/moment/min/moment.min.js') ?>"></script>
|
||
<script src="<?php echo base_url('bower_components/bootstrap-daterangepicker/daterangepicker.js') ?>"></script>
|
||
<script src="<?php echo base_url('bower_components/bootstrap-datepicker/dist/js/bootstrap-datepicker.min.js') ?>"></script>
|
||
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datetimepicker/4.17.47/js/bootstrap-datetimepicker.min.js"></script>
|
||
<!-- ChartJS -->
|
||
<script src="<?php echo base_url('bower_components/chart.js/Chart.js') ?>"></script>
|
||
<script src="<?php echo base_url('bower_components/toastr/toastr.js') ?>"></script>
|
||
<script src="<?php echo base_url('dist/js/sweetalert2.js') ?>"></script>
|
||
|
||
<script>
|
||
toastr.options.closeButton = true;
|
||
toastr.options.closeMethod = 'fadeOut';
|
||
toastr.options.closeDuration = 5000;
|
||
toastr.options.closeEasing = 'swing';
|
||
|
||
$('#saveTaxes').click(function () {
|
||
const network_id = $(this).data('network-id');
|
||
const id_config = $(this).data('id-config');
|
||
// Paliers
|
||
var taxes = [];
|
||
|
||
$('#transactions_taxes tr').has('td').each(function() {
|
||
var arrayItem = {};
|
||
$('td', $(this)).each(function(index, item) {
|
||
if(index < 4){
|
||
if(index == 2)
|
||
arrayItem[index] = parseFloat($(item).html());
|
||
arrayItem[index] = $(item).html();
|
||
}
|
||
});
|
||
taxes.push(arrayItem);
|
||
});
|
||
|
||
if ($('#taxForm')[0].checkValidity()) {
|
||
|
||
$.ajax({
|
||
url: '<?php echo base_url('index.php/Gestion/saveTaxes')?>',
|
||
type: 'POST',
|
||
dataType: 'json',
|
||
data: {
|
||
"network_id": network_id,"id_config" : id_config,
|
||
"taxes" : taxes ,
|
||
},
|
||
success: function (data) {
|
||
if(data=='200'){
|
||
Swal.fire({
|
||
icon: 'success',
|
||
title: "<?php echo $this->lang->line('wallet_update')?>",
|
||
text:"<?php echo $this->lang->line('informations_updated')?>",
|
||
timer: 3000
|
||
}).then(()=>{
|
||
location.reload();
|
||
});
|
||
|
||
}else{
|
||
toastr.error("<?php echo $this->lang->line('error_message')?>" , "<?php echo $this->lang->line('request_error')?>");
|
||
}
|
||
},
|
||
|
||
error: function (resultat, statut, error) {
|
||
console.log(resultat + " " + error);
|
||
toastr.error("<?php echo $this->lang->line('error_message')?>" , "<?php echo $this->lang->line('request_error')?>");
|
||
}
|
||
});
|
||
|
||
|
||
} else {
|
||
$('#taxForm')[0].reportValidity();
|
||
}
|
||
|
||
});
|
||
</script>
|
||
<script>
|
||
// Taxes
|
||
$(document).ready(function() {
|
||
$('[data-toggle="tooltip"]').tooltip();
|
||
var actions5 = $("#transactions_taxes td:last-child").html();
|
||
// Append table with add row form on add new button click
|
||
$(".new5").click(function(){
|
||
if(!actions5){
|
||
actions5 = '<a class="add add5" title="Add" data-toggle="tooltip"><i class="material-icons"></i></a>\n' +
|
||
' <a class="edit edit5" title="Edit" data-toggle="tooltip"><i class="material-icons"></i></a>\n' +
|
||
' <a class="delete delete5" title="Delete" data-toggle="tooltip"><i class="material-icons"></i></a>';
|
||
}
|
||
$(this).attr("disabled", "disabled");
|
||
var index = $("#transactions_taxes tbody tr:last-child").index();
|
||
var row = "<tr> <td><input type='text' required class='form-control' name='nom' id='nom'></td> " +
|
||
"<td> <select class='form-control' id='type' required> <option value='%'> % </option> <option value='fixe'> fixe </option> </select> </td> "+
|
||
"<td><input type='number' required class='form-control' min='0' name='valeur' id='valeur'></td>" +
|
||
"<td> <select class='form-control' id='destination' required> <option value='national'> national </option> <option value='international'> international </option> </select> </td>" +
|
||
"<td>" + actions5 + "</td>" +
|
||
"</tr>";
|
||
$("#transactions_taxes").append(row);
|
||
$("#transactions_taxes tbody tr").eq(index + 1).find(".add, .edit").toggle();
|
||
$('[data-toggle="tooltip"]').tooltip();
|
||
});
|
||
// Add row on add button click
|
||
$(document).on("click", ".add5", function(){
|
||
var empty = false;
|
||
var input = $(this).parents("tr").find('input');
|
||
var select = $(this).parents("tr").find('select');
|
||
input.each(function(){
|
||
if(!$(this)[0].checkValidity()){
|
||
$(this).addClass("error");
|
||
$(this)[0].reportValidity();
|
||
empty = true;
|
||
} else{
|
||
$(this).removeClass("error");
|
||
}
|
||
|
||
});
|
||
$(this).parents("tr").find(".error").first().focus();
|
||
if(!empty){
|
||
select.each(function(){
|
||
$(this).parent("td").html($(this).val());
|
||
});
|
||
input.each(function(){
|
||
$(this).parent("td").html($(this).val());
|
||
});
|
||
$(this).parents("tr").find(".add, .edit").toggle();
|
||
$(".new5").removeAttr("disabled");
|
||
}
|
||
});
|
||
// Edit row on edit button click
|
||
$(document).on("click", ".edit5", function(){
|
||
$(this).parents("tr").find("td:not(:last-child)").each(function(index){
|
||
if(index == 0)
|
||
$(this).html('<input type="text" required class="form-control" value="' + $(this).text() + '">');
|
||
if(index == 1)
|
||
$(this).html("<select class='form-control' id='type' required> <option value='%' > % </option> <option value='fixe'> fixe </option> </select>");
|
||
if(index == 2)
|
||
$(this).html('<input type="number" required class="form-control" min="0" value="' + $(this).text() + '">');
|
||
if(index == 3)
|
||
$(this).html("<select class='form-control' id='destination' required> <option value='national'> national </option> <option value='international'> international </option> </select>");
|
||
});
|
||
$(this).parents("tr").find(".add, .edit").toggle();
|
||
$(".new5").attr("disabled", "disabled");
|
||
});
|
||
// Delete row on delete button click
|
||
$(document).on("click", ".delete5", function(){
|
||
$(this).parents("tr").remove();
|
||
$(".new5").removeAttr("disabled");
|
||
});
|
||
});
|
||
</script>
|