Sha256: 81a8a7498f84114da06deae71b5875d808da0d588123cf891ff9bd18e4fb135b
Contents?: true
Size: 1.57 KB
Versions: 3
Compression:
Stored size: 1.57 KB
Contents
module Chouette class VehicleJourneyAtStop < ActiveRecord include ForBoardingEnumerations include ForAlightingEnumerations # FIXME http://jira.codehaus.org/browse/JRUBY-6358 self.primary_key = "id" belongs_to :stop_point belongs_to :vehicle_journey attr_accessor :_destroy # attr_accessible :vehicle_journey_id, :stop_point_id, :connecting_service_id, :boarding_alighting_possibility, :arrival_time, :departure_time, :waiting_time, :elapse_duration, :headway_frequency, :_destroy, :stop_point, :for_boarding, :for_alighting validate :arrival_must_be_before_departure def arrival_must_be_before_departure # security against nil values return unless arrival_time && departure_time if exceeds_gap?( arrival_time, departure_time) errors.add(:arrival_time,I18n.t("activerecord.errors.models.vehicle_journey_at_stop.arrival_must_be_before_departure")) end end after_initialize :set_virtual_attributes def set_virtual_attributes @_destroy = false end def increasing_times_validate( previous) result = true return result unless previous if exceeds_gap?( previous.departure_time, departure_time) result = false errors.add( :departure_time, 'departure time gap overflow') end if exceeds_gap?( previous.arrival_time, arrival_time) result = false errors.add( :arrival_time, 'arrival time gap overflow') end result end def exceeds_gap?( first, second) 3600 < ( ( second-first)%( 3600 * 24)) end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
ninoxe-1.2.2 | app/models/chouette/vehicle_journey_at_stop.rb |
ninoxe-1.2.1 | app/models/chouette/vehicle_journey_at_stop.rb |
ninoxe-1.2.0 | app/models/chouette/vehicle_journey_at_stop.rb |