diff options
| author | Thomas Haddad | 2017-03-10 16:25:23 +0100 |
|---|---|---|
| committer | Thomas Haddad | 2017-03-10 16:25:54 +0100 |
| commit | 54254d44578a8d5057a3dc7738ae570f55720833 (patch) | |
| tree | f0fd5b6b8e1f37dbc529f1f1cdba86f3d98a634d /app/assets/javascripts | |
| parent | a41d0c93833ad846b3903c0529328638e6d88be3 (diff) | |
| download | chouette-core-54254d44578a8d5057a3dc7738ae570f55720833.tar.bz2 | |
Fix add vj when no vj fetched before
Signed-off-by: Thomas Shawarma Haddad <thomas.haddad@af83.com>
Diffstat (limited to 'app/assets/javascripts')
4 files changed, 34 insertions, 16 deletions
diff --git a/app/assets/javascripts/es6_browserified/vehicle_journeys/actions/index.js b/app/assets/javascripts/es6_browserified/vehicle_journeys/actions/index.js index d6de64256..169ecdb13 100644 --- a/app/assets/javascripts/es6_browserified/vehicle_journeys/actions/index.js +++ b/app/assets/javascripts/es6_browserified/vehicle_journeys/actions/index.js @@ -46,7 +46,8 @@ const actions = { id: selectedJP.id, objectid: selectedJP.object_id, name: selectedJP.name, - published_name: selectedJP.published_name + published_name: selectedJP.published_name, + stop_areas: selectedJP.stop_area_short_descriptions } }), openEditModal : (vehicleJourney) => ({ @@ -98,10 +99,11 @@ const actions = { cancelSelection : () => ({ type: 'CANCEL_SELECTION' }), - addVehicleJourney : (data, selectedJourneyPattern) => ({ + addVehicleJourney : (data, selectedJourneyPattern, stopPointsList) => ({ type: 'ADD_VEHICLEJOURNEY', data, - selectedJourneyPattern + selectedJourneyPattern, + stopPointsList }), editVehicleJourney : (data) => ({ type: 'EDIT_VEHICLEJOURNEY', diff --git a/app/assets/javascripts/es6_browserified/vehicle_journeys/components/tools/CreateModal.js b/app/assets/javascripts/es6_browserified/vehicle_journeys/components/tools/CreateModal.js index 0c083c897..79766f672 100644 --- a/app/assets/javascripts/es6_browserified/vehicle_journeys/components/tools/CreateModal.js +++ b/app/assets/javascripts/es6_browserified/vehicle_journeys/components/tools/CreateModal.js @@ -11,7 +11,7 @@ class CreateModal extends Component { handleSubmit() { if(actions.validateFields(this.refs) == true && this.props.modal.modalProps.selectedJPModal) { - this.props.onAddVehicleJourney(this.refs, this.props.modal.modalProps.selectedJPModal) + this.props.onAddVehicleJourney(this.refs, this.props.modal.modalProps.selectedJPModal, this.props.stopPointsList) this.props.onModalClose() $('#NewVehicleJourneyModal').modal('hide') } @@ -104,6 +104,7 @@ CreateModal.propTypes = { index: PropTypes.number, modal: PropTypes.object.isRequired, status: PropTypes.object.isRequired, + stopPointsList: PropTypes.array.isRequired, onOpenCreateModal: PropTypes.func.isRequired, onModalClose: PropTypes.func.isRequired, onAddVehicleJourney: PropTypes.func.isRequired, diff --git a/app/assets/javascripts/es6_browserified/vehicle_journeys/containers/tools/AddVehicleJourney.js b/app/assets/javascripts/es6_browserified/vehicle_journeys/containers/tools/AddVehicleJourney.js index 1c8cf1063..7a52025b8 100644 --- a/app/assets/javascripts/es6_browserified/vehicle_journeys/containers/tools/AddVehicleJourney.js +++ b/app/assets/javascripts/es6_browserified/vehicle_journeys/containers/tools/AddVehicleJourney.js @@ -7,6 +7,7 @@ const mapStateToProps = (state) => { modal: state.modal, vehicleJourneys: state.vehicleJourneys, status: state.status, + stopPointsList: state.stopPointsList, filters: state.filters } } @@ -16,8 +17,8 @@ const mapDispatchToProps = (dispatch) => { onModalClose: () =>{ dispatch(actions.closeModal()) }, - onAddVehicleJourney: (data, selectedJourneyPattern) =>{ - dispatch(actions.addVehicleJourney(data, selectedJourneyPattern)) + onAddVehicleJourney: (data, selectedJourneyPattern, stopPointsList) =>{ + dispatch(actions.addVehicleJourney(data, selectedJourneyPattern, stopPointsList)) }, onOpenCreateModal: () =>{ dispatch(actions.openCreateModal()) diff --git a/app/assets/javascripts/es6_browserified/vehicle_journeys/reducers/vehicleJourneys.js b/app/assets/javascripts/es6_browserified/vehicle_journeys/reducers/vehicleJourneys.js index 39fe3fceb..277da550e 100644 --- a/app/assets/javascripts/es6_browserified/vehicle_journeys/reducers/vehicleJourneys.js +++ b/app/assets/javascripts/es6_browserified/vehicle_journeys/reducers/vehicleJourneys.js @@ -1,3 +1,4 @@ +var _ = require('lodash') var actions = require("../actions") const vehicleJourney= (state = {}, action) => { @@ -7,23 +8,36 @@ const vehicleJourney= (state = {}, action) => { case 'CANCEL_SELECTION': return Object.assign({}, state, {selected: false}) case 'ADD_VEHICLEJOURNEY': - let pristineVjas = JSON.parse(JSON.stringify(state[0].vehicle_journey_at_stops)) - pristineVjas.map((vj) =>{ - vj.departure_time.hour = '00' - vj.departure_time.minute = '00' - vj.arrival_time.hour = '00' - vj.arrival_time.minute = '00' - vj.delta = 0 - delete vj['stop_area_object_id'] + let pristineVjasList = [] + _.each(action.stopPointsList, (sp) =>{ + let newVjas = { + delta: 0, + departure_time:{ + hour: '00', + minute: '00' + }, + arrival_time:{ + hour: '00', + minute: '00' + }, + stop_point_objectid: sp.object_id, + dummy: true + } + _.each(action.selectedJourneyPattern.stop_areas, (jp) =>{ + if (jp.stop_area_short_description.id == sp.id){ + newVjas.dummy = false + return + } + }) + pristineVjasList.push(newVjas) }) return { - dummy: false, journey_pattern: action.selectedJourneyPattern, published_journey_name: action.data.published_journey_name.value, objectid: '', footnotes: [], time_tables: [], - vehicle_journey_at_stops: pristineVjas, + vehicle_journey_at_stops: pristineVjasList, selected: false, deletable: false } |
