diff options
| author | cedricnjanga | 2017-11-21 15:32:22 +0100 | 
|---|---|---|
| committer | cedricnjanga | 2017-11-21 15:32:22 +0100 | 
| commit | 763010ced3202c99f705562a373861f926aad9a1 (patch) | |
| tree | a316366c92fcf9c88aa8d08ff34e0b737196d618 /app/models/chouette/stop_point.rb | |
| parent | 80bfa87237b78e426e4362a503fe4d72e130beb5 (diff) | |
| download | chouette-core-763010ced3202c99f705562a373861f926aad9a1.tar.bz2 | |
Change the way we name classes
We now always use modules for namespaces
=> same structure for models, decorators, policies...
Diffstat (limited to 'app/models/chouette/stop_point.rb')
| -rw-r--r-- | app/models/chouette/stop_point.rb | 83 | 
1 files changed, 42 insertions, 41 deletions
| diff --git a/app/models/chouette/stop_point.rb b/app/models/chouette/stop_point.rb index 4f8b215b0..86be39d70 100644 --- a/app/models/chouette/stop_point.rb +++ b/app/models/chouette/stop_point.rb @@ -1,59 +1,60 @@ -class Chouette::StopPoint < Chouette::TridentActiveRecord +module Chouette +  class StopPoint < Chouette::TridentActiveRecord -  def self.policy_class -    RoutePolicy -  end +    def self.policy_class +      Chouette::RoutePolicy +    end -  include ForBoardingEnumerations -  include ForAlightingEnumerations -  include ObjectidSupport +    include ForBoardingEnumerations +    include ForAlightingEnumerations +    include ObjectidSupport -  # FIXME http://jira.codehaus.org/browse/JRUBY-6358 -  self.primary_key = "id" +    # FIXME http://jira.codehaus.org/browse/JRUBY-6358 +    self.primary_key = "id" -  belongs_to :stop_area -  belongs_to :route, inverse_of: :stop_points -  has_many :vehicle_journey_at_stops, :dependent => :destroy -  has_many :vehicle_journeys, -> {uniq}, :through => :vehicle_journey_at_stops +    belongs_to :stop_area +    belongs_to :route, inverse_of: :stop_points +    has_many :vehicle_journey_at_stops, :dependent => :destroy +    has_many :vehicle_journeys, -> {uniq}, :through => :vehicle_journey_at_stops -  acts_as_list :scope => :route, top_of_list: 0 +    acts_as_list :scope => :route, top_of_list: 0 -  validates_presence_of :stop_area -  validate :stop_area_id_validation -  def stop_area_id_validation -    if stop_area_id.nil? -      errors.add(:stop_area_id, I18n.t("stop_areas.errors.empty")) +    validates_presence_of :stop_area +    validate :stop_area_id_validation +    def stop_area_id_validation +      if stop_area_id.nil? +        errors.add(:stop_area_id, I18n.t("stop_areas.errors.empty")) +      end      end -  end -  scope :default_order, -> { order("position") } +    scope :default_order, -> { order("position") } -  delegate :name, to: :stop_area +    delegate :name, to: :stop_area -  before_destroy :remove_dependent_journey_pattern_stop_points -  def remove_dependent_journey_pattern_stop_points -    route.journey_patterns.each do |jp| -      if jp.stop_point_ids.include?( id) -        jp.stop_point_ids = jp.stop_point_ids - [id] +    before_destroy :remove_dependent_journey_pattern_stop_points +    def remove_dependent_journey_pattern_stop_points +      route.journey_patterns.each do |jp| +        if jp.stop_point_ids.include?( id) +          jp.stop_point_ids = jp.stop_point_ids - [id] +        end        end      end -  end -  def duplicate(for_route:) -    keys_for_create = attributes.keys - %w{id objectid created_at updated_at} -    atts_for_create = attributes -      .slice(*keys_for_create) -      .merge('route_id' => for_route.id) -    self.class.create!(atts_for_create) -  end +    def duplicate(for_route:) +      keys_for_create = attributes.keys - %w{id objectid created_at updated_at} +      atts_for_create = attributes +        .slice(*keys_for_create) +        .merge('route_id' => for_route.id) +      self.class.create!(atts_for_create) +    end -  def local_id -    "IBOO-#{self.referential.id}-#{self.route.line.get_objectid.local_id}-#{self.route.id}-#{self.id}" -  end +    def local_id +      "IBOO-#{self.referential.id}-#{self.route.line.get_objectid.local_id}-#{self.route.id}-#{self.id}" +    end -  def self.area_candidates -    Chouette::StopArea.where(:area_type => ['Quay', 'BoardingPosition']) +    def self.area_candidates +      Chouette::StopArea.where(:area_type => ['Quay', 'BoardingPosition']) +    end    end -  end
\ No newline at end of file | 
