diff options
| author | Xinhui | 2017-03-15 15:58:51 +0100 |
|---|---|---|
| committer | Xinhui | 2017-03-15 15:59:00 +0100 |
| commit | ef8c8fb165938b60d94d404cb2133bac1aed1219 (patch) | |
| tree | 13b5120f569d0156dafdc76ad71c89dd3c96c5e9 /app | |
| parent | 4c15d6d9127c8c5fa187221ab5ad23dd7c8b1127 (diff) | |
| download | chouette-core-ef8c8fb165938b60d94d404cb2133bac1aed1219.tar.bz2 | |
Update vj && perform validation from state
Refs #2777
Diffstat (limited to 'app')
| -rw-r--r-- | app/models/chouette/vehicle_journey.rb | 9 |
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| |
