$(document).ready(function () { 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) => { if (!$("#mission_" + myWunsch.missionID).text().match(/Gefangene sollen abtransportiert werden/g)) { $("#mission_" + myWunsch.missionID).remove(); return ADis_RemovePoliceSprechwunschFromQueue(myWunsch.missionID); } }) return resolve(); }).then(() => { var MOIODOS = $('div#mission_list div.missionSideBarEntry:visible'); return MOIODOS.each(function (index) { if ($(this).text().match(/Gefangene sollen abtransportiert werden/g)) { var MissionID = $(this).attr("mission_id"); ADis_AddPoliceSprechwunschToQueue(MissionID); } }); }).then(() => { $("#building_list").find(".building_list_vehicle_element").each(function () { var VehicleStatus = $(this).find(".building_list_fms").text(); var VehicleType = Number(parseInt($(this).find("a").attr("vehicle_type_id"))); var VehicleID = $(this).attr("vehicle_id"); if (VehicleStatus == "5" && [32, 52].indexOf(VehicleType) !== -1) { var map2 = $('#radio_messages_important > li.radio_message_vehicle_' + VehicleID + ' a:contains("Zum Einsatz")'); if (map2.length > 0) { var _meap = String(map2.attr('href')); var MissionID = _meap.substr(_meap.lastIndexOf("/") + 1); if (MissionID) { ADis_AddPoliceSprechwunschToQueue(MissionID); } } } }); }); } function ADis_OpenNextPoliceSprechwunsch() { ADisSettings().then((setting) => { if (setting['Sprechwunsch-Automatic'] == 'true') { return ADisDB.ADisSprechwunschPolice.where({ done: 'false' }).limit(1) } }).then((Wunsch) => { if (Wunsch !== undefined) { Wunsch.each((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) => {}) }