filtry aktywnych RJ

This commit is contained in:
2024-02-11 15:30:19 +01:00
parent dcff3b088f
commit 3ac8d60c5c
2 changed files with 20 additions and 6 deletions
+20 -5
View File
@@ -96,7 +96,7 @@ export const filterStations = (station: Station, filters: Filter) => {
if (filters['free'] && (!station.onlineInfo || station.onlineInfo.dispatcherId == -1))
return false;
if (station.onlineInfo && station.onlineInfo.dispatcherId != -1) {
if (station.onlineInfo) {
const { dispatcherStatus } = station.onlineInfo;
const excludeEnding =
@@ -112,12 +112,21 @@ export const filterStations = (station: Station, filters: Filter) => {
const excludeNoSpace =
dispatcherStatus == Status.ActiveDispatcher.NO_SPACE && filters['noSpaceStatus'];
const excludeOccupied = station.onlineInfo && filters['occupied'];
const excludeOccupied = filters['occupied'] && dispatcherStatus != Status.ActiveDispatcher.FREE;
// const isActiveFree =
// dispatcherStatus == Status.ActiveDispatcher.FREE && filters['withActiveTimetables'];
const excludeActiveTTs =
(dispatcherStatus == Status.ActiveDispatcher.FREE ||
station.onlineInfo.scheduledTrainCount.all != 0) &&
filters['withActiveTimetables'];
if (excludeEnding || excludeAFK || excludeNoSpace || excludeNotSigned || excludeOccupied)
if (
excludeEnding ||
excludeAFK ||
excludeNoSpace ||
excludeNotSigned ||
excludeOccupied ||
excludeActiveTTs
)
return false;
if (
@@ -127,6 +136,12 @@ export const filterStations = (station: Station, filters: Filter) => {
return false;
}
const excludeNoActiveTTs =
filters['withoutActiveTimetables'] &&
(!station.onlineInfo || station.onlineInfo.scheduledTrainCount.all == 0);
if (excludeNoActiveTTs) return false;
if (
(station.generalInfo?.availability == 'nonPublic' || !station.generalInfo) &&
filters['nonPublic']
-1
View File
@@ -1,6 +1,5 @@
import Station from '../scripts/interfaces/Station';
import Train from '../scripts/interfaces/Train';
import { API } from '../typings/api';
import { ScheduledTrain, StationTrain, StopStatus, TrainStop } from './typings';
export function getLocoURL(locoType: string): string {