commit 02/10/2025

This commit is contained in:
2025-10-02 16:03:28 +07:00
parent 3768f4263b
commit 20dbc12b02
11 changed files with 410 additions and 273 deletions

View File

@@ -1,17 +1,4 @@
/**
* @typedef {Object} BroadcastZone
* @property {number} index
* @property {string} description
* @property {String} SoundChannel
* @property {String} Box
* @property {String} Relay
*/
/**
* List of broadcast zones available
* @type {BroadcastZone[]}
*/
window.BroadcastZoneList ??= [];
/**
* Currently selected broadcast zone row in the table
@@ -55,22 +42,7 @@ function fill_broadcastzonetablebody(vv) {
$('#tablesize').text("Table Size: " + vv.length);
}
/**
* Reload broadcast zones from server
* @param {String} APIURL API URL endpoint (default "BroadcastZones/")
*/
function reloadBroadcastZones(APIURL = "BroadcastZones/") {
window.BroadcastZoneList = [];
fetchAPI(APIURL + "List", "GET", {}, null, (okdata) => {
if (Array.isArray(okdata)) {
//console.log("reloadBroadcastZones : ", okdata)
window.BroadcastZoneList.push(...okdata);
fill_broadcastzonetablebody(window.BroadcastZoneList);
} else console.log("reloadBroadcastZones: okdata is not array");
}, (errdata) => {
alert("Error loading broadcast zones : " + errdata.message);
});
}
$(document).ready(function () {
console.log("broadcastzones.js loaded successfully");
@@ -140,11 +112,14 @@ $(document).ready(function () {
}
}
reloadBroadcastZones(APIURL_BroadcastZone);
reloadBroadcastZones(APIURL_BroadcastZone, () => {
fill_broadcastzonetablebody(window.BroadcastZoneList);
});
$btnClear.click(() => {
DoClear(APIURL_BroadcastZone, "BroadcastZones", (okdata) => {
reloadBroadcastZones(APIURL_BroadcastZone);
fill_broadcastzonetablebody(window.BroadcastZoneList);
alert("Success clear broadcast zones: " + okdata.message);
}, (errdata) => {
alert("Error clear broadcast zones: " + errdata.message);
@@ -190,8 +165,10 @@ $(document).ready(function () {
Relay: relay
};
fetchAPI(APIURL_BroadcastZone + "Add", "POST", {}, bz, (okdata) => {
reloadBroadcastZones(APIURL_BroadcastZone);
alert("Success add new broadcast zone: " + okdata.message);
reloadBroadcastZones(APIURL_BroadcastZone, () => {
fill_broadcastzonetablebody(window.BroadcastZoneList);
alert("Success add new broadcast zone: " + okdata.message);
});
}, (errdata) => {
alert("Error add new broadcast zone: " + errdata.message);
});
@@ -216,8 +193,10 @@ $(document).ready(function () {
};
if (confirm(`Are you sure to delete broadcast zone [${bz.index}] Description=${bz.description}?`)) {
fetchAPI(APIURL_BroadcastZone + "DeleteByIndex/" + bz.index, "DELETE", {}, null, (okdata) => {
reloadBroadcastZones(APIURL_BroadcastZone);
alert("Success delete broadcast zone: " + okdata.message);
reloadBroadcastZones(APIURL_BroadcastZone, () => {
fill_broadcastzonetablebody(window.BroadcastZoneList);
alert("Success delete broadcast zone: " + okdata.message);
});
}, (errdata) => {
alert("Error delete broadcast zone: " + errdata.message);
});
@@ -283,8 +262,10 @@ $(document).ready(function () {
Relay: relay
};
fetchAPI(APIURL_BroadcastZone + "UpdateByIndex/" + bz.index, "PATCH", {}, bzUpdate, (okdata) => {
reloadBroadcastZones(APIURL_BroadcastZone);
alert("Success edit broadcast zone: " + okdata.message);
reloadBroadcastZones(APIURL_BroadcastZone, () => {
fill_broadcastzonetablebody(window.BroadcastZoneList);
alert("Success edit broadcast zone: " + okdata.message);
});
}, (errdata) => {
alert("Error edit broadcast zone: " + errdata.message);
});
@@ -303,8 +284,10 @@ $(document).ready(function () {
$btnImport.click(() => {
DoImport(APIURL_BroadcastZone, (okdata) => {
reloadBroadcastZones(APIURL_BroadcastZone);
alert("Success import broadcast zones: " + okdata.message);
reloadBroadcastZones(APIURL_BroadcastZone, () => {
fill_broadcastzonetablebody(window.BroadcastZoneList);
alert("Success import broadcast zones: " + okdata.message);
});
}, (errdata) => {
alert("Error importing broadcast zones from XLSX: " + errdata.message);
});