From b7af35c24679ff46c92e96078d2e4d1930cb8b15 Mon Sep 17 00:00:00 2001 From: Birte Kristina Friesel Date: Tue, 2 Apr 2024 17:20:08 +0200 Subject: Section: add TRSF type (unspecified local transit) --- bin/hafas | 8 ++++++++ lib/Travel/Routing/DE/HAFAS/Connection/Section.pm | 17 +++++++++-------- 2 files changed, 17 insertions(+), 8 deletions(-) diff --git a/bin/hafas b/bin/hafas index 2a3aed5..14cbeba 100755 --- a/bin/hafas +++ b/bin/hafas @@ -434,6 +434,14 @@ for my $res ( $hafas->connections ) { $sec->duration->in_units('minutes') == 1 ? q{} : 's' ); } + elsif ( $sec->type eq 'TRSF' ) { + printf( +"${output_bold}Transfer %.1fkm${output_reset} with local transit (approx. %d minute%s)", + $sec->distance / 1000, + $sec->duration->in_units('minutes'), + $sec->duration->in_units('minutes') == 1 ? q{} : 's' + ); + } else { printf("\n???\n"); } diff --git a/lib/Travel/Routing/DE/HAFAS/Connection/Section.pm b/lib/Travel/Routing/DE/HAFAS/Connection/Section.pm index 09032af..3a8b958 100644 --- a/lib/Travel/Routing/DE/HAFAS/Connection/Section.pm +++ b/lib/Travel/Routing/DE/HAFAS/Connection/Section.pm @@ -126,7 +126,7 @@ sub new { hafas => $hafas, ); } - elsif ( $sec->{type} eq 'WALK' ) { + elsif ( $sec->{type} eq 'TRSF' or $sec->{type} eq 'WALK' ) { $ref->{distance} = $sec->{gis}{dist}; my $duration = $sec->{gis}{durS}; $ref->{duration} = DateTime::Duration->new( @@ -270,15 +270,15 @@ Travel::Status::DE::HAFAS::Location(3pm) object describing the departure stop. =item $section->dep_platform -=item $section->distance (WALK) +=item $section->distance (TRSF, WALK) -Walking distance in meters. Does not take vertical elevation changes into -account. +Transfer or walking distance in meters. Does not take vertical elevation +changes into account. -=item $section->duration (WALK) +=item $section->duration (TRSF, WALK) -DateTime::Duration(3pm) oobject holding the walking duration. -Typically assumes a slow pace. +DateTime::Duration(3pm) oobject holding the estimated transfer or walk +duration. Typically assumes a slow pace. =item $section->journey (JNY) @@ -328,7 +328,8 @@ Undef for the first journey in a connection. =item $section->type Type of this section as exposeed by the HAFAS backend. -Known types: B (a public transit journey) and B (walking). +Known types: B (a public transit journey), B (unspecified local +transit), and B (walking). =back -- cgit v1.2.3