summaryrefslogtreecommitdiff
path: root/src/api/sagas/simulations.js
diff options
context:
space:
mode:
authorGeorgios Andreadis <g.andreadis@student.tudelft.nl>2017-08-16 22:55:16 +0300
committerGeorgios Andreadis <g.andreadis@student.tudelft.nl>2017-09-23 10:05:42 +0200
commit07195f3762b6a8a7dfb44c2231db58c5be13c43f (patch)
tree2b4640457f70b55a97aff22fbe617e4b8538464a /src/api/sagas/simulations.js
parent91c8088e1d7def9242f60c708cd34f25dcb77d76 (diff)
Rename project to sim and enable sim-adding
Diffstat (limited to 'src/api/sagas/simulations.js')
-rw-r--r--src/api/sagas/simulations.js21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/api/sagas/simulations.js b/src/api/sagas/simulations.js
new file mode 100644
index 00000000..b824d8d5
--- /dev/null
+++ b/src/api/sagas/simulations.js
@@ -0,0 +1,21 @@
+import {call, put} from "redux-saga/effects";
+import {addToAuthorizationStore, addToSimulationStore} from "../../actions/objects";
+import {addSimulationSucceeded} from "../../actions/simulations";
+import {addSimulation} from "../routes/simulations";
+
+export function* onSimulationAdd(action) {
+ try {
+ const simulation = yield call(addSimulation, {name: action.name});
+ yield put(addToSimulationStore(simulation));
+
+ const authorization = {
+ simulationId: simulation.id,
+ userId: action.userId,
+ authorizationLevel: "OWN"
+ };
+ yield put(addToAuthorizationStore(authorization));
+ yield put(addSimulationSucceeded([authorization.userId, authorization.simulationId]));
+ } catch (error) {
+ console.log(error);
+ }
+}