From 23b65dba36b82a5718871578917f10220de1f327 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Simon=20K=C3=BCnzel?= <simonk@fsmpi.rwth-aachen.de>
Date: Thu, 24 Apr 2025 00:48:58 +0200
Subject: [PATCH] Add cause user id to field change events

---
 common_py/src/videoag_common/api_object/object_class.py | 6 ++++--
 common_py/src/videoag_common/objects/job.py             | 5 +++--
 2 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/common_py/src/videoag_common/api_object/object_class.py b/common_py/src/videoag_common/api_object/object_class.py
index e66bc88..76d9210 100644
--- a/common_py/src/videoag_common/api_object/object_class.py
+++ b/common_py/src/videoag_common/api_object/object_class.py
@@ -449,7 +449,8 @@ class ApiObjectClass:
                         "field_id": field_id,
                         "old_value": old_value_json,
                         "new_value": new_value_json,
-                    }
+                    },
+                    cause_user_id=modifying_user_id
                 ))
                 for child_class_id, child_ids in children_ids_by_child_class_id.items():
                     for child_id in child_ids:
@@ -462,7 +463,8 @@ class ApiObjectClass:
                                 "field_id": field_id,
                                 "old_value": old_value_json,
                                 "new_value": new_value_json,
-                            }
+                            },
+                            cause_user_id=modifying_user_id
                         ))
             expected_keys.discard(field_id)
         
diff --git a/common_py/src/videoag_common/objects/job.py b/common_py/src/videoag_common/objects/job.py
index 89e77cd..f73469a 100644
--- a/common_py/src/videoag_common/objects/job.py
+++ b/common_py/src/videoag_common/objects/job.py
@@ -114,14 +114,15 @@ class Job(ApiObject, Base):
     )
     
     @staticmethod
-    def create_event(event_type: str, event_data: JsonTypes, cause_job_id: int or None = None):
+    def create_event(event_type: str, event_data: JsonTypes, cause_job_id: int or None = None, cause_user_id: int or None = None):
         return Job(
             type="handle_event",
             input_data={
                 "type": event_type,
                 "data": event_data
             },
-            cause_job_id=cause_job_id
+            cause_job_id=cause_job_id,
+            cause_user_id=cause_user_id,
         )
     
     def set_error(self, error_code: str, error_message: str or None = None):
-- 
GitLab