diff --git a/generic/templates/generic/cid_group_view_detail.html b/generic/templates/generic/cid_group_view_detail.html index 644a9c29..6f43b95a 100755 --- a/generic/templates/generic/cid_group_view_detail.html +++ b/generic/templates/generic/cid_group_view_detail.html @@ -29,9 +29,21 @@

Users

{% if users %} -
-
-
-

Add users by email

-
- {% csrf_token %} -
- -
- -
-
-
-
+
@@ -153,5 +163,68 @@ .list-group-item .fw-bold { font-size: 0.95rem; } .card-title { font-size: 1rem; } /* keep existing small visual tweaks */ + .sort-caret { font-weight: 600; } + + + {% endblock %} \ No newline at end of file diff --git a/generic/views.py b/generic/views.py index a05b3d5c..52dadd23 100644 --- a/generic/views.py +++ b/generic/views.py @@ -4959,11 +4959,21 @@ def group_email_results(request, pk, resend=False): @user_is_cid_user_manager def candidate_email_details(request, cid, resend=False): - user = CidUser.objects.get(cid=cid) + user = get_object_or_404(CidUser, cid=cid) - email_sent, comment = user.email_details(resend=False) + # Allow caller to request a resend via querystring or POST param + resend_flag = False + try: + if request.method == 'POST': + resend_flag = str(request.POST.get('resend', '')).lower() in ('1', 'true', 'yes') + else: + resend_flag = str(request.GET.get('resend', '')).lower() in ('1', 'true', 'yes') + except Exception: + resend_flag = False - return JsonResponse({"sent": email_sent, "comment": comment}) + email_sent, comment = user.email_details(resend=resend_flag) + + return JsonResponse({"sent": email_sent, "comment": str(comment)}) @user_is_cid_user_manager