From cb7dbab772dbbf9e56fa72ced0479ee05acbdc51 Mon Sep 17 00:00:00 2001 From: Petr Stefan Date: Thu, 25 Jan 2018 15:07:14 +0100 Subject: [PATCH] Fix updating state when changing group supervisors --- src/redux/modules/groups.js | 33 ++++++--------------------------- 1 file changed, 6 insertions(+), 27 deletions(-) diff --git a/src/redux/modules/groups.js b/src/redux/modules/groups.js index 2b97a0d51..5928ad116 100644 --- a/src/redux/modules/groups.js +++ b/src/redux/modules/groups.js @@ -260,23 +260,12 @@ const reducer = handleActions( [additionalActionTypes.MAKE_SUPERVISOR_FULFILLED]: ( state, { payload, meta: { groupId, userId } } - ) => - state.updateIn( - ['resources', groupId, 'data', 'privateData', 'supervisors'], - supervisors => - supervisors.push( - fromJS(payload.supervisors.find(id => id === userId)) - ) - ), + ) => state.setIn(['resources', groupId, 'data'], fromJS(payload)), [additionalActionTypes.REMOVE_SUPERVISOR_FULFILLED]: ( state, { payload, meta: { groupId, userId } } - ) => - state.updateIn( - ['resources', groupId, 'data', 'privateData', 'supervisors'], - supervisors => supervisors.filter(id => id !== userId) - ), + ) => state.setIn(['resources', groupId, 'data'], fromJS(payload)), [additionalActionTypes.ADD_ADMIN_PENDING]: ( state, @@ -298,13 +287,8 @@ const reducer = handleActions( [additionalActionTypes.ADD_ADMIN_FULFILLED]: ( state, - { payload: { primaryAdminsIds, admins }, meta: { groupId } } - ) => - state.updateIn(['resources', groupId, 'data'], group => - group - .setIn(['privateData', 'admins'], List(admins)) - .set('primaryAdminsIds', primaryAdminsIds) - ), + { payload, meta: { groupId } } + ) => state.setIn(['resources', groupId, 'data'], fromJS(payload)), [additionalActionTypes.REMOVE_ADMIN_PENDING]: ( state, @@ -326,13 +310,8 @@ const reducer = handleActions( [additionalActionTypes.REMOVE_ADMIN_FULFILLED]: ( state, - { payload: { primaryAdminsIds, admins }, meta: { groupId } } - ) => - state.updateIn(['resources', groupId, 'data'], group => - group - .setIn(['privateData', 'admins'], List(admins)) - .set('primaryAdminsIds', primaryAdminsIds) - ), + { payload, meta: { groupId } } + ) => state.setIn(['resources', groupId, 'data'], fromJS(payload)), [additionalActionTypes.LOAD_USERS_GROUPS_FULFILLED]: ( state,