diff options
| author | Zog | 2018-05-17 16:18:46 +0200 | 
|---|---|---|
| committer | Zog | 2018-05-17 16:18:46 +0200 | 
| commit | a90a7cbf003ded70478eec6afdfee2581a06eaed (patch) | |
| tree | e4d6d08a5046f6d0bd3fbc98f6225d64f0d92fcc /app/models/chouette | |
| parent | 7852fb8e6d5b9c4f13615ad1cd8a1f26dcd35da7 (diff) | |
| download | chouette-core-a90a7cbf003ded70478eec6afdfee2581a06eaed.tar.bz2 | |
Refs #7031; Page loading optimizations
Diffstat (limited to 'app/models/chouette')
| -rw-r--r-- | app/models/chouette/route.rb | 3 | ||||
| -rw-r--r-- | app/models/chouette/stop_point.rb | 3 | ||||
| -rw-r--r-- | app/models/chouette/vehicle_journey.rb | 1 | ||||
| -rw-r--r-- | app/models/chouette/vehicle_journey_at_stop.rb | 4 | 
4 files changed, 8 insertions, 3 deletions
| diff --git a/app/models/chouette/route.rb b/app/models/chouette/route.rb index 949b18d6f..958bec75b 100644 --- a/app/models/chouette/route.rb +++ b/app/models/chouette/route.rb @@ -63,6 +63,9 @@ module Chouette          where(" position between ? and ? ", between_positions.first, between_positions.last)        end      end + +    has_many :vehicle_journey_at_stops, through: :vehicle_journeys +      has_many :stop_areas, -> { order('stop_points.position ASC') }, :through => :stop_points do        def between(departure, arrival)          departure, arrival = [departure, arrival].map do |endpoint| diff --git a/app/models/chouette/stop_point.rb b/app/models/chouette/stop_point.rb index edb0e81fd..82bedc6ab 100644 --- a/app/models/chouette/stop_point.rb +++ b/app/models/chouette/stop_point.rb @@ -10,6 +10,7 @@ module Chouette      include ObjectidSupport      belongs_to :stop_area +    belongs_to :stop_area_light, -> {select(:name, :city_name, :zip_code, :time_zone)}, class_name: "Chouette::StopArea", foreign_key: :stop_area_id      belongs_to :route, inverse_of: :stop_points      has_many :journey_patterns, through: :route      has_many :vehicle_journey_at_stops, :dependent => :destroy @@ -27,7 +28,7 @@ module Chouette      scope :default_order, -> { order("position") } -    delegate :name, :registration_number, :kind, :area_type, to: :stop_area +    delegate :name, :registration_number, :kind, :area_type, to: :stop_area_light      before_destroy :remove_dependent_journey_pattern_stop_points      def remove_dependent_journey_pattern_stop_points diff --git a/app/models/chouette/vehicle_journey.rb b/app/models/chouette/vehicle_journey.rb index 818287b04..3bbd89f7b 100644 --- a/app/models/chouette/vehicle_journey.rb +++ b/app/models/chouette/vehicle_journey.rb @@ -21,6 +21,7 @@ module Chouette      belongs_to :company      belongs_to :route      belongs_to :journey_pattern +    belongs_to :journey_pattern_only_objectid, -> {select("journey_patterns.objectid")}, class_name: "Chouette::JourneyPattern", foreign_key: :journey_pattern_id      has_many :stop_areas, through: :journey_pattern      has_and_belongs_to_many :footnotes, :class_name => 'Chouette::Footnote' diff --git a/app/models/chouette/vehicle_journey_at_stop.rb b/app/models/chouette/vehicle_journey_at_stop.rb index 3f5bd5abf..797571070 100644 --- a/app/models/chouette/vehicle_journey_at_stop.rb +++ b/app/models/chouette/vehicle_journey_at_stop.rb @@ -101,8 +101,8 @@ module Chouette      end      def time_zone_offset -      return 0 unless stop_point&.stop_area&.time_zone.present? -      ActiveSupport::TimeZone[stop_point.stop_area.time_zone]&.utc_offset || 0 +      return 0 unless stop_point&.stop_area_light&.time_zone.present? +      ActiveSupport::TimeZone[stop_point.stop_area_light.time_zone]&.utc_offset || 0      end      private | 
