diff options
Diffstat (limited to 'app/models/chouette/route.rb')
| -rw-r--r-- | app/models/chouette/route.rb | 9 | 
1 files changed, 7 insertions, 2 deletions
| diff --git a/app/models/chouette/route.rb b/app/models/chouette/route.rb index 3e20dc43e..049ee2881 100644 --- a/app/models/chouette/route.rb +++ b/app/models/chouette/route.rb @@ -76,11 +76,16 @@ class Chouette::Route < Chouette::TridentActiveRecord    after_commit :journey_patterns_control_route_sections -  def duplicate +  def duplicate name: nil, published_name: nil +    overrides = { +      'name' => name || self.name, +      'published_name' => published_name || self.published_name, +      'object_version' => object_version - 1 +    }      keys_for_create = attributes.keys - %w{id objectid created_at updated_at}      atts_for_create = attributes        .slice(*keys_for_create) -      .merge('object_version' => object_version - 1) +      .merge(overrides)      new_route = self.class.create!(atts_for_create)      duplicate_stop_points(for_route: new_route)      new_route | 
