See #890: added moderation note model, serializers and views

This commit is contained in:
Eliot Berriot 2019-08-29 11:45:41 +02:00
commit ab3bc96783
No known key found for this signature in database
GPG key ID: DD6965E2476E5C27
13 changed files with 193 additions and 9 deletions

View file

@ -164,6 +164,21 @@ class Report(federation_models.FederationMixin):
return super().save(**kwargs)
class Note(models.Model):
uuid = models.UUIDField(default=uuid.uuid4, unique=True)
creation_date = models.DateTimeField(default=timezone.now)
summary = models.TextField(max_length=50000)
author = models.ForeignKey(
"federation.Actor", related_name="moderation_notes", on_delete=models.CASCADE
)
target_id = models.IntegerField(null=True)
target_content_type = models.ForeignKey(
ContentType, null=True, on_delete=models.CASCADE
)
target = GenericForeignKey("target_content_type", "target_id")
@receiver(pre_save, sender=Report)
def set_handled_date(sender, instance, **kwargs):
if instance.is_handled is True and not instance.handled_date: