|
1 | | -{% load i18n heroicons %} |
| 1 | +{% load i18n heroicons co-applicant_tags %} |
2 | 2 |
|
3 | 3 | <div class="sidebar__inner sidebar__inner--actions" data-testid="sidebar-primary-actions"> |
4 | 4 | <details {% if user.is_applicant or not co_applicants %} open {% endif %} class="group"> |
|
7 | 7 | {% trans "Co-applicants" %} <span class="text-base font-medium"> ({{ co_applicants.count }})</span> |
8 | 8 | {% heroicon_solid "chevron-down" size="16" class="w-4 h-4 transition-transform rotate-90 ms-2 group-open:rotate-0" %} |
9 | 9 | </p> |
| 10 | + {% can_invite_coapplicant user object as can_invite %} |
10 | 11 | <button |
11 | 12 | class="flex items-center py-1 pr-4 pl-2 font-bold rounded-sm -me-2 {% if object.co_applicant_invites.count >= invite_max_limit %} text-blue-200 {% else %}transition-colors cursor-pointer text-dark-blue hover:bg-slate-200{% endif %}" |
12 | 13 | hx-get="{% url 'apply:submissions:invite_co_applicant' pk=object.id %}" |
13 | 14 | hx-target="#htmx-modal" |
14 | | - {% if object.co_applicant_invites.count >= invite_max_limit %}disabled title='{% trans "Max limit reached" %}'{% endif %} |
| 15 | + {% if not can_invite %}disabled title='{% trans "Not allowed" %}'{% endif %} |
15 | 16 | role="button" |
16 | 17 | aria-label="{% trans "Invite co-applicant" %}" |
17 | 18 | > |
|
27 | 28 | {% if co_applicants %} |
28 | 29 | <div class="flex flex-col gap-2 justify-between"> |
29 | 30 | {% for invite in co_applicants %} |
30 | | - |
| 31 | + {% can_update_coapplicant user invite as can_update %} |
31 | 32 | <div> |
32 | | - <a |
33 | | - class="font-bold line-clamp-2 group/coapplicant" |
34 | | - href="{% url 'apply:submissions:edit_co_applicant' invite_pk=invite.id %}" |
35 | | - hx-get="{% url 'apply:submissions:edit_co_applicant' invite_pk=invite.id %}" |
36 | | - hx-target="#htmx-modal" |
37 | | - > |
38 | | - <div class="flex justify-between"> |
39 | | - {% if invite.status == "accepted" %} |
40 | | - {{ invite.co_applicant.user }} |
41 | | - {% else %} |
42 | | - {{ invite.invited_user_email }} |
43 | | - {% endif %} |
| 33 | + {% if can_update %} |
| 34 | + <a |
| 35 | + class="font-bold line-clamp-2 group/coapplicant" |
| 36 | + href="{% url 'apply:submissions:edit_co_applicant' invite_pk=invite.id %}" |
| 37 | + hx-get="{% url 'apply:submissions:edit_co_applicant' invite_pk=invite.id %}" |
| 38 | + hx-target="#htmx-modal" |
| 39 | + > |
| 40 | + <div class="flex justify-between"> |
| 41 | + {% if invite.status == "accepted" %} |
| 42 | + {{ invite.co_applicant.user }} |
| 43 | + {% else %} |
| 44 | + {{ invite.invited_user_email }} |
| 45 | + {% endif %} |
| 46 | + |
| 47 | + {% heroicon_solid "pencil" class="hidden align-middle me-1 group-hover/coapplicant:inline" width=16 height=16 stroke_width=2 aria_hidden=true %} |
44 | 48 |
|
45 | | - {% heroicon_solid "pencil" class="hidden align-middle me-1 group-hover/coapplicant:inline" width=16 height=16 stroke_width=2 aria_hidden=true %} |
| 49 | + </div> |
| 50 | + </a> |
| 51 | + {% else %} |
| 52 | + <div class="font-bold line-clamp-2 group/coapplicant"> |
| 53 | + <div class="flex justify-between"> |
| 54 | + {% if invite.status == "accepted" %} |
| 55 | + {{ invite.co_applicant.user }} |
| 56 | + {% else %} |
| 57 | + {{ invite.invited_user_email }} |
| 58 | + {% endif %} |
46 | 59 |
|
| 60 | + </div> |
47 | 61 | </div> |
48 | | - </a> |
| 62 | + {% endif %} |
| 63 | + |
49 | 64 | {% if invite.status == "accepted" %} |
50 | 65 | <div class="text-xs text-fg-muted" >{{ invite.co_applicant.get_role_display }}</div> |
51 | 66 | {% else %} |
|
0 commit comments