Habe mich nach dem im Thread Remover für volle Krankenhäuser nichts mehr passier mal selber dran gesetzt und versucht ein Javascript zu schrieben, dass auch Enfernung, Abgabe und Fachabteilung filtern kann.
Achtung!!! Es funtzt noch nicht richtig !!!Achtung
Darum die Frage an die, die mehr von javascript verstehen:
Im Moment bearbeitet mir das Script entweder die eigenen oder die im Verband. Wie bekomme ich das Script dazu beide Tabellen zu kürzen?
JavaScript
// ==UserScript==
// @name KrankenhausFilter
// @namespace leitstellenspiel
// @description entfernt Krankenhäuser aus der Liste
// @include http://www.leitstellenspiel.de/vehicles/*
// @author Tatuetata112
// @version 1
// @grant none
// ==/UserScript==
function killElement(element) {
if (element) {
var papa = element.parentNode;
if (papa) papa.removeChild(element);
}
}
var j = 12; // so oft überprüfen eigene KHs
var k = 900; // so oft überprüfen VerbandKHs
var l = 30; // nicht weiter als 'l' km
var m = 10 // maximale Abgabe
for (x = 1; x <= j; x++)
{
var fachabteilungOwn = 'table.table:nth-child(6) > tbody:nth-child(2) > tr:nth-child(' + x + ') > td:nth-child(4) > span:nth-child(1) ';
var entOwn = 'table.table:nth-child(6) > tbody:nth-child(2) > tr:nth-child(' + x + ') > td:nth-child(2)';
var entfernOwn = document.querySelector(entOwn).innerHTML;
var entfernungOwn = entfernOwn.split(',');
var voOwn = 'table.table:nth-child(6) > tbody:nth-child(2) > tr:nth-child(' + x + ') > td:nth-child(5) > a:nth-child(1)';
var vollOwn = document.querySelector(voOwn);
if (document.querySelector(fachabteilungOwn).innerHTML == 'Nein')
{
var kill = 'table.table:nth-child(6) > tbody:nth-child(2) > tr:nth-child(' + x + ')';
killElement(document.querySelector(kill));
x = x - 1;
}
else if (entfernungOwn[0] > l)
{
var kill = 'table.table:nth-child(6) > tbody:nth-child(2) > tr:nth-child(' + x + ')';
killElement(document.querySelector(kill));
x = x - 1;
}
else if ( vollOwn.className == 'btn btn-danger' )
{
var kill = 'table.table:nth-child(6) > tbody:nth-child(2) > tr:nth-child(' + x + ')';
killElement(document.querySelector(kill));
x = x - 1;
}
}
for (i = 1; i <= k; i++)
{
var fachabteilung = 'table.table:nth-child(8) > tbody:nth-child(2) > tr:nth-child(' + i + ') > td:nth-child(5) > span:nth-child(1) ';
var ent = 'table.table:nth-child(8) > tbody:nth-child(2) > tr:nth-child(' + i + ') > td:nth-child(2)';
var entfern = document.querySelector(ent).innerHTML;
var entfernung = entfern.split(',');
var ab = 'table.table:nth-child(8) > tbody:nth-child(2) > tr:nth-child(' + i + ') > td:nth-child(4)';
var abga = document.querySelector(ab).innerHTML;
var abgabe = abga.split(' ');
var voAll = 'table.table:nth-child(8) > tbody:nth-child(2) > tr:nth-child(' + i + ') > td:nth-child(6) > a:nth-child(1)';
var vollAll = document.querySelector(voAll);
if (document.querySelector(fachabteilung).innerHTML == 'Nein')
{
var kill = 'table.table:nth-child(8) > tbody:nth-child(2) > tr:nth-child(' + i + ')';
killElement(document.querySelector(kill));
i = i - 1;
}
else if (entfernung[0] > l)
{
var kill = 'table.table:nth-child(8) > tbody:nth-child(2) > tr:nth-child(' + i + ')';
killElement(document.querySelector(kill));
i = i - 1;
}
else if (abgabe[2] > m)
{
var kill = 'table.table:nth-child(8) > tbody:nth-child(2) > tr:nth-child(' + i + ')';
killElement(document.querySelector(kill));
i = i - 1;
}
else if ( vollAll.className == 'btn btn-danger' )
{
var kill = 'table.table:nth-child(8) > tbody:nth-child(2) > tr:nth-child(' + i + ')';
killElement(document.querySelector(kill));
x = x - 1;
}
}
Alles anzeigen