diff options
Diffstat (limited to 'app/models/chouette/route.rb')
| -rw-r--r-- | app/models/chouette/route.rb | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/app/models/chouette/route.rb b/app/models/chouette/route.rb index 76905bf2b..6774e8a86 100644 --- a/app/models/chouette/route.rb +++ b/app/models/chouette/route.rb @@ -1,5 +1,6 @@ class Chouette::Route < Chouette::TridentActiveRecord include RouteRestrictions + include ChecksumSupport extend Enumerize extend ActiveModel::Naming @@ -99,6 +100,14 @@ class Chouette::Route < Chouette::TridentActiveRecord end end + def checksum_attributes + values = self.slice(*['name', 'published_name', 'wayback']).values + values.tap do |attrs| + attrs << self.stop_points.map{|sp| "#{sp.stop_area.user_objectid}#{sp.for_boarding}#{sp.for_alighting}" }.join + attrs << self.routing_constraint_zones.map(&:checksum) + end + end + def geometry points = stop_areas.map(&:to_lat_lng).compact.map do |loc| [loc.lng, loc.lat] |
