aboutsummaryrefslogtreecommitdiffstats
path: root/app/models/chouette/journey_pattern.rb
diff options
context:
space:
mode:
authorXinhui2017-03-17 11:30:19 +0100
committerXinhui2017-03-17 11:30:51 +0100
commit2c8690d30b851a48bc2ce797f4ac44c7bfedc024 (patch)
tree7e7b0dbf17aacb6e9381d7e54c4d491e910918d3 /app/models/chouette/journey_pattern.rb
parent085c1271814a01a87c8f3367e45c200766dc8738 (diff)
downloadchouette-core-2c8690d30b851a48bc2ce797f4ac44c7bfedc024.tar.bz2
Wip vj save new vj from state && update vj journey_pattern
Ref #2777
Diffstat (limited to 'app/models/chouette/journey_pattern.rb')
-rw-r--r--app/models/chouette/journey_pattern.rb8
1 files changed, 3 insertions, 5 deletions
diff --git a/app/models/chouette/journey_pattern.rb b/app/models/chouette/journey_pattern.rb
index c57d42e71..34b0d9345 100644
--- a/app/models/chouette/journey_pattern.rb
+++ b/app/models/chouette/journey_pattern.rb
@@ -25,9 +25,7 @@ class Chouette::JourneyPattern < Chouette::TridentActiveRecord
state.each do |item|
item.delete('errors')
jp = find_by(objectid: item['object_id']) || state_create_instance(route, item)
- if item['deletable'] && jp.persisted?
- next if jp.destroy
- end
+ next if item['deletable'] && jp.persisted? && jp.destroy
# Update attributes and stop_points associations
jp.update_attributes(state_permited_attributes(item))
@@ -40,7 +38,7 @@ class Chouette::JourneyPattern < Chouette::TridentActiveRecord
raise ActiveRecord::Rollback
end
end
- # clean
+
state.map {|item| item.delete('new_record')}
state.delete_if {|item| item['deletable']}
end
@@ -54,8 +52,8 @@ class Chouette::JourneyPattern < Chouette::TridentActiveRecord
end
def self.state_create_instance route, item
- jp = route.journey_patterns.create(state_permited_attributes(item))
# Flag new record, so we can unset object_id if transaction rollback
+ jp = route.journey_patterns.create(state_permited_attributes(item))
item['object_id'] = jp.objectid
item['new_record'] = true
jp