80 lines
2.6 KiB
JavaScript
80 lines
2.6 KiB
JavaScript
|
|
|
|
|
|
|
|
|
|
/**
|
|
* Load message bank data into selection dropdowns
|
|
* @param {Function || null} cbOK callback when complete
|
|
*/
|
|
function load_messagebank(cbOK = null) {
|
|
$("#input_GOP").empty();
|
|
$("#input_GBD").empty();
|
|
$("#input_GFC").empty();
|
|
$("#input_FLD").empty();
|
|
|
|
// get messagebank data from server, which contains [FLIGHT_NUMBER]
|
|
let messageData = [...new Set(window.messagebankdata.filter(mb => mb.message_Detail.includes('[FLIGHT_NUMBER]')).map(mb => `${mb.description} [${mb.aNN_ID}]`))];
|
|
messageData.forEach((item) => {
|
|
$("#input_GOP").append($("<option></option>").attr("value", item).text(item));
|
|
$("#input_GBD").append($("<option></option>").attr("value", item).text(item));
|
|
$("#input_GFC").append($("<option></option>").attr("value", item).text(item));
|
|
$("#input_FLD").append($("<option></option>").attr("value", item).text(item));
|
|
});
|
|
if (window.messagebankdata.length > 0) {
|
|
if (cbOK) cbOK();
|
|
}
|
|
}
|
|
|
|
function load_remark_selection() {
|
|
fetchAPI("Settings/FISCode", "GET", {}, null, (okdata) => {
|
|
|
|
$("#input_GOP").val(okdata.gop)
|
|
$("#input_GBD").val(okdata.gbd);
|
|
$("#input_GFC").val(okdata.gfc);
|
|
$("#input_FLD").val(okdata.fld);
|
|
$("#input_defaultvoice").val(okdata.defaultvoice);
|
|
}, (errdata) => {
|
|
alert("Error getting FIS codes : " + errdata.message);
|
|
});
|
|
}
|
|
|
|
function load_default_voice(){
|
|
$("#input_defaultvoice").empty();
|
|
window.voiceTypes.forEach((voice) => {
|
|
$("#input_defaultvoice").append($("<option></option>").attr("value", voice).text(voice));
|
|
});
|
|
}
|
|
|
|
$(document).ready(function () {
|
|
console.log("setting.js loaded");
|
|
load_default_voice();
|
|
load_messagebank(() => load_remark_selection());
|
|
$("#fiscodesave").off('click').on('click', function () {
|
|
let gop = $("#input_GOP").val();
|
|
let gbd = $("#input_GBD").val();
|
|
let gfc = $("#input_GFC").val();
|
|
let fld = $("#input_FLD").val();
|
|
let voice = $("#input_defaultvoice").val();
|
|
if (gop && gbd && gfc && fld && voice) {
|
|
let data = {
|
|
GOP: gop,
|
|
GBD: gbd,
|
|
GFC: gfc,
|
|
FLD: fld,
|
|
defaultvoice: voice
|
|
};
|
|
fetchAPI("Settings/FISCode", "POST", {}, data, (okdata) => {
|
|
alert("FIS codes saved successfully.");
|
|
}, (errdata) => {
|
|
alert("Error saving FIS codes : " + errdata.message);
|
|
});
|
|
} else {
|
|
alert("Please select all FIS codes (GOP, GBD, GFC, FLD) and Default Voice before saving.");
|
|
}
|
|
|
|
});
|
|
|
|
|
|
|
|
}); |