summaryrefslogtreecommitdiff
path: root/lib/Travel
diff options
context:
space:
mode:
authorDaniel Friesel <derf@finalrewind.org>2021-03-13 11:39:08 +0100
committerDaniel Friesel <derf@finalrewind.org>2021-03-13 11:39:08 +0100
commitb8c760605104322b990674d90940f409c774adff (patch)
treeffaadad1bc579f8d4fb1f11cf98fa9182c554ec0 /lib/Travel
parenta095bb169c206c8b712514433ccceeac64e1d8f9 (diff)
show occupancy data if available
Diffstat (limited to 'lib/Travel')
-rw-r--r--lib/Travel/Routing/DE/EFA.pm1
-rw-r--r--lib/Travel/Routing/DE/EFA/Route/Part.pm14
2 files changed, 15 insertions, 0 deletions
diff --git a/lib/Travel/Routing/DE/EFA.pm b/lib/Travel/Routing/DE/EFA.pm
index a1e07ff..8b936ae 100644
--- a/lib/Travel/Routing/DE/EFA.pm
+++ b/lib/Travel/Routing/DE/EFA.pm
@@ -682,6 +682,7 @@ sub parse_xml_part {
departure_stime => $self->itdtime_str($e_dstime),
departure_stop => $e_dep->getAttribute('name'),
departure_platform => $e_dep->getAttribute('platformName'),
+ occupancy => $e_dep->getAttribute('occupancy'),
train_line => $e_mot->getAttribute('name'),
train_product => $e_mot->getAttribute('productName'),
train_destination => $e_mot->getAttribute('destination'),
diff --git a/lib/Travel/Routing/DE/EFA/Route/Part.pm b/lib/Travel/Routing/DE/EFA/Route/Part.pm
index 3a15fc3..da3d400 100644
--- a/lib/Travel/Routing/DE/EFA/Route/Part.pm
+++ b/lib/Travel/Routing/DE/EFA/Route/Part.pm
@@ -8,6 +8,12 @@ use parent 'Class::Accessor';
our $VERSION = '2.19';
+my %occupancy = (
+ MANY_SEATS => 1,
+ FEW_SEATS => 2,
+ STANDING_ONLY => 3
+);
+
Travel::Routing::DE::EFA::Route::Part->mk_ro_accessors(
qw(arrival_platform arrival_stop
arrival_date arrival_time arrival_sdate arrival_stime delay
@@ -15,6 +21,7 @@ Travel::Routing::DE::EFA::Route::Part->mk_ro_accessors(
departure_stop departure_date departure_time departure_sdate
departure_stime
footpath_duration footpath_type
+ occupancy
train_destination train_line train_product
)
);
@@ -24,6 +31,13 @@ sub new {
my $ref = \%conf;
+ if ( $ref->{occupancy} and exists $occupancy{ $ref->{occupancy} } ) {
+ $ref->{occupancy} = $occupancy{ $ref->{occupancy} };
+ }
+ else {
+ delete $ref->{occupancy};
+ }
+
return bless( $ref, $obj );
}