feat: optimasi script

main
Rohmad Eko Wahyudi 2025-11-12 08:25:50 +07:00
parent 9bda154947
commit ea82109dcb
No known key found for this signature in database
GPG Key ID: 4CCEDA68CB778BAF
32 changed files with 2044 additions and 2081 deletions

View File

@ -203,157 +203,158 @@
</div>
</div>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script type="text/javascript">
let currentData = {
aktivitas: [],
fasilitas: [],
jenis_pengolahan: []
};
$(document).ready(function () {
loadData();
});
function loadData() {
$.ajax({
url: '/Data/Aktivitas/Get',
type: 'GET',
success: function(data) {
currentData = data;
updateViewMode();
},
error: function() {
Swal.fire({
title: 'Error!',
text: 'Gagal memuat data',
icon: 'error',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
});
}
@section Scripts {
<script type="text/javascript">
let currentData = {
aktivitas: [],
fasilitas: [],
jenis_pengolahan: []
};
$(document).ready(function () {
loadData();
});
}
function updateViewMode() {
// Update Aktivitas - tampilkan dalam satu baris
if (currentData.aktivitas && currentData.aktivitas.length > 0) {
const aktivitasHtml = currentData.aktivitas.map(item =>
`<div class="justify-start text-slate-800 text-base font-normal font-['Plus_Jakarta_Sans'] leading-6">${item}</div>`
).join('');
$('#viewAktivitas').html(aktivitasHtml);
} else {
$('#viewAktivitas').html('<div class="text-gray-400">-</div>');
}
// Update Fasilitas - tampilkan dalam satu baris
if (currentData.fasilitas && currentData.fasilitas.length > 0) {
const fasilitasHtml = currentData.fasilitas.map(item =>
`<div class="justify-start text-slate-800 text-base font-normal font-['Plus_Jakarta_Sans'] leading-6">${item}</div>`
).join('');
$('#viewFasilitas').html(fasilitasHtml);
} else {
$('#viewFasilitas').html('<div class="text-gray-400">-</div>');
}
// Update Jenis Pengolahan - tampilkan dalam satu baris
if (currentData.jenis_pengolahan && currentData.jenis_pengolahan.length > 0) {
const jenisPengolahanHtml = currentData.jenis_pengolahan.map(item =>
`<div class="justify-start text-slate-800 text-base font-normal font-['Plus_Jakarta_Sans'] leading-6">${item}</div>`
).join('');
$('#viewJenisPengolahan').html(jenisPengolahanHtml);
} else {
$('#viewJenisPengolahan').html('<div class="text-gray-400">-</div>');
}
}
function toggleEditMode() {
$('#viewMode').addClass('hidden');
$('#editMode').removeClass('hidden').addClass('flex');
// Set checkboxes based on current data
$('input[name="aktivitas"]').each(function() {
$(this).prop('checked', currentData.aktivitas.includes($(this).val()));
});
$('input[name="fasilitas"]').each(function() {
$(this).prop('checked', currentData.fasilitas.includes($(this).val()));
});
$('input[name="jenis_pengolahan"]').each(function() {
$(this).prop('checked', currentData.jenis_pengolahan.includes($(this).val()));
});
}
function cancelEdit() {
$('#editMode').addClass('hidden').removeClass('flex');
$('#viewMode').removeClass('hidden');
}
function saveData() {
// Collect checked values
const aktivitas = [];
$('input[name="aktivitas"]:checked').each(function() {
aktivitas.push($(this).val());
});
const fasilitas = [];
$('input[name="fasilitas"]:checked').each(function() {
fasilitas.push($(this).val());
});
const jenisPengolahan = [];
$('input[name="jenis_pengolahan"]:checked').each(function() {
jenisPengolahan.push($(this).val());
});
// Send to server
$.ajax({
url: '/Data/Aktivitas/Save',
type: 'POST',
contentType: 'application/json',
data: JSON.stringify({
Aktivitas: aktivitas,
Fasilitas: fasilitas,
JenisPengolahan: jenisPengolahan
}),
success: function(response) {
if (response.success) {
function loadData() {
$.ajax({
url: '/Data/Aktivitas/Get',
type: 'GET',
success: function(data) {
currentData = data;
updateViewMode();
},
error: function() {
Swal.fire({
title: 'Berhasil!',
text: response.message,
icon: 'success',
title: 'Error!',
text: 'Gagal memuat data',
icon: 'error',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
// Update current data and switch to view mode
currentData = {
aktivitas: aktivitas,
fasilitas: fasilitas,
jenis_pengolahan: jenisPengolahan
};
updateViewMode();
cancelEdit();
});
}
},
error: function() {
Swal.fire({
title: 'Error!',
text: 'Gagal menyimpan data',
icon: 'error',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
});
});
}
function updateViewMode() {
// Update Aktivitas - tampilkan dalam satu baris
if (currentData.aktivitas && currentData.aktivitas.length > 0) {
const aktivitasHtml = currentData.aktivitas.map(item =>
`<div class="justify-start text-slate-800 text-base font-normal font-['Plus_Jakarta_Sans'] leading-6">${item}</div>`
).join('');
$('#viewAktivitas').html(aktivitasHtml);
} else {
$('#viewAktivitas').html('<div class="text-gray-400">-</div>');
}
});
}
</script>
// Update Fasilitas - tampilkan dalam satu baris
if (currentData.fasilitas && currentData.fasilitas.length > 0) {
const fasilitasHtml = currentData.fasilitas.map(item =>
`<div class="justify-start text-slate-800 text-base font-normal font-['Plus_Jakarta_Sans'] leading-6">${item}</div>`
).join('');
$('#viewFasilitas').html(fasilitasHtml);
} else {
$('#viewFasilitas').html('<div class="text-gray-400">-</div>');
}
// Update Jenis Pengolahan - tampilkan dalam satu baris
if (currentData.jenis_pengolahan && currentData.jenis_pengolahan.length > 0) {
const jenisPengolahanHtml = currentData.jenis_pengolahan.map(item =>
`<div class="justify-start text-slate-800 text-base font-normal font-['Plus_Jakarta_Sans'] leading-6">${item}</div>`
).join('');
$('#viewJenisPengolahan').html(jenisPengolahanHtml);
} else {
$('#viewJenisPengolahan').html('<div class="text-gray-400">-</div>');
}
}
function toggleEditMode() {
$('#viewMode').addClass('hidden');
$('#editMode').removeClass('hidden').addClass('flex');
// Set checkboxes based on current data
$('input[name="aktivitas"]').each(function() {
$(this).prop('checked', currentData.aktivitas.includes($(this).val()));
});
$('input[name="fasilitas"]').each(function() {
$(this).prop('checked', currentData.fasilitas.includes($(this).val()));
});
$('input[name="jenis_pengolahan"]').each(function() {
$(this).prop('checked', currentData.jenis_pengolahan.includes($(this).val()));
});
}
function cancelEdit() {
$('#editMode').addClass('hidden').removeClass('flex');
$('#viewMode').removeClass('hidden');
}
function saveData() {
// Collect checked values
const aktivitas = [];
$('input[name="aktivitas"]:checked').each(function() {
aktivitas.push($(this).val());
});
const fasilitas = [];
$('input[name="fasilitas"]:checked').each(function() {
fasilitas.push($(this).val());
});
const jenisPengolahan = [];
$('input[name="jenis_pengolahan"]:checked').each(function() {
jenisPengolahan.push($(this).val());
});
// Send to server
$.ajax({
url: '/Data/Aktivitas/Save',
type: 'POST',
contentType: 'application/json',
data: JSON.stringify({
Aktivitas: aktivitas,
Fasilitas: fasilitas,
JenisPengolahan: jenisPengolahan
}),
success: function(response) {
if (response.success) {
Swal.fire({
title: 'Berhasil!',
text: response.message,
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
// Update current data and switch to view mode
currentData = {
aktivitas: aktivitas,
fasilitas: fasilitas,
jenis_pengolahan: jenisPengolahan
};
updateViewMode();
cancelEdit();
});
}
},
error: function() {
Swal.fire({
title: 'Error!',
text: 'Gagal menyimpan data',
icon: 'error',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
});
}
});
}
</script>
}

View File

@ -98,149 +98,148 @@
</div>
</div>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://cdn.datatables.net/2.3.4/js/dataTables.js"></script>
<script src="/plugins/datatables/dataTables.tailwindcss.js"></script>
<script type="text/javascript">
var table;
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Data/BankSampahInduk/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'nama' },
{ data: 'tgl_pendaftaran' },
{
data: 'status',
render: function(data, type, row) {
if (data === 'Aktif') {
return '<div class="px-2 py-1 bg-green-100 rounded-full inline-flex items-center justify-center"><span class="text-green-600 text-xs font-semibold font-[\'Plus_Jakarta_Sans\']">Aktif</span></div>';
} else {
return '<div class="px-2 py-1 bg-red-50 rounded-full inline-flex items-center justify-center"><span class="text-red-600 text-xs font-medium font-[\'Plus_Jakarta_Sans\']">Tidak Aktif</span></div>';
@section Scripts {
<script type="text/javascript">
var table;
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Data/BankSampahInduk/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'nama' },
{ data: 'tgl_pendaftaran' },
{
data: 'status',
render: function(data, type, row) {
if (data === 'Aktif') {
return '<div class="px-2 py-1 bg-green-100 rounded-full inline-flex items-center justify-center"><span class="text-green-600 text-xs font-semibold font-[\'Plus_Jakarta_Sans\']">Aktif</span></div>';
} else {
return '<div class="px-2 py-1 bg-red-50 rounded-full inline-flex items-center justify-center"><span class="text-red-600 text-xs font-medium font-[\'Plus_Jakarta_Sans\']">Tidak Aktif</span></div>';
}
}
},
{ data: 'aksi' },
]
});
// Delete button handler
$('#example').on('click', '.delete-btn', function (e) {
e.preventDefault();
var id = $(this).data('id');
Swal.fire({
title: 'Apakah anda yakin?',
text: "Data yang dihapus tidak dapat dikembalikan lagi",
icon: 'warning',
showCancelButton: true,
confirmButtonText: 'Ya, Hapus',
cancelButtonText: 'Batal',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-red-500 text-white hover:bg-red-600 px-4 py-2 rounded-full mr-2',
cancelButton: 'btn bg-white text-gray-500 hover:bg-gray-50 px-4 py-2 rounded-full border border-gray-300',
},
}).then((result) => {
if (result.isConfirmed) {
// TODO: Implement actual delete API call
Swal.fire({
title: 'Terhapus!',
text: 'Data berhasil dihapus.',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
// Reload table
table.ajax.reload();
});
}
},
{ data: 'aksi' },
]
});
// Delete button handler
$('#example').on('click', '.delete-btn', function (e) {
e.preventDefault();
var id = $(this).data('id');
Swal.fire({
title: 'Apakah anda yakin?',
text: "Data yang dihapus tidak dapat dikembalikan lagi",
icon: 'warning',
showCancelButton: true,
confirmButtonText: 'Ya, Hapus',
cancelButtonText: 'Batal',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-red-500 text-white hover:bg-red-600 px-4 py-2 rounded-full mr-2',
cancelButton: 'btn bg-white text-gray-500 hover:bg-gray-50 px-4 py-2 rounded-full border border-gray-300',
},
}).then((result) => {
if (result.isConfirmed) {
// TODO: Implement actual delete API call
Swal.fire({
title: 'Terhapus!',
text: 'Data berhasil dihapus.',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
// Reload table
table.ajax.reload();
});
}
});
});
// Edit button handler
$('#example').on('click', '.edit-btn', function (e) {
e.preventDefault();
// Get row data
var row = table.row($(this).parents('tr')).data();
// Set edit mode
$('#edit_mode').val('true');
$('#bank_sampah_induk_id').val(row.id);
$('#modal_title').text('Edit Data Bank Sampah Induk');
// Convert date format from "15 Nov 2023" to "2023-11-15"
var tglPendaftaran = convertDateToInput(row.tgl_pendaftaran);
// Populate form with row data
$('#nama').val(row.nama);
$('#tgl_pendaftaran').val(tglPendaftaran);
$('#status').val(row.status);
// Open modal
modal_tambah.showModal();
});
});
// Edit button handler
$('#example').on('click', '.edit-btn', function (e) {
// Function to convert date format "15 Nov 2023" to "2023-11-15"
function convertDateToInput(dateStr) {
const monthMap = {
'Jan': '01', 'Feb': '02', 'Mar': '03', 'Apr': '04',
'Mei': '05', 'Jun': '06', 'Jul': '07', 'Agt': '08',
'Sep': '09', 'Okt': '10', 'Nov': '11', 'Des': '12'
};
const parts = dateStr.split(' ');
const day = parts[0].padStart(2, '0');
const month = monthMap[parts[1]];
const year = parts[2];
return `${year}-${month}-${day}`;
}
function closeModal() {
// Reset form
$('#formTambah')[0].reset();
$('#edit_mode').val('false');
$('#bank_sampah_induk_id').val('');
$('#modal_title').text('Tambah Data Bank Sampah Induk');
// Close modal
modal_tambah.close();
}
function submitForm(e) {
e.preventDefault();
// Get row data
var row = table.row($(this).parents('tr')).data();
// Set edit mode
$('#edit_mode').val('true');
$('#bank_sampah_induk_id').val(row.id);
$('#modal_title').text('Edit Data Bank Sampah Induk');
// Convert date format from "15 Nov 2023" to "2023-11-15"
var tglPendaftaran = convertDateToInput(row.tgl_pendaftaran);
// Populate form with row data
$('#nama').val(row.nama);
$('#tgl_pendaftaran').val(tglPendaftaran);
$('#status').val(row.status);
// Open modal
modal_tambah.showModal();
});
});
// Function to convert date format "15 Nov 2023" to "2023-11-15"
function convertDateToInput(dateStr) {
const monthMap = {
'Jan': '01', 'Feb': '02', 'Mar': '03', 'Apr': '04',
'Mei': '05', 'Jun': '06', 'Jul': '07', 'Agt': '08',
'Sep': '09', 'Okt': '10', 'Nov': '11', 'Des': '12'
};
const parts = dateStr.split(' ');
const day = parts[0].padStart(2, '0');
const month = monthMap[parts[1]];
const year = parts[2];
return `${year}-${month}-${day}`;
}
function closeModal() {
// Reset form
$('#formTambah')[0].reset();
$('#edit_mode').val('false');
$('#bank_sampah_induk_id').val('');
$('#modal_title').text('Tambah Data Bank Sampah Induk');
// Close modal
modal_tambah.close();
}
function submitForm(e) {
e.preventDefault();
var isEditMode = $('#edit_mode').val() === 'true';
// TODO: Implement form submission logic
Swal.fire({
title: 'Berhasil!',
text: isEditMode ? 'Data berhasil diperbarui' : 'Data berhasil ditambahkan',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
closeModal();
// Reload table
table.ajax.reload();
});
}
</script>
var isEditMode = $('#edit_mode').val() === 'true';
// TODO: Implement form submission logic
Swal.fire({
title: 'Berhasil!',
text: isEditMode ? 'Data berhasil diperbarui' : 'Data berhasil ditambahkan',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
closeModal();
// Reload table
table.ajax.reload();
});
}
</script>
}

