From ea439e651f8ab842aa47343a5fb9c6cff8053bdb Mon Sep 17 00:00:00 2001
From: "Hartung, Michael" <michael.hartung@uni-hamburg.de>
Date: Fri, 15 Jul 2022 12:51:57 +0200
Subject: [PATCH] separate groups from config in standalone

Former-commit-id: f98237f320a13c99e42587f1bd2aad0055470de8
---
 drugstone/models.py |  1 +
 drugstone/views.py  | 11 ++++++++---
 2 files changed, 9 insertions(+), 3 deletions(-)

diff --git a/drugstone/models.py b/drugstone/models.py
index d28eab8..488902c 100755
--- a/drugstone/models.py
+++ b/drugstone/models.py
@@ -215,3 +215,4 @@ class Network(models.Model):
     nodes = models.TextField(null=True, default='')
     edges = models.TextField(null=True, default='')
     config = models.TextField(null=True, default='')
+    groups = models.TextField(null=True, default='')
diff --git a/drugstone/views.py b/drugstone/views.py
index 6381476..14d58bc 100755
--- a/drugstone/views.py
+++ b/drugstone/views.py
@@ -279,12 +279,15 @@ def create_network(request) -> Response:
             request.data['network']['edges'] = []
     if 'config' not in request.data:
         request.data['config'] = {}
+    if 'groups' not in request.data:
+        request.data['groups'] = {}
 
     id = uuid.uuid4().hex
     while True:
         try:
             Network.objects.create(id=id, nodes=request.data['network']['nodes'],
-                                   edges=request.data['network']['edges'], config=request.data['config'])
+                                   edges=request.data['network']['edges'], config=request.data['config'], 
+                                   groups=request.data['groups'])
             break
         except IntegrityError:
             id = uuid.uuid4().hex
@@ -296,8 +299,10 @@ def load_network(request) -> Response:
     network = NetworkSerializer().to_representation(Network.objects.get(id=request.query_params.get('id')))
     result = {'network': {'nodes': json.loads(network['nodes'].replace("'", '"')),
                           'edges': json.loads(network['edges'].replace("'", '"'))},
-              'config': json.loads(
-                  network['config'].replace("'", '"').replace('True', 'true').replace('False', 'false'))}
+                'config': json.loads(
+                  network['config'].replace("'", '"').replace('True', 'true').replace('False', 'false')),
+                'groups': json.loads(
+                  network['groups'].replace("'", '"').replace('True', 'true').replace('False', 'false'))}
     return Response(result)
 
 
-- 
GitLab