87 lines
3.6 KiB
JavaScript
Executable File
87 lines
3.6 KiB
JavaScript
Executable File
$(document).ready(function () {
|
|
|
|
console.log('Police Sprechwunsch load: start');
|
|
setInterval(ADis_CollectPoliceSprechwuensche, 5000);
|
|
setInterval(ADis_OpenNextPoliceSprechwunsch, 5000);
|
|
ADis_CollectPoliceSprechwuensche();
|
|
});
|
|
|
|
// - -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
|
|
// -
|
|
// - Assign & Unassign Missions to Dispatchers
|
|
// -
|
|
// - -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
|
|
|
|
function ADis_CollectPoliceSprechwuensche() {
|
|
new Promise(async function (resolve, reject) {
|
|
await ADisDB.ADisSprechwunschPolice.where({
|
|
done: 'false'
|
|
}).each((myWunsch) => {
|
|
console.log('ADis_CollectPoliceSprechwuensche: remove', myWunsch);
|
|
if (!$("#mission_" + myWunsch.missionID).text().match(/Gefangene sollen abtransportiert werden/g)) {
|
|
$("#mission_" + myWunsch.missionID).remove();
|
|
return ADis_RemovePoliceSprechwunschFromQueue(myWunsch.missionID);
|
|
}
|
|
})
|
|
return resolve();
|
|
}).then(() => {
|
|
console.log('ADis_CollectPoliceSprechwuensche: add');
|
|
var MOIODOS = $('div#mission_list div.missionSideBarEntry:visible');
|
|
MOIODOS.each(function (index) {
|
|
console.log('ADis_CollectPoliceSprechwuensche: add', $(this).text().match(/Gefangene sollen abtransportiert werden/g));
|
|
if ($(this).text().match(/Gefangene sollen abtransportiert werden/g)) {
|
|
var MissionID = $(this).attr("mission_id");
|
|
ADis_AddPoliceSprechwunschToQueue(MissionID);
|
|
}
|
|
});
|
|
});
|
|
}
|
|
|
|
function ADis_OpenNextPoliceSprechwunsch() {
|
|
|
|
console.log('ADis_OpenNextPoliceSprechwunsch: start');
|
|
ADisSettings().then((setting) => {
|
|
if (setting['Sprechwunsch-Automatic'] == 'true') {
|
|
return ADisDB.ADisSprechwunschPolice.where({
|
|
done: 'false'
|
|
}).limit(1)
|
|
}
|
|
}).then((Wunsch) => {
|
|
console.log('ADis_OpenNextPoliceSprechwunsch:', Wunsch, typeof Wunsch);
|
|
if (Wunsch !== undefined) {
|
|
Wunsch.each((myWunsch) => {
|
|
console.log('ADis_OpenNextPoliceSprechwunsch: Wunsch_each', myWunsch, typeof myWunsch);
|
|
let MissionID = myWunsch.missionID;
|
|
ADis_UpdatePoliceSprechwunschToDone(MissionID).then(() => {
|
|
if ($("#adis-sprechwunsch-police-frame").attr("mission_id") == "empty") {
|
|
$("#adis-sprechwunsch-police-frame").attr("src", "https://www.leitstellenspiel.de/missions/" + MissionID);
|
|
$("#adis-sprechwunsch-police-frame").attr("mission_id", MissionID);
|
|
|
|
PoliceVehicleFrameWatchDog = setTimeout(async function (MissionID) {
|
|
ADis_RemovePoliceSprechwunschFromQueue(MissionID).then((deleteCount) => {
|
|
$("#adis-sprechwunsch-police-frame").attr("src", "");
|
|
$("#adis-sprechwunsch-police-frame").attr("mission_id", "empty");
|
|
});
|
|
}, 2500, MissionID);
|
|
}
|
|
});
|
|
});
|
|
}
|
|
});
|
|
}
|
|
|
|
function ADis_AddPoliceSprechwunschToQueue(WunschID) {
|
|
return ADisDB.ADisSprechwunschPolice.put({
|
|
missionID: WunschID,
|
|
done: 'false'
|
|
}).catch((err) => {})
|
|
}
|
|
|
|
|
|
function ADis_UpdatePoliceSprechwunschToDone(WunschID) {
|
|
console.log(WunschID, typeof WunschID);
|
|
return ADisDB.ADisSprechwunschPolice.add({
|
|
missionID: WunschID,
|
|
done: 'true'
|
|
}).catch((err) => {})
|
|
} |