summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rwxr-xr-xlib/Travelynx/Model/Journeys.pm13
1 files changed, 9 insertions, 4 deletions
diff --git a/lib/Travelynx/Model/Journeys.pm b/lib/Travelynx/Model/Journeys.pm
index e0f1e83..bce475f 100755
--- a/lib/Travelynx/Model/Journeys.pm
+++ b/lib/Travelynx/Model/Journeys.pm
@@ -2150,10 +2150,15 @@ sub get_connection_targets {
order_by => { -desc => 'count' }
}
);
- my @destinations
- = $res->hashes->grep( sub { shift->{count} >= $min_count } )
- ->map( sub { shift->{dest} } )
- ->each;
+ my @all_destinations = $res->hashes->each;
+ my @destinations;
+
+ while ( not @destinations and $min_count > 0 ) {
+ @destinations = map { $_->{dest} }
+ grep { $_->{count} >= $min_count } @all_destinations;
+ $min_count--;
+ }
+
@destinations = $self->{stations}->get_by_evas(
backend_id => $opt{backend_id},
evas => [@destinations]