summaryrefslogtreecommitdiff
path: root/src/mailman/rest/addresses.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/mailman/rest/addresses.py')
-rw-r--r--src/mailman/rest/addresses.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/mailman/rest/addresses.py b/src/mailman/rest/addresses.py
index 7923d8bf9..ce2aa4288 100644
--- a/src/mailman/rest/addresses.py
+++ b/src/mailman/rest/addresses.py
@@ -64,6 +64,9 @@ class _AddressBase(CollectionMixin):
representation['display_name'] = address.display_name
if address.verified_on:
representation['verified_on'] = address.verified_on
+ if address.user:
+ representation['user'] = path_to(
+ 'users/{0}'.format(address.user.user_id.int))
return representation
def _get_collection(self, request):
@@ -158,6 +161,15 @@ class AnAddress(_AddressBase):
child = _VerifyResource(self._address, 'unverify')
return child, []
+ @child()
+ def user(self, request, segments):
+ """/addresses/<email>/user"""
+ if self._address is None:
+ return NotFound(), []
+ # Avoid circular imports.
+ from mailman.rest.users import AddressUser
+ return AddressUser(self._address)
+
class UserAddresses(_AddressBase):