summaryrefslogtreecommitdiff
path: root/app/blog
diff options
context:
space:
mode:
Diffstat (limited to 'app/blog')
-rw-r--r--app/blog/models.py17
1 files changed, 16 insertions, 1 deletions
diff --git a/app/blog/models.py b/app/blog/models.py
index 4ad6022..1b828fe 100644
--- a/app/blog/models.py
+++ b/app/blog/models.py
@@ -194,12 +194,27 @@ from django_gravatar.helpers import get_gravatar_url, has_gravatar, get_gravatar
from django.dispatch import receiver
from django_comments.signals import comment_was_posted
from django_comments import Comment
+from django_comments.moderation import CommentModerator, moderator
+
+class EntryModerator(CommentModerator):
+ '''
+ Moderate everything except people with multiple approvals
+ '''
+ email_notification = True
+
+ def moderate(self, comment, content_object, request):
+ previous_approvals = Comment.objects.filter(user_email=comment.email, is_public=True).count()
+ if previous_approvals > 2:
+ return False
+ #do entry build right here so it goes to live site
+ return True
+
+moderator.register(Entry, EntryModerator)
@receiver(comment_was_posted, sender=Comment)
def cache_gravatar(sender, comment, **kwargs):
gravatar_exists = has_gravatar(comment.email)
grav_dir = settings.IMAGES_ROOT + '/gravcache/'
- print(gravatar_exists)
if gravatar_exists:
url = get_gravatar_url(comment.email, size=60)
if not os.path.isdir(grav_dir):