View File

@ -82,119 +82,118 @@
</div>
</div>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://cdn.datatables.net/2.3.4/js/dataTables.js"></script>
<script src="/plugins/datatables/dataTables.tailwindcss.js"></script>
<script type="text/javascript">
var table;
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Data/HargaSampah/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'nama_subkategori' },
{
data: 'harga',
render: function(data) {
return new Intl.NumberFormat('id-ID').format(data);
@section Scripts {
<script type="text/javascript">
var table;
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Data/HargaSampah/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'nama_subkategori' },
{
data: 'harga',
render: function(data) {
return new Intl.NumberFormat('id-ID').format(data);
}
},
{ data: 'aksi' },
]
});
// Delete button handler
$('#example').on('click', '.p-2.bg-red-500', function (e) {
e.preventDefault();
Swal.fire({
title: 'Anda yakin ingin menghapus data ini?',
icon: 'warning',
showCancelButton: true,
confirmButtonText: 'Ya',
cancelButtonText: 'Tidak',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-8 py-2 rounded-full mr-2',
cancelButton: 'btn bg-white text-gray-500 hover:bg-gray-50 px-8 py-2 rounded-full border border-gray-300',
},
}).then((result) => {
if (result.isConfirmed) {
// TODO: Implement actual delete API call
Swal.fire({
title: 'Berhasil!',
text: 'Data berhasil dihapus.',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
// Reload table
table.ajax.reload();
});
}
},
{ data: 'aksi' },
]
});
// Delete button handler
$('#example').on('click', '.p-2.bg-red-500', function (e) {
e.preventDefault();
Swal.fire({
title: 'Anda yakin ingin menghapus data ini?',
icon: 'warning',
showCancelButton: true,
confirmButtonText: 'Ya',
cancelButtonText: 'Tidak',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-8 py-2 rounded-full mr-2',
cancelButton: 'btn bg-white text-gray-500 hover:bg-gray-50 px-8 py-2 rounded-full border border-gray-300',
},
}).then((result) => {
if (result.isConfirmed) {
// TODO: Implement actual delete API call
Swal.fire({
title: 'Berhasil!',
text: 'Data berhasil dihapus.',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
// Reload table
table.ajax.reload();
});
}
});
});
// Edit button handler
$('#example').on('click', '.p-2.bg-amber-500', function (e) {
e.preventDefault();
// Get row data
var row = table.row($(this).parents('tr')).data();
// Set edit mode
$('#edit_mode').val('true');
$('#modal_title').text('Edit Data Harga Sampah');
// Populate form with row data
$('#nama_subkategori').val(row.nama_subkategori);
$('#harga').val(row.harga);
// Open modal
modal_tambah.showModal();
});
});
// Edit button handler
$('#example').on('click', '.p-2.bg-amber-500', function (e) {
function closeModal() {
// Reset form
$('#formTambah')[0].reset();
$('#edit_mode').val('false');
$('#modal_title').text('Tambah Data Harga Sampah');
// Close modal
modal_tambah.close();
}
function submitForm(e) {
e.preventDefault();
// Get row data
var row = table.row($(this).parents('tr')).data();
// Set edit mode
$('#edit_mode').val('true');
$('#modal_title').text('Edit Data Harga Sampah');
// Populate form with row data
$('#nama_subkategori').val(row.nama_subkategori);
$('#harga').val(row.harga);
// Open modal
modal_tambah.showModal();
});
});
function closeModal() {
// Reset form
$('#formTambah')[0].reset();
$('#edit_mode').val('false');
$('#modal_title').text('Tambah Data Harga Sampah');
// Close modal
modal_tambah.close();
}
function submitForm(e) {
e.preventDefault();
var isEditMode = $('#edit_mode').val() === 'true';
// TODO: Implement form submission logic
Swal.fire({
title: 'Berhasil!',
text: isEditMode ? 'Data berhasil diperbarui' : 'Data berhasil ditambahkan',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
closeModal();
// Reload table
table.ajax.reload();
});
}
</script>
var isEditMode = $('#edit_mode').val() === 'true';
// TODO: Implement form submission logic
Swal.fire({
title: 'Berhasil!',
text: isEditMode ? 'Data berhasil diperbarui' : 'Data berhasil ditambahkan',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
closeModal();
// Reload table
table.ajax.reload();
});
}
</script>
}

View File

@ -118,158 +118,157 @@
</div>
</div>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://cdn.datatables.net/2.3.4/js/dataTables.js"></script>
<script src="/plugins/datatables/dataTables.tailwindcss.js"></script>
<script type="text/javascript">
var table;
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Data/Nasabah/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'nama' },
{ data: 'tgl_pendaftaran' },
{
data: 'status',
render: function(data, type, row) {
if (data === 'Aktif') {
return '<div class="px-2 py-1 bg-green-100 rounded-full inline-flex items-center justify-center"><span class="text-green-600 text-xs font-semibold font-[\'Plus_Jakarta_Sans\']">Aktif</span></div>';
} else {
return '<div class="px-2 py-1 bg-red-50 rounded-full inline-flex items-center justify-center"><span class="text-red-600 text-xs font-medium font-[\'Plus_Jakarta_Sans\']">Tidak Aktif</span></div>';
@section Scripts {
<script type="text/javascript">
var table;
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Data/Nasabah/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'nama' },
{ data: 'tgl_pendaftaran' },
{
data: 'status',
render: function(data, type, row) {
if (data === 'Aktif') {
return '<div class="px-2 py-1 bg-green-100 rounded-full inline-flex items-center justify-center"><span class="text-green-600 text-xs font-semibold font-[\'Plus_Jakarta_Sans\']">Aktif</span></div>';
} else {
return '<div class="px-2 py-1 bg-red-50 rounded-full inline-flex items-center justify-center"><span class="text-red-600 text-xs font-medium font-[\'Plus_Jakarta_Sans\']">Tidak Aktif</span></div>';
}
}
},
{
data: 'saldo_awal',
render: function(data, type, row) {
return new Intl.NumberFormat('id-ID').format(data);
}
},
{ data: 'status_penarikan' },
{ data: 'aksi' },
]
});
// Delete button handler
$('#example').on('click', '.delete-btn', function (e) {
e.preventDefault();
var id = $(this).data('id');
Swal.fire({
title: 'Apakah anda yakin?',
text: "Data yang dihapus tidak dapat dikembalikan lagi",
icon: 'warning',
showCancelButton: true,
confirmButtonText: 'Ya, Hapus',
cancelButtonText: 'Batal',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-red-500 text-white hover:bg-red-600 px-4 py-2 rounded-full mr-2',
cancelButton: 'btn bg-white text-gray-500 hover:bg-gray-50 px-4 py-2 rounded-full border border-gray-300',
},
}).then((result) => {
if (result.isConfirmed) {
// TODO: Implement actual delete API call
Swal.fire({
title: 'Terhapus!',
text: 'Data berhasil dihapus.',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
// Reload table
table.ajax.reload();
});
}
},
{
data: 'saldo_awal',
render: function(data, type, row) {
return new Intl.NumberFormat('id-ID').format(data);
}
},
{ data: 'status_penarikan' },
{ data: 'aksi' },
]
});
// Delete button handler
$('#example').on('click', '.delete-btn', function (e) {
e.preventDefault();
var id = $(this).data('id');
Swal.fire({
title: 'Apakah anda yakin?',
text: "Data yang dihapus tidak dapat dikembalikan lagi",
icon: 'warning',
showCancelButton: true,
confirmButtonText: 'Ya, Hapus',
cancelButtonText: 'Batal',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-red-500 text-white hover:bg-red-600 px-4 py-2 rounded-full mr-2',
cancelButton: 'btn bg-white text-gray-500 hover:bg-gray-50 px-4 py-2 rounded-full border border-gray-300',
},
}).then((result) => {
if (result.isConfirmed) {
// TODO: Implement actual delete API call
Swal.fire({
title: 'Terhapus!',
text: 'Data berhasil dihapus.',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
// Reload table
table.ajax.reload();
});
}
});
});
// Edit button handler
$('#example').on('click', '.edit-btn', function (e) {
e.preventDefault();
// Get row data
var row = table.row($(this).parents('tr')).data();
// Set edit mode
$('#edit_mode').val('true');
$('#nasabah_id').val(row.id);
$('#modal_title').text('Edit Data Nasabah');
// Convert date format from "15 Nov 2023" to "2023-11-15"
var tglPendaftaran = convertDateToInput(row.tgl_pendaftaran);
// Populate form with row data
$('#nama').val(row.nama);
$('#tgl_pendaftaran').val(tglPendaftaran);
$('#status').val(row.status);
$('#saldo_awal').val(row.saldo_awal);
$('#status_penarikan').val(row.status_penarikan);
// Open modal
modal_tambah.showModal();
});
});
// Edit button handler
$('#example').on('click', '.edit-btn', function (e) {
// Function to convert date format "15 Nov 2023" to "2023-11-15"
function convertDateToInput(dateStr) {
const monthMap = {
'Jan': '01', 'Feb': '02', 'Mar': '03', 'Apr': '04',
'Mei': '05', 'Jun': '06', 'Jul': '07', 'Agt': '08',
'Sep': '09', 'Okt': '10', 'Nov': '11', 'Des': '12'
};
const parts = dateStr.split(' ');
const day = parts[0].padStart(2, '0');
const month = monthMap[parts[1]];
const year = parts[2];
return `${year}-${month}-${day}`;
}
function closeModal() {
// Reset form
$('#formTambah')[0].reset();
$('#edit_mode').val('false');
$('#nasabah_id').val('');
$('#modal_title').text('Tambah Data Nasabah');
// Close modal
modal_tambah.close();
}
function submitForm(e) {
e.preventDefault();
// Get row data
var row = table.row($(this).parents('tr')).data();
// Set edit mode
$('#edit_mode').val('true');
$('#nasabah_id').val(row.id);
$('#modal_title').text('Edit Data Nasabah');
// Convert date format from "15 Nov 2023" to "2023-11-15"
var tglPendaftaran = convertDateToInput(row.tgl_pendaftaran);
// Populate form with row data
$('#nama').val(row.nama);
$('#tgl_pendaftaran').val(tglPendaftaran);
$('#status').val(row.status);
$('#saldo_awal').val(row.saldo_awal);
$('#status_penarikan').val(row.status_penarikan);
// Open modal
modal_tambah.showModal();
});
});
// Function to convert date format "15 Nov 2023" to "2023-11-15"
function convertDateToInput(dateStr) {
const monthMap = {
'Jan': '01', 'Feb': '02', 'Mar': '03', 'Apr': '04',
'Mei': '05', 'Jun': '06', 'Jul': '07', 'Agt': '08',
'Sep': '09', 'Okt': '10', 'Nov': '11', 'Des': '12'
};
const parts = dateStr.split(' ');
const day = parts[0].padStart(2, '0');
const month = monthMap[parts[1]];
const year = parts[2];
return `${year}-${month}-${day}`;
}
function closeModal() {
// Reset form
$('#formTambah')[0].reset();
$('#edit_mode').val('false');
$('#nasabah_id').val('');
$('#modal_title').text('Tambah Data Nasabah');
// Close modal
modal_tambah.close();
}
function submitForm(e) {
e.preventDefault();
var isEditMode = $('#edit_mode').val() === 'true';
// TODO: Implement form submission logic
Swal.fire({
title: 'Berhasil!',
text: isEditMode ? 'Data berhasil diperbarui' : 'Data berhasil ditambahkan',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
closeModal();
// Reload table
table.ajax.reload();
});
}
</script>
var isEditMode = $('#edit_mode').val() === 'true';
// TODO: Implement form submission logic
Swal.fire({
title: 'Berhasil!',
text: isEditMode ? 'Data berhasil diperbarui' : 'Data berhasil ditambahkan',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
closeModal();
// Reload table
table.ajax.reload();
});
}
</script>
}

