From 74c81000e6090408dc3318e2324f5de180b948e4 Mon Sep 17 00:00:00 2001 From: Leandro Roberto Date: Wed, 14 Oct 2020 08:07:27 -0300 Subject: [PATCH] muda teste para captura de auth.User --- sapl/base/receivers.py | 48 +++++++++++++++++++++--------------------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/sapl/base/receivers.py b/sapl/base/receivers.py index 0afc5a4a8..363fb2f8b 100644 --- a/sapl/base/receivers.py +++ b/sapl/base/receivers.py @@ -1,6 +1,7 @@ import inspect import logging +from django.conf import settings from django.core import serializers from django.db.models.signals import post_delete, post_save from django.dispatch import receiver @@ -55,33 +56,32 @@ def audit_log_function(sender, **kwargs): u = None for i in inspect.stack(): - request = i.frame.f_locals.get('request', None) - if request: - u = request.user - break - else: - self_request = i.frame.f_locals.get('self', None) - if hasattr(self_request, 'request'): - u = self_request.request.user + r = i.frame.f_locals.get('request', None) + try: + if r and \ + r.user._meta.label == settings.AUTH_USER_MODEL: + u = r.user break - - instance = kwargs.get('instance') - operation = kwargs.get('operation') - user = u - model_name = instance.__class__.__name__ - app_name = instance._meta.app_label - object_id = instance.id - data = serializers.serialize('json', [instance]) - - if len(data) > AuditLog.MAX_DATA_LENGTH: - data = data[:AuditLog.MAX_DATA_LENGTH] - - if user: - username = user.username - else: - username = '' + except: + pass try: + instance = kwargs.get('instance') + operation = kwargs.get('operation') + user = u + model_name = instance.__class__.__name__ + app_name = instance._meta.app_label + object_id = instance.id + data = serializers.serialize('json', [instance]) + + if len(data) > AuditLog.MAX_DATA_LENGTH: + data = data[:AuditLog.MAX_DATA_LENGTH] + + if user: + username = user.username + else: + username = '' + AuditLog.objects.create(username=username, operation=operation, model_name=model_name,