Compare commits
34 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 1f03ad6cc3 | |||
| 88b26a7f91 | |||
| d52137df95 | |||
| 7852149694 | |||
| 3bce16eff7 | |||
| 1817977520 | |||
| e48b0a7bdd | |||
| efd95eacab | |||
| fdffe19a11 | |||
| cb049224dd | |||
| b33313eed9 | |||
| b4fb131c9b | |||
| 98002ae853 | |||
| 31f147ee6d | |||
| 18acbc9a01 | |||
| 0a1fb871ed | |||
| 78b72223f8 | |||
| b7067520bc | |||
| f142e57e18 | |||
| 4ae5c26754 | |||
| 01acb126a4 | |||
| 4b691b54c8 | |||
| 9ca42c9210 | |||
| 25397f17eb | |||
| 4e591be16b | |||
| 16838dae86 | |||
| 72d3566254 | |||
| c137f47e4a | |||
| 579facabbc | |||
| 5c619f622c | |||
| a6e68ebb82 | |||
| f95f4a6483 | |||
| 6bbb9cc5cb | |||
| b6532cbf27 |
Vendored
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
/*Generated on:Tue Dec 18 2018 02:20:22 GMT+0100 (CET)*/
|
/*Generated on:Wed Dec 19 2018 18:06:36 GMT+0100 (CET)*/
|
||||||
var AutomaticDispose_Branch = "master";
|
var AutomaticDispose_Branch = "master";
|
||||||
var AutomaticDispose_URL = "https://jf.git.rest/Jomaar/automatic-dispose/raw/branch/";
|
var AutomaticDispose_URL = "https://jf.git.rest/Jomaar/automatic-dispose/raw/branch/";
|
||||||
var da_lss_adis_time = new Date().getTime();
|
var da_lss_adis_time = new Date().getTime();
|
||||||
|
|||||||
Vendored
+221
-122
@@ -1,4 +1,4 @@
|
|||||||
/*Generated on:Tue Dec 18 2018 02:20:22 GMT+0100 (CET)*/
|
/*Generated on:Wed Dec 19 2018 18:06:36 GMT+0100 (CET)*/
|
||||||
/*
|
/*
|
||||||
* Dexie.js - a minimalistic wrapper for IndexedDB
|
* Dexie.js - a minimalistic wrapper for IndexedDB
|
||||||
* ===============================================
|
* ===============================================
|
||||||
@@ -4479,6 +4479,7 @@ class AutomaticDispose {
|
|||||||
|
|
||||||
// Variablen
|
// Variablen
|
||||||
get ADisSettings() {
|
get ADisSettings() {
|
||||||
|
let self = this
|
||||||
return {
|
return {
|
||||||
url: "https://jf.git.rest/Jomaar/automatic-dispose/raw/branch/",
|
url: "https://jf.git.rest/Jomaar/automatic-dispose/raw/branch/",
|
||||||
branch: "master",
|
branch: "master",
|
||||||
@@ -17015,7 +17016,7 @@ class AutomaticDispose {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}`),
|
}`),
|
||||||
name: this.name,
|
name: self.name,
|
||||||
runner: ['kt', 'om', 'os', 'vm', 've'],
|
runner: ['kt', 'om', 'os', 'vm', 've'],
|
||||||
runner_divs: ['mission_list_krankentransporte', 'mission_list', /*'mission_list_sicherheitswache',*/ 'mission_list_alliance', 'mission_list_alliance_event'],
|
runner_divs: ['mission_list_krankentransporte', 'mission_list', /*'mission_list_sicherheitswache',*/ 'mission_list_alliance', 'mission_list_alliance_event'],
|
||||||
runner_settings: ['Krankentransport-Automatic', 'MissionsOwn-Automatic', /*'MissionsOwn-Automatic',*/ 'Alliance-Automatic', 'AllianceEvent-Automatic'],
|
runner_settings: ['Krankentransport-Automatic', 'MissionsOwn-Automatic', /*'MissionsOwn-Automatic',*/ 'Alliance-Automatic', 'AllianceEvent-Automatic'],
|
||||||
@@ -17038,20 +17039,20 @@ class AutomaticDispose {
|
|||||||
self.Vehicles = {}
|
self.Vehicles = {}
|
||||||
self.Patients = {}
|
self.Patients = {}
|
||||||
|
|
||||||
this.ADis_MyHead = document.getElementsByTagName('head')[0];
|
self.ADis_MyHead = document.getElementsByTagName('head')[0];
|
||||||
this.ADis_MyBody = document.getElementsByTagName('body')[0];
|
self.ADis_MyBody = document.getElementsByTagName('body')[0];
|
||||||
|
|
||||||
// -
|
// -
|
||||||
// - Sprechwunsch Variablen
|
// - Sprechwunsch Variablen
|
||||||
// -
|
// -
|
||||||
this.Jails = [];
|
self.Jails = [];
|
||||||
this.JailRegEx = /\(Freie Zellen\:\s+(\d)\,\s+Entfernung\:\s+(\d+\,\d+)\s+km(?:\,\s+Abgabe an Besitzer\:\s+(\d+)%)?\)/g;
|
self.JailRegEx = /\(Freie Zellen\:\s+(\d)\,\s+Entfernung\:\s+(\d+\,\d+)\s+km(?:\,\s+Abgabe an Besitzer\:\s+(\d+)%)?\)/g;
|
||||||
this.Hospitals = [];
|
self.Hospitals = [];
|
||||||
this.RescueVehicleFrameWatchDog = null;
|
self.RescueVehicleFrameWatchDog = null;
|
||||||
this.PoliceVehicleFrameWatchDog = null;
|
self.PoliceVehicleFrameWatchDog = null;
|
||||||
|
|
||||||
this.ADisDB = new Dexie('LSS_AutomaticDispo');
|
self.ADisDB = new Dexie('LSS_AutomaticDispo');
|
||||||
this.ADisDB.version(1).stores({
|
self.ADisDB.version(1).stores({
|
||||||
/**
|
/**
|
||||||
* AvailabelMissions
|
* AvailabelMissions
|
||||||
* - missionID
|
* - missionID
|
||||||
@@ -17096,7 +17097,7 @@ class AutomaticDispose {
|
|||||||
*/
|
*/
|
||||||
ADisMissions: "++missionID,runner,available,done,[missionID+available+done],[missionID+runner],[missionID+runner+done],[runner+available+done]"
|
ADisMissions: "++missionID,runner,available,done,[missionID+available+done],[missionID+runner],[missionID+runner+done],[runner+available+done]"
|
||||||
});
|
});
|
||||||
this.ADisDB.on("populate", () => {
|
self.ADisDB.on("populate", () => {
|
||||||
self.ADisDB.ADisSettings.add({
|
self.ADisDB.ADisSettings.add({
|
||||||
name: "Krankentransport-Automatic",
|
name: "Krankentransport-Automatic",
|
||||||
value: 'true'
|
value: 'true'
|
||||||
@@ -17118,10 +17119,10 @@ class AutomaticDispose {
|
|||||||
value: 'false'
|
value: 'false'
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
this.ADisDB.open().catch((err) => {
|
self.ADisDB.open().catch((err) => {
|
||||||
console.error(err.stack || err);
|
console.error(err.stack || err);
|
||||||
});
|
});
|
||||||
this.ADisDB.on("ready", async () => {
|
self.ADisDB.on("ready", async () => {
|
||||||
self.adis_settings = {
|
self.adis_settings = {
|
||||||
'Krankentransport-Automatic': false,
|
'Krankentransport-Automatic': false,
|
||||||
'Sprechwunsch-Automatic': false,
|
'Sprechwunsch-Automatic': false,
|
||||||
@@ -17142,11 +17143,10 @@ class AutomaticDispose {
|
|||||||
setInterval(self.OpenNextPoliceSprechwunsch.bind(self), 5000);
|
setInterval(self.OpenNextPoliceSprechwunsch.bind(self), 5000);
|
||||||
self.CollectPoliceSprechwuensche();
|
self.CollectPoliceSprechwuensche();
|
||||||
|
|
||||||
setTimeout(function() {
|
setTimeout(() => {
|
||||||
const self = this;
|
|
||||||
self.CollectMissions();
|
self.CollectMissions();
|
||||||
self.ReadAndAddMissions();
|
self.ReadAndAddMissions();
|
||||||
}.bind(self), 500);
|
}, 500);
|
||||||
|
|
||||||
self.ADisSettings.runner.forEach((runner) => {
|
self.ADisSettings.runner.forEach((runner) => {
|
||||||
self.OpenNextMission(runner)
|
self.OpenNextMission(runner)
|
||||||
@@ -17169,9 +17169,7 @@ class AutomaticDispose {
|
|||||||
if (window.location.pathname.indexOf("/missions/") !== -1 && window.name == 'adis-sprechwunsch-police') {
|
if (window.location.pathname.indexOf("/missions/") !== -1 && window.name == 'adis-sprechwunsch-police') {
|
||||||
self.Check_Call_Police_Active();
|
self.Check_Call_Police_Active();
|
||||||
} else if (window.location.pathname.indexOf("/missions/") !== -1 && window.name != 'adis-sprechwunsch-police') {
|
} else if (window.location.pathname.indexOf("/missions/") !== -1 && window.name != 'adis-sprechwunsch-police') {
|
||||||
setTimeout(function(){
|
self.StartMission();
|
||||||
this.StartMission();
|
|
||||||
}.bind(self),250)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
@@ -17204,14 +17202,26 @@ class AutomaticDispose {
|
|||||||
// - Sprechwunsch Queue
|
// - Sprechwunsch Queue
|
||||||
// -
|
// -
|
||||||
RemovePoliceSprechwunschFromQueue(WunschID) {
|
RemovePoliceSprechwunschFromQueue(WunschID) {
|
||||||
return this.ADisDB.ADisSprechwunschPolice.where({
|
let self = this;
|
||||||
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisSprechwunschPolice], async () => {
|
||||||
|
return await self.ADisDB.ADisSprechwunschPolice.where({
|
||||||
missionID: WunschID
|
missionID: WunschID
|
||||||
}).delete();
|
}).delete();
|
||||||
|
|
||||||
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
|
})
|
||||||
}
|
}
|
||||||
RemoveRescueSprechwunschFromQueue(WunschID) {
|
RemoveRescueSprechwunschFromQueue(WunschID) {
|
||||||
return this.ADisDB.ADisSprechwunsch.where({
|
let self = this;
|
||||||
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisSprechwunsch], async () => {
|
||||||
|
return await self.ADisDB.ADisSprechwunsch.where({
|
||||||
vehicleID: WunschID
|
vehicleID: WunschID
|
||||||
}).delete();
|
}).delete();
|
||||||
|
|
||||||
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// - -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
|
// - -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
|
||||||
@@ -17222,6 +17232,7 @@ class AutomaticDispose {
|
|||||||
|
|
||||||
CollectRescueSprechwuensche() {
|
CollectRescueSprechwuensche() {
|
||||||
let self = this;
|
let self = this;
|
||||||
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisSprechwunsch], async () => {
|
||||||
new Promise(async (resolve, reject) => {
|
new Promise(async (resolve, reject) => {
|
||||||
await self.ADisDB.ADisSprechwunsch.where({
|
await self.ADisDB.ADisSprechwunsch.where({
|
||||||
done: 'false'
|
done: 'false'
|
||||||
@@ -17240,12 +17251,16 @@ class AutomaticDispose {
|
|||||||
self.AddRescueSprechwunschToQueue(VehicleID);
|
self.AddRescueSprechwunschToQueue(VehicleID);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
})
|
||||||
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
OpenNextRescueSprechwunsch() {
|
OpenNextRescueSprechwunsch() {
|
||||||
let self = this;
|
let self = this;
|
||||||
this.ADSettings().then((setting) => {
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisSprechwunsch], async () => {
|
||||||
|
return await self.ADSettings().then((setting) => {
|
||||||
if (setting['Sprechwunsch-Automatic'] == 'true') {
|
if (setting['Sprechwunsch-Automatic'] == 'true') {
|
||||||
return self.ADisDB.ADisSprechwunsch.where({
|
return self.ADisDB.ADisSprechwunsch.where({
|
||||||
done: 'false'
|
done: 'false'
|
||||||
@@ -17253,40 +17268,55 @@ class AutomaticDispose {
|
|||||||
}
|
}
|
||||||
}).then((Wunsch) => {
|
}).then((Wunsch) => {
|
||||||
if (Wunsch !== undefined) {
|
if (Wunsch !== undefined) {
|
||||||
Wunsch.each((myWunsch) => {
|
Wunsch.each(async (myWunsch) => {
|
||||||
let VehicleID = myWunsch.vehicleID;
|
let VehicleID = myWunsch.vehicleID;
|
||||||
self.UpdateRescueSprechwunschToDone(VehicleID).then(() => {
|
await self.UpdateRescueSprechwunschToDone(VehicleID).then(() => {
|
||||||
if ($("#adis-sprechwunsch-rescue-frame").attr("vehicle_id") == "empty") {
|
if ($("#adis-sprechwunsch-rescue-frame").attr("vehicle_id") == "empty") {
|
||||||
$("#adis-sprechwunsch-rescue-frame").attr("src", "https://www.leitstellenspiel.de/vehicles/" + VehicleID);
|
$("#adis-sprechwunsch-rescue-frame").attr("src", "https://www.leitstellenspiel.de/vehicles/" + VehicleID);
|
||||||
$("#adis-sprechwunsch-rescue-frame").attr("vehicle_id", VehicleID);
|
$("#adis-sprechwunsch-rescue-frame").attr("vehicle_id", VehicleID);
|
||||||
|
|
||||||
self.RescueVehicleFrameWatchDog = setTimeout(async function () {
|
self.RescueVehicleFrameWatchDog = setTimeout(async function () {
|
||||||
const self = this;
|
let self = this;
|
||||||
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisSprechwunsch], async () => {
|
||||||
self.RemoveRescueSprechwunschFromQueue(VehicleID).then((deleteCount) => {
|
self.RemoveRescueSprechwunschFromQueue(VehicleID).then((deleteCount) => {
|
||||||
$("#adis-sprechwunsch-rescue-frame").attr("src", "");
|
$("#adis-sprechwunsch-rescue-frame").attr("src", "");
|
||||||
$("#adis-sprechwunsch-rescue-frame").attr("vehicle_id", "empty");
|
$("#adis-sprechwunsch-rescue-frame").attr("vehicle_id", "empty");
|
||||||
});
|
});
|
||||||
|
});
|
||||||
}.bind(self), 1500);
|
}.bind(self), 1500);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
})
|
||||||
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
AddRescueSprechwunschToQueue(WunschID) {
|
AddRescueSprechwunschToQueue(WunschID) {
|
||||||
return this.ADisDB.ADisSprechwunsch.put({
|
let self = this
|
||||||
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisSprechwunsch], async () => {
|
||||||
|
return await self.ADisDB.ADisSprechwunsch.put({
|
||||||
vehicleID: WunschID,
|
vehicleID: WunschID,
|
||||||
done: 'false'
|
done: 'false'
|
||||||
}).catch((err) => {})
|
})
|
||||||
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
UpdateRescueSprechwunschToDone(WunschID) {
|
UpdateRescueSprechwunschToDone(WunschID) {
|
||||||
return this.ADisDB.ADisSprechwunsch.put({
|
let self = this
|
||||||
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisSprechwunsch], async () => {
|
||||||
|
return await self.ADisDB.ADisSprechwunsch.put({
|
||||||
vehicleID: WunschID,
|
vehicleID: WunschID,
|
||||||
done: 'true'
|
done: 'true'
|
||||||
}).catch((err) => {})
|
})
|
||||||
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -17376,7 +17406,7 @@ class AutomaticDispose {
|
|||||||
});
|
});
|
||||||
|
|
||||||
self.Hospitals.reverse();
|
self.Hospitals.reverse();
|
||||||
this.Send_Vehicle_To_Hospital()
|
self.Send_Vehicle_To_Hospital()
|
||||||
}
|
}
|
||||||
|
|
||||||
// Krankenhaus einlieferung
|
// Krankenhaus einlieferung
|
||||||
@@ -17397,7 +17427,8 @@ class AutomaticDispose {
|
|||||||
|
|
||||||
CollectPoliceSprechwuensche() {
|
CollectPoliceSprechwuensche() {
|
||||||
let self = this;
|
let self = this;
|
||||||
new Promise(async (resolve, reject) => {
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisSprechwunschPolice], async () => {
|
||||||
|
await new Promise(async (resolve, reject) => {
|
||||||
await self.ADisDB.ADisSprechwunschPolice.where({
|
await self.ADisDB.ADisSprechwunschPolice.where({
|
||||||
done: 'false'
|
done: 'false'
|
||||||
}).each((myWunsch) => {
|
}).each((myWunsch) => {
|
||||||
@@ -17409,14 +17440,14 @@ class AutomaticDispose {
|
|||||||
return resolve();
|
return resolve();
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
var MOIODOS = $('div#mission_list div.missionSideBarEntry:visible');
|
var MOIODOS = $('div#mission_list div.missionSideBarEntry:visible');
|
||||||
return MOIODOS.each((_, elem) => {
|
return MOIODOS.each(async (_, elem) => {
|
||||||
if ($(elem).text().match(/Gefangene sollen abtransportiert werden/g)) {
|
if ($(elem).text().match(/Gefangene sollen abtransportiert werden/g)) {
|
||||||
var MissionID = $(elem).attr("mission_id");
|
var MissionID = $(elem).attr("mission_id");
|
||||||
self.AddPoliceSprechwunschToQueue(MissionID);
|
await self.AddPoliceSprechwunschToQueue(MissionID);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
$("#building_list").find(".building_list_vehicle_element").each((_, elem) => {
|
$("#building_list").find(".building_list_vehicle_element").each(async (_, elem) => {
|
||||||
var VehicleStatus = $(elem).find(".building_list_fms").text();
|
var VehicleStatus = $(elem).find(".building_list_fms").text();
|
||||||
var VehicleType = Number(parseInt($(elem).find("a").attr("vehicle_type_id")));
|
var VehicleType = Number(parseInt($(elem).find("a").attr("vehicle_type_id")));
|
||||||
var VehicleID = $(elem).attr("vehicle_id");
|
var VehicleID = $(elem).attr("vehicle_id");
|
||||||
@@ -17426,17 +17457,21 @@ class AutomaticDispose {
|
|||||||
var _meap = String(map2.attr('href'));
|
var _meap = String(map2.attr('href'));
|
||||||
var MissionID = _meap.substr(_meap.lastIndexOf("/") + 1);
|
var MissionID = _meap.substr(_meap.lastIndexOf("/") + 1);
|
||||||
if (MissionID) {
|
if (MissionID) {
|
||||||
self.AddPoliceSprechwunschToQueue(MissionID);
|
await self.AddPoliceSprechwunschToQueue(MissionID);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
})
|
||||||
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
OpenNextPoliceSprechwunsch() {
|
OpenNextPoliceSprechwunsch() {
|
||||||
let self = this;
|
let self = this;
|
||||||
this.ADSettings().then((setting) => {
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisSprechwunschPolice], async () => {
|
||||||
|
return await self.ADSettings().then((setting) => {
|
||||||
if (setting['Sprechwunsch-Automatic'] == 'true') {
|
if (setting['Sprechwunsch-Automatic'] == 'true') {
|
||||||
return self.ADisDB.ADisSprechwunschPolice.where({
|
return self.ADisDB.ADisSprechwunschPolice.where({
|
||||||
done: 'false'
|
done: 'false'
|
||||||
@@ -17444,39 +17479,54 @@ class AutomaticDispose {
|
|||||||
}
|
}
|
||||||
}).then((Wunsch) => {
|
}).then((Wunsch) => {
|
||||||
if (Wunsch !== undefined) {
|
if (Wunsch !== undefined) {
|
||||||
Wunsch.each((myWunsch) => {
|
Wunsch.each(async (myWunsch) => {
|
||||||
let MissionID = myWunsch.missionID;
|
let MissionID = myWunsch.missionID;
|
||||||
self.UpdatePoliceSprechwunschToDone(MissionID).then(() => {
|
await self.UpdatePoliceSprechwunschToDone(MissionID).then(() => {
|
||||||
if ($("#adis-sprechwunsch-police-frame").attr("mission_id") == "empty") {
|
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("src", "https://www.leitstellenspiel.de/missions/" + MissionID);
|
||||||
$("#adis-sprechwunsch-police-frame").attr("mission_id", MissionID);
|
$("#adis-sprechwunsch-police-frame").attr("mission_id", MissionID);
|
||||||
|
|
||||||
self.PoliceVehicleFrameWatchDog = setTimeout(async function (MissionID) {
|
self.PoliceVehicleFrameWatchDog = setTimeout(async function (MissionID) {
|
||||||
const self = this;
|
let self = this;
|
||||||
self.RemovePoliceSprechwunschFromQueue(MissionID).then((deleteCount) => {
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisSprechwunschPolice], async () => {
|
||||||
|
await self.RemovePoliceSprechwunschFromQueue(MissionID).then((deleteCount) => {
|
||||||
$("#adis-sprechwunsch-police-frame").attr("src", "");
|
$("#adis-sprechwunsch-police-frame").attr("src", "");
|
||||||
$("#adis-sprechwunsch-police-frame").attr("mission_id", "empty");
|
$("#adis-sprechwunsch-police-frame").attr("mission_id", "empty");
|
||||||
});
|
});
|
||||||
|
});
|
||||||
}.bind(self), 1500, MissionID);
|
}.bind(self), 1500, MissionID);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
})
|
||||||
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
AddPoliceSprechwunschToQueue(WunschID) {
|
AddPoliceSprechwunschToQueue(WunschID) {
|
||||||
return this.ADisDB.ADisSprechwunschPolice.put({
|
let self = this;
|
||||||
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisSprechwunschPolice], async () => {
|
||||||
|
return await self.ADisDB.ADisSprechwunschPolice.put({
|
||||||
missionID: WunschID,
|
missionID: WunschID,
|
||||||
done: 'false'
|
done: 'false'
|
||||||
}).catch((err) => {})
|
})
|
||||||
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
UpdatePoliceSprechwunschToDone(WunschID) {
|
UpdatePoliceSprechwunschToDone(WunschID) {
|
||||||
return this.ADisDB.ADisSprechwunschPolice.add({
|
let self = this;
|
||||||
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisSprechwunschPolice], async () => {
|
||||||
|
return await self.ADisDB.ADisSprechwunschPolice.put({
|
||||||
missionID: WunschID,
|
missionID: WunschID,
|
||||||
done: 'true'
|
done: 'true'
|
||||||
}).catch((err) => {})
|
})
|
||||||
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -17640,7 +17690,7 @@ class AutomaticDispose {
|
|||||||
|
|
||||||
self.Jails.reverse();
|
self.Jails.reverse();
|
||||||
if (self.Jails.length > 0) {
|
if (self.Jails.length > 0) {
|
||||||
this.Send_Vehicle_To_Jail()
|
self.Send_Vehicle_To_Jail()
|
||||||
} else {
|
} else {
|
||||||
$("#mission_vehicle_driving tbody, #mission_vehicle_at_mission tbody").find("tr").each((_, elem) => {
|
$("#mission_vehicle_driving tbody, #mission_vehicle_at_mission tbody").find("tr").each((_, elem) => {
|
||||||
var CalledVehicleID = parseInt($(elem).find("a").first().attr("vehicle_type_id"));
|
var CalledVehicleID = parseInt($(elem).find("a").first().attr("vehicle_type_id"));
|
||||||
@@ -18085,11 +18135,14 @@ class AutomaticDispose {
|
|||||||
}
|
}
|
||||||
|
|
||||||
AddAvailableMissions(Mission) {
|
AddAvailableMissions(Mission) {
|
||||||
return this.ADisDB.ADisAvailabelMissions.put({
|
let self = this;
|
||||||
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisAvailabelMissions], async () => {
|
||||||
|
return self.ADisDB.ADisAvailabelMissions.put({
|
||||||
missionID: Mission.id,
|
missionID: Mission.id,
|
||||||
type: Mission.type,
|
type: Mission.type,
|
||||||
name: Mission.name,
|
name: Mission.name,
|
||||||
jsondata: Mission
|
jsondata: Mission
|
||||||
|
})
|
||||||
}).catch((err) => {
|
}).catch((err) => {
|
||||||
console.error(err)
|
console.error(err)
|
||||||
})
|
})
|
||||||
@@ -18131,9 +18184,8 @@ class AutomaticDispose {
|
|||||||
ReadAndAddMissions(MissionID, Runner) {
|
ReadAndAddMissions(MissionID, Runner) {
|
||||||
const self = this;
|
const self = this;
|
||||||
|
|
||||||
return self.ADisDB.transaction('rw', [self.ADisDB.ADisMissions, self.ADisDB.ADisAvailabelMissions], () => {
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisMissions, self.ADisDB.ADisAvailabelMissions], async () => {
|
||||||
|
return self.ADSettings().then(async () => {
|
||||||
self.ADSettings().then(() => {
|
|
||||||
return self.ADisDB.ADisMissions.toCollection()
|
return self.ADisDB.ADisMissions.toCollection()
|
||||||
}).then((Missions) => {
|
}).then((Missions) => {
|
||||||
if (typeof Missions !== "undefined") {
|
if (typeof Missions !== "undefined") {
|
||||||
@@ -18144,7 +18196,7 @@ class AutomaticDispose {
|
|||||||
if (MissionElement.length == 0 || $('#mission_panel_' + MyMission.missionID).hasClass('mission_panel_green')) {
|
if (MissionElement.length == 0 || $('#mission_panel_' + MyMission.missionID).hasClass('mission_panel_green')) {
|
||||||
// remove
|
// remove
|
||||||
console.log("Remove :", MyMission)
|
console.log("Remove :", MyMission)
|
||||||
self.RemoveMissionsFromQueue(MyMission.missionID)
|
return self.RemoveMissionsFromQueue(MyMission.missionID)
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -18162,8 +18214,10 @@ class AutomaticDispose {
|
|||||||
});
|
});
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
});
|
})
|
||||||
});
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
|
});;
|
||||||
}
|
}
|
||||||
|
|
||||||
AddMission(ID, Runner) {
|
AddMission(ID, Runner) {
|
||||||
@@ -18172,7 +18226,7 @@ class AutomaticDispose {
|
|||||||
const runnerID = self.ADisSettings.runner_divs.indexOf(Runner);
|
const runnerID = self.ADisSettings.runner_divs.indexOf(Runner);
|
||||||
const settingOpt = self.ADisSettings.runner_settings[runnerID];
|
const settingOpt = self.ADisSettings.runner_settings[runnerID];
|
||||||
const runnerOpt = self.ADisSettings.runner[runnerID];
|
const runnerOpt = self.ADisSettings.runner[runnerID];
|
||||||
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisMissions, self.ADisDB.ADisAvailabelMissions], async () => {
|
||||||
return self.ADSettings().then((setting) => {
|
return self.ADSettings().then((setting) => {
|
||||||
if (setting[settingOpt] == 'true') {
|
if (setting[settingOpt] == 'true') {
|
||||||
let where = {
|
let where = {
|
||||||
@@ -18224,7 +18278,7 @@ class AutomaticDispose {
|
|||||||
var MissionName = addr[0];
|
var MissionName = addr[0];
|
||||||
var MissionStreet = addr[1];
|
var MissionStreet = addr[1];
|
||||||
var MissionVillage = addr[2];
|
var MissionVillage = addr[2];
|
||||||
console.log('update mission', _MissionID, MissionType, _MissionType)
|
console.log('update mission', MissionID)
|
||||||
return self.ADisDB.ADisAvailabelMissions.get({
|
return self.ADisDB.ADisAvailabelMissions.get({
|
||||||
type: _MissionType
|
type: _MissionType
|
||||||
}).then((available) => {
|
}).then((available) => {
|
||||||
@@ -18273,21 +18327,30 @@ class AutomaticDispose {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
AddMissionsToQueue(Mission) {
|
AddMissionsToQueue(Mission) {
|
||||||
const self = this;
|
const self = this;
|
||||||
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisMissions], async () => {
|
||||||
return self.ADisDB.ADisMissions.put(Mission).catch((err) => {
|
return self.ADisDB.ADisMissions.put(Mission).catch((err) => {
|
||||||
console.error(err)
|
console.error(err)
|
||||||
});
|
});
|
||||||
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
|
});
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
UpdateMissions(Mission) {
|
UpdateMissions(Mission) {
|
||||||
const self = this;
|
const self = this;
|
||||||
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisMissions], async () => {
|
||||||
return self.ADisDB.ADisMissions.put(Mission).catch((err) => {
|
return self.ADisDB.ADisMissions.put(Mission).catch((err) => {
|
||||||
console.error(err)
|
console.error(err)
|
||||||
})
|
});
|
||||||
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
FreeIframe(Runner) {
|
FreeIframe(Runner) {
|
||||||
@@ -18301,9 +18364,11 @@ class AutomaticDispose {
|
|||||||
|
|
||||||
UpdateMissionsToDone(MissionID) {
|
UpdateMissionsToDone(MissionID) {
|
||||||
const self = this;
|
const self = this;
|
||||||
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisMissions], async () => {
|
||||||
return self.ADisDB.ADisMissions.update(MissionID, {
|
return self.ADisDB.ADisMissions.update(MissionID, {
|
||||||
last_check: Math.floor(new Date().getTime() / 1000),
|
last_check: Math.floor(new Date().getTime() / 1000),
|
||||||
next_check: Math.floor(new Date().getTime() / 1000) + 120
|
next_check: Math.floor(new Date().getTime() / 1000) + 120
|
||||||
|
})
|
||||||
}).catch((err) => {
|
}).catch((err) => {
|
||||||
console.error(err)
|
console.error(err)
|
||||||
})
|
})
|
||||||
@@ -18311,9 +18376,11 @@ class AutomaticDispose {
|
|||||||
|
|
||||||
RemoveMissionsFromQueue(MissionID) {
|
RemoveMissionsFromQueue(MissionID) {
|
||||||
const self = this;
|
const self = this;
|
||||||
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisMissions], async () => {
|
||||||
return self.ADisDB.ADisMissions.where({
|
return self.ADisDB.ADisMissions.where({
|
||||||
missionID: MissionID
|
missionID: MissionID
|
||||||
}).delete().catch((err) => {
|
}).delete()
|
||||||
|
}).catch((err) => {
|
||||||
console.error(err)
|
console.error(err)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@@ -18333,10 +18400,10 @@ class AutomaticDispose {
|
|||||||
// runnerIframe:runnerIframe
|
// runnerIframe:runnerIframe
|
||||||
// })
|
// })
|
||||||
|
|
||||||
return self.ADisDB.transaction('rw', [self.ADisDB.ADisMissions, self.ADisDB.ADisAvailabelMissions], () => {
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisMissions, self.ADisDB.ADisAvailabelMissions], async () => {
|
||||||
self.ADSettings().then((setting) => {
|
return await self.ADSettings().then(async (setting) => {
|
||||||
if (setting[runnerSettings] == 'true') {
|
if (setting[runnerSettings] == 'true') {
|
||||||
return self.ADisDB.ADisMissions.where({
|
return await self.ADisDB.ADisMissions.where({
|
||||||
runner: Runner,
|
runner: Runner,
|
||||||
available: 'true',
|
available: 'true',
|
||||||
done: 'false'
|
done: 'false'
|
||||||
@@ -18344,6 +18411,7 @@ class AutomaticDispose {
|
|||||||
return item.next_check <= Math.floor(new Date().getTime() / 1000)
|
return item.next_check <= Math.floor(new Date().getTime() / 1000)
|
||||||
}).limit(1)
|
}).limit(1)
|
||||||
}
|
}
|
||||||
|
})
|
||||||
}).then((Wunsch) => {
|
}).then((Wunsch) => {
|
||||||
// console.table(Wunsch);
|
// console.table(Wunsch);
|
||||||
if (Wunsch !== undefined) {
|
if (Wunsch !== undefined) {
|
||||||
@@ -18368,12 +18436,13 @@ class AutomaticDispose {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
return setTimeout(self.OpenNextMission.bind(self), 1000, Runner);
|
return setTimeout(Dexie.ignoreTransaction(function () {self.OpenNextMission.bind(self, Runner)}), 1000);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
return setTimeout(self.OpenNextMission.bind(self), 1000, Runner);
|
return setTimeout(Dexie.ignoreTransaction(function () {self.OpenNextMission.bind(self, Runner)}), 1000);
|
||||||
});
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -18391,7 +18460,7 @@ class AutomaticDispose {
|
|||||||
const runnerID = self.ADisSettings.runner_iframesName.indexOf(window.name);
|
const runnerID = self.ADisSettings.runner_iframesName.indexOf(window.name);
|
||||||
self.MyRunner = self.ADisSettings.runner[runnerID];
|
self.MyRunner = self.ADisSettings.runner[runnerID];
|
||||||
self.MyRunnerSettings = self.ADisSettings.runner_settings[runnerID];
|
self.MyRunnerSettings = self.ADisSettings.runner_settings[runnerID];
|
||||||
|
setTimeout(function () {
|
||||||
self.MissionID = document.location.pathname.substr(document.location.pathname.lastIndexOf("/") + 1);
|
self.MissionID = document.location.pathname.substr(document.location.pathname.lastIndexOf("/") + 1);
|
||||||
var help_el = $('a#mission_help');
|
var help_el = $('a#mission_help');
|
||||||
if (help_el.length > 0) {
|
if (help_el.length > 0) {
|
||||||
@@ -18414,8 +18483,8 @@ class AutomaticDispose {
|
|||||||
// return tellParent(`console.log('handler:1000:done:${window.name}:${self.MissionID}');window.AutomaticDisposeCall.FreeIframe('${self.MyRunner}');`); // delete Mission here as completed
|
// return tellParent(`console.log('handler:1000:done:${window.name}:${self.MissionID}');window.AutomaticDisposeCall.FreeIframe('${self.MyRunner}');`); // delete Mission here as completed
|
||||||
// })
|
// })
|
||||||
// } else {
|
// } else {
|
||||||
return self.ADisDB.transaction('rw', [self.ADisDB.ADisMissions], () => {
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisMissions, ], async () => {
|
||||||
self.ADSettings().then((setting) => {
|
return self.ADSettings().then(async (setting) => {
|
||||||
if (setting[self.MyRunnerSettings] === 'true') {
|
if (setting[self.MyRunnerSettings] === 'true') {
|
||||||
|
|
||||||
let where = {
|
let where = {
|
||||||
@@ -18448,31 +18517,41 @@ class AutomaticDispose {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
})
|
})
|
||||||
// }
|
// }
|
||||||
|
}, 500);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
MainHandler() {
|
MainHandler() {
|
||||||
const self = this;
|
const self = this;
|
||||||
if (self.MissionType == null || self.includesString($('#iframe-inside-container > div.missionNotFound > div.missionNotFoundText').text(), 'Der Einsatz wurde erfolgreich abgeschlossen.')) {
|
if (self.includesString($('div.missionNotFoundText').text(), 'Der Einsatz wurde erfolgreich abgeschlossen.')) {
|
||||||
tellParent(`console.log('DONE: ${self.MissionID}');`);
|
|
||||||
|
console.log("DONE!");
|
||||||
|
console.log("DONE: ", self.MissionID);
|
||||||
return self.RemoveMissionsFromQueue(self.MissionID).then(() => {
|
return self.RemoveMissionsFromQueue(self.MissionID).then(() => {
|
||||||
return tellParent(`console.log('handler:1000:done:${window.name}:${self.MissionID}');window.AutomaticDisposeCall.FreeIframe('${self.MyRunner}');`); // delete Mission here as completed
|
return tellParent(`console.log('handler:1000:done:${window.name}:${self.MissionID}');window.AutomaticDisposeCall.FreeIframe('${self.MyRunner}');`); // delete Mission here as completed
|
||||||
})
|
})
|
||||||
} else if (self.includesString($('#iframe-inside-container > div.alert.fade.in.alert-success').text(), "wurde erfolgreich informiert") ) {
|
|
||||||
const m = $('#iframe-inside-container > div.alert.fade.in.alert-success').text()
|
} else if (self.includesString($('#iframe-inside-container div.alert.fade.in.alert-success').text(), "wurde erfolgreich informiert")) {
|
||||||
tellParent(`console.log('SEND: ${self.MissionID}', '${m}');`);
|
|
||||||
|
console.log("SEND");
|
||||||
|
console.log("SEND: ", self.MissionID);
|
||||||
return self.UpdateMissionsToDone(self.MissionID).then(() => {
|
return self.UpdateMissionsToDone(self.MissionID).then(() => {
|
||||||
return tellParent(`console.log('handler:2000:update:${window.name}:${self.MissionID}');window.AutomaticDisposeCall.FreeIframe('${self.MyRunner}');`); // update Mission here as updated or full
|
return tellParent(`console.log('handler:2000:update:${window.name}:${self.MissionID}');window.AutomaticDisposeCall.FreeIframe('${self.MyRunner}');`); // update Mission here as updated or full
|
||||||
});
|
});
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
if (['adis-ownmissions', 'adis-plannedevents', 'adis-krankentransporte'].indexOf(window.name) != -1) {
|
if (['adis-ownmissions', 'adis-plannedevents', 'adis-krankentransporte'].indexOf(window.name) != -1) {
|
||||||
console.log("WILL SEND?")
|
console.log("WILL SEND?")
|
||||||
self.CheckMissionAutomatic();
|
return self.CheckMissionAutomatic();
|
||||||
} else if (['adis-verbandmission', 'adis-verbandmission-event'].indexOf(window.name) != -1) {
|
} else if (['adis-verbandmission', 'adis-verbandmission-event'].indexOf(window.name) != -1) {
|
||||||
self.WorkVerbandMission();
|
return self.WorkVerbandMission();
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -18484,6 +18563,9 @@ class AutomaticDispose {
|
|||||||
|
|
||||||
WorkVerbandMission() {
|
WorkVerbandMission() {
|
||||||
const self = this;
|
const self = this;
|
||||||
|
const runnerID = self.ADisSettings.runner_iframesName.indexOf(window.name);
|
||||||
|
self.MyRunner = self.ADisSettings.runner[runnerID];
|
||||||
|
self.MyRunnerSettings = self.ADisSettings.runner_settings[runnerID];
|
||||||
self.ADSettings().then((setting) => {
|
self.ADSettings().then((setting) => {
|
||||||
var title = document.getElementById('missionH1');
|
var title = document.getElementById('missionH1');
|
||||||
var isVerband = title.innerText.toLowerCase().includes("[verband]");
|
var isVerband = title.innerText.toLowerCase().includes("[verband]");
|
||||||
@@ -18541,15 +18623,14 @@ class AutomaticDispose {
|
|||||||
|
|
||||||
CheckMissionAutomatic() {
|
CheckMissionAutomatic() {
|
||||||
const self = this;
|
const self = this;
|
||||||
var setOpt;
|
|
||||||
if (window.name == 'adis-ownmissions' || window.name == 'adis-plannedevents') {
|
const runnerID = self.ADisSettings.runner_iframesName.indexOf(window.name);
|
||||||
setOpt = 'MissionsOwn-Automatic';
|
self.MyRunner = self.ADisSettings.runner[runnerID];
|
||||||
} else if (window.name == 'adis-krankentransporte') {
|
self.MyRunnerSettings = self.ADisSettings.runner_settings[runnerID];
|
||||||
setOpt = 'Krankentransport-Automatic';
|
if (self.MyRunnerSettings && self.MyRunner) {
|
||||||
}
|
console.log("debug 1");
|
||||||
if (setOpt && self.MyRunner) {
|
|
||||||
self.ADSettings().then((setting) => {
|
self.ADSettings().then((setting) => {
|
||||||
if (setting[setOpt] == 'true') {
|
if (setting[self.MyRunnerSettings] === 'true') {
|
||||||
let where = {
|
let where = {
|
||||||
missionID: self.MissionID,
|
missionID: self.MissionID,
|
||||||
runner: self.MyRunner,
|
runner: self.MyRunner,
|
||||||
@@ -18564,14 +18645,21 @@ class AutomaticDispose {
|
|||||||
return coll.limit(1).toArray()
|
return coll.limit(1).toArray()
|
||||||
}
|
}
|
||||||
}).then((Missions) => {
|
}).then((Missions) => {
|
||||||
|
console.log("debug 2", Missions);
|
||||||
if (Missions.length > 0) {
|
if (Missions.length > 0) {
|
||||||
var Mission = Missions[0];
|
var Mission = Missions[0];
|
||||||
if (self.MyRunner == 'os') {
|
if (self.MyRunner == 'os') {
|
||||||
self.OweSecure = true;
|
self.OweSecure = true;
|
||||||
}
|
}
|
||||||
self.GetMissionConfiguration(Mission.type);
|
self.GetMissionConfiguration(Mission.type);
|
||||||
|
} else {
|
||||||
|
tellParent(`console.log('config:1000:update:${window.name}:${self.MissionID}');window.AutomaticDisposeCall.FreeIframe('${self.MyRunner}');`); // update Mission here as updated or full
|
||||||
}
|
}
|
||||||
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
});
|
});
|
||||||
|
} else {
|
||||||
|
tellParent(`console.log('config:2000:update:${window.name}:${self.MissionID}');window.AutomaticDisposeCall.FreeIframe('${self.MyRunner}');`); // update Mission here as updated or full
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -18579,10 +18667,14 @@ class AutomaticDispose {
|
|||||||
|
|
||||||
GetMissionConfiguration(MissionType) {
|
GetMissionConfiguration(MissionType) {
|
||||||
const self = this;
|
const self = this;
|
||||||
return self.ADisDB.transaction('rw', [self.ADisDB.ADisMissions, self.ADisDB.ADisAvailabelMissions], () => {
|
console.log("debug 3")
|
||||||
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisMissions, self.ADisDB.ADisAvailabelMissions], function () {
|
||||||
|
console.log("debug 3", MissionType, MissionType.toString())
|
||||||
return self.ADisDB.ADisAvailabelMissions.get({
|
return self.ADisDB.ADisAvailabelMissions.get({
|
||||||
type: MissionType.toString()
|
type: MissionType.toString()
|
||||||
|
})
|
||||||
}).then((availableMission) => {
|
}).then((availableMission) => {
|
||||||
|
console.log("debug 3", availableMission)
|
||||||
if (availableMission != undefined && availableMission.jsondata) {
|
if (availableMission != undefined && availableMission.jsondata) {
|
||||||
self.MissionConfig = availableMission.jsondata;
|
self.MissionConfig = availableMission.jsondata;
|
||||||
// console.log('MissionConfig: ', MissionType.toString(), JSON.stringify(self.MissionConfig, null, 2))
|
// console.log('MissionConfig: ', MissionType.toString(), JSON.stringify(self.MissionConfig, null, 2))
|
||||||
@@ -18592,18 +18684,19 @@ class AutomaticDispose {
|
|||||||
available: false,
|
available: false,
|
||||||
next_check: CurrentTime + 60
|
next_check: CurrentTime + 60
|
||||||
};
|
};
|
||||||
self.UpdateOwnMissionsToDone(self.MissionID, updateData);
|
self.UpdateMissionsToDone(self.MissionID);
|
||||||
|
tellParent(`console.log('config:3000:update:${window.name}:${self.MissionID}');window.AutomaticDisposeCall.FreeIframe('${self.MyRunner}');`); // update Mission here as updated or full
|
||||||
}
|
}
|
||||||
});
|
}).catch((err) => {
|
||||||
});
|
console.error(err)
|
||||||
|
});;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
StartAlarmProcess() {
|
StartAlarmProcess() {
|
||||||
const self = this;
|
const self = this;
|
||||||
const alarming = function alarming() {
|
|
||||||
const self = this;
|
|
||||||
Promise.resolve().then(async () => {
|
Promise.resolve().then(async () => {
|
||||||
return await self.PrepareVehicleNeedList();
|
return await self.PrepareVehicleNeedList();
|
||||||
}).then(async () => {
|
}).then(async () => {
|
||||||
@@ -18653,42 +18746,25 @@ class AutomaticDispose {
|
|||||||
|
|
||||||
// console.log("Clicked Vehicles: ", $('#vehicle_show_table_all input[type="checkbox"]:checked').length, $('#vehicle_show_table_all input[type="checkbox"]:checked'));
|
// console.log("Clicked Vehicles: ", $('#vehicle_show_table_all input[type="checkbox"]:checked').length, $('#vehicle_show_table_all input[type="checkbox"]:checked'));
|
||||||
// console.log("WILL KLICK SEND")
|
// console.log("WILL KLICK SEND")
|
||||||
setTimeout(function () {
|
setTimeout(() => {
|
||||||
|
|
||||||
self.UpdateMissionsToDone(self.MissionID).then(() => {
|
self.UpdateMissionsToDone(self.MissionID).then(() => {
|
||||||
|
if ($('#vehicle_show_table_all tr input[type="checkbox"]:checked').length > 0) {
|
||||||
tellParent(`console.log('ok:${window.name}:${self.MissionID}');`);
|
tellParent(`console.log('ok:${window.name}:${self.MissionID}');`);
|
||||||
window.$('#mission_alarm_btn').click();
|
window.$('#mission_alarm_btn').click();
|
||||||
});
|
|
||||||
}.bind(self), 250);
|
|
||||||
|
|
||||||
})
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
var $div = $("#mission-form > div:nth-child(7) > a");
|
|
||||||
var isShow = $div.is(':hidden');
|
|
||||||
//console.log($div, isShow);
|
|
||||||
if ($div.length && isShow) {
|
|
||||||
var observer = new MutationObserver(function (mutations) {
|
|
||||||
mutations.forEach(function (mutation) {
|
|
||||||
if (mutation.attributeName === "style") {
|
|
||||||
setTimeout(function () {
|
|
||||||
alarming()
|
|
||||||
}.bind(self), 500);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
||||||
observer.observe($div[0], {
|
|
||||||
attributes: true
|
|
||||||
});
|
|
||||||
|
|
||||||
$div.click();
|
|
||||||
} else {
|
} else {
|
||||||
setTimeout(function () {
|
tellParent(`window.AutomaticDisposeCall.FreeIframe('${self.MyRunner}');`);
|
||||||
const self = this;
|
|
||||||
alarming().bind(self)
|
|
||||||
}.bind(self), 250);
|
|
||||||
}
|
}
|
||||||
|
});
|
||||||
|
}, 250);
|
||||||
|
|
||||||
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -19640,5 +19716,28 @@ class AutomaticDispose {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$(document).ready(function () {
|
||||||
|
var $div = $("a:contains('Fahrzeuganzeige begrenzt! Fehlende Fahrzeuge laden!')");
|
||||||
|
var isShow = $div.is(':hidden');
|
||||||
|
//console.log($div, isShow);
|
||||||
|
if ($div.length && isShow && 1 == 0) {
|
||||||
|
var observer = new MutationObserver(function (mutations) {
|
||||||
|
mutations.forEach(function (mutation) {
|
||||||
|
if (mutation.attributeName === "style") {
|
||||||
|
setTimeout(function () {
|
||||||
window.AutomaticDisposeCall = new AutomaticDispose();
|
window.AutomaticDisposeCall = new AutomaticDispose();
|
||||||
|
}, 1500);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
observer.observe($div[0], {
|
||||||
|
attributes: true
|
||||||
|
});
|
||||||
|
|
||||||
|
$div.click();
|
||||||
|
} else {
|
||||||
|
setTimeout(function () {
|
||||||
|
window.AutomaticDisposeCall = new AutomaticDispose();
|
||||||
|
}, 500);
|
||||||
|
}
|
||||||
|
});
|
||||||
+220
-121
@@ -4,11 +4,12 @@ class AutomaticDispose {
|
|||||||
|
|
||||||
// Variablen
|
// Variablen
|
||||||
get ADisSettings() {
|
get ADisSettings() {
|
||||||
|
let self = this
|
||||||
return {
|
return {
|
||||||
url: "https://jf.git.rest/Jomaar/automatic-dispose/raw/branch/",
|
url: "https://jf.git.rest/Jomaar/automatic-dispose/raw/branch/",
|
||||||
branch: "master",
|
branch: "master",
|
||||||
all_missions: /***ADis_AllMissions***/ 0,
|
all_missions: /***ADis_AllMissions***/ 0,
|
||||||
name: this.name,
|
name: self.name,
|
||||||
runner: ['kt', 'om', 'os', 'vm', 've'],
|
runner: ['kt', 'om', 'os', 'vm', 've'],
|
||||||
runner_divs: ['mission_list_krankentransporte', 'mission_list', /*'mission_list_sicherheitswache',*/ 'mission_list_alliance', 'mission_list_alliance_event'],
|
runner_divs: ['mission_list_krankentransporte', 'mission_list', /*'mission_list_sicherheitswache',*/ 'mission_list_alliance', 'mission_list_alliance_event'],
|
||||||
runner_settings: ['Krankentransport-Automatic', 'MissionsOwn-Automatic', /*'MissionsOwn-Automatic',*/ 'Alliance-Automatic', 'AllianceEvent-Automatic'],
|
runner_settings: ['Krankentransport-Automatic', 'MissionsOwn-Automatic', /*'MissionsOwn-Automatic',*/ 'Alliance-Automatic', 'AllianceEvent-Automatic'],
|
||||||
@@ -31,20 +32,20 @@ class AutomaticDispose {
|
|||||||
self.Vehicles = {}
|
self.Vehicles = {}
|
||||||
self.Patients = {}
|
self.Patients = {}
|
||||||
|
|
||||||
this.ADis_MyHead = document.getElementsByTagName('head')[0];
|
self.ADis_MyHead = document.getElementsByTagName('head')[0];
|
||||||
this.ADis_MyBody = document.getElementsByTagName('body')[0];
|
self.ADis_MyBody = document.getElementsByTagName('body')[0];
|
||||||
|
|
||||||
// -
|
// -
|
||||||
// - Sprechwunsch Variablen
|
// - Sprechwunsch Variablen
|
||||||
// -
|
// -
|
||||||
this.Jails = [];
|
self.Jails = [];
|
||||||
this.JailRegEx = /\(Freie Zellen\:\s+(\d)\,\s+Entfernung\:\s+(\d+\,\d+)\s+km(?:\,\s+Abgabe an Besitzer\:\s+(\d+)%)?\)/g;
|
self.JailRegEx = /\(Freie Zellen\:\s+(\d)\,\s+Entfernung\:\s+(\d+\,\d+)\s+km(?:\,\s+Abgabe an Besitzer\:\s+(\d+)%)?\)/g;
|
||||||
this.Hospitals = [];
|
self.Hospitals = [];
|
||||||
this.RescueVehicleFrameWatchDog = null;
|
self.RescueVehicleFrameWatchDog = null;
|
||||||
this.PoliceVehicleFrameWatchDog = null;
|
self.PoliceVehicleFrameWatchDog = null;
|
||||||
|
|
||||||
this.ADisDB = new Dexie('LSS_AutomaticDispo');
|
self.ADisDB = new Dexie('LSS_AutomaticDispo');
|
||||||
this.ADisDB.version(1).stores({
|
self.ADisDB.version(1).stores({
|
||||||
/**
|
/**
|
||||||
* AvailabelMissions
|
* AvailabelMissions
|
||||||
* - missionID
|
* - missionID
|
||||||
@@ -89,7 +90,7 @@ class AutomaticDispose {
|
|||||||
*/
|
*/
|
||||||
ADisMissions: "++missionID,runner,available,done,[missionID+available+done],[missionID+runner],[missionID+runner+done],[runner+available+done]"
|
ADisMissions: "++missionID,runner,available,done,[missionID+available+done],[missionID+runner],[missionID+runner+done],[runner+available+done]"
|
||||||
});
|
});
|
||||||
this.ADisDB.on("populate", () => {
|
self.ADisDB.on("populate", () => {
|
||||||
self.ADisDB.ADisSettings.add({
|
self.ADisDB.ADisSettings.add({
|
||||||
name: "Krankentransport-Automatic",
|
name: "Krankentransport-Automatic",
|
||||||
value: 'true'
|
value: 'true'
|
||||||
@@ -111,10 +112,10 @@ class AutomaticDispose {
|
|||||||
value: 'false'
|
value: 'false'
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
this.ADisDB.open().catch((err) => {
|
self.ADisDB.open().catch((err) => {
|
||||||
console.error(err.stack || err);
|
console.error(err.stack || err);
|
||||||
});
|
});
|
||||||
this.ADisDB.on("ready", async () => {
|
self.ADisDB.on("ready", async () => {
|
||||||
self.adis_settings = {
|
self.adis_settings = {
|
||||||
'Krankentransport-Automatic': false,
|
'Krankentransport-Automatic': false,
|
||||||
'Sprechwunsch-Automatic': false,
|
'Sprechwunsch-Automatic': false,
|
||||||
@@ -135,11 +136,10 @@ class AutomaticDispose {
|
|||||||
setInterval(self.OpenNextPoliceSprechwunsch.bind(self), 5000);
|
setInterval(self.OpenNextPoliceSprechwunsch.bind(self), 5000);
|
||||||
self.CollectPoliceSprechwuensche();
|
self.CollectPoliceSprechwuensche();
|
||||||
|
|
||||||
setTimeout(function() {
|
setTimeout(() => {
|
||||||
const self = this;
|
|
||||||
self.CollectMissions();
|
self.CollectMissions();
|
||||||
self.ReadAndAddMissions();
|
self.ReadAndAddMissions();
|
||||||
}.bind(self), 500);
|
}, 500);
|
||||||
|
|
||||||
self.ADisSettings.runner.forEach((runner) => {
|
self.ADisSettings.runner.forEach((runner) => {
|
||||||
self.OpenNextMission(runner)
|
self.OpenNextMission(runner)
|
||||||
@@ -162,9 +162,7 @@ class AutomaticDispose {
|
|||||||
if (window.location.pathname.indexOf("/missions/") !== -1 && window.name == 'adis-sprechwunsch-police') {
|
if (window.location.pathname.indexOf("/missions/") !== -1 && window.name == 'adis-sprechwunsch-police') {
|
||||||
self.Check_Call_Police_Active();
|
self.Check_Call_Police_Active();
|
||||||
} else if (window.location.pathname.indexOf("/missions/") !== -1 && window.name != 'adis-sprechwunsch-police') {
|
} else if (window.location.pathname.indexOf("/missions/") !== -1 && window.name != 'adis-sprechwunsch-police') {
|
||||||
setTimeout(function(){
|
self.StartMission();
|
||||||
this.StartMission();
|
|
||||||
}.bind(self),250)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
@@ -197,14 +195,26 @@ class AutomaticDispose {
|
|||||||
// - Sprechwunsch Queue
|
// - Sprechwunsch Queue
|
||||||
// -
|
// -
|
||||||
RemovePoliceSprechwunschFromQueue(WunschID) {
|
RemovePoliceSprechwunschFromQueue(WunschID) {
|
||||||
return this.ADisDB.ADisSprechwunschPolice.where({
|
let self = this;
|
||||||
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisSprechwunschPolice], async () => {
|
||||||
|
return await self.ADisDB.ADisSprechwunschPolice.where({
|
||||||
missionID: WunschID
|
missionID: WunschID
|
||||||
}).delete();
|
}).delete();
|
||||||
|
|
||||||
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
|
})
|
||||||
}
|
}
|
||||||
RemoveRescueSprechwunschFromQueue(WunschID) {
|
RemoveRescueSprechwunschFromQueue(WunschID) {
|
||||||
return this.ADisDB.ADisSprechwunsch.where({
|
let self = this;
|
||||||
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisSprechwunsch], async () => {
|
||||||
|
return await self.ADisDB.ADisSprechwunsch.where({
|
||||||
vehicleID: WunschID
|
vehicleID: WunschID
|
||||||
}).delete();
|
}).delete();
|
||||||
|
|
||||||
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// - -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
|
// - -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
|
||||||
@@ -215,6 +225,7 @@ class AutomaticDispose {
|
|||||||
|
|
||||||
CollectRescueSprechwuensche() {
|
CollectRescueSprechwuensche() {
|
||||||
let self = this;
|
let self = this;
|
||||||
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisSprechwunsch], async () => {
|
||||||
new Promise(async (resolve, reject) => {
|
new Promise(async (resolve, reject) => {
|
||||||
await self.ADisDB.ADisSprechwunsch.where({
|
await self.ADisDB.ADisSprechwunsch.where({
|
||||||
done: 'false'
|
done: 'false'
|
||||||
@@ -233,12 +244,16 @@ class AutomaticDispose {
|
|||||||
self.AddRescueSprechwunschToQueue(VehicleID);
|
self.AddRescueSprechwunschToQueue(VehicleID);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
})
|
||||||
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
OpenNextRescueSprechwunsch() {
|
OpenNextRescueSprechwunsch() {
|
||||||
let self = this;
|
let self = this;
|
||||||
this.ADSettings().then((setting) => {
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisSprechwunsch], async () => {
|
||||||
|
return await self.ADSettings().then((setting) => {
|
||||||
if (setting['Sprechwunsch-Automatic'] == 'true') {
|
if (setting['Sprechwunsch-Automatic'] == 'true') {
|
||||||
return self.ADisDB.ADisSprechwunsch.where({
|
return self.ADisDB.ADisSprechwunsch.where({
|
||||||
done: 'false'
|
done: 'false'
|
||||||
@@ -246,40 +261,55 @@ class AutomaticDispose {
|
|||||||
}
|
}
|
||||||
}).then((Wunsch) => {
|
}).then((Wunsch) => {
|
||||||
if (Wunsch !== undefined) {
|
if (Wunsch !== undefined) {
|
||||||
Wunsch.each((myWunsch) => {
|
Wunsch.each(async (myWunsch) => {
|
||||||
let VehicleID = myWunsch.vehicleID;
|
let VehicleID = myWunsch.vehicleID;
|
||||||
self.UpdateRescueSprechwunschToDone(VehicleID).then(() => {
|
await self.UpdateRescueSprechwunschToDone(VehicleID).then(() => {
|
||||||
if ($("#adis-sprechwunsch-rescue-frame").attr("vehicle_id") == "empty") {
|
if ($("#adis-sprechwunsch-rescue-frame").attr("vehicle_id") == "empty") {
|
||||||
$("#adis-sprechwunsch-rescue-frame").attr("src", "https://www.leitstellenspiel.de/vehicles/" + VehicleID);
|
$("#adis-sprechwunsch-rescue-frame").attr("src", "https://www.leitstellenspiel.de/vehicles/" + VehicleID);
|
||||||
$("#adis-sprechwunsch-rescue-frame").attr("vehicle_id", VehicleID);
|
$("#adis-sprechwunsch-rescue-frame").attr("vehicle_id", VehicleID);
|
||||||
|
|
||||||
self.RescueVehicleFrameWatchDog = setTimeout(async function () {
|
self.RescueVehicleFrameWatchDog = setTimeout(async function () {
|
||||||
const self = this;
|
let self = this;
|
||||||
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisSprechwunsch], async () => {
|
||||||
self.RemoveRescueSprechwunschFromQueue(VehicleID).then((deleteCount) => {
|
self.RemoveRescueSprechwunschFromQueue(VehicleID).then((deleteCount) => {
|
||||||
$("#adis-sprechwunsch-rescue-frame").attr("src", "");
|
$("#adis-sprechwunsch-rescue-frame").attr("src", "");
|
||||||
$("#adis-sprechwunsch-rescue-frame").attr("vehicle_id", "empty");
|
$("#adis-sprechwunsch-rescue-frame").attr("vehicle_id", "empty");
|
||||||
});
|
});
|
||||||
|
});
|
||||||
}.bind(self), 1500);
|
}.bind(self), 1500);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
})
|
||||||
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
AddRescueSprechwunschToQueue(WunschID) {
|
AddRescueSprechwunschToQueue(WunschID) {
|
||||||
return this.ADisDB.ADisSprechwunsch.put({
|
let self = this
|
||||||
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisSprechwunsch], async () => {
|
||||||
|
return await self.ADisDB.ADisSprechwunsch.put({
|
||||||
vehicleID: WunschID,
|
vehicleID: WunschID,
|
||||||
done: 'false'
|
done: 'false'
|
||||||
}).catch((err) => {})
|
})
|
||||||
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
UpdateRescueSprechwunschToDone(WunschID) {
|
UpdateRescueSprechwunschToDone(WunschID) {
|
||||||
return this.ADisDB.ADisSprechwunsch.put({
|
let self = this
|
||||||
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisSprechwunsch], async () => {
|
||||||
|
return await self.ADisDB.ADisSprechwunsch.put({
|
||||||
vehicleID: WunschID,
|
vehicleID: WunschID,
|
||||||
done: 'true'
|
done: 'true'
|
||||||
}).catch((err) => {})
|
})
|
||||||
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -369,7 +399,7 @@ class AutomaticDispose {
|
|||||||
});
|
});
|
||||||
|
|
||||||
self.Hospitals.reverse();
|
self.Hospitals.reverse();
|
||||||
this.Send_Vehicle_To_Hospital()
|
self.Send_Vehicle_To_Hospital()
|
||||||
}
|
}
|
||||||
|
|
||||||
// Krankenhaus einlieferung
|
// Krankenhaus einlieferung
|
||||||
@@ -390,7 +420,8 @@ class AutomaticDispose {
|
|||||||
|
|
||||||
CollectPoliceSprechwuensche() {
|
CollectPoliceSprechwuensche() {
|
||||||
let self = this;
|
let self = this;
|
||||||
new Promise(async (resolve, reject) => {
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisSprechwunschPolice], async () => {
|
||||||
|
await new Promise(async (resolve, reject) => {
|
||||||
await self.ADisDB.ADisSprechwunschPolice.where({
|
await self.ADisDB.ADisSprechwunschPolice.where({
|
||||||
done: 'false'
|
done: 'false'
|
||||||
}).each((myWunsch) => {
|
}).each((myWunsch) => {
|
||||||
@@ -402,14 +433,14 @@ class AutomaticDispose {
|
|||||||
return resolve();
|
return resolve();
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
var MOIODOS = $('div#mission_list div.missionSideBarEntry:visible');
|
var MOIODOS = $('div#mission_list div.missionSideBarEntry:visible');
|
||||||
return MOIODOS.each((_, elem) => {
|
return MOIODOS.each(async (_, elem) => {
|
||||||
if ($(elem).text().match(/Gefangene sollen abtransportiert werden/g)) {
|
if ($(elem).text().match(/Gefangene sollen abtransportiert werden/g)) {
|
||||||
var MissionID = $(elem).attr("mission_id");
|
var MissionID = $(elem).attr("mission_id");
|
||||||
self.AddPoliceSprechwunschToQueue(MissionID);
|
await self.AddPoliceSprechwunschToQueue(MissionID);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
$("#building_list").find(".building_list_vehicle_element").each((_, elem) => {
|
$("#building_list").find(".building_list_vehicle_element").each(async (_, elem) => {
|
||||||
var VehicleStatus = $(elem).find(".building_list_fms").text();
|
var VehicleStatus = $(elem).find(".building_list_fms").text();
|
||||||
var VehicleType = Number(parseInt($(elem).find("a").attr("vehicle_type_id")));
|
var VehicleType = Number(parseInt($(elem).find("a").attr("vehicle_type_id")));
|
||||||
var VehicleID = $(elem).attr("vehicle_id");
|
var VehicleID = $(elem).attr("vehicle_id");
|
||||||
@@ -419,17 +450,21 @@ class AutomaticDispose {
|
|||||||
var _meap = String(map2.attr('href'));
|
var _meap = String(map2.attr('href'));
|
||||||
var MissionID = _meap.substr(_meap.lastIndexOf("/") + 1);
|
var MissionID = _meap.substr(_meap.lastIndexOf("/") + 1);
|
||||||
if (MissionID) {
|
if (MissionID) {
|
||||||
self.AddPoliceSprechwunschToQueue(MissionID);
|
await self.AddPoliceSprechwunschToQueue(MissionID);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
})
|
||||||
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
OpenNextPoliceSprechwunsch() {
|
OpenNextPoliceSprechwunsch() {
|
||||||
let self = this;
|
let self = this;
|
||||||
this.ADSettings().then((setting) => {
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisSprechwunschPolice], async () => {
|
||||||
|
return await self.ADSettings().then((setting) => {
|
||||||
if (setting['Sprechwunsch-Automatic'] == 'true') {
|
if (setting['Sprechwunsch-Automatic'] == 'true') {
|
||||||
return self.ADisDB.ADisSprechwunschPolice.where({
|
return self.ADisDB.ADisSprechwunschPolice.where({
|
||||||
done: 'false'
|
done: 'false'
|
||||||
@@ -437,39 +472,54 @@ class AutomaticDispose {
|
|||||||
}
|
}
|
||||||
}).then((Wunsch) => {
|
}).then((Wunsch) => {
|
||||||
if (Wunsch !== undefined) {
|
if (Wunsch !== undefined) {
|
||||||
Wunsch.each((myWunsch) => {
|
Wunsch.each(async (myWunsch) => {
|
||||||
let MissionID = myWunsch.missionID;
|
let MissionID = myWunsch.missionID;
|
||||||
self.UpdatePoliceSprechwunschToDone(MissionID).then(() => {
|
await self.UpdatePoliceSprechwunschToDone(MissionID).then(() => {
|
||||||
if ($("#adis-sprechwunsch-police-frame").attr("mission_id") == "empty") {
|
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("src", "https://www.leitstellenspiel.de/missions/" + MissionID);
|
||||||
$("#adis-sprechwunsch-police-frame").attr("mission_id", MissionID);
|
$("#adis-sprechwunsch-police-frame").attr("mission_id", MissionID);
|
||||||
|
|
||||||
self.PoliceVehicleFrameWatchDog = setTimeout(async function (MissionID) {
|
self.PoliceVehicleFrameWatchDog = setTimeout(async function (MissionID) {
|
||||||
const self = this;
|
let self = this;
|
||||||
self.RemovePoliceSprechwunschFromQueue(MissionID).then((deleteCount) => {
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisSprechwunschPolice], async () => {
|
||||||
|
await self.RemovePoliceSprechwunschFromQueue(MissionID).then((deleteCount) => {
|
||||||
$("#adis-sprechwunsch-police-frame").attr("src", "");
|
$("#adis-sprechwunsch-police-frame").attr("src", "");
|
||||||
$("#adis-sprechwunsch-police-frame").attr("mission_id", "empty");
|
$("#adis-sprechwunsch-police-frame").attr("mission_id", "empty");
|
||||||
});
|
});
|
||||||
|
});
|
||||||
}.bind(self), 1500, MissionID);
|
}.bind(self), 1500, MissionID);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
})
|
||||||
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
AddPoliceSprechwunschToQueue(WunschID) {
|
AddPoliceSprechwunschToQueue(WunschID) {
|
||||||
return this.ADisDB.ADisSprechwunschPolice.put({
|
let self = this;
|
||||||
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisSprechwunschPolice], async () => {
|
||||||
|
return await self.ADisDB.ADisSprechwunschPolice.put({
|
||||||
missionID: WunschID,
|
missionID: WunschID,
|
||||||
done: 'false'
|
done: 'false'
|
||||||
}).catch((err) => {})
|
})
|
||||||
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
UpdatePoliceSprechwunschToDone(WunschID) {
|
UpdatePoliceSprechwunschToDone(WunschID) {
|
||||||
return this.ADisDB.ADisSprechwunschPolice.add({
|
let self = this;
|
||||||
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisSprechwunschPolice], async () => {
|
||||||
|
return await self.ADisDB.ADisSprechwunschPolice.put({
|
||||||
missionID: WunschID,
|
missionID: WunschID,
|
||||||
done: 'true'
|
done: 'true'
|
||||||
}).catch((err) => {})
|
})
|
||||||
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -633,7 +683,7 @@ class AutomaticDispose {
|
|||||||
|
|
||||||
self.Jails.reverse();
|
self.Jails.reverse();
|
||||||
if (self.Jails.length > 0) {
|
if (self.Jails.length > 0) {
|
||||||
this.Send_Vehicle_To_Jail()
|
self.Send_Vehicle_To_Jail()
|
||||||
} else {
|
} else {
|
||||||
$("#mission_vehicle_driving tbody, #mission_vehicle_at_mission tbody").find("tr").each((_, elem) => {
|
$("#mission_vehicle_driving tbody, #mission_vehicle_at_mission tbody").find("tr").each((_, elem) => {
|
||||||
var CalledVehicleID = parseInt($(elem).find("a").first().attr("vehicle_type_id"));
|
var CalledVehicleID = parseInt($(elem).find("a").first().attr("vehicle_type_id"));
|
||||||
@@ -844,11 +894,14 @@ class AutomaticDispose {
|
|||||||
}
|
}
|
||||||
|
|
||||||
AddAvailableMissions(Mission) {
|
AddAvailableMissions(Mission) {
|
||||||
return this.ADisDB.ADisAvailabelMissions.put({
|
let self = this;
|
||||||
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisAvailabelMissions], async () => {
|
||||||
|
return self.ADisDB.ADisAvailabelMissions.put({
|
||||||
missionID: Mission.id,
|
missionID: Mission.id,
|
||||||
type: Mission.type,
|
type: Mission.type,
|
||||||
name: Mission.name,
|
name: Mission.name,
|
||||||
jsondata: Mission
|
jsondata: Mission
|
||||||
|
})
|
||||||
}).catch((err) => {
|
}).catch((err) => {
|
||||||
console.error(err)
|
console.error(err)
|
||||||
})
|
})
|
||||||
@@ -890,9 +943,8 @@ class AutomaticDispose {
|
|||||||
ReadAndAddMissions(MissionID, Runner) {
|
ReadAndAddMissions(MissionID, Runner) {
|
||||||
const self = this;
|
const self = this;
|
||||||
|
|
||||||
return self.ADisDB.transaction('rw', [self.ADisDB.ADisMissions, self.ADisDB.ADisAvailabelMissions], () => {
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisMissions, self.ADisDB.ADisAvailabelMissions], async () => {
|
||||||
|
return self.ADSettings().then(async () => {
|
||||||
self.ADSettings().then(() => {
|
|
||||||
return self.ADisDB.ADisMissions.toCollection()
|
return self.ADisDB.ADisMissions.toCollection()
|
||||||
}).then((Missions) => {
|
}).then((Missions) => {
|
||||||
if (typeof Missions !== "undefined") {
|
if (typeof Missions !== "undefined") {
|
||||||
@@ -903,7 +955,7 @@ class AutomaticDispose {
|
|||||||
if (MissionElement.length == 0 || $('#mission_panel_' + MyMission.missionID).hasClass('mission_panel_green')) {
|
if (MissionElement.length == 0 || $('#mission_panel_' + MyMission.missionID).hasClass('mission_panel_green')) {
|
||||||
// remove
|
// remove
|
||||||
console.log("Remove :", MyMission)
|
console.log("Remove :", MyMission)
|
||||||
self.RemoveMissionsFromQueue(MyMission.missionID)
|
return self.RemoveMissionsFromQueue(MyMission.missionID)
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -921,8 +973,10 @@ class AutomaticDispose {
|
|||||||
});
|
});
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
});
|
})
|
||||||
});
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
|
});;
|
||||||
}
|
}
|
||||||
|
|
||||||
AddMission(ID, Runner) {
|
AddMission(ID, Runner) {
|
||||||
@@ -931,7 +985,7 @@ class AutomaticDispose {
|
|||||||
const runnerID = self.ADisSettings.runner_divs.indexOf(Runner);
|
const runnerID = self.ADisSettings.runner_divs.indexOf(Runner);
|
||||||
const settingOpt = self.ADisSettings.runner_settings[runnerID];
|
const settingOpt = self.ADisSettings.runner_settings[runnerID];
|
||||||
const runnerOpt = self.ADisSettings.runner[runnerID];
|
const runnerOpt = self.ADisSettings.runner[runnerID];
|
||||||
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisMissions, self.ADisDB.ADisAvailabelMissions], async () => {
|
||||||
return self.ADSettings().then((setting) => {
|
return self.ADSettings().then((setting) => {
|
||||||
if (setting[settingOpt] == 'true') {
|
if (setting[settingOpt] == 'true') {
|
||||||
let where = {
|
let where = {
|
||||||
@@ -983,7 +1037,7 @@ class AutomaticDispose {
|
|||||||
var MissionName = addr[0];
|
var MissionName = addr[0];
|
||||||
var MissionStreet = addr[1];
|
var MissionStreet = addr[1];
|
||||||
var MissionVillage = addr[2];
|
var MissionVillage = addr[2];
|
||||||
console.log('update mission', _MissionID, MissionType, _MissionType)
|
console.log('update mission', MissionID)
|
||||||
return self.ADisDB.ADisAvailabelMissions.get({
|
return self.ADisDB.ADisAvailabelMissions.get({
|
||||||
type: _MissionType
|
type: _MissionType
|
||||||
}).then((available) => {
|
}).then((available) => {
|
||||||
@@ -1032,21 +1086,30 @@ class AutomaticDispose {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
AddMissionsToQueue(Mission) {
|
AddMissionsToQueue(Mission) {
|
||||||
const self = this;
|
const self = this;
|
||||||
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisMissions], async () => {
|
||||||
return self.ADisDB.ADisMissions.put(Mission).catch((err) => {
|
return self.ADisDB.ADisMissions.put(Mission).catch((err) => {
|
||||||
console.error(err)
|
console.error(err)
|
||||||
});
|
});
|
||||||
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
|
});
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
UpdateMissions(Mission) {
|
UpdateMissions(Mission) {
|
||||||
const self = this;
|
const self = this;
|
||||||
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisMissions], async () => {
|
||||||
return self.ADisDB.ADisMissions.put(Mission).catch((err) => {
|
return self.ADisDB.ADisMissions.put(Mission).catch((err) => {
|
||||||
console.error(err)
|
console.error(err)
|
||||||
})
|
});
|
||||||
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
FreeIframe(Runner) {
|
FreeIframe(Runner) {
|
||||||
@@ -1060,9 +1123,11 @@ class AutomaticDispose {
|
|||||||
|
|
||||||
UpdateMissionsToDone(MissionID) {
|
UpdateMissionsToDone(MissionID) {
|
||||||
const self = this;
|
const self = this;
|
||||||
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisMissions], async () => {
|
||||||
return self.ADisDB.ADisMissions.update(MissionID, {
|
return self.ADisDB.ADisMissions.update(MissionID, {
|
||||||
last_check: Math.floor(new Date().getTime() / 1000),
|
last_check: Math.floor(new Date().getTime() / 1000),
|
||||||
next_check: Math.floor(new Date().getTime() / 1000) + 120
|
next_check: Math.floor(new Date().getTime() / 1000) + 120
|
||||||
|
})
|
||||||
}).catch((err) => {
|
}).catch((err) => {
|
||||||
console.error(err)
|
console.error(err)
|
||||||
})
|
})
|
||||||
@@ -1070,9 +1135,11 @@ class AutomaticDispose {
|
|||||||
|
|
||||||
RemoveMissionsFromQueue(MissionID) {
|
RemoveMissionsFromQueue(MissionID) {
|
||||||
const self = this;
|
const self = this;
|
||||||
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisMissions], async () => {
|
||||||
return self.ADisDB.ADisMissions.where({
|
return self.ADisDB.ADisMissions.where({
|
||||||
missionID: MissionID
|
missionID: MissionID
|
||||||
}).delete().catch((err) => {
|
}).delete()
|
||||||
|
}).catch((err) => {
|
||||||
console.error(err)
|
console.error(err)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@@ -1092,10 +1159,10 @@ class AutomaticDispose {
|
|||||||
// runnerIframe:runnerIframe
|
// runnerIframe:runnerIframe
|
||||||
// })
|
// })
|
||||||
|
|
||||||
return self.ADisDB.transaction('rw', [self.ADisDB.ADisMissions, self.ADisDB.ADisAvailabelMissions], () => {
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisMissions, self.ADisDB.ADisAvailabelMissions], async () => {
|
||||||
self.ADSettings().then((setting) => {
|
return await self.ADSettings().then(async (setting) => {
|
||||||
if (setting[runnerSettings] == 'true') {
|
if (setting[runnerSettings] == 'true') {
|
||||||
return self.ADisDB.ADisMissions.where({
|
return await self.ADisDB.ADisMissions.where({
|
||||||
runner: Runner,
|
runner: Runner,
|
||||||
available: 'true',
|
available: 'true',
|
||||||
done: 'false'
|
done: 'false'
|
||||||
@@ -1103,6 +1170,7 @@ class AutomaticDispose {
|
|||||||
return item.next_check <= Math.floor(new Date().getTime() / 1000)
|
return item.next_check <= Math.floor(new Date().getTime() / 1000)
|
||||||
}).limit(1)
|
}).limit(1)
|
||||||
}
|
}
|
||||||
|
})
|
||||||
}).then((Wunsch) => {
|
}).then((Wunsch) => {
|
||||||
// console.table(Wunsch);
|
// console.table(Wunsch);
|
||||||
if (Wunsch !== undefined) {
|
if (Wunsch !== undefined) {
|
||||||
@@ -1127,12 +1195,13 @@ class AutomaticDispose {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
return setTimeout(self.OpenNextMission.bind(self), 1000, Runner);
|
return setTimeout(Dexie.ignoreTransaction(function () {self.OpenNextMission.bind(self, Runner)}), 1000);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
return setTimeout(self.OpenNextMission.bind(self), 1000, Runner);
|
return setTimeout(Dexie.ignoreTransaction(function () {self.OpenNextMission.bind(self, Runner)}), 1000);
|
||||||
});
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1150,7 +1219,7 @@ class AutomaticDispose {
|
|||||||
const runnerID = self.ADisSettings.runner_iframesName.indexOf(window.name);
|
const runnerID = self.ADisSettings.runner_iframesName.indexOf(window.name);
|
||||||
self.MyRunner = self.ADisSettings.runner[runnerID];
|
self.MyRunner = self.ADisSettings.runner[runnerID];
|
||||||
self.MyRunnerSettings = self.ADisSettings.runner_settings[runnerID];
|
self.MyRunnerSettings = self.ADisSettings.runner_settings[runnerID];
|
||||||
|
setTimeout(function () {
|
||||||
self.MissionID = document.location.pathname.substr(document.location.pathname.lastIndexOf("/") + 1);
|
self.MissionID = document.location.pathname.substr(document.location.pathname.lastIndexOf("/") + 1);
|
||||||
var help_el = $('a#mission_help');
|
var help_el = $('a#mission_help');
|
||||||
if (help_el.length > 0) {
|
if (help_el.length > 0) {
|
||||||
@@ -1173,8 +1242,8 @@ class AutomaticDispose {
|
|||||||
// return tellParent(`console.log('handler:1000:done:${window.name}:${self.MissionID}');window.AutomaticDisposeCall.FreeIframe('${self.MyRunner}');`); // delete Mission here as completed
|
// return tellParent(`console.log('handler:1000:done:${window.name}:${self.MissionID}');window.AutomaticDisposeCall.FreeIframe('${self.MyRunner}');`); // delete Mission here as completed
|
||||||
// })
|
// })
|
||||||
// } else {
|
// } else {
|
||||||
return self.ADisDB.transaction('rw', [self.ADisDB.ADisMissions], () => {
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisMissions, ], async () => {
|
||||||
self.ADSettings().then((setting) => {
|
return self.ADSettings().then(async (setting) => {
|
||||||
if (setting[self.MyRunnerSettings] === 'true') {
|
if (setting[self.MyRunnerSettings] === 'true') {
|
||||||
|
|
||||||
let where = {
|
let where = {
|
||||||
@@ -1207,31 +1276,41 @@ class AutomaticDispose {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
})
|
})
|
||||||
// }
|
// }
|
||||||
|
}, 500);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
MainHandler() {
|
MainHandler() {
|
||||||
const self = this;
|
const self = this;
|
||||||
if (self.MissionType == null || self.includesString($('#iframe-inside-container > div.missionNotFound > div.missionNotFoundText').text(), 'Der Einsatz wurde erfolgreich abgeschlossen.')) {
|
if (self.includesString($('div.missionNotFoundText').text(), 'Der Einsatz wurde erfolgreich abgeschlossen.')) {
|
||||||
tellParent(`console.log('DONE: ${self.MissionID}');`);
|
|
||||||
|
console.log("DONE!");
|
||||||
|
console.log("DONE: ", self.MissionID);
|
||||||
return self.RemoveMissionsFromQueue(self.MissionID).then(() => {
|
return self.RemoveMissionsFromQueue(self.MissionID).then(() => {
|
||||||
return tellParent(`console.log('handler:1000:done:${window.name}:${self.MissionID}');window.AutomaticDisposeCall.FreeIframe('${self.MyRunner}');`); // delete Mission here as completed
|
return tellParent(`console.log('handler:1000:done:${window.name}:${self.MissionID}');window.AutomaticDisposeCall.FreeIframe('${self.MyRunner}');`); // delete Mission here as completed
|
||||||
})
|
})
|
||||||
} else if (self.includesString($('#iframe-inside-container > div.alert.fade.in.alert-success').text(), "wurde erfolgreich informiert") ) {
|
|
||||||
const m = $('#iframe-inside-container > div.alert.fade.in.alert-success').text()
|
} else if (self.includesString($('#iframe-inside-container div.alert.fade.in.alert-success').text(), "wurde erfolgreich informiert")) {
|
||||||
tellParent(`console.log('SEND: ${self.MissionID}', '${m}');`);
|
|
||||||
|
console.log("SEND");
|
||||||
|
console.log("SEND: ", self.MissionID);
|
||||||
return self.UpdateMissionsToDone(self.MissionID).then(() => {
|
return self.UpdateMissionsToDone(self.MissionID).then(() => {
|
||||||
return tellParent(`console.log('handler:2000:update:${window.name}:${self.MissionID}');window.AutomaticDisposeCall.FreeIframe('${self.MyRunner}');`); // update Mission here as updated or full
|
return tellParent(`console.log('handler:2000:update:${window.name}:${self.MissionID}');window.AutomaticDisposeCall.FreeIframe('${self.MyRunner}');`); // update Mission here as updated or full
|
||||||
});
|
});
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
if (['adis-ownmissions', 'adis-plannedevents', 'adis-krankentransporte'].indexOf(window.name) != -1) {
|
if (['adis-ownmissions', 'adis-plannedevents', 'adis-krankentransporte'].indexOf(window.name) != -1) {
|
||||||
console.log("WILL SEND?")
|
console.log("WILL SEND?")
|
||||||
self.CheckMissionAutomatic();
|
return self.CheckMissionAutomatic();
|
||||||
} else if (['adis-verbandmission', 'adis-verbandmission-event'].indexOf(window.name) != -1) {
|
} else if (['adis-verbandmission', 'adis-verbandmission-event'].indexOf(window.name) != -1) {
|
||||||
self.WorkVerbandMission();
|
return self.WorkVerbandMission();
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1243,6 +1322,9 @@ class AutomaticDispose {
|
|||||||
|
|
||||||
WorkVerbandMission() {
|
WorkVerbandMission() {
|
||||||
const self = this;
|
const self = this;
|
||||||
|
const runnerID = self.ADisSettings.runner_iframesName.indexOf(window.name);
|
||||||
|
self.MyRunner = self.ADisSettings.runner[runnerID];
|
||||||
|
self.MyRunnerSettings = self.ADisSettings.runner_settings[runnerID];
|
||||||
self.ADSettings().then((setting) => {
|
self.ADSettings().then((setting) => {
|
||||||
var title = document.getElementById('missionH1');
|
var title = document.getElementById('missionH1');
|
||||||
var isVerband = title.innerText.toLowerCase().includes("[verband]");
|
var isVerband = title.innerText.toLowerCase().includes("[verband]");
|
||||||
@@ -1300,15 +1382,14 @@ class AutomaticDispose {
|
|||||||
|
|
||||||
CheckMissionAutomatic() {
|
CheckMissionAutomatic() {
|
||||||
const self = this;
|
const self = this;
|
||||||
var setOpt;
|
|
||||||
if (window.name == 'adis-ownmissions' || window.name == 'adis-plannedevents') {
|
const runnerID = self.ADisSettings.runner_iframesName.indexOf(window.name);
|
||||||
setOpt = 'MissionsOwn-Automatic';
|
self.MyRunner = self.ADisSettings.runner[runnerID];
|
||||||
} else if (window.name == 'adis-krankentransporte') {
|
self.MyRunnerSettings = self.ADisSettings.runner_settings[runnerID];
|
||||||
setOpt = 'Krankentransport-Automatic';
|
if (self.MyRunnerSettings && self.MyRunner) {
|
||||||
}
|
console.log("debug 1");
|
||||||
if (setOpt && self.MyRunner) {
|
|
||||||
self.ADSettings().then((setting) => {
|
self.ADSettings().then((setting) => {
|
||||||
if (setting[setOpt] == 'true') {
|
if (setting[self.MyRunnerSettings] === 'true') {
|
||||||
let where = {
|
let where = {
|
||||||
missionID: self.MissionID,
|
missionID: self.MissionID,
|
||||||
runner: self.MyRunner,
|
runner: self.MyRunner,
|
||||||
@@ -1323,14 +1404,21 @@ class AutomaticDispose {
|
|||||||
return coll.limit(1).toArray()
|
return coll.limit(1).toArray()
|
||||||
}
|
}
|
||||||
}).then((Missions) => {
|
}).then((Missions) => {
|
||||||
|
console.log("debug 2", Missions);
|
||||||
if (Missions.length > 0) {
|
if (Missions.length > 0) {
|
||||||
var Mission = Missions[0];
|
var Mission = Missions[0];
|
||||||
if (self.MyRunner == 'os') {
|
if (self.MyRunner == 'os') {
|
||||||
self.OweSecure = true;
|
self.OweSecure = true;
|
||||||
}
|
}
|
||||||
self.GetMissionConfiguration(Mission.type);
|
self.GetMissionConfiguration(Mission.type);
|
||||||
|
} else {
|
||||||
|
tellParent(`console.log('config:1000:update:${window.name}:${self.MissionID}');window.AutomaticDisposeCall.FreeIframe('${self.MyRunner}');`); // update Mission here as updated or full
|
||||||
}
|
}
|
||||||
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
});
|
});
|
||||||
|
} else {
|
||||||
|
tellParent(`console.log('config:2000:update:${window.name}:${self.MissionID}');window.AutomaticDisposeCall.FreeIframe('${self.MyRunner}');`); // update Mission here as updated or full
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1338,10 +1426,14 @@ class AutomaticDispose {
|
|||||||
|
|
||||||
GetMissionConfiguration(MissionType) {
|
GetMissionConfiguration(MissionType) {
|
||||||
const self = this;
|
const self = this;
|
||||||
return self.ADisDB.transaction('rw', [self.ADisDB.ADisMissions, self.ADisDB.ADisAvailabelMissions], () => {
|
console.log("debug 3")
|
||||||
|
return self.ADisDB.transaction('rw!', [self.ADisDB.ADisMissions, self.ADisDB.ADisAvailabelMissions], function () {
|
||||||
|
console.log("debug 3", MissionType, MissionType.toString())
|
||||||
return self.ADisDB.ADisAvailabelMissions.get({
|
return self.ADisDB.ADisAvailabelMissions.get({
|
||||||
type: MissionType.toString()
|
type: MissionType.toString()
|
||||||
|
})
|
||||||
}).then((availableMission) => {
|
}).then((availableMission) => {
|
||||||
|
console.log("debug 3", availableMission)
|
||||||
if (availableMission != undefined && availableMission.jsondata) {
|
if (availableMission != undefined && availableMission.jsondata) {
|
||||||
self.MissionConfig = availableMission.jsondata;
|
self.MissionConfig = availableMission.jsondata;
|
||||||
// console.log('MissionConfig: ', MissionType.toString(), JSON.stringify(self.MissionConfig, null, 2))
|
// console.log('MissionConfig: ', MissionType.toString(), JSON.stringify(self.MissionConfig, null, 2))
|
||||||
@@ -1351,18 +1443,19 @@ class AutomaticDispose {
|
|||||||
available: false,
|
available: false,
|
||||||
next_check: CurrentTime + 60
|
next_check: CurrentTime + 60
|
||||||
};
|
};
|
||||||
self.UpdateOwnMissionsToDone(self.MissionID, updateData);
|
self.UpdateMissionsToDone(self.MissionID);
|
||||||
|
tellParent(`console.log('config:3000:update:${window.name}:${self.MissionID}');window.AutomaticDisposeCall.FreeIframe('${self.MyRunner}');`); // update Mission here as updated or full
|
||||||
}
|
}
|
||||||
});
|
}).catch((err) => {
|
||||||
});
|
console.error(err)
|
||||||
|
});;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
StartAlarmProcess() {
|
StartAlarmProcess() {
|
||||||
const self = this;
|
const self = this;
|
||||||
const alarming = function alarming() {
|
|
||||||
const self = this;
|
|
||||||
Promise.resolve().then(async () => {
|
Promise.resolve().then(async () => {
|
||||||
return await self.PrepareVehicleNeedList();
|
return await self.PrepareVehicleNeedList();
|
||||||
}).then(async () => {
|
}).then(async () => {
|
||||||
@@ -1412,42 +1505,25 @@ class AutomaticDispose {
|
|||||||
|
|
||||||
// console.log("Clicked Vehicles: ", $('#vehicle_show_table_all input[type="checkbox"]:checked').length, $('#vehicle_show_table_all input[type="checkbox"]:checked'));
|
// console.log("Clicked Vehicles: ", $('#vehicle_show_table_all input[type="checkbox"]:checked').length, $('#vehicle_show_table_all input[type="checkbox"]:checked'));
|
||||||
// console.log("WILL KLICK SEND")
|
// console.log("WILL KLICK SEND")
|
||||||
setTimeout(function () {
|
setTimeout(() => {
|
||||||
|
|
||||||
self.UpdateMissionsToDone(self.MissionID).then(() => {
|
self.UpdateMissionsToDone(self.MissionID).then(() => {
|
||||||
|
if ($('#vehicle_show_table_all tr input[type="checkbox"]:checked').length > 0) {
|
||||||
tellParent(`console.log('ok:${window.name}:${self.MissionID}');`);
|
tellParent(`console.log('ok:${window.name}:${self.MissionID}');`);
|
||||||
window.$('#mission_alarm_btn').click();
|
window.$('#mission_alarm_btn').click();
|
||||||
});
|
|
||||||
}.bind(self), 250);
|
|
||||||
|
|
||||||
})
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
var $div = $("#mission-form > div:nth-child(7) > a");
|
|
||||||
var isShow = $div.is(':hidden');
|
|
||||||
//console.log($div, isShow);
|
|
||||||
if ($div.length && isShow) {
|
|
||||||
var observer = new MutationObserver(function (mutations) {
|
|
||||||
mutations.forEach(function (mutation) {
|
|
||||||
if (mutation.attributeName === "style") {
|
|
||||||
setTimeout(function () {
|
|
||||||
alarming()
|
|
||||||
}.bind(self), 500);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
||||||
observer.observe($div[0], {
|
|
||||||
attributes: true
|
|
||||||
});
|
|
||||||
|
|
||||||
$div.click();
|
|
||||||
} else {
|
} else {
|
||||||
setTimeout(function () {
|
tellParent(`window.AutomaticDisposeCall.FreeIframe('${self.MyRunner}');`);
|
||||||
const self = this;
|
|
||||||
alarming().bind(self)
|
|
||||||
}.bind(self), 250);
|
|
||||||
}
|
}
|
||||||
|
});
|
||||||
|
}, 250);
|
||||||
|
|
||||||
|
}).catch((err) => {
|
||||||
|
console.error(err)
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -2399,5 +2475,28 @@ class AutomaticDispose {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$(document).ready(function () {
|
||||||
|
var $div = $("a:contains('Fahrzeuganzeige begrenzt! Fehlende Fahrzeuge laden!')");
|
||||||
|
var isShow = $div.is(':hidden');
|
||||||
|
//console.log($div, isShow);
|
||||||
|
if ($div.length && isShow && 1 == 0) {
|
||||||
|
var observer = new MutationObserver(function (mutations) {
|
||||||
|
mutations.forEach(function (mutation) {
|
||||||
|
if (mutation.attributeName === "style") {
|
||||||
|
setTimeout(function () {
|
||||||
window.AutomaticDisposeCall = new AutomaticDispose();
|
window.AutomaticDisposeCall = new AutomaticDispose();
|
||||||
|
}, 1500);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
observer.observe($div[0], {
|
||||||
|
attributes: true
|
||||||
|
});
|
||||||
|
|
||||||
|
$div.click();
|
||||||
|
} else {
|
||||||
|
setTimeout(function () {
|
||||||
|
window.AutomaticDisposeCall = new AutomaticDispose();
|
||||||
|
}, 500);
|
||||||
|
}
|
||||||
|
});
|
||||||
Reference in New Issue
Block a user