View File

@ -2,10 +2,6 @@
ViewData["Title"] = "Offtaker Sampah";
}
@section Styles {
<link rel="stylesheet" href="https://cdn.datatables.net/2.3.4/css/dataTables.tailwindcss.css" />
}
<div class="flex flex-col gap-2 md:flex-row md:justify-between md:gap-0">
<div class="prose">
<span class="text-xl font-semibold text-gray-900 font-['Plus_Jakarta_Sans']">
@ -230,134 +226,132 @@
</div>
</div>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://cdn.datatables.net/2.3.4/js/dataTables.js"></script>
<script src="/plugins/datatables/dataTables.tailwindcss.js"></script>
<script type="text/javascript">
var table;
@section Scripts {
<script type="text/javascript">
var table;
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Data/Offtaker/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'nama_offtaker' },
{ data: 'kabupaten' },
{ data: 'kecamatan' },
{ data: 'kelurahan' },
{ data: 'status' },
{ data: 'aksi' },
]
});
// Delete button handler
$('#example').on('click', '.p-2.bg-red-500', function (e) {
e.preventDefault();
Swal.fire({
title: 'Anda yakin ingin menghapus data ini?',
icon: 'warning',
showCancelButton: true,
confirmButtonText: 'Ya',
cancelButtonText: 'Tidak',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-8 py-2 rounded-full mr-2',
cancelButton: 'btn bg-white text-gray-500 hover:bg-gray-50 px-8 py-2 rounded-full border border-gray-300',
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Data/Offtaker/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
}).then((result) => {
if (result.isConfirmed) {
// TODO: Implement actual delete API call
Swal.fire({
title: 'Berhasil!',
text: 'Data berhasil dihapus.',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
// Reload table
table.ajax.reload();
});
}
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'nama_offtaker' },
{ data: 'kabupaten' },
{ data: 'kecamatan' },
{ data: 'kelurahan' },
{ data: 'status' },
{ data: 'aksi' },
]
});
// Delete button handler
$('#example').on('click', '.p-2.bg-red-500', function (e) {
e.preventDefault();
Swal.fire({
title: 'Anda yakin ingin menghapus data ini?',
icon: 'warning',
showCancelButton: true,
confirmButtonText: 'Ya',
cancelButtonText: 'Tidak',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-8 py-2 rounded-full mr-2',
cancelButton: 'btn bg-white text-gray-500 hover:bg-gray-50 px-8 py-2 rounded-full border border-gray-300',
},
}).then((result) => {
if (result.isConfirmed) {
// TODO: Implement actual delete API call
Swal.fire({
title: 'Berhasil!',
text: 'Data berhasil dihapus.',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
// Reload table
table.ajax.reload();
});
}
});
});
// Edit button handler
$('#example').on('click', '.p-2.bg-amber-500', function (e) {
e.preventDefault();
// Get row data
var row = table.row($(this).parents('tr')).data();
// Set edit mode
$('#edit_mode').val('true');
$('#modal_title').text('Edit Offtaker');
// Show status field in edit mode
$('#status_wrapper').show();
// Populate form with row data
$('#nama_offtaker').val(row.nama_offtaker);
$('#email').val(row.email);
$('#no_hp').val(row.no_hp);
$('#provinsi').val(row.provinsi);
$('#kabupaten').val(row.kabupaten);
$('#kecamatan').val(row.kecamatan);
$('#kelurahan').val(row.kelurahan);
$('#alamat').val(row.alamat);
$('#rt').val(row.rt);
$('#rw').val(row.rw);
$('#kode_pos').val(row.kode_pos);
// Extract status from HTML badge
var statusText = $(row.status).text().trim();
$('#status').val(statusText);
// Open modal
modal_tambah.showModal();
});
});
// Edit button handler
$('#example').on('click', '.p-2.bg-amber-500', function (e) {
function closeModal() {
// Reset form
$('#formTambah')[0].reset();
$('#edit_mode').val('false');
$('#modal_title').text('Tambah Offtaker');
$('#status_wrapper').hide();
// Close modal
modal_tambah.close();
}
function submitForm(e) {
e.preventDefault();
// Get row data
var row = table.row($(this).parents('tr')).data();
var isEditMode = $('#edit_mode').val() === 'true';
// Set edit mode
$('#edit_mode').val('true');
$('#modal_title').text('Edit Offtaker');
// TODO: Implement form submission logic
Swal.fire({
title: 'Berhasil!',
text: isEditMode ? 'Data berhasil diperbarui' : 'Data berhasil ditambahkan',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
closeModal();
// Show status field in edit mode
$('#status_wrapper').show();
// Populate form with row data
$('#nama_offtaker').val(row.nama_offtaker);
$('#email').val(row.email);
$('#no_hp').val(row.no_hp);
$('#provinsi').val(row.provinsi);
$('#kabupaten').val(row.kabupaten);
$('#kecamatan').val(row.kecamatan);
$('#kelurahan').val(row.kelurahan);
$('#alamat').val(row.alamat);
$('#rt').val(row.rt);
$('#rw').val(row.rw);
$('#kode_pos').val(row.kode_pos);
// Extract status from HTML badge
var statusText = $(row.status).text().trim();
$('#status').val(statusText);
// Open modal
modal_tambah.showModal();
});
});
function closeModal() {
// Reset form
$('#formTambah')[0].reset();
$('#edit_mode').val('false');
$('#modal_title').text('Tambah Offtaker');
$('#status_wrapper').hide();
// Close modal
modal_tambah.close();
}
function submitForm(e) {
e.preventDefault();
var isEditMode = $('#edit_mode').val() === 'true';
// TODO: Implement form submission logic
Swal.fire({
title: 'Berhasil!',
text: isEditMode ? 'Data berhasil diperbarui' : 'Data berhasil ditambahkan',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
closeModal();
// Reload table
table.ajax.reload();
});
}
</script>
// Reload table
table.ajax.reload();
});
}
</script>
}

View File

@ -194,152 +194,151 @@
</div>
</div>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://cdn.datatables.net/2.3.4/js/dataTables.js"></script>
<script src="/plugins/datatables/dataTables.tailwindcss.js"></script>
<script type="text/javascript">
var table;
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Main/BankSampah/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'tgl_pemilahan' },
{ data: 'nama_bank_sampah' },
{ data: 'nama_penanggung_jawab' },
{ data: 'jenis_sampah' },
{ data: 'kategori_sampah' },
{ data: 'jumlah' },
{ data: 'asal_sampah' },
{ data: 'status_validasi' },
{ data: 'catatan' },
{ data: 'aksi' },
]
});
// Delete button handler
$('#example').on('click', '.p-2.bg-red-500', function (e) {
e.preventDefault();
Swal.fire({
title: 'Apakah anda yakin?',
text: "Data yang dihapus tidak dapat dikembalikan lagi",
icon: 'warning',
showCancelButton: true,
confirmButtonText: 'Ya, Hapus',
cancelButtonText: 'Batal',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-red-500 text-white hover:bg-red-600 px-4 py-2 rounded-full mr-2',
cancelButton: 'btn bg-white text-gray-500 hover:bg-gray-50 px-4 py-2 rounded-full border border-gray-300',
@section Scripts {
<script type="text/javascript">
var table;
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Main/BankSampah/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
}).then((result) => {
if (result.isConfirmed) {
// TODO: Implement actual delete API call
Swal.fire({
title: 'Terhapus!',
text: 'Data berhasil dihapus.',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
// Reload table
table.ajax.reload();
});
}
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'tgl_pemilahan' },
{ data: 'nama_bank_sampah' },
{ data: 'nama_penanggung_jawab' },
{ data: 'jenis_sampah' },
{ data: 'kategori_sampah' },
{ data: 'jumlah' },
{ data: 'asal_sampah' },
{ data: 'status_validasi' },
{ data: 'catatan' },
{ data: 'aksi' },
]
});
// Delete button handler
$('#example').on('click', '.p-2.bg-red-500', function (e) {
e.preventDefault();
Swal.fire({
title: 'Apakah anda yakin?',
text: "Data yang dihapus tidak dapat dikembalikan lagi",
icon: 'warning',
showCancelButton: true,
confirmButtonText: 'Ya, Hapus',
cancelButtonText: 'Batal',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-red-500 text-white hover:bg-red-600 px-4 py-2 rounded-full mr-2',
cancelButton: 'btn bg-white text-gray-500 hover:bg-gray-50 px-4 py-2 rounded-full border border-gray-300',
},
}).then((result) => {
if (result.isConfirmed) {
// TODO: Implement actual delete API call
Swal.fire({
title: 'Terhapus!',
text: 'Data berhasil dihapus.',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
// Reload table
table.ajax.reload();
});
}
});
});
// Edit button handler
$('#example').on('click', '.p-2.bg-amber-500', function (e) {
e.preventDefault();
// Get row data
var row = table.row($(this).parents('tr')).data();
// Set edit mode
$('#edit_mode').val('true');
$('#modal_title').text('Edit Data Pemilahan');
// Convert date format from "15 Mar 2024" to "2024-03-15"
var tglPemilahan = convertDateToInput(row.tgl_pemilahan);
// Populate form with row data
$('#tgl_pemilahan').val(tglPemilahan);
$('#nama_bank_sampah').val(row.nama_bank_sampah);
$('#nama_penanggung_jawab').val(row.nama_penanggung_jawab);
$('#jenis_sampah').val(row.jenis_sampah);
$('#kategori_sampah').val(row.kategori_sampah);
$('#jumlah').val(row.jumlah);
$('#asal_sampah').val(row.asal_sampah);
// Extract status from HTML badge
var statusText = $(row.status_validasi).text().trim();
$('#status_validasi').val(statusText);
$('#catatan').val(row.catatan);
// Open modal
modal_tambah.showModal();
});
});
// Edit button handler
$('#example').on('click', '.p-2.bg-amber-500', function (e) {
// Function to convert date format "15 Mar 2024" to "2024-03-15"
function convertDateToInput(dateStr) {
const monthMap = {
'Jan': '01', 'Feb': '02', 'Mar': '03', 'Apr': '04',
'Mei': '05', 'Jun': '06', 'Jul': '07', 'Agt': '08',
'Sep': '09', 'Okt': '10', 'Nov': '11', 'Des': '12'
};
const parts = dateStr.split(' ');
const day = parts[0].padStart(2, '0');
const month = monthMap[parts[1]];
const year = parts[2];
return `${year}-${month}-${day}`;
}
function closeModal() {
// Reset form
$('#formTambah')[0].reset();
$('#edit_mode').val('false');
$('#modal_title').text('Tambah Data Pemilahan');
// Close modal
modal_tambah.close();
}
function submitForm(e) {
e.preventDefault();
// Get row data
var row = table.row($(this).parents('tr')).data();
// Set edit mode
$('#edit_mode').val('true');
$('#modal_title').text('Edit Data Pemilahan');
// Convert date format from "15 Mar 2024" to "2024-03-15"
var tglPemilahan = convertDateToInput(row.tgl_pemilahan);
// Populate form with row data
$('#tgl_pemilahan').val(tglPemilahan);
$('#nama_bank_sampah').val(row.nama_bank_sampah);
$('#nama_penanggung_jawab').val(row.nama_penanggung_jawab);
$('#jenis_sampah').val(row.jenis_sampah);
$('#kategori_sampah').val(row.kategori_sampah);
$('#jumlah').val(row.jumlah);
$('#asal_sampah').val(row.asal_sampah);
// Extract status from HTML badge
var statusText = $(row.status_validasi).text().trim();
$('#status_validasi').val(statusText);
$('#catatan').val(row.catatan);
// Open modal
modal_tambah.showModal();
});
});
// Function to convert date format "15 Mar 2024" to "2024-03-15"
function convertDateToInput(dateStr) {
const monthMap = {
'Jan': '01', 'Feb': '02', 'Mar': '03', 'Apr': '04',
'Mei': '05', 'Jun': '06', 'Jul': '07', 'Agt': '08',
'Sep': '09', 'Okt': '10', 'Nov': '11', 'Des': '12'
};
const parts = dateStr.split(' ');
const day = parts[0].padStart(2, '0');
const month = monthMap[parts[1]];
const year = parts[2];
return `${year}-${month}-${day}`;
}
function closeModal() {
// Reset form
$('#formTambah')[0].reset();
$('#edit_mode').val('false');
$('#modal_title').text('Tambah Data Pemilahan');
// Close modal
modal_tambah.close();
}
function submitForm(e) {
e.preventDefault();
var isEditMode = $('#edit_mode').val() === 'true';
// TODO: Implement form submission logic
Swal.fire({
title: 'Berhasil!',
text: isEditMode ? 'Data berhasil diperbarui' : 'Data berhasil ditambahkan',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
closeModal();
// Reload table
table.ajax.reload();
});
}
</script>
var isEditMode = $('#edit_mode').val() === 'true';
// TODO: Implement form submission logic
Swal.fire({
title: 'Berhasil!',
text: isEditMode ? 'Data berhasil diperbarui' : 'Data berhasil ditambahkan',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
closeModal();
// Reload table
table.ajax.reload();
});
}
</script>
}

