diff options
| author | Zog | 2018-04-06 07:36:48 +0200 |
|---|---|---|
| committer | Zog | 2018-04-06 07:36:48 +0200 |
| commit | 2ee119ee81fd2a0fcaaa729be0a845b6b11e7de8 (patch) | |
| tree | 58eba910b2f52575ae04c2f807ab92499d415847 | |
| parent | 25473075be6b31632295c95696891368b5bc26f4 (diff) | |
| download | chouette-core-6459-fix-tz-in-vj-editor.tar.bz2 | |
Refs #6459; Use first stop's TZ as base TZ for schedules computation6459-fix-tz-in-vj-editor
| -rw-r--r-- | app/javascript/vehicle_journeys/reducers/vehicleJourneys.js | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/app/javascript/vehicle_journeys/reducers/vehicleJourneys.js b/app/javascript/vehicle_journeys/reducers/vehicleJourneys.js index 6524f8d6f..b02c19a69 100644 --- a/app/javascript/vehicle_journeys/reducers/vehicleJourneys.js +++ b/app/javascript/vehicle_journeys/reducers/vehicleJourneys.js @@ -9,32 +9,35 @@ const vehicleJourney= (state = {}, action, keep) => { return _.assign({}, state, {selected: false}) case 'ADD_VEHICLEJOURNEY': let pristineVjasList = [] - let prevSp = action.stopPointsList[0] + let prevSp let current_time = { hour: 0, minute: 0 } let computeSchedule = false - let userTZOffet = 0 + let initTZOffet = 0 if(action.data["start_time.hour"] && action.data["start_time.hour"].value && action.data["start_time.hour"].value.length > 0 && action.data["start_time.minute"] && action.selectedJourneyPattern.full_schedule && action.selectedJourneyPattern.costs){ computeSchedule = true - userTZOffet = action.data["tz_offset"] && parseInt(action.data["tz_offset"].value) || 0 - current_time.hour = parseInt(action.data["start_time.hour"].value) + parseInt(userTZOffet / 60) + initTZOffet = - action.stopPointsList[0].time_zone_offset / 60 || 0 + current_time.hour = parseInt(action.data["start_time.hour"].value) + parseInt(initTZOffet / 60) current_time.minute = 0 if(action.data["start_time.minute"].value){ - current_time.minute = parseInt(action.data["start_time.minute"].value) + (userTZOffet - 60 * parseInt(userTZOffet / 60)) + current_time.minute = parseInt(action.data["start_time.minute"].value) + (initTZOffet - 60 * parseInt(initTZOffet / 60)) } } _.each(action.stopPointsList, (sp) =>{ let inJourney = false let newVjas if(computeSchedule){ - if(action.selectedJourneyPattern.costs[prevSp.stop_area_id + "-" + sp.stop_area_id]){ + if(prevSp && action.selectedJourneyPattern.costs[prevSp.stop_area_id + "-" + sp.stop_area_id]){ let delta = parseInt(action.selectedJourneyPattern.costs[prevSp.stop_area_id + "-" + sp.stop_area_id].time) current_time = actions.addMinutesToTime(current_time, delta) prevSp = sp inJourney = true } + if(!prevSp){ + prevSp = sp + } let offsetHours = sp.time_zone_offset / 3600 let offsetminutes = sp.time_zone_offset/60 - 60*offsetHours newVjas = { |
