diff --git a/__pycache__/app.cpython-313.pyc b/__pycache__/app.cpython-313.pyc index f57e526..4c40e5a 100644 Binary files a/__pycache__/app.cpython-313.pyc and b/__pycache__/app.cpython-313.pyc differ diff --git a/app.py b/app.py index 9118097..b978401 100644 --- a/app.py +++ b/app.py @@ -1081,9 +1081,11 @@ def add_node_to_mindmap(mindmap_id): return jsonify({'error': 'Nicht autorisiert'}), 403 node_id = data.get('node_id') + parent_id = data.get('parent_id') # Optional: Elternknoten für die Verknüpfung x_pos = data.get('x', 0) y_pos = data.get('y', 0) + # Knoten abrufen node = MindMapNode.query.get_or_404(node_id) # Prüfen, ob der Knoten bereits in der Mindmap existiert @@ -1105,6 +1107,23 @@ def add_node_to_mindmap(mindmap_id): y_position=y_pos ) db.session.add(user_node) + + # Wenn ein Elternknoten angegeben wurde, Verbindung erstellen + if parent_id: + # Existenz des Elternknotens in der Mindmap prüfen + parent_node = MindMapNode.query.get(parent_id) + parent_user_node = UserMindmapNode.query.filter_by( + user_mindmap_id=mindmap_id, + node_id=parent_id + ).first() + + if parent_node and parent_user_node: + # Beziehung zwischen den Knoten erstellen + try: + parent_node.children.append(node) + db.session.flush() + except Exception as e: + print(f"Warnung: Fehler beim Erstellen der Beziehung: {e}") db.session.commit() diff --git a/templates/user_mindmap.html b/templates/user_mindmap.html index 7937d55..07c8438 100644 --- a/templates/user_mindmap.html +++ b/templates/user_mindmap.html @@ -326,6 +326,12 @@ x-bind:class="darkMode ? 'border-gray-700/50' : 'border-gray-300/50'">
+ + +

Knotendetails