View File

@ -112,135 +112,134 @@
</div>
</div>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://cdn.datatables.net/2.3.4/js/dataTables.js"></script>
<script src="/plugins/datatables/dataTables.tailwindcss.js"></script>
<script type="text/javascript">
var table;
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Main/BankSampahNasabah/Table',
scrollX: true,
autoWidth: false,
responsive: true,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'nama' },
{ data: 'tgl_pendaftaran' },
{ data: 'status' },
{ data: 'aksi' },
]
});
// Delete button handler
$('#example').on('click', '.delete-btn', function (e) {
e.preventDefault();
Swal.fire({
title: 'Apakah anda yakin?',
text: "Data yang dihapus tidak dapat dikembalikan lagi",
icon: 'warning',
showCancelButton: true,
confirmButtonText: 'Ya, Hapus',
cancelButtonText: 'Batal',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-red-500 text-white hover:bg-red-600 px-4 py-2 rounded-full mr-2',
cancelButton: 'btn bg-white text-gray-500 hover:bg-gray-50 px-4 py-2 rounded-full border border-gray-300',
@section Scripts {
<script type="text/javascript">
var table;
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Main/BankSampahNasabah/Table',
scrollX: true,
autoWidth: false,
responsive: true,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
}).then((result) => {
if (result.isConfirmed) {
// TODO: Implement actual delete API call
Swal.fire({
title: 'Terhapus!',
text: 'Data berhasil dihapus.',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
// Reload table
table.ajax.reload();
});
}
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'nama' },
{ data: 'tgl_pendaftaran' },
{ data: 'status' },
{ data: 'aksi' },
]
});
// Delete button handler
$('#example').on('click', '.delete-btn', function (e) {
e.preventDefault();
Swal.fire({
title: 'Apakah anda yakin?',
text: "Data yang dihapus tidak dapat dikembalikan lagi",
icon: 'warning',
showCancelButton: true,
confirmButtonText: 'Ya, Hapus',
cancelButtonText: 'Batal',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-red-500 text-white hover:bg-red-600 px-4 py-2 rounded-full mr-2',
cancelButton: 'btn bg-white text-gray-500 hover:bg-gray-50 px-4 py-2 rounded-full border border-gray-300',
},
}).then((result) => {
if (result.isConfirmed) {
// TODO: Implement actual delete API call
Swal.fire({
title: 'Terhapus!',
text: 'Data berhasil dihapus.',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
// Reload table
table.ajax.reload();
});
}
});
});
// Edit button handler
$('#example').on('click', '.edit-btn', function (e) {
e.preventDefault();
// Get row data
var row = table.row($(this).parents('tr')).data();
// Set edit mode
$('#edit_mode').val('true');
$('#modal_title').text('Edit Bank Sampah Saya');
// Populate form with row data
$('#daftar_bank_sampah').val(row.nama);
// Open modal
modal_tambah.showModal();
});
});
// Edit button handler
$('#example').on('click', '.edit-btn', function (e) {
function closeModal() {
// Reset form
$('#formTambah')[0].reset();
$('#edit_mode').val('false');
$('#modal_title').text('Tambah Bank Sampah Saya');
// Close modal
modal_tambah.close();
}
function submitForm(e) {
e.preventDefault();
// Get row data
var row = table.row($(this).parents('tr')).data();
// Set edit mode
$('#edit_mode').val('true');
$('#modal_title').text('Edit Bank Sampah Saya');
// Populate form with row data
$('#daftar_bank_sampah').val(row.nama);
// Open modal
modal_tambah.showModal();
});
});
function closeModal() {
// Reset form
$('#formTambah')[0].reset();
$('#edit_mode').val('false');
$('#modal_title').text('Tambah Bank Sampah Saya');
// Close modal
modal_tambah.close();
}
function submitForm(e) {
e.preventDefault();
var isEditMode = $('#edit_mode').val() === 'true';
// Get form data
var kelurahan = $('#kelurahan').val();
var daftarBankSampah = $('#daftar_bank_sampah').val();
// Validate
if (!kelurahan || !daftarBankSampah) {
var isEditMode = $('#edit_mode').val() === 'true';
// Get form data
var kelurahan = $('#kelurahan').val();
var daftarBankSampah = $('#daftar_bank_sampah').val();
// Validate
if (!kelurahan || !daftarBankSampah) {
Swal.fire({
title: 'Error!',
text: 'Mohon lengkapi semua field yang wajib diisi',
icon: 'error',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
});
return;
}
// TODO: Implement form submission logic
Swal.fire({
title: 'Error!',
text: 'Mohon lengkapi semua field yang wajib diisi',
icon: 'error',
title: 'Berhasil!',
text: isEditMode ? 'Data berhasil diperbarui' : 'Data berhasil ditambahkan',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
closeModal();
// Reload table
table.ajax.reload();
});
return;
}
// TODO: Implement form submission logic
Swal.fire({
title: 'Berhasil!',
text: isEditMode ? 'Data berhasil diperbarui' : 'Data berhasil ditambahkan',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
closeModal();
// Reload table
table.ajax.reload();
});
}
</script>
</script>
}

View File

@ -207,155 +207,154 @@
</div>
</div>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://cdn.datatables.net/2.3.4/js/dataTables.js"></script>
<script src="/plugins/datatables/dataTables.tailwindcss.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script type="text/javascript">
var table;
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Main/Composting/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'tgl_pencatatan' },
{ data: 'nama_bank_sampah' },
{ data: 'nama_penanggung_jawab' },
{ data: 'jenis_sampah_organik' },
{ data: 'jumlah_sampah_masuk' },
{ data: 'jumlah_kompos_dihasilkan' },
{ data: 'lama_proses' },
{ data: 'status_validasi' },
{ data: 'catatan' },
{ data: 'aksi' },
]
@section Scripts {
<script type="text/javascript">
var table;
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Main/Composting/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'tgl_pencatatan' },
{ data: 'nama_bank_sampah' },
{ data: 'nama_penanggung_jawab' },
{ data: 'jenis_sampah_organik' },
{ data: 'jumlah_sampah_masuk' },
{ data: 'jumlah_kompos_dihasilkan' },
{ data: 'lama_proses' },
{ data: 'status_validasi' },
{ data: 'catatan' },
{ data: 'aksi' },
]
});
});
});
// Edit button handler
$('#example').on('click', '.p-2.bg-amber-500', function (e) {
e.preventDefault();
var row = table.row($(this).parents('tr')).data();
// Set edit mode
$('#edit_mode').val('true');
$('#modal_title').text('Edit Data Composting');
// Populate form fields
var tglPencatatan = convertDateToInput(row.tgl_pencatatan);
$('#tgl_pencatatan').val(tglPencatatan);
$('#nama_bank_sampah').val(row.nama_bank_sampah);
$('#nama_penanggung_jawab').val(row.nama_penanggung_jawab);
$('#jenis_sampah_organik').val(row.jenis_sampah_organik);
$('#jumlah_sampah_masuk').val(row.jumlah_sampah_masuk);
$('#jumlah_kompos_dihasilkan').val(row.jumlah_kompos_dihasilkan);
$('#lama_proses').val(row.lama_proses);
// Extract status text from badge HTML
var statusText = $(row.status_validasi).text().trim();
$('#status_validasi').val(statusText);
$('#catatan').val(row.catatan);
// Show modal
modal_tambah.showModal();
});
// Delete button handler
$('#example').on('click', '.p-2.bg-red-500', function (e) {
e.preventDefault();
Swal.fire({
title: 'Apakah anda yakin?',
text: "Data yang dihapus tidak dapat dikembalikan lagi",
icon: 'warning',
showCancelButton: true,
confirmButtonColor: '#d33',
cancelButtonColor: '#3085d6',
confirmButtonText: 'Ya, Hapus',
cancelButtonText: 'Batal',
customClass: {
confirmButton: 'btn bg-red-500 text-white hover:bg-red-600 border-0',
cancelButton: 'btn bg-gray-300 text-gray-800 hover:bg-gray-400 border-0'
},
buttonsStyling: false
}).then((result) => {
if (result.isConfirmed) {
// TODO: Implement actual delete API call here
// For now, just show success message
Swal.fire({
title: 'Terhapus!',
text: 'Data berhasil dihapus.',
icon: 'success',
confirmButtonColor: '#166534',
confirmButtonText: 'OK',
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 border-0'
},
buttonsStyling: false
}).then(() => {
// Reload table
table.ajax.reload();
});
}
// Edit button handler
$('#example').on('click', '.p-2.bg-amber-500', function (e) {
e.preventDefault();
var row = table.row($(this).parents('tr')).data();
// Set edit mode
$('#edit_mode').val('true');
$('#modal_title').text('Edit Data Composting');
// Populate form fields
var tglPencatatan = convertDateToInput(row.tgl_pencatatan);
$('#tgl_pencatatan').val(tglPencatatan);
$('#nama_bank_sampah').val(row.nama_bank_sampah);
$('#nama_penanggung_jawab').val(row.nama_penanggung_jawab);
$('#jenis_sampah_organik').val(row.jenis_sampah_organik);
$('#jumlah_sampah_masuk').val(row.jumlah_sampah_masuk);
$('#jumlah_kompos_dihasilkan').val(row.jumlah_kompos_dihasilkan);
$('#lama_proses').val(row.lama_proses);
// Extract status text from badge HTML
var statusText = $(row.status_validasi).text().trim();
$('#status_validasi').val(statusText);
$('#catatan').val(row.catatan);
// Show modal
modal_tambah.showModal();
});
});
function convertDateToInput(dateStr) {
// Convert "15 Mar 2024" to "2024-03-15"
const monthMap = {
'Jan': '01', 'Feb': '02', 'Mar': '03', 'Apr': '04',
'Mei': '05', 'Jun': '06', 'Jul': '07', 'Agt': '08',
'Sep': '09', 'Okt': '10', 'Nov': '11', 'Des': '12'
};
const parts = dateStr.split(' ');
const day = parts[0].padStart(2, '0');
const month = monthMap[parts[1]];
const year = parts[2];
return `${year}-${month}-${day}`;
}
function closeModal() {
// Reset form
$('#formTambah')[0].reset();
$('#edit_mode').val('false');
$('#modal_title').text('Tambah Transaksi BSI');
modal_tambah.close();
}
function submitForm(e) {
e.preventDefault();
var isEditMode = $('#edit_mode').val() === 'true';
// TODO: Implement actual save/update API call here
// For now, just show success message
Swal.fire({
title: 'Berhasil!',
text: isEditMode ? 'Data berhasil diperbarui.' : 'Data berhasil ditambahkan.',
icon: 'success',
confirmButtonColor: '#166534',
confirmButtonText: 'OK',
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 border-0'
},
buttonsStyling: false
}).then(() => {
closeModal();
// Reload table
table.ajax.reload();
// Delete button handler
$('#example').on('click', '.p-2.bg-red-500', function (e) {
e.preventDefault();
Swal.fire({
title: 'Apakah anda yakin?',
text: "Data yang dihapus tidak dapat dikembalikan lagi",
icon: 'warning',
showCancelButton: true,
confirmButtonColor: '#d33',
cancelButtonColor: '#3085d6',
confirmButtonText: 'Ya, Hapus',
cancelButtonText: 'Batal',
customClass: {
confirmButton: 'btn bg-red-500 text-white hover:bg-red-600 border-0',
cancelButton: 'btn bg-gray-300 text-gray-800 hover:bg-gray-400 border-0'
},
buttonsStyling: false
}).then((result) => {
if (result.isConfirmed) {
// TODO: Implement actual delete API call here
// For now, just show success message
Swal.fire({
title: 'Terhapus!',
text: 'Data berhasil dihapus.',
icon: 'success',
confirmButtonColor: '#166534',
confirmButtonText: 'OK',
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 border-0'
},
buttonsStyling: false
}).then(() => {
// Reload table
table.ajax.reload();
});
}
});
});
}
</script>
function convertDateToInput(dateStr) {
// Convert "15 Mar 2024" to "2024-03-15"
const monthMap = {
'Jan': '01', 'Feb': '02', 'Mar': '03', 'Apr': '04',
'Mei': '05', 'Jun': '06', 'Jul': '07', 'Agt': '08',
'Sep': '09', 'Okt': '10', 'Nov': '11', 'Des': '12'
};
const parts = dateStr.split(' ');
const day = parts[0].padStart(2, '0');
const month = monthMap[parts[1]];
const year = parts[2];
return `${year}-${month}-${day}`;
}
function closeModal() {
// Reset form
$('#formTambah')[0].reset();
$('#edit_mode').val('false');
$('#modal_title').text('Tambah Transaksi BSI');
modal_tambah.close();
}
function submitForm(e) {
e.preventDefault();
var isEditMode = $('#edit_mode').val() === 'true';
// TODO: Implement actual save/update API call here
// For now, just show success message
Swal.fire({
title: 'Berhasil!',
text: isEditMode ? 'Data berhasil diperbarui.' : 'Data berhasil ditambahkan.',
icon: 'success',
confirmButtonColor: '#166534',
confirmButtonText: 'OK',
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 border-0'
},
buttonsStyling: false
}).then(() => {
closeModal();
// Reload table
table.ajax.reload();
});
}
</script>
}

