Fixing activiy for removed users

remotes/origin/logger
Alejandro Alonso 2015-09-10 09:49:36 +02:00
parent 86436ef1f2
commit 690714eadc
3 changed files with 12 additions and 7 deletions

View File

@ -94,7 +94,10 @@ class HistoryEntry(models.Model):
def owner(self):
pk = self.user["pk"]
model = apps.get_model("users", "User")
try:
return model.objects.get(pk=pk)
except model.DoesNotExist:
return None
@cached_property
def values_diff(self):

View File

@ -39,8 +39,9 @@ class HistoryEntrySerializer(serializers.ModelSerializer):
def get_user(self, entry):
user = {"pk": None, "username": None, "name": None, "photo": None, "is_active": False}
user.update(entry.user)
user["photo"] = get_photo_or_gravatar_url(entry.owner)
if entry.owner:
user["is_active"] = entry.owner.is_active
if entry.owner.is_active or entry.owner.is_system:

View File

@ -34,6 +34,7 @@ from taiga.projects.notifications.choices import NotifyLevel
from .gravatar import get_gravatar_url
from django.conf import settings
def get_and_validate_user(*, username:str, password:str) -> bool:
"""
@ -70,7 +71,7 @@ def get_photo_or_gravatar_url(user):
"""Get the user's photo/gravatar url."""
if user:
return get_photo_url(user.photo) if user.photo else get_gravatar_url(user.email)
return ""
return settings.GRAVATAR_DEFAULT_AVATAR
def get_big_photo_url(photo):