|
14 | 14 | from django.db.models.query import QuerySet as DjangoQuerySet |
15 | 15 | from django.http import FileResponse, HttpResponse |
16 | 16 | from django.shortcuts import get_object_or_404 |
| 17 | +from django.urls import reverse |
17 | 18 | from django.utils import timezone |
18 | 19 | from django_filters.rest_framework import DjangoFilterBackend |
19 | 20 | from drf_spectacular.renderers import OpenApiJsonRenderer2 |
|
176 | 177 | generate_file_response, |
177 | 178 | get_setting, |
178 | 179 | get_system_setting, |
| 180 | + process_tag_notifications, |
179 | 181 | ) |
180 | 182 |
|
181 | 183 | logger = logging.getLogger(__name__) |
@@ -528,6 +530,15 @@ def notes(self, request, pk=None): |
528 | 530 | ) |
529 | 531 | note.save() |
530 | 532 | engagement.notes.add(note) |
| 533 | + # Determine if we need to send any notifications for user mentioned |
| 534 | + process_tag_notifications( |
| 535 | + request=request, |
| 536 | + note=note, |
| 537 | + parent_url=request.build_absolute_uri( |
| 538 | + reverse("view_engagement", args=(engagement.id,)), |
| 539 | + ), |
| 540 | + parent_title=f"Engagement: {engagement.name}", |
| 541 | + ) |
531 | 542 |
|
532 | 543 | serialized_note = serializers.NoteSerializer( |
533 | 544 | {"author": author, "entry": entry, "private": private}, |
@@ -1086,6 +1097,15 @@ def notes(self, request, pk=None): |
1086 | 1097 | ) |
1087 | 1098 | note.save() |
1088 | 1099 | finding.notes.add(note) |
| 1100 | + # Determine if we need to send any notifications for user mentioned |
| 1101 | + process_tag_notifications( |
| 1102 | + request=request, |
| 1103 | + note=note, |
| 1104 | + parent_url=request.build_absolute_uri( |
| 1105 | + reverse("view_finding", args=(finding.id,)), |
| 1106 | + ), |
| 1107 | + parent_title=f"Finding: {finding.title}", |
| 1108 | + ) |
1089 | 1109 |
|
1090 | 1110 | if finding.has_jira_issue: |
1091 | 1111 | jira_helper.add_comment(finding, note) |
@@ -2135,6 +2155,15 @@ def notes(self, request, pk=None): |
2135 | 2155 | ) |
2136 | 2156 | note.save() |
2137 | 2157 | test.notes.add(note) |
| 2158 | + # Determine if we need to send any notifications for user mentioned |
| 2159 | + process_tag_notifications( |
| 2160 | + request=request, |
| 2161 | + note=note, |
| 2162 | + parent_url=request.build_absolute_uri( |
| 2163 | + reverse("view_test", args=(test.id,)), |
| 2164 | + ), |
| 2165 | + parent_title=f"Test: {test.title}", |
| 2166 | + ) |
2138 | 2167 |
|
2139 | 2168 | serialized_note = serializers.NoteSerializer( |
2140 | 2169 | {"author": author, "entry": entry, "private": private}, |
|
0 commit comments