Catch if digest isn't there - WIP, since we do not send a default ATM

This commit is contained in:
Oliver Falk
2018-05-25 11:21:29 +02:00
parent e37699b822
commit 6b615dba9e

View File

@@ -23,10 +23,16 @@ class AvatarImageView(TemplateView):
elif len(kwargs['digest']) == 64:
# Fetch by digest from OpenID
model = ConfirmedOpenId
else:
else: # pragma: no cover
# We should actually never ever reach this code...
raise Exception('Digest provided is wrong: %s' % kwargs['digest'])
obj = model.objects.get(digest=kwargs['digest'])
try:
obj = model.objects.get(digest=kwargs['digest'])
except model.DoesNotExist:
# TODO: Use default!?
raise Exception('Mail/openid ("%s") does not exist"' %
kwargs['digest'])
if not obj.photo:
# That is hacky, but achieves what we want :-)
attr = getattr(obj, 'email', obj.openid)