diff --git a/sync/signals.py b/sync/signals.py index 54661d0..0b14f26 100644 --- a/sync/signals.py +++ b/sync/signals.py @@ -24,7 +24,7 @@ def presave_handler(sender, instance, **kwargs): try: # some other classes are excluded in settings_app.py: SYNC_APPS - if not isinstance(instance, (BaseModel, User)) or isinstance(instance, DataAccess): + if not isinstance(instance, (BaseModel, User)): return signal = kwargs.get('signal') @@ -53,8 +53,8 @@ def synchronization_notifications(sender, instance, created=False, **kwargs): # some classes are excluded in settings_app.py: SYNC_APPS if not isinstance(instance, BaseModel) and not isinstance(instance, User): return - if isinstance(instance, DataAccess): - return + # if isinstance(instance, DataAccess): + # return try: process_foreign_key_changes(sender, instance, **kwargs) @@ -273,6 +273,8 @@ def handle_shared_with_changes(sender, instance, action, pk_set, **kwargs): # print(f'm2m changed = {pk_set}') users = User.objects.filter(id__in=pk_set) + save_model_log(users, ModelOperation.PUT, DataAccess.__name__, instance.id, None) + with transaction.atomic(): if action == "post_add": instance.create_access_log(users, 'SHARED_ACCESS') @@ -344,8 +346,8 @@ def related_users(instance): for data_access in data_access_list: users.add(data_access.related_user) users.update(data_access.shared_with.all()) - if isinstance(instance, DataAccess): - users.update(instance.shared_with.all()) + + # print(f'find users for {instance.__class__.__name__}, count = {len(users)}') return {user for user in users if user is not None} diff --git a/sync/utils.py b/sync/utils.py index 714dee1..c5fe157 100644 --- a/sync/utils.py +++ b/sync/utils.py @@ -42,7 +42,7 @@ def get_data(model_name, model_id): def get_serialized_data_by_id(model_name, model_id): # print(f'model_name = {model_name}') model = model_registry.get_model(model_name) - logger.info(f'model for {model_name} = {model}') + # logger.info(f'model for {model_name} = {model}') instance = model.objects.get(id=model_id) serializer = get_serializer(instance, model_name) return serializer.data diff --git a/sync/views.py b/sync/views.py index 253cdb1..e2d1f12 100644 --- a/sync/views.py +++ b/sync/views.py @@ -387,17 +387,17 @@ class LogProcessingResult: # First, collect all revocations for model_name, items in self.revoke_info.items(): revocations[model_name].extend(items) - logger.info(f'$$$ process_revocations for {model_name}, items = {len(items)}') + # logger.info(f'$$$ process_revocations for {model_name}, items = {len(items)}') # Process parent hierarchies for each revoked item model = model_registry.get_model(model_name) for item in items: - logger.info(f'$$$ item revoked = {item}') + # logger.info(f'$$$ item revoked = {item}') try: instance = model.objects.get(id=item['model_id']) - logger.info(f'$$$ process revoked item parents of {model_name} : {item['model_id']}') + # logger.info(f'$$$ process revoked item parents of {model_name} : {item['model_id']}') revocated_relations_organizer.add_relations(instance) except model.DoesNotExist: