parent
17e7778d15
commit
35a9aa40cb
@ -23,8 +23,25 @@
|
||||
renderdatatable();
|
||||
}, 100);
|
||||
});
|
||||
table_visible = true;
|
||||
if (trackscache.length > 0) {
|
||||
table_visible = true;
|
||||
}
|
||||
});
|
||||
window.track__delete_handler = () => {
|
||||
const trackid = parseInt(window.event.target.getAttribute("data-trackid"));
|
||||
// const track = trackscache.find((e) => e.id == trackid);
|
||||
// console.log(track);
|
||||
// -----
|
||||
// TODO: modal or double click confirmation?
|
||||
TrackService.trackControllerRemove(trackid)
|
||||
.then((resp) => {
|
||||
const newStoreVal = trackscache.filter((obj) => obj.id !== trackid);
|
||||
tracksstore.set(newStoreVal);
|
||||
})
|
||||
.catch((err) => {
|
||||
console.log(err);
|
||||
});
|
||||
};
|
||||
function renderdatatable() {
|
||||
let tabledata = [];
|
||||
trackscache.forEach((track) => {
|
||||
@ -34,31 +51,33 @@
|
||||
track.minimumLapTime || 0,
|
||||
html(`
|
||||
<button class="w-full inline-flex justify-center rounded-md border border-transparent shadow-sm px-4 py-2 bg-gray-400 text-base font-medium text-white sm:w-auto sm:text-sm">Edit</button>
|
||||
<button class="w-full inline-flex justify-center rounded-md border border-transparent shadow-sm px-4 py-2 bg-red-500 text-base font-medium text-white sm:w-auto sm:text-sm">Delete</button>
|
||||
<button class="w-full inline-flex justify-center rounded-md border border-transparent shadow-sm px-4 py-2 bg-red-500 text-base font-medium text-white sm:w-auto sm:text-sm" data-trackid="${track.id}" onclick="track__delete_handler()">Delete</button>
|
||||
`),
|
||||
]);
|
||||
});
|
||||
if (datatable_inited === false) {
|
||||
datatable = new Grid({
|
||||
columns: [
|
||||
$_("track-name"),
|
||||
$_("track-length-in-m"),
|
||||
$_("minimum-lap-time-in-s"),
|
||||
$_("action"),
|
||||
],
|
||||
language: getlang($json("datatable")),
|
||||
sort: true,
|
||||
search: { enabled: true },
|
||||
data: tabledata,
|
||||
pagination: {
|
||||
enabled: true,
|
||||
limit: 25,
|
||||
summary: false,
|
||||
},
|
||||
}).render(table);
|
||||
datatable_inited = true;
|
||||
} else {
|
||||
datatable.updateConfig({ data: tabledata }).forceRender();
|
||||
if (trackscache.length > 0) {
|
||||
if (datatable_inited === false) {
|
||||
datatable = new Grid({
|
||||
columns: [
|
||||
$_("track-name"),
|
||||
$_("track-length-in-m"),
|
||||
$_("minimum-lap-time-in-s"),
|
||||
$_("action"),
|
||||
],
|
||||
language: getlang($json("datatable")),
|
||||
sort: true,
|
||||
search: { enabled: true },
|
||||
data: tabledata,
|
||||
pagination: {
|
||||
enabled: true,
|
||||
limit: 25,
|
||||
summary: false,
|
||||
},
|
||||
}).render(table);
|
||||
datatable_inited = true;
|
||||
} else {
|
||||
datatable.updateConfig({ data: tabledata }).forceRender();
|
||||
}
|
||||
}
|
||||
}
|
||||
let table_visible = false;
|
||||
|
Loading…
x
Reference in New Issue
Block a user