diff options
Diffstat (limited to 'frontend/src/sagas/objects.js')
| -rw-r--r-- | frontend/src/sagas/objects.js | 43 |
1 files changed, 24 insertions, 19 deletions
diff --git a/frontend/src/sagas/objects.js b/frontend/src/sagas/objects.js index a10fdcbe..9c9b19b8 100644 --- a/frontend/src/sagas/objects.js +++ b/frontend/src/sagas/objects.js @@ -146,38 +146,43 @@ export const updateTopologyOnServer = function* (id) { yield call(updateTopology, topology) } +export const getTopologyAsObject = function* (id, keepIds) { + const topologyStore = yield select(OBJECT_SELECTORS['topology']) + + const rooms = yield call(getAllRooms, topologyStore[id].roomIds, keepIds) + return { + _id: keepIds ? id : undefined, + name: topologyStore[id].name, + rooms: rooms, + } +} + export const getAllRooms = function* (roomIds, keepIds) { const roomStore = yield select(OBJECT_SELECTORS['room']) + + console.log("DEBUG: roomIds has value " + roomIds) + console.log("DEBUG: roomStore has value " + roomStore) + console.log("DEBUG: size of roomStore is " + roomStore.length) let rooms = [] for(let i in roomIds){ - let tiles = yield call(getAllRoomTiles, roomStore[i].tileIds, keepIds) + console.log("DEBUG: on iteration " + i + ", roomStore has value = " + roomStore[i]) + let tiles = yield call(getAllRoomTiles, roomStore[i], keepIds) rooms.push({ - _id: keepIds ? i : undefined, - name: roomStore[i].name, - tiles: tiles, + _id: keepIds ? i : undefined, + name: roomStore[i].name, + tiles: tiles, } ) } return rooms } -export const getTopologyAsObject = function* (id, keepIds) { - const topologyStore = yield select(OBJECT_SELECTORS['topology']) - - const rooms = yield call(getAllRooms, topologyStore[id].roomIds, keepIds) - return { - _id: keepIds ? id : undefined, - name: topologyStore[id].name, - rooms: rooms, - } -} - -export const getAllRoomTiles = function* (room, keepIds) { +export const getAllRoomTiles = function* (roomStore, keepIds) { let tiles = [] - - for(let i in room.tileIds){ - tiles.push(yield call(getTileById, i, keepIds)) + console.log("DEBUG: roomStore = " + roomStore) + for(let i in roomStore.tileIds){ + tiles.push(yield call(getTileById, roomStore.tileIds[i], keepIds)) } return tiles } |
