diff --git a/apps/users/models/user.py b/apps/users/models/user.py index 3ccf02fc9..67efa8b3c 100644 --- a/apps/users/models/user.py +++ b/apps/users/models/user.py @@ -790,6 +790,10 @@ class User(AuthMixin, TokenMixin, RoleMixin, MFAMixin, AbstractUser): orgs = [Organization.root()] + orgs return orgs + @property + def my_orgs(self): + return list(self.orgs.all().distinct()) + class Meta: ordering = ['username'] verbose_name = _("User") diff --git a/apps/users/serializers/profile.py b/apps/users/serializers/profile.py index 3434260e6..55083c23d 100644 --- a/apps/users/serializers/profile.py +++ b/apps/users/serializers/profile.py @@ -122,12 +122,13 @@ class UserProfileSerializer(UserSerializer): guide_url = serializers.SerializerMethodField() receive_backends = serializers.ListField(child=serializers.CharField(), read_only=True) orgs = UserOrgSerializer(many=True, read_only=True, source='all_orgs') + myorgs = UserOrgSerializer(many=True, read_only=True, source='my_orgs') perms = serializers.ListField(label=_("Perms"), read_only=True) class Meta(UserSerializer.Meta): read_only_fields = [ 'date_joined', 'last_login', 'created_by', 'source', - 'receive_backends', 'orgs', 'perms', + 'receive_backends', 'orgs', 'myorgs', 'perms', ] fields = UserSerializer.Meta.fields + [ 'public_key_comment', 'public_key_hash_md5', 'guide_url',