diff options
Diffstat (limited to 'app')
48 files changed, 478 insertions, 791 deletions
diff --git a/app/decorators/company_decorator.rb b/app/decorators/company_decorator.rb index a95f90128..9416c73ae 100644 --- a/app/decorators/company_decorator.rb +++ b/app/decorators/company_decorator.rb @@ -1,52 +1,52 @@ - class CompanyDecorator < Draper::Decorator - decorates Chouette::Company +class CompanyDecorator < Draper::Decorator + decorates Chouette::Company - delegate_all + delegate_all - def self.collection_decorator_class - PaginatingDecorator - end + def self.collection_decorator_class + PaginatingDecorator + end + + def linecount + object.lines.count + end - def linecount - object.lines.count + # Requires: + # context: { + # referential: + # } + def action_links + links = [] + + if h.policy(Chouette::Company).create? + links << Link.new( + content: h.t('companies.actions.new'), + href: h.new_line_referential_company_path(context[:referential]) + ) end - # Requires: - # context: { - # referential: - # } - def action_links - links = [] - - if h.policy(Chouette::Company).create? - links << Link.new( - content: h.t('companies.actions.new'), - href: h.new_line_referential_company_path(context[:referential]) + if h.policy(object).update? + links << Link.new( + content: h.t('companies.actions.edit'), + href: h.edit_line_referential_company_path( + context[:referential], + object ) - end - - if h.policy(object).update? - links << Link.new( - content: h.t('companies.actions.edit'), - href: h.edit_line_referential_company_path( - context[:referential], - object - ) - ) - end - - if h.policy(object).destroy? - links << Link.new( - content: t('companies.actions.destroy'), - href: h.line_referential_company_path( - context[:referential], - object - ), - method: :delete, - data: { confirm: h.t('companies.actions.destroy_confirm') } - ) - end + ) + end - links + if h.policy(object).destroy? + links << Link.new( + content: t('companies.actions.destroy'), + href: h.line_referential_company_path( + context[:referential], + object + ), + method: :delete, + data: { confirm: h.t('companies.actions.destroy_confirm') } + ) end + + links end +end diff --git a/app/decorators/line_decorator.rb b/app/decorators/line_decorator.rb index d465f9321..f351103b2 100644 --- a/app/decorators/line_decorator.rb +++ b/app/decorators/line_decorator.rb @@ -1,45 +1,45 @@ - class LineDecorator < Draper::Decorator - decorates Chouette::Line +class LineDecorator < Draper::Decorator + decorates Chouette::Line - delegate_all + delegate_all - # Requires: - # context: { - # line_referential: , - # current_organisation: - # } - def action_links - links = [] + # Requires: + # context: { + # line_referential: , + # current_organisation: + # } + def action_links + links = [] + links << Link.new( + content: h.t('lines.actions.show_network'), + href: [context[:line_referential], object.network] + ) + + links << Link.new( + content: h.t('lines.actions.show_company'), + href: [context[:line_referential], object.company] + ) + + if h.policy(Chouette::Line).create? && + context[:line_referential].organisations.include?( + context[:current_organisation] + ) links << Link.new( - content: h.t('lines.actions.show_network'), - href: [context[:line_referential], object.network] + content: h.t('lines.actions.new'), + href: h.new_line_referential_line_path(context[:line_referential]) ) + end + if h.policy(object).destroy? links << Link.new( - content: h.t('lines.actions.show_company'), - href: [context[:line_referential], object.company] + content: h.destroy_link_content('lines.actions.destroy_confirm'), + href: h.line_referential_line_path(context[:line_referential], object), + method: :delete, + data: { confirm: h.t('lines.actions.destroy_confirm') } ) - - if h.policy(Chouette::Line).create? && - context[:line_referential].organisations.include?( - context[:current_organisation] - ) - links << Link.new( - content: h.t('lines.actions.new'), - href: h.new_line_referential_line_path(context[:line_referential]) - ) - end - - if h.policy(object).destroy? - links << Link.new( - content: h.destroy_link_content('lines.actions.destroy_confirm'), - href: h.line_referential_line_path(context[:line_referential], object), - method: :delete, - data: { confirm: h.t('lines.actions.destroy_confirm') } - ) - end - - links end + + links end +end diff --git a/app/decorators/network_decorator.rb b/app/decorators/network_decorator.rb index 4f22141e0..1f62fe512 100644 --- a/app/decorators/network_decorator.rb +++ b/app/decorators/network_decorator.rb @@ -1,44 +1,44 @@ - class NetworkDecorator < Draper::Decorator - decorates Chouette::Network +class NetworkDecorator < Draper::Decorator + decorates Chouette::Network - delegate_all + delegate_all - # Requires: - # context: { - # line_referential: , - # } - def action_links - links = [] + # Requires: + # context: { + # line_referential: , + # } + def action_links + links = [] - if h.policy(Chouette::Network).create? - links << Link.new( - content: h.t('networks.actions.new'), - href: h.new_line_referential_network_path(context[:line_referential]) - ) - end - - if h.policy(object).update? - links << Link.new( - content: h.t('networks.actions.edit'), - href: h.edit_line_referential_network_path( - context[:line_referential], - object - ) - ) - end + if h.policy(Chouette::Network).create? + links << Link.new( + content: h.t('networks.actions.new'), + href: h.new_line_referential_network_path(context[:line_referential]) + ) + end - if h.policy(object).destroy? - links << Link.new( - content: h.destroy_link_content('networks.actions.destroy'), - href: h.line_referential_network_path( - context[:line_referential], - object - ), - method: :delete, - data: { confirm: t('networks.actions.destroy_confirm') } + if h.policy(object).update? + links << Link.new( + content: h.t('networks.actions.edit'), + href: h.edit_line_referential_network_path( + context[:line_referential], + object ) - end + ) + end - links + if h.policy(object).destroy? + links << Link.new( + content: h.destroy_link_content('networks.actions.destroy'), + href: h.line_referential_network_path( + context[:line_referential], + object + ), + method: :delete, + data: { confirm: t('networks.actions.destroy_confirm') } + ) end + + links end +end diff --git a/app/decorators/route_decorator.rb b/app/decorators/route_decorator.rb index ca35c2dde..510c941a3 100644 --- a/app/decorators/route_decorator.rb +++ b/app/decorators/route_decorator.rb @@ -1,75 +1,75 @@ - class RouteDecorator < Draper::Decorator - decorates Chouette::Route +class RouteDecorator < Draper::Decorator + decorates Chouette::Route - delegate_all + delegate_all - # Requires: - # context: { - # referential: , - # line: - # } - def action_links - links = [] + # Requires: + # context: { + # referential: , + # line: + # } + def action_links + links = [] - if object.stop_points.any? - links << Link.new( - content: h.t('journey_patterns.index.title'), - href: [ - context[:referential], - context[:line], - object, - :journey_patterns_collection - ] - ) - end - - if object.journey_patterns.present? - links << Link.new( - content: h.t('vehicle_journeys.actions.index'), - href: [ - context[:referential], - context[:line], - object, - :vehicle_journeys - ] - ) - end + if object.stop_points.any? + links << Link.new( + content: h.t('journey_patterns.index.title'), + href: [ + context[:referential], + context[:line], + object, + :journey_patterns_collection + ] + ) + end + if object.journey_patterns.present? links << Link.new( - content: h.t('vehicle_journey_exports.new.title'), - href: h.referential_line_route_vehicle_journey_exports_path( + content: h.t('vehicle_journeys.actions.index'), + href: [ context[:referential], context[:line], object, - format: :zip - ) + :vehicle_journeys + ] ) + end - if h.policy(object).duplicate? - links << Link.new( - content: h.t('routes.duplicate.title'), - href: h.duplicate_referential_line_route_path( - context[:referential], - context[:line], - object - ), - method: :post - ) - end + links << Link.new( + content: h.t('vehicle_journey_exports.new.title'), + href: h.referential_line_route_vehicle_journey_exports_path( + context[:referential], + context[:line], + object, + format: :zip + ) + ) - if h.policy(object).destroy? - links << Link.new( - content: h.destroy_link_content, - href: h.referential_line_route_path( - context[:referential], - context[:line], - object - ), - method: :delete, - data: { confirm: h.t('routes.actions.destroy_confirm') } - ) - end + if h.policy(object).duplicate? + links << Link.new( + content: h.t('routes.duplicate.title'), + href: h.duplicate_referential_line_route_path( + context[:referential], + context[:line], + object + ), + method: :post + ) + end - links + if h.policy(object).destroy? + links << Link.new( + content: h.destroy_link_content, + href: h.referential_line_route_path( + context[:referential], + context[:line], + object + ), + method: :delete, + data: { confirm: h.t('routes.actions.destroy_confirm') } + ) end + + links end +end diff --git a/app/decorators/routing_constraint_zone_decorator.rb b/app/decorators/routing_constraint_zone_decorator.rb index 1d12cfc25..0b438a554 100644 --- a/app/decorators/routing_constraint_zone_decorator.rb +++ b/app/decorators/routing_constraint_zone_decorator.rb @@ -1,42 +1,42 @@ - class RoutingConstraintZoneDecorator < Draper::Decorator - decorates Chouette::RoutingConstraintZone +class RoutingConstraintZoneDecorator < Draper::Decorator + decorates Chouette::RoutingConstraintZone - delegate_all + delegate_all - # Requires: - # context: { - # referential: , - # line: - # } - def action_links - links = [] + # Requires: + # context: { + # referential: , + # line: + # } + def action_links + links = [] - if h.policy(object).update? - links << Link.new( - content: h.t('actions.edit'), - href: h.edit_referential_line_routing_constraint_zone_path( - context[:referential], - context[:line], - object - ) + if h.policy(object).update? + links << Link.new( + content: h.t('actions.edit'), + href: h.edit_referential_line_routing_constraint_zone_path( + context[:referential], + context[:line], + object ) - end - - if h.policy(object).destroy? - links << Link.new( - content: h.destroy_link_content, - href: h.referential_line_routing_constraint_zone_path( - context[:referential], - context[:line], - object - ), - method: :delete, - data: { - confirm: h.t('routing_constraint_zones.actions.destroy_confirm') - } - ) - end + ) + end - links + if h.policy(object).destroy? + links << Link.new( + content: h.destroy_link_content, + href: h.referential_line_routing_constraint_zone_path( + context[:referential], + context[:line], + object + ), + method: :delete, + data: { + confirm: h.t('routing_constraint_zones.actions.destroy_confirm') + } + ) end + + links end +end diff --git a/app/decorators/stop_area_decorator.rb b/app/decorators/stop_area_decorator.rb index c64ecc9e3..4e777292d 100644 --- a/app/decorators/stop_area_decorator.rb +++ b/app/decorators/stop_area_decorator.rb @@ -1,43 +1,43 @@ - class StopAreaDecorator < Draper::Decorator - decorates Chouette::StopArea +class StopAreaDecorator < Draper::Decorator + decorates Chouette::StopArea - delegate_all + delegate_all - def action_links(stop_area = nil) - links = [] - stop_area ||= object + def action_links(stop_area = nil) + links = [] + stop_area ||= object - if h.policy(Chouette::StopArea).new? - links << Link.new( - content: h.t('stop_areas.actions.new'), - href: h.new_stop_area_referential_stop_area_path( - stop_area.stop_area_referential - ) + if h.policy(Chouette::StopArea).new? + links << Link.new( + content: h.t('stop_areas.actions.new'), + href: h.new_stop_area_referential_stop_area_path( + stop_area.stop_area_referential ) - end - - if h.policy(stop_area).update? - links << Link.new( - content: h.t('stop_areas.actions.edit'), - href: h.edit_stop_area_referential_stop_area_path( - stop_area.stop_area_referential, - stop_area - ) - ) - end + ) + end - if h.policy(stop_area).destroy? - links << Link.new( - content: h.destroy_link_content('stop_areas.actions.destroy'), - href: h.stop_area_referential_stop_area_path( - stop_area.stop_area_referential, - stop_area - ), - method: :delete, - data: { confirm: t('stop_areas.actions.destroy_confirm') } + if h.policy(stop_area).update? + links << Link.new( + content: h.t('stop_areas.actions.edit'), + href: h.edit_stop_area_referential_stop_area_path( + stop_area.stop_area_referential, + stop_area ) - end + ) + end - links + if h.policy(stop_area).destroy? + links << Link.new( + content: h.destroy_link_content('stop_areas.actions.destroy'), + href: h.stop_area_referential_stop_area_path( + stop_area.stop_area_referential, + stop_area + ), + method: :delete, + data: { confirm: t('stop_areas.actions.destroy_confirm') } + ) end + + links end +end diff --git a/app/decorators/stop_point_decorator.rb b/app/decorators/stop_point_decorator.rb index f87db73e8..196d6d490 100644 --- a/app/decorators/stop_point_decorator.rb +++ b/app/decorators/stop_point_decorator.rb @@ -1,9 +1,9 @@ - class StopPointDecorator < StopAreaDecorator - decorates Chouette::StopPoint +class StopPointDecorator < StopAreaDecorator + decorates Chouette::StopPoint - delegate_all + delegate_all - def action_links - super(object.stop_area) - end + def action_links + super(object.stop_area) end +end diff --git a/app/decorators/time_table_decorator.rb b/app/decorators/time_table_decorator.rb index e2a5a7a97..c6eeac176 100644 --- a/app/decorators/time_table_decorator.rb +++ b/app/decorators/time_table_decorator.rb @@ -1,55 +1,55 @@ - class TimeTableDecorator < Draper::Decorator - decorates Chouette::TimeTable +class TimeTableDecorator < Draper::Decorator + decorates Chouette::TimeTable - delegate_all + delegate_all - # Requires: - # context: { - # referential: , - # } - def action_links - links = [] + # Requires: + # context: { + # referential: , + # } + def action_links + links = [] - if object.calendar - links << Link.new( - content: h.t('actions.actualize'), - href: h.actualize_referential_time_table_path( - context[:referential], - object - ), - method: :post - ) - end - - if h.policy(object).edit? - links << Link.new( - content: h.t('actions.combine'), - href: h.new_referential_time_table_time_table_combination_path( - context[:referential], - object - ) - ) - end + if object.calendar + links << Link.new( + content: h.t('actions.actualize'), + href: h.actualize_referential_time_table_path( + context[:referential], + object + ), + method: :post + ) + end - if h.policy(object).duplicate? - links << Link.new( - content: h.t('actions.duplicate'), - href: h.duplicate_referential_time_table_path( - context[:referential], - object - ) + if h.policy(object).edit? + links << Link.new( + content: h.t('actions.combine'), + href: h.new_referential_time_table_time_table_combination_path( + context[:referential], + object ) - end + ) + end - if h.policy(object).destroy? - links << Link.new( - content: h.destroy_link_content, - href: h.referential_time_table_path(context[:referential], object), - method: :delete, - data: { confirm: h.t('time_tables.actions.destroy_confirm') } + if h.policy(object).duplicate? + links << Link.new( + content: h.t('actions.duplicate'), + href: h.duplicate_referential_time_table_path( + context[:referential], + object ) - end + ) + end - links + if h.policy(object).destroy? + links << Link.new( + content: h.destroy_link_content, + href: h.referential_time_table_path(context[:referential], object), + method: :delete, + data: { confirm: h.t('time_tables.actions.destroy_confirm') } + ) end + + links end +end diff --git a/app/models/chouette.rb b/app/models/chouette.rb deleted file mode 100644 index fe49300d4..000000000 --- a/app/models/chouette.rb +++ /dev/null @@ -1,5 +0,0 @@ -module Chouette - def self.use_relative_model_naming? - true - end -end
\ No newline at end of file diff --git a/app/models/chouette/company.rb b/app/models/chouette/company.rb index a06bf5d91..d79e5ff59 100644 --- a/app/models/chouette/company.rb +++ b/app/models/chouette/company.rb @@ -8,7 +8,6 @@ module Chouette validates_format_of :registration_number, :with => %r{\A[0-9A-Za-z_-]+\Z}, :allow_nil => true, :allow_blank => true validates_presence_of :name - validates_presence_of :objectid_format validates_format_of :url, :with => %r{\Ahttps?:\/\/([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?\Z}, :allow_nil => true, :allow_blank => true def self.nullable_attributes diff --git a/app/models/chouette/journey_pattern_section.rb b/app/models/chouette/journey_pattern_section.rb deleted file mode 100644 index 226a50c27..000000000 --- a/app/models/chouette/journey_pattern_section.rb +++ /dev/null @@ -1,22 +0,0 @@ -module Chouette - class JourneyPatternSection < Chouette::ActiveRecord - belongs_to :journey_pattern - belongs_to :route_section - - validates :journey_pattern_id, presence: true - validates :route_section_id, presence: true - validates :rank, presence: true, numericality: :only_integer - validates :journey_pattern_id, uniqueness: { scope: [:route_section_id, :rank] } - - default_scope { order(:rank) } - - def self.update_by_journey_pattern_rank(journey_pattern_id, route_section_id, rank) - jps = self.find_or_initialize_by(journey_pattern_id: journey_pattern_id, rank: rank) - if route_section_id.present? - jps.update_attributes(route_section_id: route_section_id) - else - jps.destroy - end - end - end -end
\ No newline at end of file diff --git a/app/models/chouette/network.rb b/app/models/chouette/network.rb index c51de3984..3f07ebe0c 100644 --- a/app/models/chouette/network.rb +++ b/app/models/chouette/network.rb @@ -12,7 +12,6 @@ module Chouette validates_format_of :registration_number, :with => %r{\A[0-9A-Za-z_-]+\Z}, :allow_nil => true, :allow_blank => true validates_presence_of :name - validates_presence_of :objectid_format def self.object_id_key "PTNetwork" diff --git a/app/models/chouette/objectid/stif_netex.rb b/app/models/chouette/objectid/stif_netex.rb index 80208af56..5bff21dbf 100644 --- a/app/models/chouette/objectid/stif_netex.rb +++ b/app/models/chouette/objectid/stif_netex.rb @@ -8,7 +8,7 @@ module Chouette end def short_id - local_id.try(:split, "-").try(:[], -1) + local_id.try(:split, "-").try(:last) end end end diff --git a/app/models/chouette/objectid_formatter/netex.rb b/app/models/chouette/objectid_formatter/netex.rb index 7279fdaa5..b8a903757 100644 --- a/app/models/chouette/objectid_formatter/netex.rb +++ b/app/models/chouette/objectid_formatter/netex.rb @@ -2,7 +2,7 @@ module Chouette module ObjectidFormatter class Netex def before_validation(model) - model.update_attributes(objectid: Chouette::Objectid::Netex.new(local_id: SecureRandom.uuid, object_type: model.class.name.gsub(/Chouette::/,'')).to_s) unless model.read_attribute(:objectid) + model.update(objectid: Chouette::Objectid::Netex.new(local_id: SecureRandom.uuid, object_type: model.class.name.gsub('Chouette::','')).to_s) end def after_commit(model) @@ -11,7 +11,7 @@ module Chouette def get_objectid(definition) parts = definition.try(:split, ":") - Chouette::Objectid::Netex.new(provider_id: parts[0], object_type: parts[1], local_id: parts[2], creation_id: parts[3]) rescue nil + Chouette::Objectid::Netex.new(provider_id: parts[0], object_type: parts[1], local_id: parts[2], creation_id: parts[3]) end end end diff --git a/app/models/chouette/objectid_formatter/stif_codifligne.rb b/app/models/chouette/objectid_formatter/stif_codifligne.rb index aaa07ed6f..eafd2a090 100644 --- a/app/models/chouette/objectid_formatter/stif_codifligne.rb +++ b/app/models/chouette/objectid_formatter/stif_codifligne.rb @@ -11,7 +11,7 @@ module Chouette def get_objectid(definition) parts = definition.try(:split, ":") - Chouette::Objectid::StifCodifligne.new(provider_id: parts[0], sync_id: parts[1], object_type: parts[2], local_id: parts[3]) rescue nil + Chouette::Objectid::StifCodifligne.new(provider_id: parts[0], sync_id: parts[1], object_type: parts[2], local_id: parts[3]) end end end diff --git a/app/models/chouette/objectid_formatter/stif_netex.rb b/app/models/chouette/objectid_formatter/stif_netex.rb index 57d126983..4678cb337 100644 --- a/app/models/chouette/objectid_formatter/stif_netex.rb +++ b/app/models/chouette/objectid_formatter/stif_netex.rb @@ -2,16 +2,16 @@ module Chouette module ObjectidFormatter class StifNetex def before_validation(model) - model.attributes = {objectid: "__pending_id__#{SecureRandom.uuid}"} unless model.read_attribute(:objectid) + model.attributes = {objectid: "__pending_id__#{SecureRandom.uuid}"} end def after_commit(model) - model.update_attributes(objectid: Chouette::Objectid::StifNetex.new(provider_id: "stif", object_type: model.class.name.gsub(/Chouette::/,''), local_id: model.local_id).to_s) + model.update(objectid: Chouette::Objectid::StifNetex.new(provider_id: "stif", object_type: model.class.name.gsub('Chouette::',''), local_id: model.local_id).to_s) end def get_objectid(definition) parts = definition.try(:split, ":") - Chouette::Objectid::StifNetex.new(provider_id: parts[0], object_type: parts[1], local_id: parts[2], creation_id: parts[3]) rescue nil + Chouette::Objectid::StifNetex.new(provider_id: parts[0], object_type: parts[1], local_id: parts[2], creation_id: parts[3]) end end end diff --git a/app/models/chouette/objectid_formatter/stif_reflex.rb b/app/models/chouette/objectid_formatter/stif_reflex.rb index e7e9f5611..5bfb21ecd 100644 --- a/app/models/chouette/objectid_formatter/stif_reflex.rb +++ b/app/models/chouette/objectid_formatter/stif_reflex.rb @@ -11,7 +11,7 @@ module Chouette def get_objectid(definition) parts = definition.try(:split, ":") - Chouette::Objectid::StifReflex.new(country_code: parts[0], zip_code: parts[1], object_type: parts[2], local_id: parts[3], provider_id: parts[4]) rescue nil + Chouette::Objectid::StifReflex.new(country_code: parts[0], zip_code: parts[1], object_type: parts[2], local_id: parts[3], provider_id: parts[4]) end end end diff --git a/app/models/chouette/route.rb b/app/models/chouette/route.rb index d8e6533c4..1f4088aa7 100644 --- a/app/models/chouette/route.rb +++ b/app/models/chouette/route.rb @@ -183,12 +183,6 @@ module Chouette return true end - def journey_patterns_control_route_sections - self.journey_patterns.each do |jp| - jp.control_route_sections - end - end - protected def self.vehicle_journeys_timeless(stop_point_id) diff --git a/app/models/chouette/route_section.rb b/app/models/chouette/route_section.rb deleted file mode 100644 index e4b4347e7..000000000 --- a/app/models/chouette/route_section.rb +++ /dev/null @@ -1,83 +0,0 @@ -module Chouette - class RouteSection < Chouette::TridentActiveRecord - belongs_to :departure, class_name: 'Chouette::StopArea' - belongs_to :arrival, class_name: 'Chouette::StopArea' - has_many :journey_pattern_sections - has_many :journey_patterns, through: :journey_pattern_sections, dependent: :destroy - - validates :departure, :arrival, :processed_geometry, presence: true - - scope :by_endpoint_name, ->(endpoint, name) do - joins("INNER JOIN stop_areas #{endpoint} ON #{endpoint}.id = route_sections.#{endpoint}_id").where(["#{endpoint}.name ilike ?", "%#{name}%"]) - end - scope :by_line_id, ->(line_id) do - joins(:journey_pattern_sections, :journey_patterns).joins('INNER JOIN routes ON journey_patterns.route_id = routes.id').where("routes.line_id = #{line_id}") - end - - def stop_areas - [departure, arrival].compact - end - - def default_geometry - points = stop_areas.collect(&:geometry).compact - GeoRuby::SimpleFeatures::LineString.from_points(points) if points.many? - end - - def name - stop_areas.map do |stop_area| - stop_area.try(:name) or '?' - end.join(' - ') + " (#{geometry_description})" - end - - def via_count - input_geometry ? [ input_geometry.points.count - 2, 0 ].max : 0 - end - - def geometry_description - if input_geometry || processed_geometry - [ "#{distance.to_i}m" ].tap do |parts| - parts << "#{via_count} #{'via'.pluralize(via_count)}" if via_count > 0 - end.join(' - ') - else - "-" - end - end - - DEFAULT_PROCESSOR = Proc.new { |section| section.input_geometry || section.default_geometry.try(:to_rgeo) } - - @@processor = DEFAULT_PROCESSOR - cattr_accessor :processor - - def instance_processor - no_processing || processor.nil? ? DEFAULT_PROCESSOR : processor - end - - def process_geometry - if input_geometry_changed? || processed_geometry.nil? - self.processed_geometry = instance_processor.call(self) - self.distance = processed_geometry.to_georuby.to_wgs84.spherical_distance if processed_geometry - end - - true - end - before_validation :process_geometry - - def editable_geometry=(geometry) - self.input_geometry = geometry - end - - def editable_geometry - input_geometry.try(:to_georuby) or default_geometry - end - - def editable_geometry_before_type_cast - editable_geometry.to_ewkt - end - - def geometry(mode = nil) - mode ||= :processed - mode == :editable ? editable_geometry : processed_geometry.to_georuby - end - - end -end
\ No newline at end of file diff --git a/app/models/chouette/routing_constraint_zone.rb b/app/models/chouette/routing_constraint_zone.rb index d4ba8b94b..70b016a48 100644 --- a/app/models/chouette/routing_constraint_zone.rb +++ b/app/models/chouette/routing_constraint_zone.rb @@ -6,7 +6,7 @@ module Chouette belongs_to :route has_array_of :stop_points, class_name: 'Chouette::StopPoint' - validates_presence_of :name, :stop_points, :route, :objectid_format + validates_presence_of :name, :stop_points, :route # validates :stop_point_ids, length: { minimum: 2, too_short: I18n.t('activerecord.errors.models.routing_constraint_zone.attributes.stop_points.not_enough_stop_points') } validate :stop_points_belong_to_route, :not_all_stop_points_selected diff --git a/app/models/chouette/stop_area.rb b/app/models/chouette/stop_area.rb index d96381ee8..5d8b5033f 100644 --- a/app/models/chouette/stop_area.rb +++ b/app/models/chouette/stop_area.rb @@ -3,11 +3,6 @@ require 'geo_ruby' module Chouette class StopArea < Chouette::ActiveRecord - # FIXME http://jira.codehaus.org/browse/JRUBY-6358 - self.primary_key = "id" - - include Geokit::Mappable - # include StifReflexAttributesSupport include ProjectionFields include StopAreaRestrictions include StopAreaReferentialSupport @@ -25,8 +20,6 @@ module Chouette has_and_belongs_to_many :routing_lines, :class_name => 'Chouette::Line', :foreign_key => "stop_area_id", :association_foreign_key => "line_id", :join_table => "routing_constraints_lines", :order => "lines.number" has_and_belongs_to_many :routing_stops, :class_name => 'Chouette::StopArea', :foreign_key => "parent_id", :association_foreign_key => "child_id", :join_table => "stop_areas_stop_areas", :order => "stop_areas.name" - belongs_to :stop_area_referential - acts_as_tree :foreign_key => 'parent_id', :order => "name" attr_accessor :stop_area_type diff --git a/app/models/chouette/time_table.rb b/app/models/chouette/time_table.rb index 172b73101..09d3e2244 100644 --- a/app/models/chouette/time_table.rb +++ b/app/models/chouette/time_table.rb @@ -53,7 +53,6 @@ module Chouette accepts_nested_attributes_for :periods, :allow_destroy => :true validates_presence_of :comment - validates_presence_of :objectid_format validates_associated :dates validates_associated :periods diff --git a/app/models/chouette/timeband.rb b/app/models/chouette/timeband.rb index ec3ad43b9..21c81ab1c 100644 --- a/app/models/chouette/timeband.rb +++ b/app/models/chouette/timeband.rb @@ -15,9 +15,6 @@ module Chouette validates :start_time, :end_time, presence: true validates_with Chouette::TimebandValidator - validates :start_time, :end_time, presence: true - validates_with Chouette::TimebandValidator - default_scope { order(:start_time) } def self.object_id_key diff --git a/app/models/concerns/line_referential_support.rb b/app/models/concerns/line_referential_support.rb index 406730ddb..5eade3557 100644 --- a/app/models/concerns/line_referential_support.rb +++ b/app/models/concerns/line_referential_support.rb @@ -3,6 +3,7 @@ module LineReferentialSupport included do belongs_to :line_referential + validates_presence_of :line_referential alias_method :referential, :line_referential end diff --git a/app/models/concerns/netex_attributes_support.rb b/app/models/concerns/netex_attributes_support.rb deleted file mode 100644 index d78528dbf..000000000 --- a/app/models/concerns/netex_attributes_support.rb +++ /dev/null @@ -1,72 +0,0 @@ -module NetexAttributesSupport - extend ActiveSupport::Concern - - included do - before_validation :prepare_auto_columns - - validates_presence_of :objectid - validates_uniqueness_of :objectid - validates_numericality_of :object_version - validate :objectid_format_compliance - - before_validation :default_values, :on => :create - end - - module ClassMethods - def object_id_key - model_name - end - - def model_name - ActiveModel::Name.new self, Chouette, self.name.demodulize - end - end - - def objectid - Chouette::NetexObjectId.new read_attribute(:objectid) - end - - def prepare_auto_columns - if object_version.nil? - self.object_version = 1 - else - self.object_version += 1 - end - self.creator_id = 'chouette' - end - - def fix_uniq_objectid - base_objectid = objectid.rpartition(":").first - self.objectid = "#{base_objectid}:#{id}" - if !valid? - base_objectid="#{objectid}_" - cnt=1 - while !valid? - self.objectid = "#{base_objectid}#{cnt}" - cnt += 1 - end - end - - end - - def objectid_format_compliance - if !objectid.valid? - errors.add :objectid, I18n.t("activerecord.errors.models.trident.invalid_object_id", type: self.class.object_id_key) - end - end - - def uniq_objectid - # OPTIMIZEME - i = 0 - baseobjectid = objectid - while self.class.exists?(:objectid => objectid) - i += 1 - self.objectid = baseobjectid+"_"+i.to_s - end - end - - def default_values - self.object_version ||= 1 - end - -end diff --git a/app/models/concerns/objectid_formatter_support.rb b/app/models/concerns/objectid_formatter_support.rb index 2138ac89e..34a51740f 100644 --- a/app/models/concerns/objectid_formatter_support.rb +++ b/app/models/concerns/objectid_formatter_support.rb @@ -2,13 +2,15 @@ module ObjectidFormatterSupport extend ActiveSupport::Concern included do - validates_presence_of :objectid_formater_class + extend Enumerize + enumerize :objectid_format, in: %w(netex stif_netex stif_reflex stif_codifligne), default: 'netex' + validates_presence_of :objectid_format - def objectid_formater - objectid_formater_class.new + def objectid_formatter + objectid_formatter_class.new end - def objectid_formater_class + def objectid_formatter_class "Chouette::ObjectidFormatter::#{read_attribute(:objectid_format).camelcase}".constantize if read_attribute(:objectid_format) end end diff --git a/app/models/concerns/objectid_support.rb b/app/models/concerns/objectid_support.rb index 6822912f1..85b5da3a8 100644 --- a/app/models/concerns/objectid_support.rb +++ b/app/models/concerns/objectid_support.rb @@ -2,21 +2,21 @@ module ObjectidSupport extend ActiveSupport::Concern included do - before_validation :before_validation_objectid + before_validation :before_validation_objectid, unless: Proc.new {|model| model.read_attribute(:objectid)} after_commit :after_commit_objectid, on: :create, if: Proc.new {|model| model.read_attribute(:objectid).try(:include?, '__pending_id__')} - validates_presence_of :objectid_format, :objectid + validates_presence_of :objectid validates_uniqueness_of :objectid, skip_validation: Proc.new {|model| model.read_attribute(:objectid).nil?} def before_validation_objectid - self.referential.objectid_formater.before_validation self + self.referential.objectid_formatter.before_validation self end def after_commit_objectid - self.referential.objectid_formater.after_commit self + self.referential.objectid_formatter.after_commit self end def get_objectid - self.referential.objectid_formater.get_objectid read_attribute(:objectid) if objectid_format && read_attribute(:objectid) + self.referential.objectid_formatter.get_objectid read_attribute(:objectid) if self.referential.objectid_format && read_attribute(:objectid) end def objectid @@ -26,9 +26,5 @@ module ObjectidSupport def objectid_class get_objectid.try(:class) end - - def objectid_format - self.referential.objectid_format - end end end
\ No newline at end of file diff --git a/app/models/concerns/stif_codifligne_attributes_support.rb b/app/models/concerns/stif_codifligne_attributes_support.rb deleted file mode 100644 index 0cd2cccc4..000000000 --- a/app/models/concerns/stif_codifligne_attributes_support.rb +++ /dev/null @@ -1,21 +0,0 @@ -module StifCodifligneAttributesSupport - extend ActiveSupport::Concern - - included do - validates_presence_of :objectid - end - - module ClassMethods - def object_id_key - model_name - end - - def model_name - ActiveModel::Name.new self, Chouette, self.name.demodulize - end - end - - def objectid - Chouette::StifCodifligneObjectid.new read_attribute(:objectid) - end -end diff --git a/app/models/concerns/stif_netex_attributes_support.rb b/app/models/concerns/stif_netex_attributes_support.rb deleted file mode 100644 index 076acf491..000000000 --- a/app/models/concerns/stif_netex_attributes_support.rb +++ /dev/null @@ -1,58 +0,0 @@ -module StifNetexAttributesSupport - extend ActiveSupport::Concern - - included do - validates_numericality_of :object_version - validates :objectid, uniqueness: true, presence: true - validate :objectid_format_compliance - - after_save :build_objectid - before_validation :default_values, on: :create - end - - module ClassMethods - def object_id_key - model_name - end - - def model_name - ActiveModel::Name.new self, Chouette, self.name.demodulize - end - end - - def objectid_format_compliance - errors.add :objectid, I18n.t("activerecord.errors.models.trident.invalid_object_id") if !objectid.valid? - end - - def local_id - "IBOO-#{self.referential.id}-#{self.id}" - end - - def build_objectid - if objectid.include? ':__pending_id__' - self.objectid = Chouette::StifNetexObjectid.create(self.provider_id, self.model_name, self.local_id, self.boiv_id) - self.save - end - end - - def default_values - self.object_version ||= 1 - - if self.objectid.to_s.empty? - local_id = "__pending_id__#{rand(50)+ rand(50)}" - self.objectid = Chouette::StifNetexObjectid.create(self.provider_id, self.model_name, local_id, self.boiv_id) - end - end - - def objectid - Chouette::StifNetexObjectid.new read_attribute(:objectid) - end - - def provider_id - self.referential.workbench.organisation.code.underscore.parameterize - end - - def boiv_id - 'LOC' - end -end diff --git a/app/models/concerns/stif_reflex_attributes_support.rb b/app/models/concerns/stif_reflex_attributes_support.rb deleted file mode 100644 index 9dfd21f94..000000000 --- a/app/models/concerns/stif_reflex_attributes_support.rb +++ /dev/null @@ -1,21 +0,0 @@ -module StifReflexAttributesSupport - extend ActiveSupport::Concern - - included do - validates_presence_of :objectid - end - - module ClassMethods - def object_id_key - model_name - end - - def model_name - ActiveModel::Name.new self, Chouette, self.name.demodulize - end - end - - def objectid - Chouette::StifReflexObjectid.new read_attribute(:objectid) - end -end diff --git a/app/models/concerns/stop_area_referential_support.rb b/app/models/concerns/stop_area_referential_support.rb index aa59cbd35..f29397b3a 100644 --- a/app/models/concerns/stop_area_referential_support.rb +++ b/app/models/concerns/stop_area_referential_support.rb @@ -3,6 +3,7 @@ module StopAreaReferentialSupport included do belongs_to :stop_area_referential + validates_presence_of :stop_area_referential alias_method :referential, :stop_area_referential end diff --git a/app/models/line_referential.rb b/app/models/line_referential.rb index d8cf74bda..15b2f6276 100644 --- a/app/models/line_referential.rb +++ b/app/models/line_referential.rb @@ -1,7 +1,6 @@ class LineReferential < ActiveRecord::Base include ObjectidFormatterSupport extend StifTransportModeEnumerations - extend Enumerize has_many :line_referential_memberships has_many :organisations, through: :line_referential_memberships @@ -11,7 +10,6 @@ class LineReferential < ActiveRecord::Base has_many :networks, class_name: 'Chouette::Network' has_many :line_referential_syncs, -> { order created_at: :desc } has_many :workbenches - enumerize :objectid_format, in: %w(netex stif_netex stif_reflex stif_codifligne), default: 'netex' def add_member(organisation, options = {}) attributes = options.merge organisation: organisation @@ -22,7 +20,6 @@ class LineReferential < ActiveRecord::Base validates :sync_interval, presence: true # need to define precise validation rules validates_inclusion_of :sync_interval, :in => 1..30 - validates_presence_of :objectid_format def operating_lines lines.where(deactivated: false) diff --git a/app/models/referential.rb b/app/models/referential.rb index fa6bcbcf1..ee74bd9f5 100644 --- a/app/models/referential.rb +++ b/app/models/referential.rb @@ -1,12 +1,10 @@ class Referential < ActiveRecord::Base include DataFormatEnumerations include ObjectidFormatterSupport - extend Enumerize validates_presence_of :name validates_presence_of :slug validates_presence_of :prefix - validates_presence_of :objectid_format # Fixme #3657 # validates_presence_of :time_zone # validates_presence_of :upper_corner @@ -56,7 +54,6 @@ class Referential < ActiveRecord::Base belongs_to :referential_suite - enumerize :objectid_format, in: %w(netex stif_netex stif_reflex stif_codifligne), default: 'netex' scope :ready, -> { where(ready: true) } scope :in_periode, ->(periode) { where(id: referential_ids_in_periode(periode)) } diff --git a/app/models/stop_area_referential.rb b/app/models/stop_area_referential.rb index 159ee07b3..54e895cd0 100644 --- a/app/models/stop_area_referential.rb +++ b/app/models/stop_area_referential.rb @@ -1,5 +1,4 @@ class StopAreaReferential < ActiveRecord::Base - extend Enumerize include ObjectidFormatterSupport has_many :stop_area_referential_memberships has_many :organisations, through: :stop_area_referential_memberships @@ -7,8 +6,6 @@ class StopAreaReferential < ActiveRecord::Base has_many :stop_areas, class_name: 'Chouette::StopArea' has_many :stop_area_referential_syncs, -> {order created_at: :desc} has_many :workbenches - enumerize :objectid_format, in: %w(netex stif_netex stif_reflex stif_codifligne), default: 'netex' - validates_presence_of :objectid_format def add_member(organisation, options = {}) attributes = options.merge organisation: organisation diff --git a/app/models/workbench.rb b/app/models/workbench.rb index 95e4d1b68..e36589210 100644 --- a/app/models/workbench.rb +++ b/app/models/workbench.rb @@ -1,11 +1,9 @@ class Workbench < ActiveRecord::Base include ObjectidFormatterSupport - extend Enumerize belongs_to :organisation belongs_to :line_referential belongs_to :stop_area_referential belongs_to :output, class_name: 'ReferentialSuite' - enumerize :objectid_format, in: %w(netex stif_netex stif_reflex stif_codifligne), default: 'netex' has_many :lines, -> (workbench) { Stif::MyWorkbenchScopes.new(workbench).line_scope(self) }, through: :line_referential has_many :networks, through: :line_referential @@ -20,7 +18,6 @@ class Workbench < ActiveRecord::Base validates :name, presence: true validates :organisation, presence: true validates :output, presence: true - validates_presence_of :objectid_format has_many :referentials has_many :referential_metadatas, through: :referentials, source: :metadatas diff --git a/app/policies/access_link_policy.rb b/app/policies/access_link_policy.rb index 2b974ee71..1f1147f60 100644 --- a/app/policies/access_link_policy.rb +++ b/app/policies/access_link_policy.rb @@ -1,19 +1,19 @@ - class AccessLinkPolicy < ApplicationPolicy - class Scope < Scope - def resolve - scope - end +class AccessLinkPolicy < ApplicationPolicy + class Scope < Scope + def resolve + scope end + end - def create? - !archived? && organisation_match? && user.has_permission?('access_links.create') - end + def create? + !archived? && organisation_match? && user.has_permission?('access_links.create') + end - def update? - !archived? && organisation_match? && user.has_permission?('access_links.update') - end + def update? + !archived? && organisation_match? && user.has_permission?('access_links.update') + end - def destroy? - !archived? && organisation_match? && user.has_permission?('access_links.destroy') - end + def destroy? + !archived? && organisation_match? && user.has_permission?('access_links.destroy') end +end diff --git a/app/policies/access_point_policy.rb b/app/policies/access_point_policy.rb index 368cf14e7..41436e77c 100644 --- a/app/policies/access_point_policy.rb +++ b/app/policies/access_point_policy.rb @@ -1,19 +1,19 @@ - class AccessPointPolicy < ApplicationPolicy - class Scope < Scope - def resolve - scope - end +class AccessPointPolicy < ApplicationPolicy + class Scope < Scope + def resolve + scope end + end - def create? - !archived? && organisation_match? && user.has_permission?('access_points.create') - end + def create? + !archived? && organisation_match? && user.has_permission?('access_points.create') + end - def update? - !archived? && organisation_match? && user.has_permission?('access_points.update') - end + def update? + !archived? && organisation_match? && user.has_permission?('access_points.update') + end - def destroy? - !archived? && organisation_match? && user.has_permission?('access_points.destroy') - end + def destroy? + !archived? && organisation_match? && user.has_permission?('access_points.destroy') end +end diff --git a/app/policies/company_policy.rb b/app/policies/company_policy.rb index d29836e07..45386aba4 100644 --- a/app/policies/company_policy.rb +++ b/app/policies/company_policy.rb @@ -1,7 +1,7 @@ - class CompanyPolicy < ApplicationPolicy - class Scope < Scope - def resolve - scope - end +class CompanyPolicy < ApplicationPolicy + class Scope < Scope + def resolve + scope end end + end diff --git a/app/policies/connection_link_policy.rb b/app/policies/connection_link_policy.rb index 7cf0b7131..240c2a804 100644 --- a/app/policies/connection_link_policy.rb +++ b/app/policies/connection_link_policy.rb @@ -1,19 +1,19 @@ - class ConnectionLinkPolicy < ApplicationPolicy - class Scope < Scope - def resolve - scope - end +class ConnectionLinkPolicy < ApplicationPolicy + class Scope < Scope + def resolve + scope end + end - def create? - !archived? && organisation_match? && user.has_permission?('connection_links.create') - end + def create? + !archived? && organisation_match? && user.has_permission?('connection_links.create') + end - def destroy? - !archived? && organisation_match? && user.has_permission?('connection_links.destroy') - end + def destroy? + !archived? && organisation_match? && user.has_permission?('connection_links.destroy') + end - def update? - !archived? && organisation_match? && user.has_permission?('connection_links.update') - end + def update? + !archived? && organisation_match? && user.has_permission?('connection_links.update') end +end diff --git a/app/policies/group_of_line_policy.rb b/app/policies/group_of_line_policy.rb index 60c60184c..03e94449d 100644 --- a/app/policies/group_of_line_policy.rb +++ b/app/policies/group_of_line_policy.rb @@ -1,7 +1,7 @@ - class GroupOfLinePolicy < ApplicationPolicy - class Scope < Scope - def resolve - scope - end +class GroupOfLinePolicy < ApplicationPolicy + class Scope < Scope + def resolve + scope end end +end diff --git a/app/policies/journey_pattern_policy.rb b/app/policies/journey_pattern_policy.rb index c0c9218c2..12bcced17 100644 --- a/app/policies/journey_pattern_policy.rb +++ b/app/policies/journey_pattern_policy.rb @@ -1,20 +1,20 @@ - class JourneyPatternPolicy < ApplicationPolicy +class JourneyPatternPolicy < ApplicationPolicy - class Scope < Scope - def resolve - scope - end + class Scope < Scope + def resolve + scope end + end - def create? - !archived? && organisation_match? && user.has_permission?('journey_patterns.create') - end + def create? + !archived? && organisation_match? && user.has_permission?('journey_patterns.create') + end - def destroy? - !archived? && organisation_match? && user.has_permission?('journey_patterns.destroy') - end + def destroy? + !archived? && organisation_match? && user.has_permission?('journey_patterns.destroy') + end - def update? - !archived? && organisation_match? && user.has_permission?('journey_patterns.update') - end + def update? + !archived? && organisation_match? && user.has_permission?('journey_patterns.update') end +end diff --git a/app/policies/line_policy.rb b/app/policies/line_policy.rb index 559f4e2f8..acb0d79e7 100644 --- a/app/policies/line_policy.rb +++ b/app/policies/line_policy.rb @@ -1,23 +1,23 @@ - class LinePolicy < ApplicationPolicy +class LinePolicy < ApplicationPolicy - class Scope < Scope - def resolve - scope - end - end - - def create_footnote? - !archived? && organisation_match? && user.has_permission?('footnotes.create') + class Scope < Scope + def resolve + scope end + end - def edit_footnote? - !archived? && organisation_match? && user.has_permission?('footnotes.update') - end + def create_footnote? + !archived? && organisation_match? && user.has_permission?('footnotes.create') + end - def destroy_footnote? - !archived? && organisation_match? && user.has_permission?('footnotes.destroy') - end + def edit_footnote? + !archived? && organisation_match? && user.has_permission?('footnotes.update') + end - def update_footnote? ; edit_footnote? end - def new_footnote? ; create_footnote? end + def destroy_footnote? + !archived? && organisation_match? && user.has_permission?('footnotes.destroy') end + + def update_footnote? ; edit_footnote? end + def new_footnote? ; create_footnote? end +end diff --git a/app/policies/network_policy.rb b/app/policies/network_policy.rb index 75105b7f8..9f86451a5 100644 --- a/app/policies/network_policy.rb +++ b/app/policies/network_policy.rb @@ -1,7 +1,7 @@ - class NetworkPolicy < ApplicationPolicy - class Scope < Scope - def resolve - scope - end +class NetworkPolicy < ApplicationPolicy + class Scope < Scope + def resolve + scope end end +end diff --git a/app/policies/route_policy.rb b/app/policies/route_policy.rb index b49f7bca7..7e9fe251a 100644 --- a/app/policies/route_policy.rb +++ b/app/policies/route_policy.rb @@ -1,23 +1,23 @@ - class RoutePolicy < ApplicationPolicy - class Scope < Scope - def resolve - scope - end +class RoutePolicy < ApplicationPolicy + class Scope < Scope + def resolve + scope end + end - def create? - !archived? && organisation_match? && user.has_permission?('routes.create') - end + def create? + !archived? && organisation_match? && user.has_permission?('routes.create') + end - def destroy? - !archived? && organisation_match? && user.has_permission?('routes.destroy') - end + def destroy? + !archived? && organisation_match? && user.has_permission?('routes.destroy') + end - def update? - !archived? && organisation_match? && user.has_permission?('routes.update') - end + def update? + !archived? && organisation_match? && user.has_permission?('routes.update') + end - def duplicate? - create? - end + def duplicate? + create? end +end diff --git a/app/policies/routing_constraint_zone_policy.rb b/app/policies/routing_constraint_zone_policy.rb index 6bdc69d5c..3cfcf46ff 100644 --- a/app/policies/routing_constraint_zone_policy.rb +++ b/app/policies/routing_constraint_zone_policy.rb @@ -1,19 +1,19 @@ - class RoutingConstraintZonePolicy < ApplicationPolicy - class Scope < Scope - def resolve - scope - end +class RoutingConstraintZonePolicy < ApplicationPolicy + class Scope < Scope + def resolve + scope end + end - def create? - !archived? && organisation_match? && user.has_permission?('routing_constraint_zones.create') - end + def create? + !archived? && organisation_match? && user.has_permission?('routing_constraint_zones.create') + end - def destroy? - !archived? && organisation_match? && user.has_permission?('routing_constraint_zones.destroy') - end + def destroy? + !archived? && organisation_match? && user.has_permission?('routing_constraint_zones.destroy') + end - def update? - !archived? && organisation_match? && user.has_permission?('routing_constraint_zones.update') - end + def update? + !archived? && organisation_match? && user.has_permission?('routing_constraint_zones.update') end +end diff --git a/app/policies/stop_area_policy.rb b/app/policies/stop_area_policy.rb index eaf4efe60..de8ecda8d 100644 --- a/app/policies/stop_area_policy.rb +++ b/app/policies/stop_area_policy.rb @@ -1,7 +1,7 @@ - class StopAreaPolicy < ApplicationPolicy - class Scope < Scope - def resolve - scope - end +class StopAreaPolicy < ApplicationPolicy + class Scope < Scope + def resolve + scope end end +end diff --git a/app/policies/time_table_policy.rb b/app/policies/time_table_policy.rb index 4638eabd8..92d3aef3e 100644 --- a/app/policies/time_table_policy.rb +++ b/app/policies/time_table_policy.rb @@ -1,32 +1,32 @@ - class TimeTablePolicy < ApplicationPolicy +class TimeTablePolicy < ApplicationPolicy - class Scope < Scope - def resolve - scope - end + class Scope < Scope + def resolve + scope end + end - def create? - !archived? && organisation_match? && user.has_permission?('time_tables.create') - end + def create? + !archived? && organisation_match? && user.has_permission?('time_tables.create') + end - def destroy? - !archived? && organisation_match? && user.has_permission?('time_tables.destroy') - end + def destroy? + !archived? && organisation_match? && user.has_permission?('time_tables.destroy') + end - def update? - !archived? && organisation_match? && user.has_permission?('time_tables.update') - end + def update? + !archived? && organisation_match? && user.has_permission?('time_tables.update') + end - def actualize? - !archived? && organisation_match? && edit? - end + def actualize? + !archived? && organisation_match? && edit? + end - def duplicate? - !archived? && organisation_match? && create? - end + def duplicate? + !archived? && organisation_match? && create? + end - def month? - update? - end + def month? + update? end +end diff --git a/app/policies/vehicle_journey_policy.rb b/app/policies/vehicle_journey_policy.rb index 1aa7a812e..24040455f 100644 --- a/app/policies/vehicle_journey_policy.rb +++ b/app/policies/vehicle_journey_policy.rb @@ -1,19 +1,19 @@ - class VehicleJourneyPolicy < ApplicationPolicy - class Scope < Scope - def resolve - scope - end +class VehicleJourneyPolicy < ApplicationPolicy + class Scope < Scope + def resolve + scope end + end - def create? - !archived? && organisation_match? && user.has_permission?('vehicle_journeys.create') - end + def create? + !archived? && organisation_match? && user.has_permission?('vehicle_journeys.create') + end - def destroy? - !archived? && organisation_match? && user.has_permission?('vehicle_journeys.destroy') - end + def destroy? + !archived? && organisation_match? && user.has_permission?('vehicle_journeys.destroy') + end - def update? - !archived? && organisation_match? && user.has_permission?('vehicle_journeys.update') - end + def update? + !archived? && organisation_match? && user.has_permission?('vehicle_journeys.update') end +end |