View File

@ -199,165 +199,163 @@
</div>
</div>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://cdn.datatables.net/2.3.4/js/dataTables.js"></script>
<script src="/plugins/datatables/dataTables.tailwindcss.js"></script>
<script type="text/javascript">
var table;
@section Scripts {
<script type="text/javascript">
var table;
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Main/DataBankSampah/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'nama' },
{ data: 'kabupaten' },
{ data: 'kecamatan' },
{ data: 'kelurahan' },
{ data: 'jenis' },
{ data: 'kategori' },
{ data: 'status' },
{ data: 'aksi' },
]
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Main/DataBankSampah/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'nama' },
{ data: 'kabupaten' },
{ data: 'kecamatan' },
{ data: 'kelurahan' },
{ data: 'jenis' },
{ data: 'kategori' },
{ data: 'status' },
{ data: 'aksi' },
]
});
// Delete button handler
$('#example').on('click', '.btn-circle.btn-error', function (e) {
e.preventDefault();
// Get row data
var row = table.row($(this).parents('tr')).data();
Swal.fire({
title: 'Apakah anda yakin?',
text: "Data yang dihapus tidak dapat dikembalikan lagi",
icon: 'warning',
showCancelButton: true,
confirmButtonText: 'Ya, Hapus',
cancelButtonText: 'Batal',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-red-500 text-white hover:bg-red-600 px-4 py-2 rounded-full mr-2',
cancelButton: 'btn bg-white text-gray-500 hover:bg-gray-50 px-4 py-2 rounded-full border border-gray-300',
},
}).then((result) => {
if (result.isConfirmed) {
// TODO: Implement actual delete API call
Swal.fire({
title: 'Terhapus!',
text: 'Data berhasil dihapus.',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
// Reload table
table.ajax.reload();
});
}
});
});
// Edit button handler
$('#example').on('click', '.btn-circle.btn-warning', function (e) {
e.preventDefault();
// Get row data
var row = table.row($(this).parents('tr')).data();
// Set edit mode
$('#edit_mode').val('true');
$('#modal_title').text('Edit Data Bank Sampah');
// Populate form with row data
$('#nama').val(row.nama);
$('#kabupaten').val(row.kabupaten);
$('#kecamatan').val(row.kecamatan);
$('#kelurahan').val(row.kelurahan);
$('#jenis').val(row.jenis);
$('#kategori').val(row.kategori);
// Extract status from HTML badge
var statusText = $(row.status).text().trim();
$('#status').val(statusText);
// Open modal
modal_tambah.showModal();
});
});
// Delete button handler
$('#example').on('click', '.btn-circle.btn-error', function (e) {
function closeModal() {
// Reset form
$('#formTambah')[0].reset();
$('#edit_mode').val('false');
$('#modal_title').text('Tambah Data Bank Sampah');
// Close modal
modal_tambah.close();
}
function submitForm(e) {
e.preventDefault();
// Get row data
var row = table.row($(this).parents('tr')).data();
var isEditMode = $('#edit_mode').val() === 'true';
// Collect form data
var formData = {
nama: $('#nama').val(),
kabupaten: $('#kabupaten').val(),
kecamatan: $('#kecamatan').val(),
kelurahan: $('#kelurahan').val(),
jenis: $('#jenis').val(),
kategori: $('#kategori').val(),
status: $('#status').val()
};
// TODO: Implement form submission logic (API call)
console.log('Form data:', formData);
Swal.fire({
title: 'Apakah anda yakin?',
text: "Data yang dihapus tidak dapat dikembalikan lagi",
icon: 'warning',
showCancelButton: true,
confirmButtonText: 'Ya, Hapus',
cancelButtonText: 'Batal',
title: 'Berhasil!',
text: isEditMode ? 'Data berhasil diperbarui' : 'Data berhasil ditambahkan',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-red-500 text-white hover:bg-red-600 px-4 py-2 rounded-full mr-2',
cancelButton: 'btn bg-white text-gray-500 hover:bg-gray-50 px-4 py-2 rounded-full border border-gray-300',
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then((result) => {
if (result.isConfirmed) {
// TODO: Implement actual delete API call
Swal.fire({
title: 'Terhapus!',
text: 'Data berhasil dihapus.',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
// Reload table
table.ajax.reload();
});
}
});
});
}).then(() => {
closeModal();
// Edit button handler
$('#example').on('click', '.btn-circle.btn-warning', function (e) {
// Reload table
table.ajax.reload();
});
}
function applyFilter(e) {
e.preventDefault();
// Get row data
var row = table.row($(this).parents('tr')).data();
const jenis = $('#filterJenis').val();
const kategori = $('#filterKategori').val();
const status = $('#filterStatus').val();
// Set edit mode
$('#edit_mode').val('true');
$('#modal_title').text('Edit Data Bank Sampah');
table.ajax.url('/Main/DataBankSampah/Table').load((json) => {
const filtered = json.data.filter(row => {
return (!jenis || row.jenis === jenis)
&& (!kategori || row.kategori === kategori)
&& (!status || row.status === status);
});
// Populate form with row data
$('#nama').val(row.nama);
$('#kabupaten').val(row.kabupaten);
$('#kecamatan').val(row.kecamatan);
$('#kelurahan').val(row.kelurahan);
$('#jenis').val(row.jenis);
$('#kategori').val(row.kategori);
// Extract status from HTML badge
var statusText = $(row.status).text().trim();
$('#status').val(statusText);
// Open modal
modal_tambah.showModal();
});
});
function closeModal() {
// Reset form
$('#formTambah')[0].reset();
$('#edit_mode').val('false');
$('#modal_title').text('Tambah Data Bank Sampah');
// Close modal
modal_tambah.close();
}
function submitForm(e) {
e.preventDefault();
var isEditMode = $('#edit_mode').val() === 'true';
// Collect form data
var formData = {
nama: $('#nama').val(),
kabupaten: $('#kabupaten').val(),
kecamatan: $('#kecamatan').val(),
kelurahan: $('#kelurahan').val(),
jenis: $('#jenis').val(),
kategori: $('#kategori').val(),
status: $('#status').val()
};
// TODO: Implement form submission logic (API call)
console.log('Form data:', formData);
Swal.fire({
title: 'Berhasil!',
text: isEditMode ? 'Data berhasil diperbarui' : 'Data berhasil ditambahkan',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
closeModal();
// Reload table
table.ajax.reload();
});
}
function applyFilter(e) {
e.preventDefault();
const jenis = $('#filterJenis').val();
const kategori = $('#filterKategori').val();
const status = $('#filterStatus').val();
table.ajax.url('/Main/DataBankSampah/Table').load((json) => {
const filtered = json.data.filter(row => {
return (!jenis || row.jenis === jenis)
&& (!kategori || row.kategori === kategori)
&& (!status || row.status === status);
table.clear();
table.rows.add(filtered).draw();
});
table.clear();
table.rows.add(filtered).draw();
});
modal_filter.close();
}
</script>
modal_filter.close();
}
</script>
}

View File

@ -202,128 +202,126 @@
</div>
</div>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://cdn.datatables.net/2.3.4/js/dataTables.js"></script>
<script src="/plugins/datatables/dataTables.tailwindcss.js"></script>
<script type="text/javascript">
var table;
@section Scripts {
<script type="text/javascript">
var table;
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Main/DataNasabah/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'nama' },
{ data: 'kabupaten' },
{ data: 'kecamatan' },
{ data: 'kelurahan' },
{ data: 'id_bangunan' },
{ data: 'jenis' },
{ data: 'status' },
{ data: 'aksi' },
]
});
// Delete button handler
$('#example').on('click', '.btn-circle.btn-error', function (e) {
e.preventDefault();
Swal.fire({
title: 'Apakah anda yakin?',
text: "Data yang dihapus tidak dapat dikembalikan lagi",
icon: 'warning',
showCancelButton: true,
confirmButtonText: 'Ya, Hapus',
cancelButtonText: 'Batal',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-red-500 text-white hover:bg-red-600 px-4 py-2 rounded-full mr-2',
cancelButton: 'btn bg-white text-gray-500 hover:bg-gray-50 px-4 py-2 rounded-full border border-gray-300',
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Main/DataNasabah/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
}).then((result) => {
if (result.isConfirmed) {
// TODO: Implement actual delete API call
Swal.fire({
title: 'Terhapus!',
text: 'Data berhasil dihapus.',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
// Reload table
table.ajax.reload();
});
}
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'nama' },
{ data: 'kabupaten' },
{ data: 'kecamatan' },
{ data: 'kelurahan' },
{ data: 'id_bangunan' },
{ data: 'jenis' },
{ data: 'status' },
{ data: 'aksi' },
]
});
// Delete button handler
$('#example').on('click', '.btn-circle.btn-error', function (e) {
e.preventDefault();
Swal.fire({
title: 'Apakah anda yakin?',
text: "Data yang dihapus tidak dapat dikembalikan lagi",
icon: 'warning',
showCancelButton: true,
confirmButtonText: 'Ya, Hapus',
cancelButtonText: 'Batal',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-red-500 text-white hover:bg-red-600 px-4 py-2 rounded-full mr-2',
cancelButton: 'btn bg-white text-gray-500 hover:bg-gray-50 px-4 py-2 rounded-full border border-gray-300',
},
}).then((result) => {
if (result.isConfirmed) {
// TODO: Implement actual delete API call
Swal.fire({
title: 'Terhapus!',
text: 'Data berhasil dihapus.',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
// Reload table
table.ajax.reload();
});
}
});
});
// Edit button handler
$('#example').on('click', '.btn-circle.btn-warning', function (e) {
e.preventDefault();
// Get row data
var row = table.row($(this).parents('tr')).data();
// Set edit mode
$('#edit_mode').val('true');
$('#modal_title').text('Edit Data Nasabah');
// Populate form with row data
$('#nama').val(row.nama);
$('#kabupaten').val(row.kabupaten);
$('#kecamatan').val(row.kecamatan);
$('#kelurahan').val(row.kelurahan);
$('#id_bangunan').val(row.id_bangunan);
$('#jenis').val(row.jenis);
// Extract status from HTML badge
var statusText = $(row.status).text().trim();
$('#status').val(statusText);
// Open modal
modal_tambah.showModal();
});
});
// Edit button handler
$('#example').on('click', '.btn-circle.btn-warning', function (e) {
function closeModal() {
// Reset form
$('#formTambah')[0].reset();
$('#edit_mode').val('false');
$('#modal_title').text('Tambah Data Nasabah');
// Close modal
modal_tambah.close();
}
function submitForm(e) {
e.preventDefault();
// Get row data
var row = table.row($(this).parents('tr')).data();
var isEditMode = $('#edit_mode').val() === 'true';
// Set edit mode
$('#edit_mode').val('true');
$('#modal_title').text('Edit Data Nasabah');
// TODO: Implement form submission logic
Swal.fire({
title: 'Berhasil!',
text: isEditMode ? 'Data berhasil diperbarui' : 'Data berhasil ditambahkan',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
closeModal();
// Populate form with row data
$('#nama').val(row.nama);
$('#kabupaten').val(row.kabupaten);
$('#kecamatan').val(row.kecamatan);
$('#kelurahan').val(row.kelurahan);
$('#id_bangunan').val(row.id_bangunan);
$('#jenis').val(row.jenis);
// Extract status from HTML badge
var statusText = $(row.status).text().trim();
$('#status').val(statusText);
// Open modal
modal_tambah.showModal();
});
});
function closeModal() {
// Reset form
$('#formTambah')[0].reset();
$('#edit_mode').val('false');
$('#modal_title').text('Tambah Data Nasabah');
// Close modal
modal_tambah.close();
}
function submitForm(e) {
e.preventDefault();
var isEditMode = $('#edit_mode').val() === 'true';
// TODO: Implement form submission logic
Swal.fire({
title: 'Berhasil!',
text: isEditMode ? 'Data berhasil diperbarui' : 'Data berhasil ditambahkan',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
closeModal();
// Reload table
table.ajax.reload();
});
}
</script>
// Reload table
table.ajax.reload();
});
}
</script>
}

