summaryrefslogtreecommitdiff
path: root/src/sagas
diff options
context:
space:
mode:
authorGeorgios Andreadis <g.andreadis@student.tudelft.nl>2017-09-07 19:27:13 +0200
committerGeorgios Andreadis <g.andreadis@student.tudelft.nl>2017-09-23 10:05:58 +0200
commit8218c3d3c21bfa7c4f3ee4872722b9b1261576fb (patch)
tree16b8d0b8813aed0c846310a3fa4a01bd8ad18c60 /src/sagas
parenta7d2ac48224c4226003d67f77143738cc72aa016 (diff)
Add machine mode with title and delete options
Diffstat (limited to 'src/sagas')
-rw-r--r--src/sagas/index.js3
-rw-r--r--src/sagas/topology.js13
2 files changed, 16 insertions, 0 deletions
diff --git a/src/sagas/index.js b/src/sagas/index.js
index e6c48da4..91b8a024 100644
--- a/src/sagas/index.js
+++ b/src/sagas/index.js
@@ -6,6 +6,7 @@ import {
ADD_RACK_TO_TILE,
ADD_TILE,
CANCEL_NEW_ROOM_CONSTRUCTION,
+ DELETE_MACHINE,
DELETE_RACK,
DELETE_ROOM,
DELETE_TILE,
@@ -22,6 +23,7 @@ import {
onAddRackToTile,
onAddTile,
onCancelNewRoomConstruction,
+ onDeleteMachine,
onDeleteRack,
onDeleteRoom,
onDeleteTile,
@@ -49,4 +51,5 @@ export default function* rootSaga() {
yield takeEvery(DELETE_RACK, onDeleteRack);
yield takeEvery(ADD_RACK_TO_TILE, onAddRackToTile);
yield takeEvery(ADD_MACHINE, onAddMachine);
+ yield takeEvery(DELETE_MACHINE, onDeleteMachine);
}
diff --git a/src/sagas/topology.js b/src/sagas/topology.js
index 87d20e8f..05bebc6c 100644
--- a/src/sagas/topology.js
+++ b/src/sagas/topology.js
@@ -5,6 +5,7 @@ import {
addRackToTileSucceeded,
addTileSucceeded,
cancelNewRoomConstructionSucceeded,
+ deleteMachineSucceeded,
deleteRackSucceeded,
deleteRoomSucceeded,
deleteTileSucceeded,
@@ -18,6 +19,7 @@ import {addTileToRoom, deleteRoom, updateRoom} from "../api/routes/rooms";
import {
addMachineToRackOnTile,
addRackToTile,
+ deleteMachineInRackOnTile,
deleteRackFromTile,
deleteTile,
updateRackOnTile
@@ -253,3 +255,14 @@ export function* onAddMachine(action) {
console.log(error);
}
}
+
+export function* onDeleteMachine() {
+ try {
+ const tileId = yield select(state => state.interactionLevel.tileId);
+ const position = yield select(state => state.interactionLevel.position);
+ yield call(deleteMachineInRackOnTile, tileId, position);
+ yield put(deleteMachineSucceeded());
+ } catch (error) {
+ console.log(error);
+ }
+}