ban.py 746 B

12345678910111213141516171819202122232425262728
  1. from django.utils.translation import ugettext as _
  2. from rest_framework import serializers
  3. from misago.core.utils import format_plaintext_for_html
  4. from misago.users.models import Ban, BAN_IP
  5. class BanMessageSerializer(serializers.ModelSerializer):
  6. message = serializers.SerializerMethodField()
  7. class Meta:
  8. model = Ban
  9. fields = ('message', 'expires_on')
  10. def get_message(self, obj):
  11. if obj.user_message:
  12. message = obj.user_message
  13. elif obj.check_type == BAN_IP:
  14. message = _("Your IP address is banned.")
  15. else:
  16. message = _("You are banned.")
  17. return {
  18. 'plain': message,
  19. 'html': format_plaintext_for_html(message)
  20. }