From 8fef8ea7b319172385fa2ac4df2932a5e407e6f2 Mon Sep 17 00:00:00 2001 From: Thomas Haddad Date: Tue, 18 Apr 2017 16:21:22 +0200 Subject: Refs #2896: add behabior to select in pagination for tt Signed-off-by: Thomas Shawarma Haddad --- .../es6_browserified/time_tables/actions/index.js | 5 ++ .../time_tables/components/Navigate.js | 56 +++++++++++----------- .../time_tables/reducers/pagination.js | 3 ++ .../time_tables/reducers/timetable.js | 6 ++- 4 files changed, 42 insertions(+), 28 deletions(-) (limited to 'app/assets/javascripts') diff --git a/app/assets/javascripts/es6_browserified/time_tables/actions/index.js b/app/assets/javascripts/es6_browserified/time_tables/actions/index.js index 9cc048635..f17a20e7d 100644 --- a/app/assets/javascripts/es6_browserified/time_tables/actions/index.js +++ b/app/assets/javascripts/es6_browserified/time_tables/actions/index.js @@ -32,6 +32,11 @@ const actions = { pagination, nextPage : true }), + changePage : (dispatch, pagination, val) => ({ + type: 'CHANGE_PAGE', + dispatch, + page: val + }), updateDayTypes: (index) => ({ type: 'UPDATE_DAY_TYPES', index diff --git a/app/assets/javascripts/es6_browserified/time_tables/components/Navigate.js b/app/assets/javascripts/es6_browserified/time_tables/components/Navigate.js index d9851f648..df8c6e844 100644 --- a/app/assets/javascripts/es6_browserified/time_tables/components/Navigate.js +++ b/app/assets/javascripts/es6_browserified/time_tables/components/Navigate.js @@ -19,8 +19,11 @@ let Navigate = ({ dispatch, metas, timetable, pagination, status, filters}) => {
{e.preventDefault()}}> - - -
- + ))} + + + + + ) diff --git a/app/assets/javascripts/es6_browserified/time_tables/reducers/pagination.js b/app/assets/javascripts/es6_browserified/time_tables/reducers/pagination.js index 8f7b46465..35b9b3cd8 100644 --- a/app/assets/javascripts/es6_browserified/time_tables/reducers/pagination.js +++ b/app/assets/javascripts/es6_browserified/time_tables/reducers/pagination.js @@ -13,6 +13,9 @@ const pagination = (state = {}, action) => { let newPage = action.pagination.periode_range[action.pagination.periode_range.indexOf(action.pagination.currentPage) + nextPage] toggleOnConfirmModal() return _.assign({}, state, {currentPage : newPage, stateChanged: false}) + case 'CHANGE_PAGE': + toggleOnConfirmModal() + return _.assign({}, state, {currentPage : action.page, stateChanged: false}) default: return state } diff --git a/app/assets/javascripts/es6_browserified/time_tables/reducers/timetable.js b/app/assets/javascripts/es6_browserified/time_tables/reducers/timetable.js index 23c943d13..b2e5ad0be 100644 --- a/app/assets/javascripts/es6_browserified/time_tables/reducers/timetable.js +++ b/app/assets/javascripts/es6_browserified/time_tables/reducers/timetable.js @@ -21,8 +21,12 @@ const timetable = (state = {}, action) => { let nextPage = action.nextPage ? 1 : -1 let newPage = action.pagination.periode_range[action.pagination.periode_range.indexOf(action.pagination.currentPage) + nextPage] $('#ConfirmModal').modal('hide') - actions.fetchTimeTables(action.dispatch, newPage) + actions.fetchTimeTables(action.dispatch, newPage) return _.assign({}, state, {current_periode_range: newPage}) + case 'CHANGE_PAGE': + $('#ConfirmModal').modal('hide') + actions.fetchTimeTables(action.dispatch, action.page) + return _.assign({}, state, {current_periode_range: action.page}) default: return state } -- cgit v1.2.3