View File

@ -152,122 +152,120 @@
</div>
</div>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://cdn.datatables.net/2.3.4/js/dataTables.js"></script>
<script src="/plugins/datatables/dataTables.tailwindcss.js"></script>
<script type="text/javascript">
var table;
@section Scripts {
<script type="text/javascript">
var table;
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Main/DataOfftaker/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'nama' },
{ data: 'kabupaten' },
{ data: 'kecamatan' },
{ data: 'status' },
{ data: 'aksi' },
]
});
// Delete button handler
$('#example').on('click', '.btn-circle.btn-error', function (e) {
e.preventDefault();
Swal.fire({
title: 'Apakah anda yakin?',
text: "Data yang dihapus tidak dapat dikembalikan lagi",
icon: 'warning',
showCancelButton: true,
confirmButtonText: 'Ya, Hapus',
cancelButtonText: 'Batal',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-red-500 text-white hover:bg-red-600 px-4 py-2 rounded-full mr-2',
cancelButton: 'btn bg-white text-gray-500 hover:bg-gray-50 px-4 py-2 rounded-full border border-gray-300',
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Main/DataOfftaker/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
}).then((result) => {
if (result.isConfirmed) {
// TODO: Implement actual delete API call
Swal.fire({
title: 'Terhapus!',
text: 'Data berhasil dihapus.',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
// Reload table
table.ajax.reload();
});
}
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'nama' },
{ data: 'kabupaten' },
{ data: 'kecamatan' },
{ data: 'status' },
{ data: 'aksi' },
]
});
// Delete button handler
$('#example').on('click', '.btn-circle.btn-error', function (e) {
e.preventDefault();
Swal.fire({
title: 'Apakah anda yakin?',
text: "Data yang dihapus tidak dapat dikembalikan lagi",
icon: 'warning',
showCancelButton: true,
confirmButtonText: 'Ya, Hapus',
cancelButtonText: 'Batal',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-red-500 text-white hover:bg-red-600 px-4 py-2 rounded-full mr-2',
cancelButton: 'btn bg-white text-gray-500 hover:bg-gray-50 px-4 py-2 rounded-full border border-gray-300',
},
}).then((result) => {
if (result.isConfirmed) {
// TODO: Implement actual delete API call
Swal.fire({
title: 'Terhapus!',
text: 'Data berhasil dihapus.',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
// Reload table
table.ajax.reload();
});
}
});
});
// Edit button handler
$('#example').on('click', '.btn-circle.btn-warning', function (e) {
e.preventDefault();
// Get row data
var row = table.row($(this).parents('tr')).data();
// Set edit mode
$('#edit_mode').val('true');
$('#modal_title').text('Edit Data Offtaker');
// Populate form with row data
$('#nama').val(row.nama);
$('#kabupaten').val(row.kabupaten);
$('#kecamatan').val(row.kecamatan);
// Extract status from HTML badge
var statusText = $(row.status).text().trim();
$('#status').val(statusText);
// Open modal
modal_tambah.showModal();
});
});
// Edit button handler
$('#example').on('click', '.btn-circle.btn-warning', function (e) {
function closeModal() {
// Reset form
$('#formTambah')[0].reset();
$('#edit_mode').val('false');
$('#modal_title').text('Tambah Data Offtaker');
// Close modal
modal_tambah.close();
}
function submitForm(e) {
e.preventDefault();
// Get row data
var row = table.row($(this).parents('tr')).data();
var isEditMode = $('#edit_mode').val() === 'true';
// Set edit mode
$('#edit_mode').val('true');
$('#modal_title').text('Edit Data Offtaker');
// TODO: Implement form submission logic
Swal.fire({
title: 'Berhasil!',
text: isEditMode ? 'Data berhasil diperbarui' : 'Data berhasil ditambahkan',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
closeModal();
// Populate form with row data
$('#nama').val(row.nama);
$('#kabupaten').val(row.kabupaten);
$('#kecamatan').val(row.kecamatan);
// Extract status from HTML badge
var statusText = $(row.status).text().trim();
$('#status').val(statusText);
// Open modal
modal_tambah.showModal();
});
});
function closeModal() {
// Reset form
$('#formTambah')[0].reset();
$('#edit_mode').val('false');
$('#modal_title').text('Tambah Data Offtaker');
// Close modal
modal_tambah.close();
}
function submitForm(e) {
e.preventDefault();
var isEditMode = $('#edit_mode').val() === 'true';
// TODO: Implement form submission logic
Swal.fire({
title: 'Berhasil!',
text: isEditMode ? 'Data berhasil diperbarui' : 'Data berhasil ditambahkan',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
closeModal();
// Reload table
table.ajax.reload();
});
}
</script>
// Reload table
table.ajax.reload();
});
}
</script>
}

View File

@ -186,150 +186,148 @@
</div>
</div>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://cdn.datatables.net/2.3.4/js/dataTables.js"></script>
<script src="/plugins/datatables/dataTables.tailwindcss.js"></script>
<script type="text/javascript">
var table;
@section Scripts {
<script type="text/javascript">
var table;
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Main/Maggot/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'tanggal_pencatatan' },
{ data: 'nama_bank_sampah' },
{ data: 'nama_penanggung_jawab' },
{ data: 'jenis_sampah_organik' },
{ data: 'jumlah_sampah_masuk' },
{ data: 'jumlah_maggot_dihasilkan' },
{ data: 'status_validasi' },
{ data: 'catatan' },
{ data: 'aksi' },
]
});
// Delete button handler
$('#example').on('click', '.p-2.bg-red-500', function (e) {
e.preventDefault();
Swal.fire({
title: 'Apakah anda yakin?',
text: "Data yang dihapus tidak dapat dikembalikan lagi",
icon: 'warning',
showCancelButton: true,
confirmButtonText: 'Ya, Hapus',
cancelButtonText: 'Batal',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-red-500 text-white hover:bg-red-600 px-4 py-2 rounded-full mr-2',
cancelButton: 'btn bg-white text-gray-500 hover:bg-gray-50 px-4 py-2 rounded-full border border-gray-300',
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Main/Maggot/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
}).then((result) => {
if (result.isConfirmed) {
// TODO: Implement actual delete API call
Swal.fire({
title: 'Terhapus!',
text: 'Data berhasil dihapus.',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
// Reload table
table.ajax.reload();
});
}
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'tanggal_pencatatan' },
{ data: 'nama_bank_sampah' },
{ data: 'nama_penanggung_jawab' },
{ data: 'jenis_sampah_organik' },
{ data: 'jumlah_sampah_masuk' },
{ data: 'jumlah_maggot_dihasilkan' },
{ data: 'status_validasi' },
{ data: 'catatan' },
{ data: 'aksi' },
]
});
// Delete button handler
$('#example').on('click', '.p-2.bg-red-500', function (e) {
e.preventDefault();
Swal.fire({
title: 'Apakah anda yakin?',
text: "Data yang dihapus tidak dapat dikembalikan lagi",
icon: 'warning',
showCancelButton: true,
confirmButtonText: 'Ya, Hapus',
cancelButtonText: 'Batal',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-red-500 text-white hover:bg-red-600 px-4 py-2 rounded-full mr-2',
cancelButton: 'btn bg-white text-gray-500 hover:bg-gray-50 px-4 py-2 rounded-full border border-gray-300',
},
}).then((result) => {
if (result.isConfirmed) {
// TODO: Implement actual delete API call
Swal.fire({
title: 'Terhapus!',
text: 'Data berhasil dihapus.',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
// Reload table
table.ajax.reload();
});
}
});
});
// Edit button handler
$('#example').on('click', '.p-2.bg-amber-500', function (e) {
e.preventDefault();
// Get row data
var row = table.row($(this).parents('tr')).data();
// Set edit mode
$('#edit_mode').val('true');
$('#modal_title').text('Edit Data Maggot');
// Convert date format from "15 Mar 2024" to "2024-03-15"
var tglPencatatan = convertDateToInput(row.tanggal_pencatatan);
// Populate form with row data
$('#tgl_pencatatan').val(tglPencatatan);
$('#nama_bank_sampah').val(row.nama_bank_sampah);
$('#nama_penanggung_jawab').val(row.nama_penanggung_jawab);
$('#jenis_sampah_organik').val(row.jenis_sampah_organik);
$('#jumlah_sampah_masuk').val(row.jumlah_sampah_masuk);
$('#jumlah_maggot_dihasilkan').val(row.jumlah_maggot_dihasilkan);
// Extract status from HTML badge
var statusText = $(row.status_validasi).text().trim();
$('#status_validasi').val(statusText);
$('#catatan').val(row.catatan);
// Open modal
modal_tambah.showModal();
});
});
// Edit button handler
$('#example').on('click', '.p-2.bg-amber-500', function (e) {
// Function to convert date format "15 Mar 2024" to "2024-03-15"
function convertDateToInput(dateStr) {
const monthMap = {
'Jan': '01', 'Feb': '02', 'Mar': '03', 'Apr': '04',
'Mei': '05', 'Jun': '06', 'Jul': '07', 'Agt': '08',
'Sep': '09', 'Okt': '10', 'Nov': '11', 'Des': '12'
};
const parts = dateStr.split(' ');
const day = parts[0].padStart(2, '0');
const month = monthMap[parts[1]];
const year = parts[2];
return `${year}-${month}-${day}`;
}
function closeModal() {
// Reset form
$('#formTambah')[0].reset();
$('#edit_mode').val('false');
$('#modal_title').text('Tambah Data Maggot');
// Close modal
modal_tambah.close();
}
function submitForm(e) {
e.preventDefault();
// Get row data
var row = table.row($(this).parents('tr')).data();
var isEditMode = $('#edit_mode').val() === 'true';
// Set edit mode
$('#edit_mode').val('true');
$('#modal_title').text('Edit Data Maggot');
// TODO: Implement form submission logic
Swal.fire({
title: 'Berhasil!',
text: isEditMode ? 'Data berhasil diperbarui' : 'Data berhasil ditambahkan',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
closeModal();
// Convert date format from "15 Mar 2024" to "2024-03-15"
var tglPencatatan = convertDateToInput(row.tanggal_pencatatan);
// Populate form with row data
$('#tgl_pencatatan').val(tglPencatatan);
$('#nama_bank_sampah').val(row.nama_bank_sampah);
$('#nama_penanggung_jawab').val(row.nama_penanggung_jawab);
$('#jenis_sampah_organik').val(row.jenis_sampah_organik);
$('#jumlah_sampah_masuk').val(row.jumlah_sampah_masuk);
$('#jumlah_maggot_dihasilkan').val(row.jumlah_maggot_dihasilkan);
// Extract status from HTML badge
var statusText = $(row.status_validasi).text().trim();
$('#status_validasi').val(statusText);
$('#catatan').val(row.catatan);
// Open modal
modal_tambah.showModal();
});
});
// Function to convert date format "15 Mar 2024" to "2024-03-15"
function convertDateToInput(dateStr) {
const monthMap = {
'Jan': '01', 'Feb': '02', 'Mar': '03', 'Apr': '04',
'Mei': '05', 'Jun': '06', 'Jul': '07', 'Agt': '08',
'Sep': '09', 'Okt': '10', 'Nov': '11', 'Des': '12'
};
const parts = dateStr.split(' ');
const day = parts[0].padStart(2, '0');
const month = monthMap[parts[1]];
const year = parts[2];
return `${year}-${month}-${day}`;
}
function closeModal() {
// Reset form
$('#formTambah')[0].reset();
$('#edit_mode').val('false');
$('#modal_title').text('Tambah Data Maggot');
// Close modal
modal_tambah.close();
}
function submitForm(e) {
e.preventDefault();
var isEditMode = $('#edit_mode').val() === 'true';
// TODO: Implement form submission logic
Swal.fire({
title: 'Berhasil!',
text: isEditMode ? 'Data berhasil diperbarui' : 'Data berhasil ditambahkan',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
closeModal();
// Reload table
table.ajax.reload();
});
}
</script>
// Reload table
table.ajax.reload();
});
}
</script>
}

