feature: set role previledge access
This commit is contained in:
@@ -6,6 +6,12 @@ import GeneralTable from "../../table-generator.js";
|
||||
import L from "leaflet";
|
||||
import "leaflet/dist/leaflet.css";
|
||||
|
||||
// Ambil hak akses dari data-attribute
|
||||
const tableElement = document.getElementById("tourisms-data-table");
|
||||
const canView = "1";
|
||||
const canUpdate = tableElement.getAttribute("data-updater") === "1";
|
||||
const canDelete = tableElement.getAttribute("data-destroyer") === "1";
|
||||
|
||||
const dataTourismsColumns = [
|
||||
"No",
|
||||
"Nama Perusahaan",
|
||||
@@ -27,23 +33,45 @@ const dataTourismsColumns = [
|
||||
const long = row.cells[9].data;
|
||||
const lat = row.cells[10].data;
|
||||
const model = "data/tourisms";
|
||||
return gridjs.html(`
|
||||
<div class="d-flex justify-items-end gap-10">
|
||||
<button class="btn btn-warning me-2 btn-edit"
|
||||
data-id="${id}"
|
||||
data-model="${model}">
|
||||
<i class='bx bx-edit'></i></button>
|
||||
|
||||
<button class="btn btn-info me-2 btn-view"
|
||||
data-long="${long}" data-lat="${lat}" data-district="${district}">
|
||||
<i class='bx bx-map'></i></button>
|
||||
|
||||
let actionButtons = '<div class="d-flex justify-items-end gap-10">';
|
||||
let hasPrivilege = false;
|
||||
|
||||
// Tampilkan tombol View jika user punya akses view
|
||||
if (canView) {
|
||||
hasPrivilege = true;
|
||||
actionButtons += `
|
||||
<button class="btn btn-info me-2 btn-view"
|
||||
data-long="${long}" data-lat="${lat}" data-district="${district}">
|
||||
<i class='bx bx-map'></i>
|
||||
</button>`
|
||||
}
|
||||
|
||||
// Tampilkan tombol Edit jika user punya akses update
|
||||
if (canUpdate) {
|
||||
hasPrivilege = true;
|
||||
actionButtons += `
|
||||
<button class="btn btn-warning me-2 btn-edit"
|
||||
data-id="${id}"
|
||||
data-model="${model}">
|
||||
<i class='bx bx-edit'></i>
|
||||
</button>`;
|
||||
}
|
||||
|
||||
// Tampilkan tombol Delete jika user punya akses delete
|
||||
if (canDelete) {
|
||||
hasPrivilege = true;
|
||||
actionButtons += `
|
||||
<button class="btn btn-red btn-delete"
|
||||
data-id="${id}">
|
||||
<i class='bx bxs-trash'></i></button>
|
||||
</div>
|
||||
`);
|
||||
},
|
||||
<i class='bx bxs-trash'></i>
|
||||
</button>`
|
||||
}
|
||||
|
||||
actionButtons += '</div>';
|
||||
// Jika tidak memiliki akses, tampilkan teks "No Privilege"
|
||||
return gridjs.html(hasPrivilege ? actionButtons : '<span class="text-muted">No Privilege</span>');
|
||||
}
|
||||
},
|
||||
];
|
||||
|
||||
|
||||
Reference in New Issue
Block a user