Skip to content
Snippets Groups Projects
Commit a12c2b07 authored by Eliot Berriot's avatar Eliot Berriot
Browse files

Merge branch '890-notification-bis' into 'develop'

Review fixes for report notifications not included in !880

See merge request funkwhale/funkwhale!885
parents efaeb1bd c3dc4e2a
No related branches found
No related tags found
No related merge requests found
...@@ -53,10 +53,11 @@ def send_new_report_email_to_moderators(report): ...@@ -53,10 +53,11 @@ def send_new_report_email_to_moderators(report):
# we fallback on superusers # we fallback on superusers
moderators = users_models.User.objects.filter(is_superuser=True) moderators = users_models.User.objects.filter(is_superuser=True)
moderators = sorted(moderators, key=lambda m: m.pk) moderators = sorted(moderators, key=lambda m: m.pk)
submitter_repr = (
report.submitter.full_username if report.submitter else report.submitter_email
)
subject = "[{} moderation - {}] New report from {}".format( subject = "[{} moderation - {}] New report from {}".format(
settings.FUNKWHALE_HOSTNAME, settings.FUNKWHALE_HOSTNAME, report.get_type_display(), submitter_repr
report.get_type_display(),
report.submitter.full_username if report.submitter else report.submitter_email,
) )
detail_url = federation_utils.full_url( detail_url = federation_utils.full_url(
"/manage/moderation/reports/{}".format(report.uuid) "/manage/moderation/reports/{}".format(report.uuid)
...@@ -67,10 +68,7 @@ def send_new_report_email_to_moderators(report): ...@@ -67,10 +68,7 @@ def send_new_report_email_to_moderators(report):
unresolved_reports = models.Report.objects.filter(is_handled=False).count() unresolved_reports = models.Report.objects.filter(is_handled=False).count()
body = [ body = [
'{} just submitted a report in the "{}" category.'.format( '{} just submitted a report in the "{}" category.'.format(
report.submitter.full_username submitter_repr, report.get_type_display()
if report.submitter
else report.submitter_email,
report.get_type_display(),
), ),
"", "",
"Reported object: {} - {}".format( "Reported object: {} - {}".format(
......
...@@ -17,6 +17,8 @@ def test_report_created_signal_sends_email_to_mods(factories, mailoutbox, settin ...@@ -17,6 +17,8 @@ def test_report_created_signal_sends_email_to_mods(factories, mailoutbox, settin
mod2 = factories["users.User"](permission_moderation=True) mod2 = factories["users.User"](permission_moderation=True)
# inactive, so no email # inactive, so no email
factories["users.User"](permission_moderation=True, is_active=False) factories["users.User"](permission_moderation=True, is_active=False)
# no moderation permission, so no email
factories["users.User"]()
report = factories["moderation.Report"]() report = factories["moderation.Report"]()
...@@ -28,6 +30,7 @@ def test_report_created_signal_sends_email_to_mods(factories, mailoutbox, settin ...@@ -28,6 +30,7 @@ def test_report_created_signal_sends_email_to_mods(factories, mailoutbox, settin
unresolved_reports_url = federation_utils.full_url( unresolved_reports_url = federation_utils.full_url(
"/manage/moderation/reports?q=resolved:no" "/manage/moderation/reports?q=resolved:no"
) )
assert len(mailoutbox) == 2
for i, mod in enumerate([mod1, mod2]): for i, mod in enumerate([mod1, mod2]):
m = mailoutbox[i] m = mailoutbox[i]
assert m.subject == "[{} moderation - {}] New report from {}".format( assert m.subject == "[{} moderation - {}] New report from {}".format(
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment