feat: make sure owner also gets notified, add test

This commit is contained in:
2025-01-18 18:53:55 +01:00
parent 71ef17dc97
commit 36a979954c
3 changed files with 41 additions and 5 deletions

View File

@@ -7,7 +7,7 @@ from .mail import send_notification_email
from .tools.admin import clean_locations, deactivate_unchecked_adoption_notices, deactivate_404_adoption_notices
from .tools.misc import healthcheck_ok
from .models import Location, AdoptionNotice, Timestamp
from .tools.notifications import notify_moderators_of_AN_to_be_checked
from .tools.notifications import notify_of_AN_to_be_checked
from .tools.search import notify_search_subscribers
@@ -46,7 +46,7 @@ def post_adoption_notice_save(pk):
logging.info(f"Location was added to Adoption notice {pk}")
notify_search_subscribers(instance, only_if_active=True)
notify_moderators_of_AN_to_be_checked(instance)
notify_of_AN_to_be_checked(instance)
@celery_app.task(name="tools.healthcheck")
def task_healthcheck():

View File

@@ -1,11 +1,13 @@
from fellchensammlung.models import User, AdoptionNoticeNotification, TrustLevel
def notify_moderators_of_AN_to_be_checked(adoption_notice):
def notify_of_AN_to_be_checked(adoption_notice):
if adoption_notice.is_disabled_unchecked:
for moderator in User.objects.filter(trust_level__gt=TrustLevel.MODERATOR):
users_to_notify = set(User.objects.filter(trust_level__gt=TrustLevel.MODERATOR))
users_to_notify.add(adoption_notice.owner)
for user in users_to_notify:
AdoptionNoticeNotification.objects.create(adoption_notice=adoption_notice,
user=moderator,
user=user,
title=f" Prüfe Vermittlung {adoption_notice}",
text=f"{adoption_notice} muss geprüft werden bevor sie veröffentlicht wird.",
)