From 576b32b20248166d8d4416a5626a51e46bdb6c14 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Chif=20Gerg=C5=91?= <chifgeri97@gmail.com> Date: Sat, 5 Jan 2019 21:21:23 +0100 Subject: [PATCH] Create reducer for trainees and notes, modify event reducer --- src/reducers/EventReducer.js | 4 +++- src/reducers/NoteReducer.js | 12 ++++++++++++ src/reducers/TraineeReducer.js | 14 ++++++++++++++ src/reducers/index.js | 4 ++++ 4 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 src/reducers/NoteReducer.js create mode 100644 src/reducers/TraineeReducer.js diff --git a/src/reducers/EventReducer.js b/src/reducers/EventReducer.js index 2f0af15..edf3032 100644 --- a/src/reducers/EventReducer.js +++ b/src/reducers/EventReducer.js @@ -1,4 +1,4 @@ -import { GET_EVENTS, GET_EVENT_BY_ID } from '../actions/types'; +import { GET_EVENTS, GET_EVENT_BY_ID, VISITOR_CHANGE } from '../actions/types'; const INITIAL_STATE = {}; @@ -8,6 +8,8 @@ export default (state = INITIAL_STATE, action) => { return { ...state, events: [...action.payload] }; case GET_EVENT_BY_ID: return { ...state, selectedEvent: action.payload }; + case VISITOR_CHANGE: + return { ...state, selectedEvent: { ...state.selectedEvent, visitors: action.payload } }; default: return state; } diff --git a/src/reducers/NoteReducer.js b/src/reducers/NoteReducer.js new file mode 100644 index 0000000..4e334b8 --- /dev/null +++ b/src/reducers/NoteReducer.js @@ -0,0 +1,12 @@ +import { GET_NOTES_BY_EVENT } from '../actions/types'; + +const INITIAL_STATE = {}; + +export default (state = INITIAL_STATE, action) => { + switch (action.type) { + case GET_NOTES_BY_EVENT: + return { ...state, eventNotes: action.payload }; + default: + return state; + } +}; diff --git a/src/reducers/TraineeReducer.js b/src/reducers/TraineeReducer.js new file mode 100644 index 0000000..f7fa38e --- /dev/null +++ b/src/reducers/TraineeReducer.js @@ -0,0 +1,14 @@ +import { GET_TRAINEES, GET_TRAINEE_BY_ID } from '../actions/types'; + +const INITIAL_STATE = {}; + +export default (state = INITIAL_STATE, action) => { + switch (action.type) { + case GET_TRAINEES: + return { ...state, trainees: [...action.payload] }; + case GET_TRAINEE_BY_ID: + return { ...state, selectedTrainee: action.payload }; + default: + return state; + } +}; diff --git a/src/reducers/index.js b/src/reducers/index.js index 8596ba9..8408e74 100644 --- a/src/reducers/index.js +++ b/src/reducers/index.js @@ -4,6 +4,8 @@ import NewsReducer from './NewsReducer'; import AddNewsReducer from './AddNewsReducer'; import EditNewsReducer from './EditNewsReducer'; import EventReducer from './EventReducer'; +import TraineeReducer from './TraineeReducer'; +import NoteReducer from './NoteReducer'; const rootReducer = combineReducers({ user: UserReducer, @@ -11,6 +13,8 @@ const rootReducer = combineReducers({ newNews: AddNewsReducer, selectedNews: EditNewsReducer, events: EventReducer, + trainees: TraineeReducer, + notes: NoteReducer, }); export default rootReducer; -- GitLab