aboutsummaryrefslogtreecommitdiffstats
path: root/app/assets/javascripts
diff options
context:
space:
mode:
Diffstat (limited to 'app/assets/javascripts')
-rw-r--r--app/assets/javascripts/es6_browserified/time_tables/actions/index.js5
-rw-r--r--app/assets/javascripts/es6_browserified/time_tables/components/Navigate.js56
-rw-r--r--app/assets/javascripts/es6_browserified/time_tables/reducers/pagination.js3
-rw-r--r--app/assets/javascripts/es6_browserified/time_tables/reducers/timetable.js6
4 files changed, 42 insertions, 28 deletions
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}) => {
<form className='page_links' onSubmit={e => {e.preventDefault()}}>
<select
value={pagination.currentPage}
- onChange={()=>{}}
- >
+ onChange={(e)=>{
+ e.preventDefault()
+ dispatch(actions.checkConfirmModal(e, actions.changePage(dispatch, pagination, e.currentTarget.value), pagination.stateChanged, dispatch))
+ }}
+ >
{_.map(pagination.periode_range, (month, i) => (
<option
value={month}
@@ -28,31 +31,30 @@ let Navigate = ({ dispatch, metas, timetable, pagination, status, filters}) => {
>
{actions.monthName(month) + ' ' + new Date(month).getFullYear()}
</option>
- )
- )}
- </select>
- <button
- onClick={e => {
- e.preventDefault()
- dispatch(actions.checkConfirmModal(e, actions.goToPreviousPage(dispatch, pagination), pagination.stateChanged, dispatch))
- }}
- type='button'
- data-target='#ConfirmModal'
- className={(firstPage ? 'disabled ' : '') + 'previous_page'}
- disabled={(firstPage ? 'disabled' : '')}
- ></button>
- <button
- onClick={e => {
- e.preventDefault()
- dispatch(actions.checkConfirmModal(e, actions.goToNextPage(dispatch, pagination), pagination.stateChanged, dispatch))
- }}
- type='button'
- data-target='#ConfirmModal'
- className={(lastPage ? 'disabled ' : '') + 'next_page'}
- disabled={(lastPage ? 'disabled' : '')}
- ></button>
- </form>
- </div>
+ ))}
+ </select>
+ <button
+ onClick={e => {
+ e.preventDefault()
+ dispatch(actions.checkConfirmModal(e, actions.goToPreviousPage(dispatch, pagination), pagination.stateChanged, dispatch))
+ }}
+ type='button'
+ data-target='#ConfirmModal'
+ className={(firstPage ? 'disabled ' : '') + 'previous_page'}
+ disabled={(firstPage ? 'disabled' : '')}
+ ></button>
+ <button
+ onClick={e => {
+ e.preventDefault()
+ dispatch(actions.checkConfirmModal(e, actions.goToNextPage(dispatch, pagination), pagination.stateChanged, dispatch))
+ }}
+ type='button'
+ data-target='#ConfirmModal'
+ className={(lastPage ? 'disabled ' : '') + 'next_page'}
+ disabled={(lastPage ? 'disabled' : '')}
+ ></button>
+ </form>
+ </div>
</div>
</div>
)
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
}