diff options
| author | Xinhui | 2017-05-31 16:54:16 +0200 |
|---|---|---|
| committer | Xinhui | 2017-05-31 16:58:21 +0200 |
| commit | 16087f91cc15a40d6b3b8a4c7ff13268cb95d8d1 (patch) | |
| tree | 0490a621f34f7f74545d8ee9a15175537d7762d6 | |
| parent | eac86ec95094a7f31f1206f56909aaf9bc661e9a (diff) | |
| download | chouette-core-16087f91cc15a40d6b3b8a4c7ff13268cb95d8d1.tar.bz2 | |
Fix fake vjas of active stop_point should not be disabled
Refs #3625
| -rw-r--r-- | app/models/chouette/vehicle_journey.rb | 7 | ||||
| -rw-r--r-- | app/models/chouette/vehicle_journey_at_stop.rb | 3 | ||||
| -rw-r--r-- | app/views/vehicle_journeys/show.rabl | 11 |
3 files changed, 13 insertions, 8 deletions
diff --git a/app/models/chouette/vehicle_journey.rb b/app/models/chouette/vehicle_journey.rb index 72d554e96..84f621582 100644 --- a/app/models/chouette/vehicle_journey.rb +++ b/app/models/chouette/vehicle_journey.rb @@ -50,9 +50,12 @@ module Chouette def vehicle_journey_at_stops_matrix at_stops = self.vehicle_journey_at_stops.to_a.dup + active_stop_point_ids = journey_pattern.stop_points.map(&:id) + (route.stop_points.map(&:id) - at_stops.map(&:stop_point_id)).each do |id| - # Set stop_point id for fake vjas with no departure time yep. - at_stops.insert(route.stop_points.map(&:id).index(id), Chouette::VehicleJourneyAtStop.new(stop_point_id: id)) + vjas = Chouette::VehicleJourneyAtStop.new(stop_point_id: id) + vjas.dummy = active_stop_point_ids.include?(id) ? false : true + at_stops.insert(route.stop_points.map(&:id).index(id), vjas) end at_stops end diff --git a/app/models/chouette/vehicle_journey_at_stop.rb b/app/models/chouette/vehicle_journey_at_stop.rb index 553531422..5dfec8352 100644 --- a/app/models/chouette/vehicle_journey_at_stop.rb +++ b/app/models/chouette/vehicle_journey_at_stop.rb @@ -9,7 +9,7 @@ module Chouette belongs_to :stop_point belongs_to :vehicle_journey - attr_accessor :_destroy + attr_accessor :_destroy, :dummy validate :arrival_must_be_before_departure def arrival_must_be_before_departure @@ -27,6 +27,7 @@ module Chouette after_initialize :set_virtual_attributes def set_virtual_attributes @_destroy = false + @dummy = false end end diff --git a/app/views/vehicle_journeys/show.rabl b/app/views/vehicle_journeys/show.rabl index 1ef9bc6b5..fce16dfb3 100644 --- a/app/views/vehicle_journeys/show.rabl +++ b/app/views/vehicle_journeys/show.rabl @@ -31,18 +31,19 @@ end child(:vehicle_journey_at_stops_matrix, :object_root => false) do |vehicle_stops| node do |vehicle_stop| - node(:dummy) { !vehicle_stop.id? } + node(:dummy) { vehicle_stop.dummy } + node(:stop_area_object_id) do - vehicle_stop.stop_point ? vehicle_stop.stop_point.stop_area.objectid : nil + vehicle_stop.stop_point.stop_area.objectid end node(:stop_point_objectid) do - vehicle_stop.stop_point ? vehicle_stop.stop_point.objectid : nil + vehicle_stop.stop_point.objectid end node(:stop_area_name) do - vehicle_stop.stop_point ? vehicle_stop.stop_point.stop_area.name : nil + vehicle_stop.stop_point.stop_area.name end node(:stop_area_cityname) do - vehicle_stop.stop_point ? vehicle_stop.stop_point.stop_area.city_name : nil + vehicle_stop.stop_point.stop_area.city_name end [:id, :connecting_service_id, :boarding_alighting_possibility].map do |att| |
