From 4c95ad1878b61e25f36ba9b09a97f431d5b01027 Mon Sep 17 00:00:00 2001 From: Magnus Hagander Date: Thu, 10 Sep 2020 20:47:19 +0200 Subject: [PATCH] Don't send notifications for new objects that are tri-state moderation These will get a notification when they are explicitly submitted for moderation, so there is no point in having a separate notice sent when they're created, since there is nothing for the moderators to do at that point. --- pgweb/util/helpers.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/pgweb/util/helpers.py b/pgweb/util/helpers.py index f594ea16..d34d7e08 100644 --- a/pgweb/util/helpers.py +++ b/pgweb/util/helpers.py @@ -80,8 +80,14 @@ def simple_form(instancetype, itemid, request, formclass, formtemplate='base/for # bother notifying about the changes. But if it lacks this field, we notify # about everything, as well as if the field exists and the item has already # been approved. - # Newly added objects are always notified. - if not is_new: + # Newly added objects are always notified if they are two-state, but not if they + # are tri-state (in which case they get notified when submitted for + # moderation). + if is_new: + if hasattr(instance, 'modstate'): + # Tri-state indicated by the existence of the modstate field + do_notify = False + else: if hasattr(instance, 'approved'): if not getattr(instance, 'approved', True): do_notify = False