diff options
Diffstat (limited to 'app/models/chouette/route.rb')
| -rw-r--r-- | app/models/chouette/route.rb | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/app/models/chouette/route.rb b/app/models/chouette/route.rb index 928b65f13..0fac53ec0 100644 --- a/app/models/chouette/route.rb +++ b/app/models/chouette/route.rb @@ -148,11 +148,15 @@ module Chouette values = self.slice(*['name', 'published_name', 'wayback']).values values.tap do |attrs| attrs << self.stop_points.sort_by(&:position).map{|sp| [sp.stop_area.user_objectid, sp.for_boarding, sp.for_alighting]} - attrs << self.routing_constraint_zones.map(&:checksum).sort + + routing_constraint_zones = self.routing_constraint_zones + routing_constraint_zones += Chouette::RoutingConstraintZone.with_stop_points_contained_in(self.stop_points) unless self.new_record? + attrs << routing_constraint_zones.uniq.map(&:checksum).sort end end has_checksum_children StopPoint + has_checksum_children RoutingConstraintZone def geometry points = stop_areas.map(&:to_lat_lng).compact.map do |loc| |
