aboutsummaryrefslogtreecommitdiffstats
path: root/app/javascript/time_tables/containers/Timetable.js
blob: e78e8840afdd18658ddbbdd57e33050b9279b445 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
import { connect } from 'react-redux'
import actions from '../actions'
import TimetableComponent from '../components/Timetable'

const mapStateToProps = (state) => {
  return {
    metas: state.metas,
    timetable: state.timetable,
    status: state.status
  }
}

const mapDispatchToProps = (dispatch) => {
  return {
    onDeletePeriod: (index, dayTypes) =>{
      dispatch(actions.deletePeriod(index, dayTypes))
    },
    onAddIncludedDate: (index, dayTypes, date) => {
      dispatch(actions.addIncludedDate(index, dayTypes, date))
    },
    onRemoveIncludedDate: (index, dayTypes, date) => {
      dispatch(actions.removeIncludedDate(index, dayTypes, date))
    },
    onAddExcludedDate: (index, dayTypes, date) => {
      dispatch(actions.addExcludedDate(index, dayTypes, date))
    },
    onRemoveExcludedDate: (index, dayTypes, date) => {
      dispatch(actions.removeExcludedDate(index, dayTypes, date))
    },
    onExcludeDateFromPeriod: (index, dayTypes, date) => {
      dispatch(actions.excludeDateFromPeriod(index, dayTypes, date))
    },
    onIncludeDateInPeriod: (index, dayTypes, date) => {
      dispatch(actions.includeDateInPeriod(index, dayTypes, date))
    },
    onOpenEditPeriodForm: (period, index) => {
      dispatch(actions.openEditPeriodForm(period, index))
    }
  }
}

const Timetable = connect(mapStateToProps, mapDispatchToProps)(TimetableComponent)

export default Timetable