file-management-system/resources/views/pages/masters/directorat/_table.blade.php

117 lines
4.5 KiB
PHP
Raw Normal View History

2023-04-12 01:30:25 +00:00
<!--begin::Table-->
{{ $dataTable->table() }}
<!--end::Table-->
{{-- Inject Scripts --}}
@section('scripts')
{{ $dataTable->scripts() }}
@endsection
@push('customscript')
2023-04-12 10:06:33 +00:00
@php
$route = explode('.', Route::currentRouteName());
@endphp
2023-04-12 01:30:25 +00:00
<script>
$("#searchbox").on("keyup search input paste cut", function () {
2023-04-12 10:06:33 +00:00
LaravelDataTables["{{$route[0]}}-table"].search(this.value).draw();
2023-04-12 01:30:25 +00:00
});
$(function () {
2023-04-12 10:06:33 +00:00
const documentTitle = '{{ ucfirst($route[0]) }} Report';
var buttons = new $.fn.dataTable.Buttons(LaravelDataTables["{{$route[0]}}-table"], {
2023-04-12 01:30:25 +00:00
buttons: [
{
2023-04-12 10:06:33 +00:00
extend: 'copyHtml5',
title: documentTitle
},
{
extend: 'excelHtml5',
title: documentTitle
},
{
extend: 'csvHtml5',
2023-04-12 01:30:25 +00:00
title: documentTitle
},
{
extend: 'pdfHtml5',
2023-04-12 10:06:33 +00:00
title: documentTitle
},
{
extend: 'print',
title: documentTitle
2023-04-12 01:30:25 +00:00
}
]
}).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();
2023-04-12 10:06:33 +00:00
console.log(e.target.getAttribute('data-kt-export'));
2023-04-12 01:30:25 +00:00
// 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();
});
});
2023-04-12 10:06:33 +00:00
LaravelDataTables["{{$route[0]}}-table"].on('click','.kt_edit_form',function(event){
event.preventDefault();
$.ajax({
url: $(this).attr('href'),
type: 'GET',
dataType: 'json',
success: function (response) {
2023-04-14 07:50:22 +00:00
$('#title_form').text('Edit {{ ucfirst(str_replace('-',' ',$route[0])) }}');
2023-04-12 10:06:33 +00:00
$('#{{$route[0]}}_id').val(response.id);
$('#{{$route[0]}}_name').val(response.name);
$('#{{$route[0]}}_kode').val(response.kode);
$('.form_{{$route[0]}}').attr('action', '{{ URL::to('/'.$route[0].'/') }}/' + response.id).append('<input type="hidden" name="_method" value="PUT">');
$('#kt_modal_{{$route[0]}}').modal('show');
}
})
})
LaravelDataTables["{{$route[0]}}-table"].on('click', '.delete', function (event) {
2023-04-12 01:30:25 +00:00
var form = $(this).closest("form");
event.preventDefault();
Swal.fire({
title: 'Are you sure?',
text: "You won't be able to revert this!",
icon: 'warning',
showCancelButton: true,
confirmButtonColor: '#3085d6',
cancelButtonColor: '#d33',
confirmButtonText: 'Yes, delete it!'
}).then((result) => {
if (result.isConfirmed) {
2023-04-12 10:06:33 +00:00
$.ajax({
type: "POST",
url: form.attr('action'),
data: form.serialize(), // serializes the form's elements.
success: function(data)
{
toastr.success('{{ucfirst($route[0])}} has been deleted.', 'Success!', {timeOut: 5000});
LaravelDataTables["{{$route[0]}}-table"].ajax.reload();
}
});
2023-04-12 01:30:25 +00:00
}
})
})
})
</script>
@endpush
@section('styles')
<style>
.dataTables_filter {
display: none;
}
</style>
@endsection