diff options
| author | Thomas Haddad | 2017-05-16 16:28:11 +0200 | 
|---|---|---|
| committer | Thomas Haddad | 2017-05-16 16:28:57 +0200 | 
| commit | 34df7a4608cb5ddea8c7fddc63143c921062168c (patch) | |
| tree | e00d5076d568043a88d7b3f50812bbfb00e4cd4d /app | |
| parent | 4066aaea24fb1ebdbbe7791089a30fdaf638f2c1 (diff) | |
| download | chouette-core-34df7a4608cb5ddea8c7fddc63143c921062168c.tar.bz2 | |
Refs #3403: Fix timetables modal now working as expected
Signed-off-by: Thomas Shawarma Haddad <thomas.haddad@af83.com>
Diffstat (limited to 'app')
| -rw-r--r-- | app/assets/javascripts/es6_browserified/vehicle_journeys/actions/index.js | 7 | ||||
| -rw-r--r-- | app/assets/javascripts/es6_browserified/vehicle_journeys/components/Tools.js | 4 | ||||
| -rw-r--r-- | app/assets/javascripts/es6_browserified/vehicle_journeys/components/tools/TimetablesEditVehicleJourney.js (renamed from app/assets/javascripts/es6_browserified/vehicle_journeys/components/tools/CalendarsEditVehicleJourney.js) | 10 | ||||
| -rw-r--r-- | app/assets/javascripts/es6_browserified/vehicle_journeys/containers/tools/TimetablesEditVehicleJourney.js (renamed from app/assets/javascripts/es6_browserified/vehicle_journeys/containers/tools/CalendarsEditVehicleJourney.js) | 10 | ||||
| -rw-r--r-- | app/assets/javascripts/es6_browserified/vehicle_journeys/index.js | 14 | ||||
| -rw-r--r-- | app/assets/javascripts/es6_browserified/vehicle_journeys/reducers/modal.js | 11 | ||||
| -rw-r--r-- | app/assets/javascripts/es6_browserified/vehicle_journeys/reducers/vehicleJourneys.js | 5 | 
7 files changed, 26 insertions, 35 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 0e6f5ed12..06f783620 100644 --- a/app/assets/javascripts/es6_browserified/vehicle_journeys/actions/index.js +++ b/app/assets/javascripts/es6_browserified/vehicle_journeys/actions/index.js @@ -88,9 +88,10 @@ const actions = {      type : 'DELETE_CALENDAR_MODAL',      timetable    }), -  editVehicleJourneyCalendars : (vehicleJourneys) => ({ -    type: 'EDIT_VEHICLEJOURNEYS_CALENDARS', -    vehicleJourneys +  editVehicleJourneyTimetables : (vehicleJourneys, timetables) => ({ +    type: 'EDIT_VEHICLEJOURNEYS_TIMETABLES', +    vehicleJourneys, +    timetables    }),    openShiftModal : () => ({      type : 'SHIFT_VEHICLEJOURNEY_MODAL' diff --git a/app/assets/javascripts/es6_browserified/vehicle_journeys/components/Tools.js b/app/assets/javascripts/es6_browserified/vehicle_journeys/components/Tools.js index e486dd155..b417828db 100644 --- a/app/assets/javascripts/es6_browserified/vehicle_journeys/components/Tools.js +++ b/app/assets/javascripts/es6_browserified/vehicle_journeys/components/Tools.js @@ -6,7 +6,7 @@ var ShiftVehicleJourney = require('../containers/tools/ShiftVehicleJourney')  var DuplicateVehicleJourney = require('../containers/tools/DuplicateVehicleJourney')  var EditVehicleJourney = require('../containers/tools/EditVehicleJourney')  var NotesEditVehicleJourney = require('../containers/tools/NotesEditVehicleJourney') -var CalendarsEditVehicleJourney = require('../containers/tools/CalendarsEditVehicleJourney') +var TimetablesEditVehicleJourney = require('../containers/tools/TimetablesEditVehicleJourney')  var actions = require('../actions')  const Tools = ({vehicleJourneys, onCancelSelection}) => { @@ -17,7 +17,7 @@ const Tools = ({vehicleJourneys, onCancelSelection}) => {          <DuplicateVehicleJourney />          <ShiftVehicleJourney />          <EditVehicleJourney /> -        <CalendarsEditVehicleJourney /> +        <TimetablesEditVehicleJourney />          <NotesEditVehicleJourney />          <DeleteVehicleJourneys />        </ul> diff --git a/app/assets/javascripts/es6_browserified/vehicle_journeys/components/tools/CalendarsEditVehicleJourney.js b/app/assets/javascripts/es6_browserified/vehicle_journeys/components/tools/TimetablesEditVehicleJourney.js index e32c873e6..d6c1179ba 100644 --- a/app/assets/javascripts/es6_browserified/vehicle_journeys/components/tools/CalendarsEditVehicleJourney.js +++ b/app/assets/javascripts/es6_browserified/vehicle_journeys/components/tools/TimetablesEditVehicleJourney.js @@ -4,13 +4,13 @@ var PropTypes = require('react').PropTypes  var actions = require('../../actions')  var TimetableSelect2 = require('./select2s/TimetableSelect2') -class CalendarsEditVehicleJourney extends Component { +class TimetablesEditVehicleJourney extends Component {    constructor(props) {      super(props)    }    handleSubmit() { -    this.props.onCalendarsEditVehicleJourney(this.props.modal.modalProps.vehicleJourneys) +    this.props.onTimetablesEditVehicleJourney(this.props.modal.modalProps.vehicleJourneys, this.props.modal.modalProps.timetables)      this.props.onModalClose()      $('#CalendarsEditVehicleJourneyModal').modal('hide')    } @@ -134,14 +134,14 @@ class CalendarsEditVehicleJourney extends Component {    }  } -CalendarsEditVehicleJourney.propTypes = { +TimetablesEditVehicleJourney.propTypes = {    onOpenCalendarsEditModal: PropTypes.func.isRequired,    onModalClose: PropTypes.func.isRequired, -  onCalendarsEditVehicleJourney: PropTypes.func.isRequired, +  onTimetablesEditVehicleJourney: PropTypes.func.isRequired,    onDeleteCalendarModal: PropTypes.func.isRequired,    onSelect2Timetable: PropTypes.func.isRequired,    onAddSelectedTimetable: PropTypes.func.isRequired,    filters: PropTypes.object.isRequired  } -module.exports = CalendarsEditVehicleJourney +module.exports = TimetablesEditVehicleJourney diff --git a/app/assets/javascripts/es6_browserified/vehicle_journeys/containers/tools/CalendarsEditVehicleJourney.js b/app/assets/javascripts/es6_browserified/vehicle_journeys/containers/tools/TimetablesEditVehicleJourney.js index 130acb017..6d0096019 100644 --- a/app/assets/javascripts/es6_browserified/vehicle_journeys/containers/tools/CalendarsEditVehicleJourney.js +++ b/app/assets/javascripts/es6_browserified/vehicle_journeys/containers/tools/TimetablesEditVehicleJourney.js @@ -1,5 +1,5 @@  var connect = require('react-redux').connect -var CalendarsEditComponent = require('../../components/tools/CalendarsEditVehicleJourney') +var TimetablesEditComponent = require('../../components/tools/TimetablesEditVehicleJourney')  var actions = require('../../actions')  const mapStateToProps = (state) => { @@ -22,8 +22,8 @@ const mapDispatchToProps = (dispatch) => {      onDeleteCalendarModal: (timetable) => {        dispatch(actions.deleteCalendarModal(timetable))      }, -    onCalendarsEditVehicleJourney: (calendars) =>{ -      dispatch(actions.editVehicleJourneyCalendars(calendars)) +    onTimetablesEditVehicleJourney: (vehicleJourneys, timetables) =>{ +      dispatch(actions.editVehicleJourneyTimetables(vehicleJourneys, timetables))      },      onSelect2Timetable: (e) =>{        dispatch(actions.selectTTCalendarsModal(e.params.data)) @@ -34,6 +34,6 @@ const mapDispatchToProps = (dispatch) => {    }  } -const CalendarsEditVehicleJourney = connect(mapStateToProps, mapDispatchToProps)(CalendarsEditComponent) +const TimetablesEditVehicleJourney = connect(mapStateToProps, mapDispatchToProps)(TimetablesEditComponent) -module.exports = CalendarsEditVehicleJourney +module.exports = TimetablesEditVehicleJourney diff --git a/app/assets/javascripts/es6_browserified/vehicle_journeys/index.js b/app/assets/javascripts/es6_browserified/vehicle_journeys/index.js index 4c9423c1f..3b80df34f 100644 --- a/app/assets/javascripts/es6_browserified/vehicle_journeys/index.js +++ b/app/assets/javascripts/es6_browserified/vehicle_journeys/index.js @@ -8,10 +8,10 @@ var actions = require("./actions")  var enableBatching = require('./batch').enableBatching  // logger, DO NOT REMOVE -// var applyMiddleware = require('redux').applyMiddleware -// var createLogger = require('redux-logger') -// var thunkMiddleware = require('redux-thunk').default -// var promise = require('redux-promise') +var applyMiddleware = require('redux').applyMiddleware +var createLogger = require('redux-logger') +var thunkMiddleware = require('redux-thunk').default +var promise = require('redux-promise')  var selectedJP = [] @@ -80,12 +80,12 @@ if (window.jpOrigin){    initialState.filters.queryString = actions.encodeParams(params)  } -// const loggerMiddleware = createLogger() +const loggerMiddleware = createLogger()  let store = createStore(    enableBatching(vehicleJourneysApp), -  initialState -  // applyMiddleware(thunkMiddleware, promise, loggerMiddleware) +  initialState, +  applyMiddleware(thunkMiddleware, promise, loggerMiddleware)  )  render( diff --git a/app/assets/javascripts/es6_browserified/vehicle_journeys/reducers/modal.js b/app/assets/javascripts/es6_browserified/vehicle_journeys/reducers/modal.js index 3b13ab9de..e504c2531 100644 --- a/app/assets/javascripts/es6_browserified/vehicle_journeys/reducers/modal.js +++ b/app/assets/javascripts/es6_browserified/vehicle_journeys/reducers/modal.js @@ -63,17 +63,6 @@ const modal = (state = {}, action) => {      case 'ADD_SELECTED_TIMETABLE':        if(state.modalProps.selectedTimetable){          newModalProps = JSON.parse(JSON.stringify(state.modalProps)) -        newModalProps.vehicleJourneys.map((vj) => { -          let isPresent = false -          vj.time_tables.forEach((tt) =>{ -            if (_.isEqual(newModalProps.selectedTimetable.objectid, tt.objectid)){ -              isPresent = true -            } -          }) -          if (!isPresent){ -            vj.time_tables.push(newModalProps.selectedTimetable) -          } -        })          if (!_.find(newModalProps.timetables, newModalProps.selectedTimetable)){            newModalProps.timetables.push(newModalProps.selectedTimetable)          } 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 2db76deae..d9f99e644 100644 --- a/app/assets/javascripts/es6_browserified/vehicle_journeys/reducers/vehicleJourneys.js +++ b/app/assets/javascripts/es6_browserified/vehicle_journeys/reducers/vehicleJourneys.js @@ -147,13 +147,14 @@ const vehicleJourneys = (state = [], action) => {            return vj          }        }) -    case 'EDIT_VEHICLEJOURNEYS_CALENDARS': +    case 'EDIT_VEHICLEJOURNEYS_TIMETABLES': +      let newTimetables = JSON.parse(JSON.stringify(action.timetables))        return state.map((vj,i) =>{          if(vj.selected){            let updatedVJ = _.assign({}, vj)            action.vehicleJourneys.map((vjm, j) =>{              if(vj.objectid == vjm.objectid){ -              updatedVJ.time_tables =  vjm.time_tables +              updatedVJ.time_tables =  newTimetables              }            })            return updatedVJ  | 
