aboutsummaryrefslogtreecommitdiffstats
path: root/app
diff options
context:
space:
mode:
authorXinhui2017-03-15 15:58:51 +0100
committerXinhui2017-03-15 15:59:00 +0100
commitef8c8fb165938b60d94d404cb2133bac1aed1219 (patch)
tree13b5120f569d0156dafdc76ad71c89dd3c96c5e9 /app
parent4c15d6d9127c8c5fa187221ab5ad23dd7c8b1127 (diff)
downloadchouette-core-ef8c8fb165938b60d94d404cb2133bac1aed1219.tar.bz2
Update vj && perform validation from state
Refs #2777
Diffstat (limited to 'app')
-rw-r--r--app/models/chouette/vehicle_journey.rb9
1 files changed, 6 insertions, 3 deletions
diff --git a/app/models/chouette/vehicle_journey.rb b/app/models/chouette/vehicle_journey.rb
index 3531a18e8..391d8d230 100644
--- a/app/models/chouette/vehicle_journey.rb
+++ b/app/models/chouette/vehicle_journey.rb
@@ -80,13 +80,12 @@ module Chouette
item.delete('errors')
vj = find_by(objectid: item['objectid'])
next if item['deletable'] && vj.persisted? && vj.destroy
-
vj.update_vehicle_journey_at_stops_state(item['vehicle_journey_at_stops'])
+ vj.update_attributes(state_permited_attributes(item))
item['errors'] = vj.errors if vj.errors.any?
end
-
if state.any? {|item| item['errors']}
- raise ActiveRecord::Rollback
+ raise ::ActiveRecord::Rollback
end
end
@@ -94,6 +93,10 @@ module Chouette
state.delete_if {|item| item['deletable']}
end
+ def self.state_permited_attributes item
+ item.slice('published_journey_identifier', 'published_journey_name').to_hash
+ end
+
def increasing_times
previous = nil
vehicle_journey_at_stops.select{|vjas| vjas.departure_time && vjas.arrival_time}.each do |vjas|