Web Dev Solutions

Catalin Mititiuc

aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'src/index.js')
-rw-r--r--src/index.js21
1 files changed, 14 insertions, 7 deletions
diff --git a/src/index.js b/src/index.js
index e638910..7f914d4 100644
--- a/src/index.js
+++ b/src/index.js
@@ -80,11 +80,20 @@ function loadScenario(data) {
async function buildScenario(req) {
console.log('req', req);
+ console.log('fresh template', scenarioTemplate.querySelector('svg'));
+
const svg = scenarioTemplate.querySelector('svg').cloneNode(true);
- document.querySelector('object').contentDocument.querySelector('svg').replaceWith(svg);
- const startLocs = svg.querySelector('.start-locations');
+ // console.log('document', document.querySelector('object').contentDocument);
+
+ document.querySelector('object').contentDocument.querySelector('svg').remove();
+ document.querySelector('object').contentDocument.append(svg);
+
+ gameboard.stop();
+ recordSheet.stop();
+
const scenario = await req;
+ const startLocs = scenario.querySelector('.start-locations');
console.log(scenario);
@@ -119,17 +128,15 @@ async function buildScenario(req) {
});
const refsQuery = [...refs[filename]].join(', ');
- external.querySelectorAll(refsQuery).forEach(node => defs.append(node));
+ external.querySelectorAll(refsQuery).forEach(node => defs.append(svg.ownerDocument.importNode(node, true)));
});
});
- scenario.querySelectorAll('use.mapsheet').forEach(el => gb.prepend(el));
- grid.before(scenario.querySelector('.start-locations'));
+ scenario.querySelectorAll('use.mapsheet').forEach(el => gb.prepend(svg.ownerDocument.importNode(el, true)));
+ if (startLocs) grid.before(svg.ownerDocument.importNode(startLocs, true));
const scenarioGrid = scenario.querySelector('.grid');
- console.log('scenarioGrid', scenarioGrid);
-
if (scenarioGrid) {
grid.replaceWith(svg.ownerDocument.importNode(scenarioGrid, true));
}