View File

@ -35,29 +35,29 @@
</div>
</div>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://cdn.datatables.net/2.3.4/js/dataTables.js"></script>
<script src="/plugins/datatables/dataTables.tailwindcss.js"></script>
<script type="text/javascript">
var table;
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Main/ReduksiSampah/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'periode_bulan' },
{ data: 'kecamatan' },
{ data: 'maggot' },
{ data: 'composting' },
{ data: 'bank_sampah' },
{ data: 'total_reduksi' },
]
@section Scripts {
<script type="text/javascript">
var table;
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Main/ReduksiSampah/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'periode_bulan' },
{ data: 'kecamatan' },
{ data: 'maggot' },
{ data: 'composting' },
{ data: 'bank_sampah' },
{ data: 'total_reduksi' },
]
});
});
});
</script>
</script>
}

View File

@ -121,160 +121,159 @@
</div>
</div>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://cdn.datatables.net/2.3.4/js/dataTables.js"></script>
<script src="/plugins/datatables/dataTables.tailwindcss.js"></script>
<script type="text/javascript">
var table;
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Main/TransaksiNasabah/Table',
scrollX: true,
autoWidth: false,
responsive: true,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'tgl_transaksi' },
{ data: 'nama_bank_samoah' },
{ data: 'nilai_transaksi' },
{ data: 'total_sampah' },
{ data: 'aksi' },
]
});
// Delete button handler
$('#example').on('click', '.delete-btn', function (e) {
e.preventDefault();
Swal.fire({
title: 'Apakah anda yakin?',
text: "Data yang dihapus tidak dapat dikembalikan lagi",
icon: 'warning',
showCancelButton: true,
confirmButtonText: 'Ya, Hapus',
cancelButtonText: 'Batal',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-red-500 text-white hover:bg-red-600 px-4 py-2 rounded-full mr-2',
cancelButton: 'btn bg-white text-gray-500 hover:bg-gray-50 px-4 py-2 rounded-full border border-gray-300',
@section Scripts {
<script type="text/javascript">
var table;
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Main/TransaksiNasabah/Table',
scrollX: true,
autoWidth: false,
responsive: true,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
}).then((result) => {
if (result.isConfirmed) {
// TODO: Implement actual delete API call
Swal.fire({
title: 'Terhapus!',
text: 'Data berhasil dihapus.',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
// Reload table
table.ajax.reload();
});
}
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'tgl_transaksi' },
{ data: 'nama_bank_samoah' },
{ data: 'nilai_transaksi' },
{ data: 'total_sampah' },
{ data: 'aksi' },
]
});
// Delete button handler
$('#example').on('click', '.delete-btn', function (e) {
e.preventDefault();
Swal.fire({
title: 'Apakah anda yakin?',
text: "Data yang dihapus tidak dapat dikembalikan lagi",
icon: 'warning',
showCancelButton: true,
confirmButtonText: 'Ya, Hapus',
cancelButtonText: 'Batal',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-red-500 text-white hover:bg-red-600 px-4 py-2 rounded-full mr-2',
cancelButton: 'btn bg-white text-gray-500 hover:bg-gray-50 px-4 py-2 rounded-full border border-gray-300',
},
}).then((result) => {
if (result.isConfirmed) {
// TODO: Implement actual delete API call
Swal.fire({
title: 'Terhapus!',
text: 'Data berhasil dihapus.',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
// Reload table
table.ajax.reload();
});
}
});
});
// Edit button handler
$('#example').on('click', '.edit-btn', function (e) {
e.preventDefault();
// Get row data
var row = table.row($(this).parents('tr')).data();
// Set edit mode
$('#edit_mode').val('true');
$('#modal_title').text('Edit Transaksi');
// Convert date format from "15 Nov 2023" to "2023-11-15"
var tglTransaksi = convertDateToInput(row.tgl_transaksi);
// Populate form with row data
$('#tgl_transaksi').val(tglTransaksi);
$('#nama_bank_samoah').val(row.nama_bank_samoah);
$('#nilai_transaksi').val(row.nilai_transaksi);
$('#total_sampah').val(row.total_sampah);
// Open modal
modal_tambah.showModal();
});
});
// Edit button handler
$('#example').on('click', '.edit-btn', function (e) {
// Function to convert date format "15 Nov 2023" to "2023-11-15"
function convertDateToInput(dateStr) {
const monthMap = {
'Jan': '01', 'Feb': '02', 'Mar': '03', 'Apr': '04',
'Mei': '05', 'Jun': '06', 'Jul': '07', 'Agt': '08',
'Sep': '09', 'Okt': '10', 'Nov': '11', 'Des': '12'
};
const parts = dateStr.split(' ');
const day = parts[0].padStart(2, '0');
const month = monthMap[parts[1]];
const year = parts[2];
return `${year}-${month}-${day}`;
}
function closeModal() {
// Reset form
$('#formTambah')[0].reset();
$('#edit_mode').val('false');
$('#modal_title').text('Tambah Transaksi');
// Close modal
modal_tambah.close();
}
function submitForm(e) {
e.preventDefault();
// Get row data
var row = table.row($(this).parents('tr')).data();
// Set edit mode
$('#edit_mode').val('true');
$('#modal_title').text('Edit Transaksi');
// Convert date format from "15 Nov 2023" to "2023-11-15"
var tglTransaksi = convertDateToInput(row.tgl_transaksi);
// Populate form with row data
$('#tgl_transaksi').val(tglTransaksi);
$('#nama_bank_samoah').val(row.nama_bank_samoah);
$('#nilai_transaksi').val(row.nilai_transaksi);
$('#total_sampah').val(row.total_sampah);
// Open modal
modal_tambah.showModal();
});
});
// Function to convert date format "15 Nov 2023" to "2023-11-15"
function convertDateToInput(dateStr) {
const monthMap = {
'Jan': '01', 'Feb': '02', 'Mar': '03', 'Apr': '04',
'Mei': '05', 'Jun': '06', 'Jul': '07', 'Agt': '08',
'Sep': '09', 'Okt': '10', 'Nov': '11', 'Des': '12'
};
const parts = dateStr.split(' ');
const day = parts[0].padStart(2, '0');
const month = monthMap[parts[1]];
const year = parts[2];
return `${year}-${month}-${day}`;
}
function closeModal() {
// Reset form
$('#formTambah')[0].reset();
$('#edit_mode').val('false');
$('#modal_title').text('Tambah Transaksi');
// Close modal
modal_tambah.close();
}
function submitForm(e) {
e.preventDefault();
var isEditMode = $('#edit_mode').val() === 'true';
// Get form data
var tglTransaksi = $('#tgl_transaksi').val();
var namaBankSamoah = $('#nama_bank_samoah').val();
var nilaiTransaksi = $('#nilai_transaksi').val();
var totalSampah = $('#total_sampah').val();
// Validate
if (!tglTransaksi || !namaBankSamoah || !nilaiTransaksi || !totalSampah) {
var isEditMode = $('#edit_mode').val() === 'true';
// Get form data
var tglTransaksi = $('#tgl_transaksi').val();
var namaBankSamoah = $('#nama_bank_samoah').val();
var nilaiTransaksi = $('#nilai_transaksi').val();
var totalSampah = $('#total_sampah').val();
// Validate
if (!tglTransaksi || !namaBankSamoah || !nilaiTransaksi || !totalSampah) {
Swal.fire({
title: 'Error!',
text: 'Mohon lengkapi semua field yang wajib diisi',
icon: 'error',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
});
return;
}
// TODO: Implement form submission logic
Swal.fire({
title: 'Error!',
text: 'Mohon lengkapi semua field yang wajib diisi',
icon: 'error',
title: 'Berhasil!',
text: isEditMode ? 'Data berhasil diperbarui' : 'Data berhasil ditambahkan',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
closeModal();
// Reload table
table.ajax.reload();
});
return;
}
// TODO: Implement form submission logic
Swal.fire({
title: 'Berhasil!',
text: isEditMode ? 'Data berhasil diperbarui' : 'Data berhasil ditambahkan',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
closeModal();
// Reload table
table.ajax.reload();
});
}
</script>
</script>
}

View File

@ -69,10 +69,8 @@
</div>
</div>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://cdn.datatables.net/2.3.4/js/dataTables.js"></script>
<script src="/plugins/datatables/dataTables.tailwindcss.js"></script>
@section Scripts {
<script type="text/javascript">
var table;
@ -178,4 +176,5 @@
table.ajax.reload();
});
}
</script>
</script>
}

View File

@ -71,10 +71,8 @@
</div>
</div>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://cdn.datatables.net/2.3.4/js/dataTables.js"></script>
<script src="/plugins/datatables/dataTables.tailwindcss.js"></script>
@section Scripts {
<script type="text/javascript">
var table;
@ -181,3 +179,4 @@
});
}
</script>
}

View File

@ -71,10 +71,8 @@
</div>
</div>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://cdn.datatables.net/2.3.4/js/dataTables.js"></script>
<script src="/plugins/datatables/dataTables.tailwindcss.js"></script>
@section Scripts {
<script type="text/javascript">
var table;
@ -181,3 +179,4 @@
});
}
</script>
}

View File

@ -71,10 +71,8 @@
</div>
</div>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://cdn.datatables.net/2.3.4/js/dataTables.js"></script>
<script src="/plugins/datatables/dataTables.tailwindcss.js"></script>
@section Scripts {
<script type="text/javascript">
var table;
@ -181,3 +179,4 @@
});
}
</script>
}

View File

