function prepareResults(Trip $trip) { $result = array("line" => $trip->getDepartureTrain()->getLine(), "departure" => $trip->getDepartureTrain()->getDepartureTime()->format("H:i"), "arrival" => $trip->getDepartureTrain()->getArrivalTime()->format("H:i"), "transfer_departure" => "", "transfer_arrival" => "", "transfer_line" => ""); $transfers = array(); if ($trip->hasTransfer()) { $i = 0; foreach ($trip->getTransferTrains() as $transfer) { /* @var Train $transfer */ if ($i == 0) { $result["transfer_departure"] = $transfer->getDepartureTime()->format("H:i"); $result["transfer_arrival"] = $transfer->getArrivalTime()->format("H:i"); $result["transfer_line"] = $transfer->getLine(); $i += 1; } else { $transfers[] = array("line" => "", "departure" => "", "arrival" => "", "transfer_departure" => $transfer->getDepartureTime()->format("H:i"), "transfer_arrival" => $transfer->getArrivalTime()->format("H:i"), "transfer_line" => $transfer->getLine()); } } } $results = array($result); if ($transfers) { $results = array_merge($results, $transfers); } return $results; }
/** * @param Trip $trip * @return int */ public function compareWith(Trip $trip) { return $this->getDepartureTrain()->compareWith($trip->getDepartureTrain()); }
public function testGetDepartureTrain() { $train = $this->createSimpleTrain(); $trip = new Trip($train); $this->assertEquals($train, $trip->getDepartureTrain()); }