Writeoff/Resources/views/parameter/rekening/index.blade.php
2024-05-02 09:46:15 +07:00

206 lines
8.7 KiB
PHP

<x-default-layout>
@section('title')
Rekening
@endsection
@section('breadcrumbs')
{{ Breadcrumbs::render('parameter.rekening') }}
@endsection
<div class="card">
<!--begin::Card header-->
<div class="card-header border-0 pt-6">
<!--begin::Card title-->
<div class="card-title">
<!--begin::Search-->
<div class="d-flex align-items-center position-relative my-1">
{!! getIcon('magnifier', 'fs-3 position-absolute ms-5') !!}
<input type="text" data-kt-rekening-table-filter="search" class="form-control form-control-solid w-250px ps-13" placeholder="Search rekening" id="mySearchInput"/>
</div>
<!--end::Search-->
</div>
<!--begin::Card title-->
<!--begin::Card toolbar-->
<div class="card-toolbar">
<!--begin::Toolbar-->
<div class="d-flex justify-content-end" data-kt-rekening-table-toolbar="base">
<!--begin::Export dropdown-->
<button type="button" class="btn btn-light-primary ms-5" data-kt-menu-trigger="click"
data-kt-menu-placement="bottom-end">
<i class="ki-duotone ki-exit-down fs-2"><span class="path1"></span><span class="path2"></span></i>
Export Report
</button>
<!--begin::Menu-->
<div id="kt_datatable_example_export_menu"
class="menu menu-sub menu-sub-dropdown menu-column menu-rounded menu-gray-600 menu-state-bg-light-primary fw-semibold fs-7 w-200px py-4"
data-kt-menu="true">
<!--begin::Menu item-->
<div class="menu-item px-3">
<a href="#" class="menu-link px-3" data-kt-export="copy">
Copy to clipboard
</a>
</div>
<!--end::Menu item-->
<!--begin::Menu item-->
<div class="menu-item px-3">
<a href="#" class="menu-link px-3" data-kt-export="excel">
Export as Excel
</a>
</div>
<!--end::Menu item-->
<!--begin::Menu item-->
<div class="menu-item px-3">
<a href="#" class="menu-link px-3" data-kt-export="csv">
Export as CSV
</a>
</div>
<!--end::Menu item-->
<!--begin::Menu item-->
<div class="menu-item px-3">
<a href="#" class="menu-link px-3" data-kt-export="pdf">
Export as PDF
</a>
</div>
<!--end::Menu item-->
<!--begin::Menu item-->
<div class="menu-item px-3">
<a href="#" class="menu-link px-3" data-kt-export="print">
Print
</a>
</div>
<!--end::Menu item-->
</div>
<!--begin::Hide default export buttons-->
<div id="kt_datatable_example_buttons" class="d-none"></div>
<!--end::Hide default export buttons-->
</div>
<!--end::Toolbar-->
<!--begin::Modal-->
<livewire:writeoff::rekening.rekening-modal/>
<!--end::Modal-->
</div>
<!--end::Card toolbar-->
</div>
<!--end::Card header-->
<!--begin::Card body-->
<div class="card-body py-4">
<!--begin::Table-->
<div class="table-responsive">
{{ $dataTable->table() }}
</div>
<!--end::Table-->
</div>
<!--end::Card body-->
</div>
@push('scripts')
{{ $dataTable->scripts() }}
<script>
document.getElementById('mySearchInput').addEventListener('keyup', function () {
window.LaravelDataTables['rekening-table'].search(this.value).draw();
});
document.addEventListener('livewire:initialized', function () {
// Listen for 'success' event emitted by Livewire
Livewire.on('success', (message) => {
// Reload the users-table datatable
Swal.fire({
text: message,
icon: 'success',
buttonsStyling: false,
confirmButtonText: 'Ok, got it!',
customClass: {
confirmButton: 'btn btn-primary',
}
})
$('#kt_modal_add_rekening').modal('hide');
LaravelDataTables['rekening-table'].ajax.reload();
});
Livewire.on('error', (message) => {
// Reload the users-table datatable
Swal.fire({
text: message,
icon: 'warning',
buttonsStyling: false,
confirmButtonText: 'Ok, got it!',
customClass: {
confirmButton: 'btn btn-primary',
}
})
$('#kt_modal_add_rekening').modal('hide');
LaravelDataTables['rekening-table'].ajax.reload();
});
});
$('#kt_modal_add_rekening').on('hidden.bs.modal', function () {
$(this).find('form').trigger('reset');
Livewire.dispatch('reload', false);
});
$(function(){
const documentTitle = 'Rekening Report';
var buttons = new $.fn.dataTable.Buttons(LaravelDataTables['rekening-table'], {
buttons: [
{
extend: 'copyHtml5',
title: documentTitle,
exportOptions: {
columns: [0, 1, 2, 3, 4, 5, 6, 7]
}
},
{
extend: 'excelHtml5',
title: documentTitle,
exportOptions: {
columns: [0, 1, 2, 3, 4, 5, 6, 7]
}
},
{
extend: 'csvHtml5',
title: documentTitle,
exportOptions: {
columns: [0, 1, 2, 3, 4, 5, 6, 7]
}
},
{
extend: 'pdfHtml5',
title: documentTitle,
exportOptions: {
columns: [0, 1, 2, 3, 4, 5, 6, 7]
}
},
{
extend: 'print',
title: documentTitle,
exportOptions: {
columns: [0, 1, 2, 3, 4, 5, 6, 7]
}
}
]
}).container().appendTo($('#kt_datatable_example_buttons'));
// Hook dropdown menu click event to datatable export buttons
const exportButtons = document.querySelectorAll('#kt_datatable_example_export_menu [data-kt-export]');
exportButtons.forEach(exportButton => {
exportButton.addEventListener('click', e => {
e.preventDefault();
console.log(e.target.getAttribute('data-kt-export'));
// Get clicked export value
const exportValue = e.target.getAttribute('data-kt-export');
const target = document.querySelector('.dt-buttons .buttons-' + exportValue);
// Trigger click event on hidden datatable export buttons
target.click();
});
});
});
</script>
@endpush
</x-default-layout>