Skip to content
Snippets Groups Projects
Commit 4918389d authored by Niklas Schrötler's avatar Niklas Schrötler
Browse files

Fahrplan: Implemented handling for cancelled stops

parent 4ca39ba9
No related branches found
No related tags found
No related merge requests found
...@@ -23,7 +23,8 @@ type Route = { ...@@ -23,7 +23,8 @@ type Route = {
name: string, name: string,
arrival: Date, arrival: Date,
delay?: number, delay?: number,
countdown: number countdown: number,
cancelled: boolean
}[], }[],
countdown: number countdown: number
} }
...@@ -70,7 +71,8 @@ const FahrplanPanel = (props: {definition: FahrplanPanelDefinition}) => { ...@@ -70,7 +71,8 @@ const FahrplanPanel = (props: {definition: FahrplanPanelDefinition}) => {
name: departure.internal.stop, name: departure.internal.stop,
arrival, arrival,
delay, delay,
countdown: parseInt(departure.countdown) countdown: parseInt(departure.countdown),
cancelled: departure.is_cancelled === 1
} }
], ],
countdown: parseInt(departure.countdown) countdown: parseInt(departure.countdown)
...@@ -81,7 +83,8 @@ const FahrplanPanel = (props: {definition: FahrplanPanelDefinition}) => { ...@@ -81,7 +83,8 @@ const FahrplanPanel = (props: {definition: FahrplanPanelDefinition}) => {
name: departure.internal.stop, name: departure.internal.stop,
arrival, arrival,
delay: stringToDelay(departure.delay), delay: stringToDelay(departure.delay),
countdown: parseInt(departure.countdown) countdown: parseInt(departure.countdown),
cancelled: departure.is_cancelled === 1
}) })
newRoutes[existing_ind].stops = newRoutes[existing_ind].stops newRoutes[existing_ind].stops = newRoutes[existing_ind].stops
......
...@@ -10,7 +10,8 @@ const PlanElement = (props: { ...@@ -10,7 +10,8 @@ const PlanElement = (props: {
stops: { stops: {
name: string, name: string,
arrival: Date, arrival: Date,
delay?: number delay?: number,
cancelled: boolean
}[] }[]
}) => { }) => {
const [shown, setShown] = useState<boolean>(true); const [shown, setShown] = useState<boolean>(true);
...@@ -87,6 +88,7 @@ const PlanElement = (props: { ...@@ -87,6 +88,7 @@ const PlanElement = (props: {
name={deDortmund(stop.name)} name={deDortmund(stop.name)}
arrival={stop.arrival} arrival={stop.arrival}
delay={stop.delay} delay={stop.delay}
cancelled={stop.cancelled}
/> />
)) ))
} }
......
...@@ -5,7 +5,8 @@ type ProgressIndicatorProps = { ...@@ -5,7 +5,8 @@ type ProgressIndicatorProps = {
id: string, id: string,
name: string, name: string,
arrival: Date, arrival: Date,
delay?: number delay?: number,
cancelled: boolean
} }
export default function ProgressIndicator(props: Readonly<ProgressIndicatorProps>) { export default function ProgressIndicator(props: Readonly<ProgressIndicatorProps>) {
...@@ -18,7 +19,10 @@ export default function ProgressIndicator(props: Readonly<ProgressIndicatorProps ...@@ -18,7 +19,10 @@ export default function ProgressIndicator(props: Readonly<ProgressIndicatorProps
<div className={"flex-1"}></div> <div className={"flex-1"}></div>
</div> </div>
<div className="relative flex flex-row items-center gap-4"> <div className={classNames("relative flex flex-row items-center gap-4", props.cancelled ? "text-red-400" : "")}
style={{
textDecoration: props.cancelled ? "line-through" : "inherit"
}}>
<div className={"w-20 flex flex-row justify-center"}> <div className={"w-20 flex flex-row justify-center"}>
<span className="h-[2.6rem] flex items-center" aria-hidden="true"> <span className="h-[2.6rem] flex items-center" aria-hidden="true">
<span className="relative z-10 w-[1.5rem] h-[1.5rem] flex items-center justify-center bg-zinc-400 rounded-full"> <span className="relative z-10 w-[1.5rem] h-[1.5rem] flex items-center justify-center bg-zinc-400 rounded-full">
...@@ -31,7 +35,7 @@ export default function ProgressIndicator(props: Readonly<ProgressIndicatorProps ...@@ -31,7 +35,7 @@ export default function ProgressIndicator(props: Readonly<ProgressIndicatorProps
{props.name} {props.name}
</div> </div>
<div className={classNames("tabular-nums", props.delay ? "text-red-400" : "text-zinc-300")}> <div className={classNames("tabular-nums", (props.delay || props.cancelled) ? "text-red-400" : "text-zinc-300")}>
{props.delay ? ( {props.delay ? (
<span className={"text-red-400"}> <span className={"text-red-400"}>
(+{props.delay})&nbsp;&nbsp; (+{props.delay})&nbsp;&nbsp;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment