--- a/server/src/metaeducation/tracking/messages.py Sat Jul 23 00:38:11 2016 +0200
+++ b/server/src/metaeducation/tracking/messages.py Sun Jul 24 23:59:57 2016 +0200
@@ -3,10 +3,25 @@
import logging
import pytz
+from django.utils import six
+
from .tasks import send_tracking_data
logger = logging.getLogger(__name__)
+def get_user_name(user):
+ if not user:
+ return 'n/a'
+ if isinstance(user, six.string_types):
+ return user
+ try:
+ if user.is_authenticated() and user.external_id:
+ return str(user.external_id)
+ else:
+ return 'Anonymous'
+ except:
+ return 'anonymous'
+
def get_base_message(verb, renkan_id, current_user, registration = None):
#create
@@ -46,10 +61,10 @@
msg = {
'actor': {
'objectType': 'Agent',
- 'name': current_user or 'n/a',
+ 'name': get_user_name(current_user),
'account': {
'homePage': 'https://www.metaeducation.fr/Utilisateurs/',
- 'name': current_user or 'n/a'
+ 'name': get_user_name(current_user)
}
},
'verb': verbNode,
--- a/server/src/metaeducation/tracking/middleware.py Sat Jul 23 00:38:11 2016 +0200
+++ b/server/src/metaeducation/tracking/middleware.py Sun Jul 24 23:59:57 2016 +0200
@@ -6,7 +6,7 @@
from renkanmanager.models import Renkan, Revision
-from . import send_update_renkan, register_handlers, unregister_handlers, register_pre_save_handlers
+from . import register_handlers, unregister_handlers, register_pre_save_handlers
logger = logging.getLogger(__name__)
--- a/server/src/metaeducation/views/renkan.py Sat Jul 23 00:38:11 2016 +0200
+++ b/server/src/metaeducation/views/renkan.py Sun Jul 24 23:59:57 2016 +0200
@@ -55,7 +55,7 @@
def get(self, request, *args, **kwargs):
renkan = get_object_or_404(Renkan.objects.select_related('current_revision'), renkan_guid=kwargs['renkan_guid'])
context = self.get_context_data(**kwargs)
- send_open_read_renkan(renkan, str(getattr(request.user,'external_id', 'n/a')), str(context['registration']))
+ send_open_read_renkan(renkan, request.user, str(context['registration']))
return self.render_to_response(context)
@@ -70,7 +70,7 @@
def get(self, request, *args, **kwargs):
renkan = get_object_or_404(Renkan.objects.select_related('current_revision'), renkan_guid=kwargs['renkan_guid'])
context = self.get_context_data(**kwargs)
- send_open_edit_renkan(renkan, str(getattr(request.user,'external_id', 'n/a')), str(context['registration']))
+ send_open_edit_renkan(renkan, request.user, str(context['registration']))
return self.render_to_response(context)
class DeleteForm(forms.Form):
--- a/server/src/metaeducation/views/tracking.py Sat Jul 23 00:38:11 2016 +0200
+++ b/server/src/metaeducation/views/tracking.py Sun Jul 24 23:59:57 2016 +0200
@@ -32,7 +32,7 @@
if renkan_close_form.is_valid():
form_data = renkan_close_form.cleaned_data
renkan = get_object_or_404(Renkan.objects.select_related('current_revision'), renkan_guid=form_data['renkan_guid'])
- send_close_renkan(renkan, str(request.user.external_id), str(form_data['registration']))
+ send_close_renkan(renkan, request.user, str(form_data['registration']))
return HttpResponse(status=204)
else:
return HttpResponse(status=400)