--- a/client/src/sagas/groupSaga.js Mon Jul 31 23:18:38 2017 +0200
+++ b/client/src/sagas/groupSaga.js Tue Aug 01 12:20:14 2017 +0200
@@ -1,5 +1,7 @@
import { put, take, all } from 'redux-saga/effects'
import * as types from '../constants/actionTypes';
+import { groupCreateSuccess, groupCreateError, groupLoadSucess, groupLoadError } from '../actions/groupActions';
+import { updateSession } from '../actions/sessionsActions';
function* watchCreateGroup(context) {
while (true) {
@@ -7,9 +9,9 @@
const client = context.client;
try {
const response = yield client.post('/api/auth/group/', group);
- yield put({ type: types.GROUP_CREATE_SUCCESS, group: response });
+ yield put(groupCreateSuccess(response));
} catch (e) {
- yield put({ type: types.GROUP_CREATE_ERROR, error: e });
+ yield put(groupCreateError(e));
}
}
}
@@ -22,21 +24,13 @@
const response = yield client.post('/api/auth/group/', group);
const actions = [
- {
- type: types.GROUP_CREATE_SUCCESS,
- group: response
- },
- {
- type: types.UPDATE_SESSION,
- session: session,
- values: { group: response },
- }
+ groupCreateSuccess(response),
+ updateSession(session, {group: response.name})
];
-
yield all(actions.map(action => put(action)));
} catch (e) {
- yield put({ type: types.GROUP_CREATE_ERROR, error: e });
+ yield put(groupCreateError(e));
}
}
}
@@ -47,9 +41,9 @@
yield take(types.GROUP_LOAD_ASYNC);
try {
const response = yield client.get('/api/auth/group/');
- yield put({ type: types.GROUP_LOAD_SUCCESS, groups: response });
+ yield put(groupLoadSucess(response.results));
} catch (e) {
- yield put({ type: types.GROUP_LOAD_ERROR, error: e });
+ yield put(groupLoadError(e));
}
}
}