auth.py 671 B

1234567891011121314151617181920212223242526
  1. from rest_framework import serializers
  2. from misago.acl import serialize_acl
  3. class AuthenticatedUserSerializer(serializers.ModelSerializer):
  4. is_authenticated = serializers.SerializerMethodField()
  5. def get_is_authenticated(self, obj):
  6. return False
  7. pass
  8. class AnonymousUserSerializer(serializers.Serializer):
  9. id = serializers.ReadOnlyField()
  10. acl = serializers.SerializerMethodField()
  11. is_authenticated = serializers.SerializerMethodField()
  12. def get_acl(self, obj):
  13. if hasattr(obj, 'acl'):
  14. return serialize_acl(obj)
  15. else:
  16. return {}
  17. def get_is_authenticated(self, obj):
  18. return False