aboutsummaryrefslogtreecommitdiffstats
path: root/app/assets/javascripts
diff options
context:
space:
mode:
authorThomas Haddad2017-02-17 11:52:39 +0100
committerThomas Haddad2017-02-17 11:52:39 +0100
commitf0bf220b554dfea74e252e1d64f3dbda81055470 (patch)
tree2ec4f6d0ff8d717ebf5fa0e669d18ce2fa0ed33e /app/assets/javascripts
parent25761bf1dc0247b0f3a5d2bd95022d782c648722 (diff)
downloadchouette-core-f0bf220b554dfea74e252e1d64f3dbda81055470.tar.bz2
Refs #2521: add selected attr to vehicle journey
Signed-off-by: Thomas Shawarma Haddad <thomas.haddad@af83.com>
Diffstat (limited to 'app/assets/javascripts')
-rw-r--r--app/assets/javascripts/es6_browserified/vehicle_journeys/actions/index.js7
-rw-r--r--app/assets/javascripts/es6_browserified/vehicle_journeys/components/VehicleJourney.js11
-rw-r--r--app/assets/javascripts/es6_browserified/vehicle_journeys/components/VehicleJourneys.js4
-rw-r--r--app/assets/javascripts/es6_browserified/vehicle_journeys/containers/VehicleJourneysList.js3
-rw-r--r--app/assets/javascripts/es6_browserified/vehicle_journeys/reducers/vehicleJourneys.js10
5 files changed, 33 insertions, 2 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 56ed1ef07..e906b1abf 100644
--- a/app/assets/javascripts/es6_browserified/vehicle_journeys/actions/index.js
+++ b/app/assets/javascripts/es6_browserified/vehicle_journeys/actions/index.js
@@ -36,6 +36,10 @@ const actions = {
openCreateModal : () => ({
type : 'CREATE_VEHICLEJOURNEY_MODAL'
}),
+ selectVehicleJourney : (index) => ({
+ type : 'SELECT_VEHICLEJOURNEY',
+ index
+ }),
addVehicleJourney : (data) => ({
type: 'ADD_VEHICLEJOURNEY',
data,
@@ -138,7 +142,8 @@ const actions = {
footnotes: val.footnotes,
time_tables: timeTables,
vehicle_journey_at_stops: val.vehicle_journey_at_stops,
- deletable: false
+ deletable: false,
+ selected: false
})
}
// if(vehicleJourneys.length != window.vehicleJourneysPerPage){
diff --git a/app/assets/javascripts/es6_browserified/vehicle_journeys/components/VehicleJourney.js b/app/assets/javascripts/es6_browserified/vehicle_journeys/components/VehicleJourney.js
index 0dc208846..53cf2c5fb 100644
--- a/app/assets/javascripts/es6_browserified/vehicle_journeys/components/VehicleJourney.js
+++ b/app/assets/javascripts/es6_browserified/vehicle_journeys/components/VehicleJourney.js
@@ -12,6 +12,16 @@ class VehicleJourney extends Component {
<div className={'list-group-item'}>
<div style={{display: 'inline-block', verticalAlign: 'top', width: 'calc(100% - 25px)'}}>
+ {/* selected */}
+ <p className='small'>
+ <label>Sélectionné</label>
+ <input
+ onChange = {(e) => this.props.onSelectVehicleJourney(this.props.index)}
+ type = 'checkbox'
+ checked = {this.props.value.selected}
+ ></input>
+ </p>
+
{/* Nom */}
<p className='small'>
<strong>Nom: </strong>{this.props.value.comment}
@@ -95,6 +105,7 @@ VehicleJourney.propTypes = {
filters: PropTypes.object.isRequired,
index: PropTypes.number.isRequired,
onUpdateTime: PropTypes.func.isRequired,
+ onSelectVehicleJourney: PropTypes.func.isRequired
}
module.exports = VehicleJourney
diff --git a/app/assets/javascripts/es6_browserified/vehicle_journeys/components/VehicleJourneys.js b/app/assets/javascripts/es6_browserified/vehicle_journeys/components/VehicleJourneys.js
index 0c2a11bac..9b3836fc4 100644
--- a/app/assets/javascripts/es6_browserified/vehicle_journeys/components/VehicleJourneys.js
+++ b/app/assets/javascripts/es6_browserified/vehicle_journeys/components/VehicleJourneys.js
@@ -34,6 +34,7 @@ class VehicleJourneys extends Component{
index = {index}
filters = {this.props.filters}
onUpdateTime = {this.props.onUpdateTime}
+ onSelectVehicleJourney = {this.props.onSelectVehicleJourney}
/>
)}
</div>
@@ -44,9 +45,10 @@ class VehicleJourneys extends Component{
VehicleJourneys.propTypes = {
status: PropTypes.object.isRequired,
+ filters: PropTypes.object.isRequired,
onLoadFirstPage: PropTypes.func.isRequired,
onUpdateTime: PropTypes.func.isRequired,
- filters: PropTypes.object.isRequired
+ onSelectVehicleJourney: PropTypes.func.isRequired
}
module.exports = VehicleJourneys
diff --git a/app/assets/javascripts/es6_browserified/vehicle_journeys/containers/VehicleJourneysList.js b/app/assets/javascripts/es6_browserified/vehicle_journeys/containers/VehicleJourneysList.js
index b08340887..ba9491ee4 100644
--- a/app/assets/javascripts/es6_browserified/vehicle_journeys/containers/VehicleJourneysList.js
+++ b/app/assets/javascripts/es6_browserified/vehicle_journeys/containers/VehicleJourneysList.js
@@ -18,6 +18,9 @@ const mapDispatchToProps = (dispatch) => {
},
onUpdateTime: (e, subIndex, index, timeUnit, isDeparture, isArrivalsToggled) => {
dispatch(actions.updateTime(e.target.value, subIndex, index, timeUnit, isDeparture, isArrivalsToggled))
+ },
+ onSelectVehicleJourney: (index) => {
+ dispatch(actions.selectVehicleJourney(index))
}
}
}
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 ccf1efea1..987c57de5 100644
--- a/app/assets/javascripts/es6_browserified/vehicle_journeys/reducers/vehicleJourneys.js
+++ b/app/assets/javascripts/es6_browserified/vehicle_journeys/reducers/vehicleJourneys.js
@@ -2,6 +2,8 @@ var actions = require("../actions")
const vehicleJourney= (state = {}, action) => {
switch (action.type) {
+ case 'SELECT_VEHICLEJOURNEY':
+ return Object.assign({}, state, {selected: !state.selected})
case 'ADD_VEHICLEJOURNEY':
return {
journey_pattern_id: parseInt(action.data.journey_pattern_id.value),
@@ -60,6 +62,14 @@ const vehicleJourneys = (state = [], action) => {
vehicleJourney(state, action),
...state
]
+ case 'SELECT_VEHICLEJOURNEY':
+ return state.map((vj, i) =>{
+ if (i == action.index){
+ return vehicleJourney(vj, action)
+ } else {
+ return vj
+ }
+ })
case 'UPDATE_TIME':
return state.map((vj, i) =>{
if (i == action.index){