From b6fe32a13e5742fa72259a92a861422dd9f753c7 Mon Sep 17 00:00:00 2001 From: sumn2u Date: Sun, 9 Jun 2024 14:04:13 -0500 Subject: [PATCH] make circle resizable and update its value in db --- .../RegionSelectAndTransformBoxes/index.jsx | 2 +- server/db/db_handler.py | 20 +++++++++++++++---- 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/client/src/RegionSelectAndTransformBoxes/index.jsx b/client/src/RegionSelectAndTransformBoxes/index.jsx index 929a29e..3f3b4c9 100644 --- a/client/src/RegionSelectAndTransformBoxes/index.jsx +++ b/client/src/RegionSelectAndTransformBoxes/index.jsx @@ -68,7 +68,7 @@ export const RegionSelectAndTransformBox = memo( pbox={pbox} /> )} - {r.type === "box" && + {(r.type === "box" || r.type === "circle") && !dragWithPrimary && !zoomWithPrimary && !r.locked && diff --git a/server/db/db_handler.py b/server/db/db_handler.py index 6c1dcd2..d9fe93e 100644 --- a/server/db/db_handler.py +++ b/server/db/db_handler.py @@ -76,13 +76,25 @@ def saveRegionInDB(self, database, idColumn, uid, data, status): # TODO if regio if index is not None: # set -> diff -> list # Ensure 'selected-classes' is a string before splitting print(f"Updating existing data in database: {data}") - selected_classes_str = data['selected-classes'] + selected_classes_str = data.get('selected-classes', data['class']) + + print(f"selected_classes_str: {selected_classes_str}") if isinstance(selected_classes_str, list) and len(selected_classes_str) == 1 and isinstance(selected_classes_str[0], str): selected_classes_str = selected_classes_str[0] - # Split the strings to create sets - new_cat_set = set(selected_classes_str.split(';')) - old_cat_set = set(database.loc[index, 'selected-classes'].split(';')) + if 'selected-classes' in data: + if ';' in selected_classes_str: + old_cat_set = set(database.loc[index, 'selected-classes'].split(';')) + # Split the strings to create sets + new_cat_set = set(selected_classes_str.split(';')) + else: + old_cat_set = set(database.loc[index, 'selected-classes']) + # Split the strings to create sets + new_cat_set = set(selected_classes_str) + else: + old_cat_set = set(database.loc[index, 'class']) + # Split the strings to create sets + new_cat_set = set(selected_classes_str) for key, value in data.items(): _value = value[0] if status == 0 else value