Add comment count and collapse
This commit is contained in:
@@ -11,6 +11,8 @@ from auditlog.registry import auditlog
|
||||
from phonenumber_field.modelfields import PhoneNumberField
|
||||
from django.contrib.postgres.fields import JSONField
|
||||
|
||||
import logging
|
||||
|
||||
|
||||
VERBOSE_NAME = _('Webapp')
|
||||
|
||||
@@ -133,6 +135,7 @@ class KaehmyMessage(MessageParent):
|
||||
email = models.EmailField(_('Email'))
|
||||
message = models.TextField(_('Message'))
|
||||
parent = models.ForeignKey('MessageParent', related_name='messages')
|
||||
timestamp = models.DateTimeField(_('Timestamp'), default=timezone.now)
|
||||
|
||||
|
||||
class KaehmyForm(MessageParent):
|
||||
@@ -159,6 +162,21 @@ class KaehmyForm(MessageParent):
|
||||
def __str__(self):
|
||||
return _('Kaehmy application: {}').format(self.name)
|
||||
|
||||
def comment_count(self):
|
||||
total = 0
|
||||
|
||||
def recurse(message):
|
||||
count = 0
|
||||
for msg in message.messages.all():
|
||||
count += recurse(msg)
|
||||
|
||||
return count + 1
|
||||
|
||||
for message in self.messages.all():
|
||||
total += recurse(message)
|
||||
|
||||
return total
|
||||
|
||||
|
||||
class Role(PresetRole):
|
||||
"""
|
||||
|
||||
Reference in New Issue
Block a user