Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
101 changes: 43 additions & 58 deletions src/BusTimes.js
Original file line number Diff line number Diff line change
@@ -1,91 +1,76 @@
import React, { useEffect, useState } from "react";
import createEnturService from "@entur/sdk";
import React, { useEffect, useState } from 'react'
import createEnturService from '@entur/sdk'

const service = createEnturService({
clientName: "busstider",
});
clientName: 'busstider',
})

// Endre dette til lengden på turen
const route_length = 10;
const route_length = 10

const BusTimes = () => {
const [busStation, setBusStations] = useState([]);
const [busStation, setBusStations] = useState([])

useEffect(() => {
const generateStops = setInterval(() => {
service
.getDeparturesBetweenStopPlaces(
/*

Finn ID til dine stoppesteder her:
https://developer.entur.org/pages-geocoder-intro

async function generateStops() {
const stops = await service.getDeparturesBetweenStopPlaces(
/*

Finn ID til dine stoppesteder her:
https://developer.entur.org/pages-geocoder-intro

*/
"NSR:StopPlace:60890",
"NSR:StopPlace:44085",
// Viser her 9 resultat; endre dette om ønskelig
{ limit: 9 }
)
.then((data) => setBusStations(data));
}, 10000);
'NSR:StopPlace:60890',
'NSR:StopPlace:44085',
// Viser her 9 resultat; endre dette om ønskelig
{ limit: 9 }
)
setBusStations(stops)
}

return () => clearInterval(generateStops);
}, []);
generateStops()
}, [])

return (
<div className="routes">
{busStation.map((route) => {
return <Route key={route.serviceJourney.id} route={route} />;
{busStation.map(route => {
return <Route key={route.serviceJourney.id} route={route} />
})}
</div>
);
};
)
}

export default BusTimes;
export default BusTimes

const Route = (props) => {
const route = props.route;
const Route = props => {
const route = props.route

let arrival_at_destination;
let arrival_at_destination

let departure_from_origin;
let departure_from_origin

if (
route.aimedArrivalTime.slice(11, 16) ===
route.expectedDepartureTime.slice(11, 16)
) {
departure_from_origin = (
<h3 className="g-bg">{route.aimedArrivalTime.slice(11, 16)}</h3>
);
if (route.aimedArrivalTime.slice(11, 16) === route.expectedDepartureTime.slice(11, 16)) {
departure_from_origin = <h3 className="g-bg">{route.aimedArrivalTime.slice(11, 16)}</h3>
} else {
departure_from_origin = (
<div className="updatedArrivalTime">
<h3 className="ignoreTime">{route.aimedArrivalTime.slice(11, 16)}</h3>
<h3 className="correctTime">
{route.expectedDepartureTime.slice(11, 16)}
</h3>
<h3 className="correctTime">{route.expectedDepartureTime.slice(11, 16)}</h3>
</div>
);
)
}

if (
route.aimedArrivalTime.slice(11, 16) ===
route.expectedDepartureTime.slice(11, 16)
) {
if (route.aimedArrivalTime.slice(11, 16) === route.expectedDepartureTime.slice(11, 16)) {
arrival_at_destination = new Date(
// Had to add milliseconds for Safari support
route.aimedArrivalTime.slice(0, 19) + ".000+01:00"
);
route.aimedArrivalTime.slice(0, 19) + '.000+01:00'
)
} else {
arrival_at_destination = new Date(
route.expectedDepartureTime.slice(0, 19) + ".000+01:00"
);
arrival_at_destination = new Date(route.expectedDepartureTime.slice(0, 19) + '.000+01:00')
}

arrival_at_destination.setMinutes(
arrival_at_destination.getMinutes() + route_length
);
arrival_at_destination = new Date(arrival_at_destination.getTime());
arrival_at_destination.setMinutes(arrival_at_destination.getMinutes() + route_length)
arrival_at_destination = new Date(arrival_at_destination.getTime())

return (
<div className="RouteWrapper">
Expand All @@ -99,5 +84,5 @@ const Route = (props) => {
</div>
<hr />
</div>
);
};
)
}