diff options
| author | Thomas Haddad | 2017-03-07 12:21:55 +0100 |
|---|---|---|
| committer | Thomas Haddad | 2017-03-07 12:22:15 +0100 |
| commit | b472d23f30462027910dfc7260fd09e3f350d1ea (patch) | |
| tree | 5b61e81ab9aba71b054ef85b26c3d2eee4c79e7b /app/assets/javascripts | |
| parent | 54dd75a51b9e52f12e190f7166499df36196541a (diff) | |
| download | chouette-core-b472d23f30462027910dfc7260fd09e3f350d1ea.tar.bz2 | |
Refs #2507: add timetable to filters
Signed-off-by: Thomas Shawarma Haddad <thomas.haddad@af83.com>
Diffstat (limited to 'app/assets/javascripts')
4 files changed, 23 insertions, 4 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 ec59a732e..d43147a53 100644 --- a/app/assets/javascripts/es6_browserified/vehicle_journeys/actions/index.js +++ b/app/assets/javascripts/es6_browserified/vehicle_journeys/actions/index.js @@ -177,6 +177,17 @@ const actions = { val, unit }), + filterSelect2Timetable: (selectedTT) =>({ + type: 'SELECT_TT_FILTER', + selectedItem:{ + id: selectedTT.id, + comment: selectedTT.comment, + objectid: selectedTT.objectid + } + }), + filterQuery: () => ({ + type: 'FILTER_QUERY' + }), fetchVehicleJourneys : (dispatch, currentPage, nextPage) => { if(currentPage == undefined){ currentPage = 1 diff --git a/app/assets/javascripts/es6_browserified/vehicle_journeys/components/Filters.js b/app/assets/javascripts/es6_browserified/vehicle_journeys/components/Filters.js index f265055b4..16baecec6 100644 --- a/app/assets/javascripts/es6_browserified/vehicle_journeys/components/Filters.js +++ b/app/assets/javascripts/es6_browserified/vehicle_journeys/components/Filters.js @@ -3,7 +3,7 @@ var PropTypes = require('react').PropTypes var MissionSelect2 = require('./tools/select2s/MissionSelect2') var TimetableSelect2 = require('./tools/select2s/TimetableSelect2') -const Filters = ({filters, onFilter, onResetFilters, onUpdateStartTimeFilter, onUpdateEndTimeFilter, onToggleWithoutSchedule}) => { +const Filters = ({filters, onFilter, onResetFilters, onUpdateStartTimeFilter, onUpdateEndTimeFilter, onToggleWithoutSchedule, onSelect2Timetable}) => { return ( <div className = 'form-filter mb-lg'> <div className = 'form-group'> @@ -45,6 +45,7 @@ const Filters = ({filters, onFilter, onResetFilters, onUpdateStartTimeFilter, on <div className = 'form-group'> <span> <TimetableSelect2 + onSelect2Timetable={onSelect2Timetable} hasRoute={true} chunkURL= {("/autocomplete_time_tables.json?route_id=" + String(window.route_id))} /> @@ -79,7 +80,8 @@ Filters.propTypes = { onFilter: PropTypes.func.isRequired, onResetFilters: PropTypes.func.isRequired, onUpdateStartTimeFilter: PropTypes.func.isRequired, - onUpdateEndTimeFilter: PropTypes.func.isRequired + onUpdateEndTimeFilter: PropTypes.func.isRequired, + onSelect2Timetable: PropTypes.func.isRequired } module.exports = Filters diff --git a/app/assets/javascripts/es6_browserified/vehicle_journeys/containers/Filters.js b/app/assets/javascripts/es6_browserified/vehicle_journeys/containers/Filters.js index a73527c11..94caf6e67 100644 --- a/app/assets/javascripts/es6_browserified/vehicle_journeys/containers/Filters.js +++ b/app/assets/javascripts/es6_browserified/vehicle_journeys/containers/Filters.js @@ -24,8 +24,11 @@ const mapDispatchToProps = (dispatch) => { onResetFilters: () =>{ dispatch(actions.resetFilters()) }, - onFilter: () =>{ - dispatch(actions.filterQuery()) + // onFilter: () =>{ + // dispatch(actions.filterQuery()) + // }, + onSelect2Timetable: (e) => { + dispatch(actions.filterSelect2Timetable(e.params.data)) } } } diff --git a/app/assets/javascripts/es6_browserified/vehicle_journeys/reducers/filters.js b/app/assets/javascripts/es6_browserified/vehicle_journeys/reducers/filters.js index 27ac80f21..9531b7424 100644 --- a/app/assets/javascripts/es6_browserified/vehicle_journeys/reducers/filters.js +++ b/app/assets/javascripts/es6_browserified/vehicle_journeys/reducers/filters.js @@ -37,6 +37,9 @@ const filters = (state = {}, action) => { }else{ return state } + case 'SELECT_TT_FILTER': + newQuery = Object.assign({}, state.query, {timetable : action.selectedItem}) + return Object.assign({}, state, {query: newQuery}) case 'TOGGLE_ARRIVALS': return Object.assign({}, state, {toggleArrivals: !state.toggleArrivals}) default: |
