backoffice/application/views/gestion_aggregators.php

344 lines
11 KiB
PHP
Executable File

<link rel="stylesheet"
href="<?= base_url('bower_components/datatables.net-bs/css/dataTables.bootstrap.min.css') ?>">
<link rel="stylesheet" href="<?= base_url('bower_components/toastr/toastr.css') ?>">
<div class="content-wrapper">
<!-- Content Header (Page header) -->
<section class="content-header">
<h1>
<?= $this->lang->line('payment_aggregators') ; ?>
</h1>
</section>
<section class="content">
<div class="row">
<div class="col-xs-8">
<div class="box">
<div class="box-header">
<h3 class="box-title"><?= $this->lang->line('payment_aggregators'); ?></h3>
</div>
<div class="box-body" style="overflow-x:auto;">
<table id="aggregators" class="table table-bordered table-striped">
<thead>
<tr>
<th align='center'>#</th>
<th><?= $this->lang->line('Nom'); ?></th>
<th align='center'><?= $this->lang->line('Email'); ?></th>
<th align='center'><?= $this->lang->line('Adresse'); ?></th>
<th align='center'><?= $this->lang->line('Contact'); ?></th>
<th align='center'><?= $this->lang->line('Statut'); ?></th>
<th align='center'><?php echo $this->lang->line('Activer'); ?></th>
<th>Action</th>
</tr>
</thead>
<tbody>
<?php
if(isset($aggregators)){
foreach ($aggregators->result() as $i => $row) {
?>
<tr>
<td align='center'><?= $i+1?></td>
<td><?= $row->name ?></td>
<td align='center'><?=$row->email?></td>
<td align='center'><?=$row->address?></td>
<td align='center'><?=$row->phone?></td>
<td align='center'><?= $this->lang->line($row->status ? 'Active' : 'Inactive'); ?></td>
<td align='center'>
<input type='checkbox' value='<?=$row->id?>' <?= $row->status ? 'checked' : '' ?>>
</td>
<td>
<button class='btn btn-success edit' data-id="<?=$row->id?>" data-address="<?=$row->address?>" data-name="<?=$row->name?>"
data-email="<?=$row->email?>" data-phone="<?=$row->phone?>" >
<i class='fa fa-edit'></i>
</button>
<button data-toggle='modal' class='btn btn-danger delete' data-id="<?=$row->id?>">
<i class='fa fa-trash'></i>
</button>
</td>
</tr>
<?php
}
}
?>
</tbody>
</table>
<button type="button" class="btn btn-success" id="enableAggregator"><?php echo $this->lang->line('Activer/Désactiver'); ?></button>
</div>
</div>
</div>
<div class="col-xs-4">
<div class="box">
<div class="box-header">
<h3 class="box-title"><?= $this->lang->line('add_aggregator'); ?></h3>
</div>
<div class="box-body">
<form id="create-aggregator-form" class="bottom-75 center-block" method="post">
<div class="form-group">
<label for="name"><?= $this->lang->line('Nom'); ?></label>
<input type="text" class="form-control input-lg" name="name" required>
</div>
<div class="form-group">
<label for="email"><?= $this->lang->line('Email'); ?></label>
<input type="email" class="form-control input-lg" name="email" required>
</div>
<div class="form-group">
<label for="address"><?= $this->lang->line('Adresse'); ?></label>
<input type="text" class="form-control input-lg" name="address">
</div>
<div class="form-group">
<label for="contact"><?= $this->lang->line('Contact'); ?></label>
<input type="text" class="form-control input-lg" name="phone">
</div>
<div class="form-group">
<input type="submit"
value="<?= $this->lang->line('Ajouter'); ?>"
class="btn btn-primary">
</div>
</form>
</div>
</div>
</div>
</div>
<div class="modal fade" id="editModal">
<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">&times;</span>
</button>
<h4 class="modal-title"><?= $this->lang->line('Mettre à jour des informations'); ?></h4>
</div>
<div class="modal-body">
<form id="update-form" method="post" class="bottom-75 center-block">
<div class="form-group">
<label><?= $this->lang->line('Nom'); ?></label>
<input type="text" class="form-control input-lg" name="name" required>
</div>
<div class="form-group">
<label><?= $this->lang->line('Email'); ?></label>
<input type="email" class="form-control input-lg" name="email" required>
</div>
<div class="form-group">
<label><?= $this->lang->line('Adresse'); ?></label>
<input type="text" class="form-control input-lg" name="address" >
</div>
<div class="form-group">
<label><?= $this->lang->line('Contact'); ?></label>
<input type="text" class="form-control input-lg" name="phone">
</div>
<div class="form-group">
<input id="btn-update" type="submit"
value="<?= $this->lang->line('save'); ?>" class="btn btn-primary">
<button type="button" class="btn btn-default pull-right"
data-dismiss="modal"><?= $this->lang->line('Fermer'); ?></button>
</div>
</form>
</div>
</div>
</div>
</div>
<?php $this->load->view('include/delete_modal') ?>
<?php $this->load->view('include/loader') ?>
</section>
</div>
<!-- jQuery 3 -->
<script src="<?= base_url('bower_components/jquery/dist/jquery.min.js') ?>"></script>
<!-- Bootstrap 3.3.7 -->
<script src="<?= base_url('bower_components/bootstrap/dist/js/bootstrap.min.js') ?>"></script>
<!-- DataTables -->
<script src="<?= base_url('bower_components/datatables.net/js/jquery.dataTables.min.js') ?>"></script>
<script src="<?= base_url('bower_components/datatables.net-bs/js/dataTables.bootstrap.min.js') ?>"></script>
<!-- Slimscroll -->
<script src="<?= base_url('bower_components/jquery-slimscroll/jquery.slimscroll.min.js') ?>"></script>
<!-- FastClick -->
<script src="<?= base_url('bower_components/fastclick/lib/fastclick.js') ?>"></script>
<!-- AdminLTE App -->
<script src="<?= base_url('dist/js/adminlte.min.js') ?>"></script>
<script src="<?= base_url('bower_components/toastr/toastr.js') ?>"></script>
<script src="<?= base_url('dist/js/sweetalert2.js') ?>"></script>
<script>
toastr.options.closeButton = true;
toastr.options.closeMethod = 'fadeOut';
toastr.options.closeDuration = 5000;
toastr.options.closeEasing = 'swing';
var selectedId = null
var checkedId = null
function showEnableButton() {
if($("#aggregators input:checked").length){
$('#enableAggregator').show();
$("#aggregators input:checked").each(function() {
checkedId = $(this).val()
});
}else{
$('#enableAggregator').hide();
checkedId = null
}
}
$(function () {
$('#aggregators').DataTable();
showEnableButton()
})
$('#aggregators').on('change', 'input[type=checkbox]', function(e) {
if(this.checked){
$("#aggregators").find("input[type=checkbox]").not(this).prop('checked', false);
}
showEnableButton()
});
$(document).on("click", ".edit", function () {
selectedId = $(this).data('id');
$("#update-form input[name='name']").val($(this).data('name'));
$("#update-form input[name='address']").val($(this).data('address'));
$("#update-form input[name='email']").val($(this).data('email'));
$("#update-form input[name='phone']").val($(this).data('phone'));
$('#editModal').modal('show');
});
$(document).on("click", ".delete", function () {
selectedId = $(this).data('id');
$('#delete-modal').modal('show');
});
$("#update-form").submit(function () {
$.ajax({
url: '<?= base_url('PaymentController/updatePaymentAggregator')?>',
type: 'post',
data: {
id: selectedId,
name: $("input[name=name]",this).val(),
address: $("input[name=address]",this).val(),
email: $("input[name=email]",this).val(),
phone: $("input[name=phone]",this).val()
},
dataType: 'json',
success: function (data) {
if(data.code === 200){
Swal.fire({
icon: 'success',
title: "<?= $this->lang->line('aggregator_updated')?>",
text:"<?= $this->lang->line('informations_updated')?>",
timer: 3000
}).then(()=>{
location.reload();
});
}else{
toastr.error(data.message , "<?= $this->lang->line('request_error')?>");
}
},
error: function (resultat, statut, error) {
console.log(resultat + " " + error);
toastr.error("<?= $this->lang->line('error_message')?>" , "<?= $this->lang->line('request_error')?>");
}
});
event.preventDefault();
});
$("#create-aggregator-form").submit(function (event) {
$.ajax({
url: '<?= base_url('PaymentController/createPaymentAggregator')?>',
type: 'post',
data: {
name: $("input[name=name]",this).val(),
address: $("input[name=address]",this).val(),
email: $("input[name=email]",this).val(),
phone: $("input[name=phone]",this).val()
},
dataType: 'json',
success: function (data) {
if(data.code === 200){
Swal.fire({
icon: 'success',
title: "<?= $this->lang->line('aggregator_created')?>",
text:"<?= $this->lang->line('informations_updated')?>",
timer: 3000
}).then(()=>{
location.reload();
});
}else{
toastr.error(data.message , "<?= $this->lang->line('request_error')?>");
}
},
error: function (resultat, statut, error) {
console.log(resultat + " " + error);
toastr.error("<?= $this->lang->line('error_message')?>" , "<?= $this->lang->line('request_error')?>");
}
});
event.preventDefault();
});
$("#enableAggregator").click(function () {
$.ajax({
url: '<?= base_url('PaymentController/enableAggregator')?>',
type: 'post',
data: {id: checkedId},
dataType: 'json',
success: function (data) {
if(data.code === 200){
Swal.fire({
icon: 'success',
title: "<?= $this->lang->line('aggregator_activated')?>",
text:"<?= $this->lang->line('informations_updated')?>",
timer: 3000
}).then(()=>{
location.reload();
});
}else{
toastr.error(data.message , "<?= $this->lang->line('request_error')?>");
}
},
error: function (resultat, statut, error) {
console.log(resultat + " " + error);
toastr.error("<?= $this->lang->line('error_message')?>" , "<?= $this->lang->line('request_error')?>");
}
});
});
$("#delete-btn").click(function () {
$.ajax({
url: '<?= base_url('PaymentController/deletePaymentAggregator')?>',
type: 'post',
data: {id: selectedId},
dataType: 'json',
success: function (data) {
if(data.code === 200){
Swal.fire({
icon: 'success',
title: "<?= $this->lang->line('aggregator_deleted')?>",
text:"<?= $this->lang->line('informations_updated')?>",
timer: 3000
}).then(()=>{
location.reload();
});
}else{
toastr.error(data.message , "<?= $this->lang->line('request_error')?>");
}
},
error: function (resultat, statut, error) {
console.log(resultat + " " + error);
toastr.error("<?= $this->lang->line('error_message')?>" , "<?= $this->lang->line('request_error')?>");
}
});
event.preventDefault();
});
</script>