diff --git a/src/static/dashboard.html b/src/static/dashboard.html
index cee6d10..31255ee 100644
--- a/src/static/dashboard.html
+++ b/src/static/dashboard.html
@@ -764,7 +764,7 @@
-
+
diff --git a/src/static/js/tutorial.js b/src/static/js/tutorial.js
index cc64b6e..0cd605a 100644
--- a/src/static/js/tutorial.js
+++ b/src/static/js/tutorial.js
@@ -92,6 +92,7 @@ const Tutorial = {
var incidentView = document.getElementById('incident-view');
var emptyState = document.getElementById('empty-state');
this._savedState = {
+ gridWasInitialized: typeof LayoutManager !== 'undefined' && LayoutManager._initialized,
incidentViewDisplay: incidentView ? incidentView.style.display : 'none',
emptyStateDisplay: emptyState ? emptyState.style.display : '',
incidentTitle: document.getElementById('incident-title') ? document.getElementById('incident-title').textContent : '',
@@ -136,6 +137,26 @@ const Tutorial = {
var toolbar = document.getElementById('layout-toolbar');
if (toolbar) toolbar.style.display = '';
+ // GridStack initialisieren falls noch nicht geschehen
+ if (typeof LayoutManager !== 'undefined' && !LayoutManager._initialized) {
+ LayoutManager.init();
+ }
+ // GridStack Resize triggern damit Kacheln korrekt positioniert werden
+ if (typeof LayoutManager !== 'undefined' && LayoutManager._grid) {
+ LayoutManager._grid.engine.nodes.forEach(function(n) {
+ LayoutManager._grid.update(n.el, { x: n.x, y: n.y, w: n.w, h: n.h });
+ });
+ // Sicherheits-Relayout
+ setTimeout(function() {
+ if (LayoutManager._grid) {
+ LayoutManager._grid.compact();
+ LayoutManager._grid.engine.nodes.forEach(function(n) {
+ if (n.el) n.el.style.position = '';
+ });
+ }
+ }, 100);
+ }
+
// Lagebild
var summaryText = document.getElementById('summary-text');
if (summaryText) summaryText.innerHTML = this._DEMO_SUMMARY;