@ -71,113 +71,111 @@
</div>
</div>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://cdn.datatables.net/2.3.4/js/dataTables.js"></script>
<script src="/plugins/datatables/dataTables.tailwindcss.js"></script>
<script type="text/javascript">
var table;
@section Scripts {
<script type="text/javascript">
var table;
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Master/JenisBankSampah/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'nama' },
{ data: 'aksi' },
]
});
// Delete button handler
$('#example').on('click', '.btn-circle.btn-error', function (e) {
e.preventDefault();
Swal.fire({
title: 'Apakah anda yakin?',
text: "Data yang dihapus tidak dapat dikembalikan lagi",
icon: 'warning',
showCancelButton: true,
confirmButtonText: 'Ya, Hapus',
cancelButtonText: 'Batal',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-red-500 text-white hover:bg-red-600 px-4 py-2 rounded-full mr-2',
cancelButton: 'btn bg-white text-gray-500 hover:bg-gray-50 px-4 py-2 rounded-full border border-gray-300',
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Master/JenisBankSampah/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
}).then((result) => {
if (result.isConfirmed) {
// TODO: Implement actual delete API call
Swal.fire({
title: 'Terhapus!',
text: 'Data berhasil dihapus.',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
// Reload table
table.ajax.reload();
});
}
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'nama' },
{ data: 'aksi' },
]
});
// Delete button handler
$('#example').on('click', '.btn-circle.btn-error', function (e) {
e.preventDefault();
Swal.fire({
title: 'Apakah anda yakin?',
text: "Data yang dihapus tidak dapat dikembalikan lagi",
icon: 'warning',
showCancelButton: true,
confirmButtonText: 'Ya, Hapus',
cancelButtonText: 'Batal',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-red-500 text-white hover:bg-red-600 px-4 py-2 rounded-full mr-2',
cancelButton: 'btn bg-white text-gray-500 hover:bg-gray-50 px-4 py-2 rounded-full border border-gray-300',
},
}).then((result) => {
if (result.isConfirmed) {
// TODO: Implement actual delete API call
Swal.fire({
title: 'Terhapus!',
text: 'Data berhasil dihapus.',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
// Reload table
table.ajax.reload();
});
}
});
});
// Edit button handler
$('#example').on('click', '.btn-circle.btn-warning', function (e) {
e.preventDefault();
// Get row data
var row = table.row($(this).parents('tr')).data();
// Set edit mode
$('#edit_mode').val('true');
$('#modal_title').text('Edit Jenis Bank Sampah');
// Populate form with row data
$('#nama').val(row.nama);
// Open modal
modal_tambah.showModal();
});
});
// Edit button handler
$('#example').on('click', '.btn-circle.btn-warning', function (e) {
function closeModal() {
// Reset form
$('#formTambah')[0].reset();
$('#edit_mode').val('false');
$('#modal_title').text('Tambah Jenis Bank Sampah');
// Close modal
modal_tambah.close();
}
function submitForm(e) {
e.preventDefault();
// Get row data
var row = table.row($(this).parents('tr')).data();
var isEditMode = $('#edit_mode').val() === 'true';
// Set edit mode
$('#edit_mode').val('true');
$('#modal_title').text('Edit Jenis Bank Sampah');
// TODO: Implement form submission logic
Swal.fire({
title: 'Berhasil!',
text: isEditMode ? 'Data berhasil diperbarui' : 'Data berhasil ditambahkan',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
closeModal();
// Populate form with row data
$('#nama').val(row.nama);
// Open modal
modal_tambah.showModal();
});
});
function closeModal() {
// Reset form
$('#formTambah')[0].reset();
$('#edit_mode').val('false');
$('#modal_title').text('Tambah Jenis Bank Sampah');
// Close modal
modal_tambah.close();
}
function submitForm(e) {
e.preventDefault();
var isEditMode = $('#edit_mode').val() === 'true';
// TODO: Implement form submission logic
Swal.fire({
title: 'Berhasil!',
text: isEditMode ? 'Data berhasil diperbarui' : 'Data berhasil ditambahkan',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
closeModal();
// Reload table
table.ajax.reload();
});
}
</script>
// Reload table
table.ajax.reload();
});
}
</script>
}

View File

@ -71,10 +71,8 @@
</div>
</div>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://cdn.datatables.net/2.3.4/js/dataTables.js"></script>
<script src="/plugins/datatables/dataTables.tailwindcss.js"></script>
@section Scripts {
<script type="text/javascript">
var table;
@ -181,3 +179,4 @@
});
}
</script>
}

View File

@ -71,10 +71,8 @@
</div>
</div>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://cdn.datatables.net/2.3.4/js/dataTables.js"></script>
<script src="/plugins/datatables/dataTables.tailwindcss.js"></script>
@section Scripts {
<script type="text/javascript">
var table;
@ -181,3 +179,4 @@
});
}
</script>
}

View File

@ -71,113 +71,111 @@
</div>
</div>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://cdn.datatables.net/2.3.4/js/dataTables.js"></script>
<script src="/plugins/datatables/dataTables.tailwindcss.js"></script>
<script type="text/javascript">
var table;
@section Scripts {
<script type="text/javascript">
var table;
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Master/JenisSampah/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'nama' },
{ data: 'aksi' },
]
});
// Delete button handler
$('#example').on('click', '.btn-circle.btn-error', function (e) {
e.preventDefault();
Swal.fire({
title: 'Apakah anda yakin?',
text: "Data yang dihapus tidak dapat dikembalikan lagi",
icon: 'warning',
showCancelButton: true,
confirmButtonText: 'Ya, Hapus',
cancelButtonText: 'Batal',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-red-500 text-white hover:bg-red-600 px-4 py-2 rounded-full mr-2',
cancelButton: 'btn bg-white text-gray-500 hover:bg-gray-50 px-4 py-2 rounded-full border border-gray-300',
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Master/JenisSampah/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
}).then((result) => {
if (result.isConfirmed) {
// TODO: Implement actual delete API call
Swal.fire({
title: 'Terhapus!',
text: 'Data berhasil dihapus.',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
// Reload table
table.ajax.reload();
});
}
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'nama' },
{ data: 'aksi' },
]
});
// Delete button handler
$('#example').on('click', '.btn-circle.btn-error', function (e) {
e.preventDefault();
Swal.fire({
title: 'Apakah anda yakin?',
text: "Data yang dihapus tidak dapat dikembalikan lagi",
icon: 'warning',
showCancelButton: true,
confirmButtonText: 'Ya, Hapus',
cancelButtonText: 'Batal',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-red-500 text-white hover:bg-red-600 px-4 py-2 rounded-full mr-2',
cancelButton: 'btn bg-white text-gray-500 hover:bg-gray-50 px-4 py-2 rounded-full border border-gray-300',
},
}).then((result) => {
if (result.isConfirmed) {
// TODO: Implement actual delete API call
Swal.fire({
title: 'Terhapus!',
text: 'Data berhasil dihapus.',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
// Reload table
table.ajax.reload();
});
}
});
});
// Edit button handler
$('#example').on('click', '.btn-circle.btn-warning', function (e) {
e.preventDefault();
// Get row data
var row = table.row($(this).parents('tr')).data();
// Set edit mode
$('#edit_mode').val('true');
$('#modal_title').text('Edit Jenis Sampah');
// Populate form with row data
$('#nama').val(row.nama);
// Open modal
modal_tambah.showModal();
});
});
// Edit button handler
$('#example').on('click', '.btn-circle.btn-warning', function (e) {
function closeModal() {
// Reset form
$('#formTambah')[0].reset();
$('#edit_mode').val('false');
$('#modal_title').text('Tambah Jenis Sampah');
// Close modal
modal_tambah.close();
}
function submitForm(e) {
e.preventDefault();
// Get row data
var row = table.row($(this).parents('tr')).data();
var isEditMode = $('#edit_mode').val() === 'true';
// Set edit mode
$('#edit_mode').val('true');
$('#modal_title').text('Edit Jenis Sampah');
// TODO: Implement form submission logic
Swal.fire({
title: 'Berhasil!',
text: isEditMode ? 'Data berhasil diperbarui' : 'Data berhasil ditambahkan',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
closeModal();
// Populate form with row data
$('#nama').val(row.nama);
// Open modal
modal_tambah.showModal();
});
});
function closeModal() {
// Reset form
$('#formTambah')[0].reset();
$('#edit_mode').val('false');
$('#modal_title').text('Tambah Jenis Sampah');
// Close modal
modal_tambah.close();
}
function submitForm(e) {
e.preventDefault();
var isEditMode = $('#edit_mode').val() === 'true';
// TODO: Implement form submission logic
Swal.fire({
title: 'Berhasil!',
text: isEditMode ? 'Data berhasil diperbarui' : 'Data berhasil ditambahkan',
icon: 'success',
confirmButtonText: 'OK',
buttonsStyling: false,
customClass: {
confirmButton: 'btn bg-green-800 text-white hover:bg-green-900 px-4 py-2 rounded-full',
},
}).then(() => {
closeModal();
// Reload table
table.ajax.reload();
});
}
</script>
// Reload table
table.ajax.reload();
});
}
</script>
}

View File

@ -71,10 +71,8 @@
</div>
</div>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://cdn.datatables.net/2.3.4/js/dataTables.js"></script>
<script src="/plugins/datatables/dataTables.tailwindcss.js"></script>
@section Scripts {
<script type="text/javascript">
var table;
@ -181,3 +179,4 @@
});
}
</script>
}

View File

@ -71,10 +71,8 @@
</div>
</div>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://cdn.datatables.net/2.3.4/js/dataTables.js"></script>
<script src="/plugins/datatables/dataTables.tailwindcss.js"></script>
@section Scripts {
<script type="text/javascript">
var table;
@ -181,3 +179,4 @@
});
}
</script>
}

View File

@ -71,10 +71,8 @@
</div>
</div>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://cdn.datatables.net/2.3.4/js/dataTables.js"></script>
<script src="/plugins/datatables/dataTables.tailwindcss.js"></script>
@section Scripts {
<script type="text/javascript">
var table;
@ -181,3 +179,4 @@
});
}
</script>
}

View File

@ -71,10 +71,8 @@
</div>
</div>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://cdn.datatables.net/2.3.4/js/dataTables.js"></script>
<script src="/plugins/datatables/dataTables.tailwindcss.js"></script>
@section Scripts {
<script type="text/javascript">
var table;
@ -181,3 +179,4 @@
});
}
</script>
}

View File

@ -71,10 +71,8 @@
</div>
</div>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://cdn.datatables.net/2.3.4/js/dataTables.js"></script>
<script src="/plugins/datatables/dataTables.tailwindcss.js"></script>
@section Scripts {
<script type="text/javascript">
var table;
@ -181,3 +179,4 @@
});
}
</script>
}

View File

@ -71,10 +71,8 @@
</div>
</div>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://cdn.datatables.net/2.3.4/js/dataTables.js"></script>
<script src="/plugins/datatables/dataTables.tailwindcss.js"></script>
@section Scripts {
<script type="text/javascript">
var table;
@ -181,3 +179,4 @@
});
}
</script>
}

View File

@ -38,6 +38,7 @@
<!-- CSS -->
<link rel="stylesheet" href="~/css/site.css" asp-append-version="true" />
<link rel="stylesheet" href="https://cdn.datatables.net/2.3.4/css/dataTables.tailwindcss.css" />
@await RenderSectionAsync("Styles", required: false)
</head>
@ -62,6 +63,10 @@
</div>
<!-- Scripts -->
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://cdn.datatables.net/2.3.4/js/dataTables.js"></script>
<script src="/plugins/datatables/dataTables.tailwindcss.js"></script>
<script src="~/js/site.js" asp-append-version="true"></script>
@await RenderSectionAsync("Scripts", required: false)
</body>

View File

@ -34,30 +34,28 @@
</div>
</div>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://cdn.datatables.net/2.3.4/js/dataTables.js"></script>
<script src="/plugins/datatables/dataTables.tailwindcss.js"></script>
<script type="text/javascript">
var table;
@section Scripts {
<script type="text/javascript">
var table;
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Wilayah/Kecamatan/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'kode' },
{ data: 'kecamatan' },
{ data: 'kabupaten' },
{ data: 'provinsi' },
{ data: 'latitude' },
{ data: 'longitude' },
]
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Wilayah/Kecamatan/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'kode' },
{ data: 'kecamatan' },
{ data: 'kabupaten' },
{ data: 'provinsi' },
{ data: 'latitude' },
{ data: 'longitude' },
]
});
});
});
</script>
</script>
}

View File

@ -33,29 +33,27 @@
</div>
</div>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://cdn.datatables.net/2.3.4/js/dataTables.js"></script>
<script src="/plugins/datatables/dataTables.tailwindcss.js"></script>
<script type="text/javascript">
var table;
@section Scripts {
<script type="text/javascript">
var table;
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Wilayah/Kelurahan/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'kode' },
{ data: 'kelurahan' },
{ data: 'kecamatan' },
{ data: 'kabupaten' },
{ data: 'provinsi' },
]
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Wilayah/Kelurahan/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'kode' },
{ data: 'kelurahan' },
{ data: 'kecamatan' },
{ data: 'kabupaten' },
{ data: 'provinsi' },
]
});
});
});
</script>
</script>
}

View File

@ -33,29 +33,27 @@
</div>
</div>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://cdn.datatables.net/2.3.4/js/dataTables.js"></script>
<script src="/plugins/datatables/dataTables.tailwindcss.js"></script>
<script type="text/javascript">
var table;
@section Scripts {
<script type="text/javascript">
var table;
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Wilayah/Kota/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'kode' },
{ data: 'kabupaten' },
{ data: 'provinsi' },
{ data: 'latitude' },
{ data: 'longitude' },
]
$(document).ready(function () {
table = new DataTable('#example', {
ajax: '/Wilayah/Kota/Table',
scrollX: true,
autoWidth: false,
initComplete: function () {
$('div.dt-scroll-body thead').css('visibility', 'collapse');
},
columns: [
{ data: null, render: (d, t, r, m) => m.row + 1, orderable: false, searchable: false },
{ data: 'kode' },
{ data: 'kabupaten' },
{ data: 'provinsi' },
{ data: 'latitude' },
{ data: 'longitude' },
]
});
});
});
</script>
</script>
}