Files
automatic-dispose/src/handler.js
2018-12-02 09:41:12 +01:00

1174 lines
60 KiB
JavaScript
Executable File

class baof {
MissionType = null;
MissionID = null;
MyRunner = null;
MyRunnerSettings = null;
constructor() {
const self = this;
self.MissionType = null;
const runnerID = self.ADisSettings.runner_iframesName.indexOf(window.name);
self.MyRunner = self.ADisSettings.runner[runnerID];
self.MyRunnerSettings = self.ADisSettings.runner_settings[runnerID];
setTimeout(function () {
self.MissionID = document.location.pathname.substr(document.location.pathname.lastIndexOf("/") + 1);
var help_el = $('a#mission_help');
if (help_el.length > 0) {
self.MissionType = help_el[0].href.split("?")[0];
var re = /\d+$/i;
var found = self.MissionType.match(re);
self.MissionType = Number(found[0]);
} else {
self.MissionType = null;
}
console.log("MissionID", self.MissionID);
console.log("MissionType", self.MissionType);
self.ADisSettings().then((setting) => {
if (setting[runnerSettings] != 'true') {
return self.ADisDB.ADisMissionsOwn.where({
missionID: self.MissionID,
runner: MyRunner,
done: 'false'
}).and(function (item) {
return item.next_check <= Math.floor(new Date().getTime() / 1000)
}).limit(1)
}
}).then((Wunsch) => {
if (Wunsch !== undefined) {
return Wunsch.count(function (count) {
if (count > 0) {
return Wunsch.each((mywunsch) => {
return self.MainHandler()
});
}
return tellParent(`console.log('done:${window.name}:${self.MissionID}');MissionDelete('${window.name}', '${self.MissionID}');`);
});
}
return tellParent(`console.log('done:${window.name}:${self.MissionID}');MissionDelete('${window.name}', '${self.MissionID}');`);
})
}, 1500);
}
MainHandler() {
const self = this;
if (includesString($('#iframe-inside-container > div.missionNotFound > div.missionNotFoundText').text(), 'Der Einsatz wurde erfolgreich abgeschlossen.')) {
console.log("DONE!");
return tellParent(`console.log('done:${window.name}:${self.MissionID}');MissionDelete('${window.name}', '${self.MissionID}');`); // delete Mission here as completed
}
if (includesString($('#iframe-inside-container > div.alert.fade.in.alert-success').text(), "wurde erfolgreich informiert") /*|| $('#vehicle_show_table_all input[type="checkbox"]:checked').size() > 0*/ ) {
console.log("SEND");
return tellParent(`console.log('update:${window.name}:${self.MissionID}');MissionUpdateDone('${window.name}', '${self.MissionID}');`); // update Mission here as updated or full
} else {
setTimeout(function () {
if (['adis-ownmissions', 'adis-krankentransporte'].indexOf(window.name) != -1) {
console.log("WILL SEND?")
self.CheckMissionAutomatic();
} else if (['adis-verbandmission', 'adis-verbandmission-event'].indexOf(window.name) != -1) {
self.WorkVerbandMission();
}
}, 250);
}
}
// - -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
// -
// - Grab Run Verbands Missions
// -
// - -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
WorkVerbandMission() {
const self = this;
self.ADisSettings().then((setting) => {
var title = document.getElementById('missionH1');
var isVerband = title.innerText.toLowerCase().includes("[verband]");
if (setting['Alliance-Automatic'] == 'true' && isVerband) {
if ([52, 55, 129, 203].indexOf(self.MissionType) !== -1 && $('#vehicle_show_table_all tr[vehicle_type="FuStW"] input[type="checkbox"]').size() > 0) {
$('#vehicle_show_table_all tr[vehicle_type="FuStW"] input[type="checkbox"]')[0].click();
} else if ([53, 130, 202].indexOf(self.MissionType) !== -1) {
if ($('#vehicle_show_table_all tr[vehicle_type="FLF"] input[type="checkbox"]').size() > 0) {
$('#vehicle_show_table_all tr[vehicle_type="FLF"] input[type="checkbox"]')[0].click();
} else if ($('#vehicle_show_table_all tr[vehicle_type="GW-A"] input[type="checkbox"]').size() > 0) {
$('#vehicle_show_table_all tr[vehicle_type="GW-A"] input[type="checkbox"]')[0].click();
} else if ($('#vehicle_show_table_all tr[vehicle_type="GW-Öl"] input[type="checkbox"]').size() > 0) {
$('#vehicle_show_table_all tr[vehicle_type="GW-Öl"] input[type="checkbox"]')[0].click();
} else if ($('#vehicle_show_table_all tr[vehicle_type="NEF"] input[type="checkbox"]').size() > 0) {
$('#vehicle_show_table_all tr[vehicle_type="NEF"] input[type="checkbox"]')[0].click();
}
} else if ([54, 56].indexOf(self.MissionType) !== -1) {
if ($('#vehicle_show_table_all tr[vehicle_type="FLF"] input[type="checkbox"]').size() > 0) {
$('#vehicle_show_table_all tr[vehicle_type="FLF"] input[type="checkbox"]')[0].click();
} else if ($('#vehicle_show_table_all tr[vehicle_type="FuStW"] input[type="checkbox"]').size() > 0) {
$('#vehicle_show_table_all tr[vehicle_type="FuStW"] input[type="checkbox"]')[0].click();
} else if ($('#vehicle_show_table_all tr[vehicle_type="GW-A"] input[type="checkbox"]').size() > 0) {
$('#vehicle_show_table_all tr[vehicle_type="GW-A"] input[type="checkbox"]')[0].click();
} else if ($('#vehicle_show_table_all tr[vehicle_type="GW-Öl"] input[type="checkbox"]').size() > 0) {
$('#vehicle_show_table_all tr[vehicle_type="GW-Öl"] input[type="checkbox"]')[0].click();
} else if ($('#vehicle_show_table_all tr[vehicle_type="LF 20"] input[type="checkbox"]').size() > 0) {
$('#vehicle_show_table_all tr[vehicle_type="LF 20"] input[type="checkbox"]')[0].click();
} else if ($('#vehicle_show_table_all tr[vehicle_type="LF 20/16"] input[type="checkbox"]').size() > 0) {
$('#vehicle_show_table_all tr[vehicle_type="LF 20/16"] input[type="checkbox"]')[0].click();
} else if ($('#vehicle_show_table_all tr[vehicle_type="HLF 20"] input[type="checkbox"]').size() > 0) {
$('#vehicle_show_table_all tr[vehicle_type="HLF 20"] input[type="checkbox"]')[0].click();
} else if ($('#vehicle_show_table_all tr[vehicle_type="TLF 8/8"] input[type="checkbox"]').size() > 0) {
$('#vehicle_show_table_all tr[vehicle_type="TLF 8/8"] input[type="checkbox"]')[0].click();
}
} else {
if ($('#vehicle_show_table_all tr[vehicle_type="FuStW"] input[type="checkbox"]').size() > 0) {
$('#vehicle_show_table_all tr[vehicle_type="FuStW"] input[type="checkbox"]')[0].click();
} else if ($('#vehicle_show_table_all tr[vehicle_type="KTW Typ B"] input[type="checkbox"]').size() > 0) {
$('#vehicle_show_table_all tr[vehicle_type="KTW Typ B"] input[type="checkbox"]')[0].click();
}
}
// Todo add alternative cars, please no LF because of Mülltonne....
if ($('#vehicle_show_table_all input[type="checkbox"]:checked').size() > 0) {
$('#mission_alarm_btn').click();
}
}
});
}
// - -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
// -
// - Grab Mission-Configuration from GitHub
// -
// - -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
CheckMissionAutomatic() {
const self = this;
var setOpt;
var missionLoad;
if (window.name == 'adis-ownmissions') {
setOpt = 'MissionsOwn-Automatic';
missionLoad = 'ADisMissionsOwn';
} else if (window.name == 'adis-krankentransporte') {
setOpt = 'Krankentransport-Automatic';
missionLoad = 'ADisKrankentransport';
}
if (setOpt && missionLoad) {
self.ADisSettings().then((setting) => {
if (setting[setOpt] == 'true') {
var coll = self.ADisDB.ADisMissions.where({
done: 'false'
})
if (missionLoad != "ADisKrankentransport") {
coll = coll.and(function (item) {
return item.next_check <= Math.floor(new Date().getTime() / 1000)
});
}
return coll.limit(1).toArray()
}
}).then((Missions) => {
if (Missions.length > 0) {
var Mission = Missions[0];
self.GetMissionConfiguration(missionLoad == 'ADisKrankentransport' ? 147 : Mission.type);
}
});
}
}
MissionConfig = {}
GetMissionConfiguration(MissionType) {
const self = this;
return self.ADisDB.transaction('rw', [self.ADisDB.ADisMissionsOwn, self.ADisDB.ADisAvailabelMissions], () => {
return self.ADisDB.ADisAvailabelMissions.get({
type: MissionType.toString()
}).then((availableMission) => {
if (availableMission != undefined && availableMission.jsondata) {
self.MissionConfig = availableMission.jsondata;
console.log('MissionConfig: ', MissionType.toString(), JSON.stringify(self.MissionConfig, null, 2))
self.StartAlarmProcess();
} else {
var updateData = {
available: false,
next_check: CurrentTime + 60
};
self.UpdateOwnMissionsToDone(self.MissionID, updateData);
}
});
});
}
Vehicles = {}
Patients = {}
StartAlarmProcess() {
const self = this;
setTimeout(function () {
Promise.resolve().then(async () => {
return await self.PrepareVehicleNeedList();
}).then(async () => {
return await self.CollectInvolvedVehicles();
}).then(async () => {
return await self.CollectPatients();
})
.then(async () => {
return await self.ProcessEmergencyMedicalService()
})
.then(async () => {
return await self.ProcessFireDepartment()
})
.then(async () => {
return await self.ProcessPoliceDepartment()
})
.then(async () => {
return await self.ProcessTechnicalEmergencyService()
})
.then(async () => {
return await self.ProcessWaterRescue()
}).then(() => {
console.log("Clicked Vehicles: ", $('#vehicle_show_table_all input[type="checkbox"]:checked').size(), $('#vehicle_show_table_all input[type="checkbox"]:checked'));
if (['adis-ownmissions', 'adis-krankentransporte', 'adis-verbandmission'].indexOf(window.name) !== -1) {
console.log("WILL KLICK SEND")
setTimeout(() => {
$('#mission_alarm_btn').click();
tellParent(`setTimeout(function(){console.log('ok:${window.name}:${self.MissionID}');MissionUpdateDone('${window.name}', '${self.MissionID}');},500);`);
}, 250);
}
})
}, 500);
}
// - -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
// -
// - Collect Involved Vehicles & Patients
// -
// - -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
CollectInvolvedVehicles() {
let self = this;
$("#mission_vehicle_driving tbody").find("tr").each(function (_, elem) {
var VehicleID = $(elem).find("a").first().attr("href").substr($(elem).find("a").first().attr("href").lastIndexOf("/") + 1);
var VehicleName = $(elem).find("a").first().text();
var VehicleType = $(elem).find("a").first().attr("vehicle_type_id");
self.Vehicles[VehicleID] = {
"id": VehicleID,
"name": VehicleName,
"type": VehicleType
}
});
$("#mission_vehicle_at_mission tbody").find("tr").each(function (_, elem) {
var VehicleID = $(elem).find("a").first().attr("href").substr($(elem).find("a").first().attr("href").lastIndexOf("/") + 1);
var VehicleName = $(elem).find("a").first().text();
var VehicleType = $(elem).find("a").first().attr("vehicle_type_id");
self.Vehicles[VehicleID] = {
"id": VehicleID,
"name": VehicleName,
"type": VehicleType
}
});
return self.Vehicles;
}
CollectPatients() {
const self = this;
let PatientCounter = 0;
$(".mission_patient").each(function (_, elem) {
var PatientName = $(elem).text();
var PatientNeedRTW = false;
var PatientNeedNEF = false;
var PatientNeedRTH = false;
var PatientNeedLNA = false;
var PatientNeedOrgL = false;
var PatientNeedSEGKTWB = false;
var PatientNeedTragehilfe = false;
// Wir benötigen einen RTW oder KTW Typ B.
if ($(elem).find(".alert-danger").length > 0 && $(elem).find(".alert-danger").text().indexOf("Wir benötigen einen RTW oder KTW Typ B") != -1) {
PatientNeedSEGKTWB = true;
}
// Wir benötigen einen RTW.
if ($(elem).find(".alert-danger").length > 0 && $(elem).find(".alert-danger").text().indexOf("Wir benötigen ein RTW") != -1) {
PatientNeedRTW = true;
}
// Wir benötigen einen NEF.
if ($(elem).find(".alert-danger").length > 0 && $(elem).find(".alert-danger").text().indexOf("Wir benötigen ein NEF") != -1) {
PatientNeedNEF = true;
}
// Wir benötigen einen RTH.
if ($(elem).find(".alert-danger").length > 0 && $(elem).find(".alert-danger").text().indexOf("Wir benötigen ein RTH") != -1) {
PatientNeedRTH = true;
}
// Wir benötigen einen LNA.
if ($(elem).find(".alert-danger").length > 0 && $(elem).find(".alert-danger").text().indexOf("Wir benötigen einen LNA") != -1) {
PatientNeedLNA = true;
}
// Wir benötigen einen OrgL.
if ($(elem).find(".alert-danger").length > 0 && $(elem).find(".alert-danger").text().indexOf("Wir benötigen einen OrgL") != -1) {
PatientNeedOrgL = true;
}
// Wir benötigen eine Tragehilfe (z.B. durch ein LF).
if ($(elem).find(".alert-danger").length > 0 && $(elem).find(".alert-danger").text().indexOf("Wir benötigen eine Tragehilfe") != -1) {
PatientNeedTragehilfe = true;
}
self.Patients[PatientCounter] = {
"name": PatientName,
"need_RTW": PatientNeedRTW,
"need_NEF": PatientNeedNEF,
"need_RTH": PatientNeedRTH,
"need_LNA": PatientNeedLNA,
"need_OrgL": PatientNeedOrgL,
"need_SEG_KTWB": PatientNeedSEGKTWB,
"need_Tragehilfe": PatientNeedTragehilfe
}
PatientCounter++;
});
return self.Patients;
}
// - -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
// -
// - Process Emergency_Medical_Service
// -
// - -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
ProcessEmergencyMedicalService() {
const self = this;
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
// -
// - Emergency Medical Service: Vehicles
// -
// - 38: KTW
// - 28: RTW
// - 29: NEF
// - 74: NAW
// - 73: GRTW
// - 31: RTH
// - 55: LNA
// - 56: OrgL
// -
// - 58: (SEG) KTW Typ B
// - 59: (SEG) ELW 1
// - 60: (SEG) GW-San
// -
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
if (typeof self.MissionConfig.emergency_medical_service == "object") // Wenn der EMS-Block in der Config definiert ist
{
if (Object.keys(self.Patients).length >= 5) { // need LNA
self._ADisVehiclesNeed["55"] = 1;
}
if (Object.keys(self.Patients).length >= 10) { // need OrgL
self._ADisVehiclesNeed["56"] = 1;
}
//$.each(Patients, function (Key, Patient) {
for (var Key in self.Patients) {
var Patient = self.Patients[Key];
if (self.MissionConfig.emergency_medical_service.use_KTW == true) {
if (!Patient.need_RTW && !Patient.need_NEF && !Patient.need_RTH)
self._ADisVehiclesNeed["38"]++;
}
if (Patient.need_LNA && self._ADisVehiclesNeed["55"] < 1)
self._ADisVehiclesNeed["55"] = 1;
if (Patient.need_OrgL && self._ADisVehiclesNeed["56"] < 1)
self._ADisVehiclesNeed["56"] = 1;
if (Patient.need_NEF == true)
self._ADisVehiclesNeed["29"]++;
if (Patient.need_RTW == true)
self._ADisVehiclesNeed["28"]++;
if (Patient.need_RTH == true)
self._ADisVehiclesNeed["31"]++;
if (Patient.need_Tragehilfe == true)
self._ADisVehiclesNeed["0"]++;
};
if (self.MissionConfig.emergency_medical_service.use_RTW == true)
self._ADisVehiclesNeed["28"]++;
if (self.MissionConfig.emergency_medical_service.use_NEF == true)
self._ADisVehiclesNeed["29"]++;
if (self.MissionConfig.emergency_medical_service.use_RTH == true)
self._ADisVehiclesNeed["31"]++;
// TODO: need to be refactored to make sure first KTW Typ B before RTW.
if (self.MissionConfig.emergency_medical_service.use_SEG_ELW1_Only == "true") {
self._ADisVehiclesNeed["59"]++;
} else if (self.MissionConfig.emergency_medical_service.use_SEG_FULL == "true" || Object.keys(self.Patients).length >= 3) {
self._ADisVehiclesNeed["58"]++;
self._ADisVehiclesNeed["58"]++; // 3x KTW Type B
self._ADisVehiclesNeed["58"]++;
self._ADisVehiclesNeed["59"]++;
self._ADisVehiclesNeed["60"]++;
}
var VehicleTable;
if ($("#vehicle_show_table_body_all").length > 0) {
VehicleTable = $("#vehicle_show_table_body_all");
} else {
VehicleTable = $("#vehicle_show_table_body_rett");
}
VehicleTable.find(".vehicle_select_table_tr").each(function (_, elem) {
var VehicleID = $(elem).attr("id").replace("vehicle_element_content_", "");
// var VehicleDistanceTime = $("#vehicle_sort_" + VehicleID).attr("sortvalue");
var VehicleType = $(elem).attr("vehicle_type");
if ($("#vehicle_checkbox_" + VehicleID + ":enabled").length === 0) {
return;
}
if (VehicleType == "KTW" && self._ADisVehiclesNeed["38"] > 0) {
// console.log(" Automatic Dispose: Fahrzeug " + VehicleID + " " + VehicleType + " markiert");
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["38"]--;
} else if ((VehicleType == "LF 20" || VehicleType == "LF 10" ||
VehicleType == "LF 8/6" || VehicleType == "LF 20/16" ||
VehicleType == "LF 10/6" || VehicleType == "LF 16-TS" ||
VehicleType == "HLF 20" || VehicleType == "TSF-W" ||
VehicleType == "TLF 2000" || VehicleType == "TLF 3000" ||
VehicleType == "TLF 8/8" || VehicleType == "TLF 8/18" ||
VehicleType == "TLF 16/24-Tr" || VehicleType == "TLF 16/25" ||
VehicleType == "TLF 16/45" || VehicleType == "TLF 20/40" ||
VehicleType == "TLF 20/40-SL" || VehicleType == "TLF 16") &&
self._ADisVehiclesNeed["0"] + self._ADisVehiclesNeed["1"] + self._ADisVehiclesNeed["6"] + self._ADisVehiclesNeed["7"] +
self._ADisVehiclesNeed["8"] + self._ADisVehiclesNeed["9"] + self._ADisVehiclesNeed["30"] + self._ADisVehiclesNeed["37"] +
self._ADisVehiclesNeed["17"] + self._ADisVehiclesNeed["18"] + self._ADisVehiclesNeed["19"] + self._ADisVehiclesNeed["20"] +
self._ADisVehiclesNeed["21"] + self._ADisVehiclesNeed["22"] + self._ADisVehiclesNeed["23"] + self._ADisVehiclesNeed["24"] +
self._ADisVehiclesNeed["25"] + self._ADisVehiclesNeed["26"] > 0) { // LF acts as 'Tragehilfe'
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["0"]--;
} else if (VehicleType == "NAW" && self._ADisVehiclesNeed["28"] > 0 && self._ADisVehiclesNeed["29"] > 0) {
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["74"]--;
self._ADisVehiclesNeed["28"]--;
self._ADisVehiclesNeed["29"]--;
} else if (VehicleType == "GRTW" && self._ADisVehiclesNeed["73"] > 0) {
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["73"]--;
} else if (VehicleType == "RTW" && self._ADisVehiclesNeed["28"] > 0) {
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["28"]--;
} else if (VehicleType == "NEF" && self._ADisVehiclesNeed["29"] > 0) {
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["29"]--;
} else if (VehicleType == "RTH" && self._ADisVehiclesNeed["31"] > 0) {
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["31"]--;
} else if (VehicleType == "KdoW-LNA" && self._ADisVehiclesNeed["55"] > 0) {
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["55"]--;
} else if (VehicleType == "KdoW-OrgL" && self._ADisVehiclesNeed["56"] > 0) {
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["56"]--;
} else if (VehicleType == "KTW Typ B" && self._ADisVehiclesNeed["58"] > 0) {
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["58"]--;
self._ADisVehiclesNeed["28"]--; // no need for RTW if KTW Type B is called
} else if (VehicleType == "ELW 1 (SEG)" && self._ADisVehiclesNeed["59"] > 0) {
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["59"]--;
} else if (VehicleType == "GW-San" && self._ADisVehiclesNeed["60"] > 0) {
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["60"]--;
self._ADisVehiclesNeed["29"]--; // no need for NEF if GW-SAN is called
}
});
return true;
}
return false;
}
// - -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
// -
// - Process Fire_Department
// -
// - -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
ProcessFireDepartment() {
const self = this;
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
// -
// - Fire Department: Vehicles
// -
// - 0: LF 20
// - 1: LF 10
// - 6: LF 8/6
// - 7: LF 20/16
// - 8: LF 10/6
// - 9: LF 16-TS
// - 30: HLF 20
// - 37: TSF-W
// -
// - 17: TLF 2000
// - 18: TLF 3000
// - 19: TLF 8/8
// - 20: TLF 8/18
// - 21: TLF 16/24-Tr
// - 22: TLF 16/25
// - 23: TLF 16/45
// - 24: TLF 20/40
// - 25: TLF 20/40-SL
// - 26: TLF 16
// -
// - 2: DLK 23
// - 3: ELW 1
// - 34: ELW 2
// - 36: MTW
// - 57: FwK
// -
// - 4: RW
// - 5: GW-A
// - 10: GW-Öl
// - 12: GW-Mess
// - 53: GW-Dekon-P
// - 27: GW-Gefahrgut
// - 33: GW-Höhenrettung
// -
// - 11: GW-L2-Wasser
// - 13: SW 1000
// - 14: SW 2000
// - 15: SW 2000-Tr
// - 16: SW KatS
// -
// - 71: AB-MZB (see WaterRescue)
// -
// - 46: WLF
// - 47: AB-Rüst
// - 48: AB-Atemschutz
// - 49: AB-Öl
// - 54: AB-Dekon-P
// - 62: AB-Schlauch
// -
// - 75: FLF
// - 76: Rettungstreppe
// - 77: AB-Gefahrgut
// - 78: AB-Einsatzleitung
// -
// - 83: GW-Werkfeuerwehr
// - 84: ULF mit Löscharm
// - 85: TM 50
// - 86: Turbolöscher
// -
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
if (typeof self.MissionConfig.fire_department == "object") // Wenn der FD-Block in der Config definiert ist
{
self._ADisVehiclesNeed["0"] += parseInt(self.MissionConfig.fire_department.num_LF);
self._ADisVehiclesNeed["3"] += parseInt(self.MissionConfig.fire_department.num_ELW_1);
self._ADisVehiclesNeed["34"] += parseInt(self.MissionConfig.fire_department.num_ELW_2);
self._ADisVehiclesNeed["2"] += parseInt(self.MissionConfig.fire_department.num_DLK);
self._ADisVehiclesNeed["4"] += parseInt(self.MissionConfig.fire_department.num_RW);
self._ADisVehiclesNeed["57"] += parseInt(self.MissionConfig.fire_department.num_FwK);
self._ADisVehiclesNeed["5"] += parseInt(self.MissionConfig.fire_department.num_GW_A);
self._ADisVehiclesNeed["27"] += parseInt(self.MissionConfig.fire_department.num_GW_G);
self._ADisVehiclesNeed["10"] += parseInt(self.MissionConfig.fire_department.num_GW_Oel);
self._ADisVehiclesNeed["12"] += parseInt(self.MissionConfig.fire_department.num_GW_Mess);
self._ADisVehiclesNeed["11"] += parseInt(self.MissionConfig.fire_department.num_SW);
self._ADisVehiclesNeed["33"] += parseInt(self.MissionConfig.fire_department.num_GW_Hoeh);
self._ADisVehiclesNeed["53"] += parseInt(self.MissionConfig.fire_department.num_Dekon_P);
self._ADisVehiclesNeed["75"] += parseInt(self.MissionConfig.fire_department.num_FLF);
self._ADisVehiclesNeed["76"] += parseInt(self.MissionConfig.fire_department.num_Rettungstreppe);
self._ADisVehiclesNeed["83"] += parseInt(self.MissionConfig.fire_department.num_GW_Werkfeuerwehr);
self._ADisVehiclesNeed["84"] += parseInt(self.MissionConfig.fire_department.num_ULF_mit_Loescharm);
self._ADisVehiclesNeed["86"] += parseInt(self.MissionConfig.fire_department.num_Turboloescher);
var dangerText = $('#iframe-inside-container > div.alert.alert-danger').text();
if (includesString(dangerText, "Wir benötigen min.") && includesString(dangerText, "Feuerwehrleute.")) {
const weNeed = self._ADisVehiclesNeed["0"];
const regex = /(\d+) Feuerwehrleute/gm;
const newNeed = Math.ceil(Number(parseInt(dangerText.match(regex))) / 6) - weNeed;
self._ADisVehiclesNeed["0"] = newNeed;
}
$("#vehicle_show_table_body_all").find(".vehicle_select_table_tr").each(function (_, elem) {
var VehicleID = $(elem).attr("id").replace("vehicle_element_content_", "");
// var VehicleDistanceTime = $("#vehicle_sort_" + VehicleID).attr("sortvalue");
var VehicleType = $(elem).attr("vehicle_type");
if ($("#vehicle_checkbox_" + VehicleID + ":enabled").length === 0) {
return;
}
if ((VehicleType == "LF 20" || VehicleType == "LF 10" ||
VehicleType == "LF 8/6" || VehicleType == "LF 20/16" ||
VehicleType == "LF 10/6" || VehicleType == "LF 16-TS" ||
VehicleType == "HLF 20" || VehicleType == "TSF-W" ||
VehicleType == "TLF 2000" || VehicleType == "TLF 3000" ||
VehicleType == "TLF 8/8" || VehicleType == "TLF 8/18" ||
VehicleType == "TLF 16/24-Tr" || VehicleType == "TLF 16/25" ||
VehicleType == "TLF 16/45" || VehicleType == "TLF 20/40" ||
VehicleType == "TLF 20/40-SL" || VehicleType == "TLF 16") &&
self._ADisVehiclesNeed["0"] + self._ADisVehiclesNeed["1"] + self._ADisVehiclesNeed["6"] + self._ADisVehiclesNeed["7"] +
self._ADisVehiclesNeed["8"] + self._ADisVehiclesNeed["9"] + self._ADisVehiclesNeed["30"] + self._ADisVehiclesNeed["37"] +
self._ADisVehiclesNeed["17"] + self._ADisVehiclesNeed["18"] + self._ADisVehiclesNeed["19"] + self._ADisVehiclesNeed["20"] +
self._ADisVehiclesNeed["21"] + self._ADisVehiclesNeed["22"] + self._ADisVehiclesNeed["23"] + self._ADisVehiclesNeed["24"] +
self._ADisVehiclesNeed["25"] + self._ADisVehiclesNeed["26"] > 0) {
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["0"]--;
} else if (VehicleType == "HLF 20" && self._ADisVehiclesNeed["4"] > 0) // HLF 20 acts as RW
{
self._ADisVehiclesNeed["0"]--;
self._ADisVehiclesNeed["4"]--;
$("#vehicle_checkbox_" + VehicleID).click();
} else if ((VehicleType == "DLK 23" || VehicleType == "TM 50") && self._ADisVehiclesNeed["2"] > 0) // DLK 23
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["2"]--;
} else if (VehicleType == "AB-Einsatzleitung" &&
self._ADisVehiclesNeed["3"] + self._ADisVehiclesNeed["34"] + self._ADisVehiclesNeed["78"] > 0) // ELW 1 + ELW 2
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["3"]--;
self._ADisVehiclesNeed["34"]--;
} else if (VehicleType == "ELW 2" && self._ADisVehiclesNeed["3"] + self._ADisVehiclesNeed["34"] > 0) // ELW 2
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["3"]--;
self._ADisVehiclesNeed["34"]--;
} else if (VehicleType == "ELW 1" && self._ADisVehiclesNeed["3"] > 0) // ELW 1
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["3"]--;
} else if (VehicleType == "MTW" && self._ADisVehiclesNeed["36"] > 0) // MTW
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["36"]--;
} else if (VehicleType == "FwK" && self._ADisVehiclesNeed["57"] > 0) // FwK
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["57"]--;
} else if (VehicleType == "GWK" &&
self._ADisVehiclesNeed["4"] > 0) // GWK acts as RW
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["4"]--;
self._ADisVehiclesNeed["39"]--;
} else if ((VehicleType == "RW" ||
VehicleType == "HLF 20" ||
VehicleType == "AB-Rüst") &&
self._ADisVehiclesNeed["4"] > 0) // RW
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["4"]--;
} else if ((VehicleType == "GW-A" ||
VehicleType == "AB-Atemschutz") &&
self._ADisVehiclesNeed["5"] > 0) // GW-A
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["5"]--;
} else if ((VehicleType == "GW-Öl" ||
VehicleType == "AB-Öl") &&
self._ADisVehiclesNeed["10"] > 0) // GW-Öl
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["10"]--;
} else if (VehicleType == "GW-Messtechnik" && self._ADisVehiclesNeed["12"] > 0) // FwK
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["12"]--;
} else if ((VehicleType == "GW-L2-Wasser" ||
VehicleType == "SW 1000" ||
VehicleType == "SW 2000" ||
VehicleType == "SW 2000-Tr" ||
VehicleType == "SW Kats" ||
VehicleType == "AB-Schlauch") &&
self._ADisVehiclesNeed["11"] > 0) // SW
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["11"]--;
} else if ((VehicleType == "GW-Gefahrgut" ||
VehicleType == "AB-Gefahrgut") && self._ADisVehiclesNeed["27"] > 0) // GW-Gefahrgut
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["27"]--;
} else if (VehicleType == "GW-Höhenrettung" && self._ADisVehiclesNeed["33"] > 0) // GW-Höhenrettung
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["33"]--;
} else if ((VehicleType == "Dekon-P" ||
VehicleType == "AB-Dekon-P") &&
self._ADisVehiclesNeed["53"] > 0) // Dekon-P
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["53"]--;
} else if (VehicleType == "GW-Werkfeuerwehr" &&
self._ADisVehiclesNeed["83"] > 0) // GW-Werkfeuerwehr
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["83"]--;
} else if (VehicleType == "ULF mit Löscharm" &&
self._ADisVehiclesNeed["84"] > 0) // ULF mit Löscharm
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["84"]--;
}
/*
else if (VehicleType == "TM 50" &&
self._ADisVehiclesNeed["85"] > 0) // TM 50
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["85"]--;
}
*/
else if (VehicleType == "Turbolöscher" &&
self._ADisVehiclesNeed["86"] > 0) // Turbolöscher
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["86"]--;
} else if (VehicleType == "FLF" &&
self._ADisVehiclesNeed["75"] > 0) // FLF
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["75"]--;
} else if (VehicleType == "Rettungstreppe" &&
self._ADisVehiclesNeed["76"] > 0) // Rettungstreppe
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["76"]--;
}
});
return true;
}
return false;
}
// - -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
// -
// - Process Police_Department
// -
// - -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
ProcessPoliceDepartment() {
const self = this;
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
// -
// - Fire Department: Vehicles
// -
// - 32: FuStW
// - 35: leBefKw
// - 50: GruKw
// - 51: FüKw
// - 52: GefKw
// - 72: WaWe
// - 61: Polizeihubschrauber
// - 79: SEK - ZF
// - 80: SEK - MTF
// - 81: MEK - ZF
// - 82: MEK - MTF
// -
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
if (typeof self.MissionConfig.police_department == "object") // Wenn der FD-Block in der Config definiert ist
{
self._ADisVehiclesNeed["32"] += parseInt(self.MissionConfig.police_department.num_FuStW);
self._ADisVehiclesNeed["35"] += parseInt(self.MissionConfig.police_department.num_leBefKw);
self._ADisVehiclesNeed["50"] += parseInt(self.MissionConfig.police_department.num_GruKw);
self._ADisVehiclesNeed["51"] += parseInt(self.MissionConfig.police_department.num_FueKw);
self._ADisVehiclesNeed["52"] += parseInt(self.MissionConfig.police_department.num_GefKw);
self._ADisVehiclesNeed["72"] += parseInt(self.MissionConfig.police_department.num_WaWe);
self._ADisVehiclesNeed["61"] += parseInt(self.MissionConfig.police_department.num_PHu);
self._ADisVehiclesNeed["79"] += parseInt(self.MissionConfig.police_department.num_SEK_ZF);
self._ADisVehiclesNeed["80"] += parseInt(self.MissionConfig.police_department.num_SEK_MTF);
self._ADisVehiclesNeed["81"] += parseInt(self.MissionConfig.police_department.num_MEK_ZF);
self._ADisVehiclesNeed["82"] += parseInt(self.MissionConfig.police_department.num_MEK_MTF);
$("#vehicle_show_table_body_all").find(".vehicle_select_table_tr").each(function (_, elem) {
var VehicleID = $(elem).attr("id").replace("vehicle_element_content_", "");
// var VehicleDistanceTime = $("#vehicle_sort_" + VehicleID).attr("sortvalue");
var VehicleType = $(elem).attr("vehicle_type");
if ($("#vehicle_checkbox_" + VehicleID + ":enabled").length === 0) {
return;
}
if (VehicleType == "FuStW" && self._ADisVehiclesNeed["32"] > 0) // FuStW
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["32"]--;
} else if (VehicleType == "leBefKw" && self._ADisVehiclesNeed["35"] > 0) // leBefKw
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["35"]--;
} else if (VehicleType == "GruKw" && self._ADisVehiclesNeed["50"] > 0) // GruKw
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["50"]--;
} else if (VehicleType == "FüKw" && self._ADisVehiclesNeed["51"] > 0) // FüKw
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["51"]--;
} else if (VehicleType == "GefKw" && self._ADisVehiclesNeed["52"] > 0) // GefKw
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["52"]--;
} else if (VehicleType == "WaWe 10" && self._ADisVehiclesNeed["72"] > 0) // WaWe 10
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["72"]--;
} else if (VehicleType == "Polizeihubschrauber" && self._ADisVehiclesNeed["61"] > 0) // PHu
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["61"]--;
} else if (VehicleType == "SEK - ZF" && self._ADisVehiclesNeed["79"] > 0) // SEK-ZF
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["79"]--;
} else if (VehicleType == "SEK - MTF" && self._ADisVehiclesNeed["80"] > 0) // SEK-MTF
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["80"]--;
} else if (VehicleType == "MEK - ZF" && self._ADisVehiclesNeed["81"] > 0) // MEK-ZF
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["81"]--;
} else if (VehicleType == "MEK - MTF" && self._ADisVehiclesNeed["82"] > 0) // MEK-MTF
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["82"]--;
}
});
return true;
}
return false;
}
// - -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
// -
// - Process Water_Rescue
// -
// - -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
ProcessWaterRescue() {
const self = this;
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
// -
// - Water Rescue: Vehicles
// -
// - 63: GW-Taucher
// - 64: GW-Wasserrettung
// - 69: Tauchkraftwagen (handel it here;TechnicalEmergencyService)
// -
// - Boote:
// -
// - 66: Anh MzB (handel it here;TechnicalEmergencyService)
// - 67: Anh SchlB (handel it here;TechnicalEmergencyService)
// - 68: Anh MzAB (handel it here;TechnicalEmergencyService)
// - 70: MZB
// - 71: AB-MZB (handel it here;FireDepartment)
// -
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
if (typeof self.MissionConfig.water_rescue == "object") {
self._ADisVehiclesNeed["63"] += parseInt(self.MissionConfig.water_rescue.num_GW_T);
self._ADisVehiclesNeed["64"] += parseInt(self.MissionConfig.water_rescue.num_GW_W);
self._ADisVehiclesNeed["70"] += parseInt(self.MissionConfig.water_rescue.num_MzB);
$("#vehicle_show_table_body_all").find(".vehicle_select_table_tr").each(function (_, elem) {
var VehicleID = $(elem).attr("id").replace("vehicle_element_content_", "");
// var VehicleDistanceTime = $("#vehicle_sort_" + VehicleID).attr("sortvalue");
var VehicleType = $(elem).attr("vehicle_type");
if ($("#vehicle_checkbox_" + VehicleID + ":enabled").length === 0) {
return;
}
if ((VehicleType == "GW-Taucher" ||
VehicleType == "Tauchkraftwagen") && self._ADisVehiclesNeed["63"] > 0) // GW-Taucher
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["63"]--;
} else if (VehicleType == "GW-Wasserrettung" && self._ADisVehiclesNeed["64"] > 0) // GW-Wasserrettung
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["64"]--;
} else if ((VehicleType == "MZB" || VehicleType == "Anh MzB" ||
VehicleType == "Anh MzAB" || VehicleType == "Anh SchlB" ||
VehicleType == "AB-MZB") && self._ADisVehiclesNeed["66"] + self._ADisVehiclesNeed["67"] + self._ADisVehiclesNeed["68"] +
self._ADisVehiclesNeed["70"] + self._ADisVehiclesNeed["71"] > 0) // Boote
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["70"]--;
}
});
return true;
}
return false;
}
// - -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
// -
// - Process Technical Emergency Service
// -
// - -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
ProcessTechnicalEmergencyService() {
const self = this;
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
// -
// - THW: Vehicles
// -
// - 39: GKW (see also FireDepartment)
// - 40: MTW-TZ
// - 41: MzKW
// - 42: LKW K 9
// - 43: BRmG R
// -
// - 44: Anh DLE
// - 45: MLW 5
// - 65: LKW 7 Lkr 19 tm
// - 69: Tauchkraftwagen (see WaterRescue)
// -
// - 66: Anh MzB (see WaterRescue)
// - 67: Anh SchlB (see WaterRescue)
// - 68: Anh MzAB (see WaterRescue)
// -
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
if (typeof self.MissionConfig.technical_emergency_service == "object") {
self._ADisVehiclesNeed["39"] += parseInt(self.MissionConfig.technical_emergency_service.num_GKW);
self._ADisVehiclesNeed["40"] += parseInt(self.MissionConfig.technical_emergency_service.num_MTW_TZ);
self._ADisVehiclesNeed["41"] += parseInt(self.MissionConfig.technical_emergency_service.num_MzKW);
self._ADisVehiclesNeed["42"] += parseInt(self.MissionConfig.technical_emergency_service.num_LKW_K9);
self._ADisVehiclesNeed["43"] += parseInt(self.MissionConfig.technical_emergency_service.num_BRmG_R);
self._ADisVehiclesNeed["44"] += parseInt(self.MissionConfig.technical_emergency_service.num_Anh_DLE);
self._ADisVehiclesNeed["45"] += parseInt(self.MissionConfig.technical_emergency_service.num_MLW_5);
self._ADisVehiclesNeed["65"] += parseInt(self.MissionConfig.technical_emergency_service.num_LKW_7Lkr);
$("#vehicle_show_table_body_all").find(".vehicle_select_table_tr").each(function (_, elem) {
var VehicleID = $(elem).attr("id").replace("vehicle_element_content_", "");
// var VehicleDistanceTime = $("#vehicle_sort_" + VehicleID).attr("sortvalue");
var VehicleType = $(elem).attr("vehicle_type");
if ($("#vehicle_checkbox_" + VehicleID + ":enabled").length === 0) {
return;
}
if (VehicleType == "GKW" && self._ADisVehiclesNeed["39"] > 0) // GKW
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["39"]--;
} else if (VehicleType == "MTW-TZ" && self._ADisVehiclesNeed["40"] > 0) // MTW-TZ
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["40"]--;
} else if (VehicleType == "MzKW" && self._ADisVehiclesNeed["41"] > 0) // MzKW
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["41"]--;
} else if (VehicleType == "LKW K 9" && self._ADisVehiclesNeed["42"] > 0) // LKW K 9
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["42"]--;
} else if (VehicleType == "BRmG R" && self._ADisVehiclesNeed["43"] > 0) // BRmG R
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["43"]--;
} else if (VehicleType == "Anh DLE" && self._ADisVehiclesNeed["44"] > 0) // Anh DLE
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["44"]--;
} else if (VehicleType == "MLW 5" && self._ADisVehiclesNeed["45"] > 0) // MLW 5
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["45"]--;
} else if (VehicleType == "LKW 7 Lkr 19 tm" && self._ADisVehiclesNeed["65"] > 0) // LKW 7 Lkr 19 tm
{
$("#vehicle_checkbox_" + VehicleID).click();
self._ADisVehiclesNeed["65"]--;
}
});
return true;
}
return false;
}
_ADisVehiclesNeed = {}
PrepareVehicleNeedList() {
const self = this;
for (VehicleTypeID = 0; VehicleTypeID <= MaxVehicleID; VehicleTypeID++) {
self._ADisVehiclesNeed[VehicleTypeID] = 0;
}
for (VehicleTypeID = 0; VehicleTypeID <= MaxVehicleID; VehicleTypeID++) {
self.CountInvolvedVehiclesOfType(VehicleTypeID);
}
return true;
}
CountInvolvedVehiclesOfType(VehicleTypeID) {
const self = this;
for (var Key in self.Vehicles) {
var Vehicle = self.Vehicles[Key];
if (Vehicle.type == VehicleTypeID) {
self.SelectCountVehicles(VehicleTypeID);
}
};
$("#mission_vehicle_driving tbody, #mission_vehicle_at_mission tbody").find("tr").each(function (_, elem) {
if ($(elem).find("a").first().attr("vehicle_type_id") == VehicleTypeID) {
self.SelectCountVehicles(VehicleTypeID);
}
});
return;
}
SelectCountVehicles(VehicleTypeID) {
const self = this;
var VehicleTypeID = Number(VehicleTypeID);
if ([38].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed[VehicleTypeID]--;
} else if ([0, 1, 6, 7, 8, 9, 30, 37, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26].indexOf(VehicleTypeID) != -1) { // LF acts as 'Tragehilfe'
// 30 acts as Rüstwagen
if ([30].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["4"]--;
}
// 0 acts as all LF
self._ADisVehiclesNeed["0"]--;
} else if ([74].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["74"]--;
self._ADisVehiclesNeed["28"]--;
self._ADisVehiclesNeed["29"]--;
} else if ([73].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["73"]--;
} else if ([28].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["28"]--;
} else if ([29].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["29"]--;
} else if ([31].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["31"]--;
} else if ([55].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["55"]--;
} else if ([56].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["56"]--;
} else if ([58].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["58"]--;
} else if ([59].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["59"]--;
} else if ([60].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["60"]--;
} else if ([2].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["2"]--;
} else if ([34, 78].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["3"]--;
self._ADisVehiclesNeed["34"]--;
} else if ([3].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["3"]--;
} else if ([36].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["36"]--;
} else if ([57].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["57"]--;
} else if ([4, 39].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["4"]--;
self._ADisVehiclesNeed["39"]--;
} else if ([4, 47].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["4"]--;
} else if ([5, 48].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["5"]--;
} else if ([10, 49].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["10"]--;
} else if ([12].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["12"]--;
} else if ([11, 13, 14, 15, 16].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["11"]--;
} else if ([27, 77].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["27"]--;
} else if ([33].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["33"]--;
} else if ([53, 54].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["53"]--;
} else if ([83].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["83"]--;
} else if ([84].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["84"]--;
} else if ([85].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["85"]--;
self._ADisVehiclesNeed["2"]--;
} else if ([86].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["86"]--;
} else if ([75].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["75"]--;
} else if ([76].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["76"]--;
} else if ([32].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["32"]--;
} else if ([35].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["35"]--;
} else if ([50].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["50"]--;
} else if ([51].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["51"]--;
} else if ([52].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["52"]--;
} else if ([72].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["72"]--;
} else if ([61].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["61"]--;
} else if ([79].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["79"]--;
} else if ([80].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["80"]--;
} else if ([81].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["81"]--;
} else if ([82].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["82"]--;
} else if ([63, 69].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["63"]--;
} else if ([64].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["64"]--;
} else if ([66, 67, 68, 70, 71].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["70"]--;
} else if ([40].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["40"]--;
} else if ([41].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["41"]--;
} else if ([42].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["42"]--;
} else if ([43].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["43"]--;
} else if ([44].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["44"]--;
} else if ([45].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["45"]--;
} else if ([65].indexOf(VehicleTypeID) != -1) {
self._ADisVehiclesNeed["65"]--;
}
}
CheckNeedMoreVehicles() {
const self = this;
var NeedMoreVehicles = false;
for (var Key in self._ADisVehiclesNeed) {
var VehicleCount = self._ADisVehiclesNeed[Key];
if (VehicleCount > 0) {
NeedMoreVehicles = true;
}
};
return NeedMoreVehicles;
}
}