{% extends "management/base.html" %} {% load i18n lucide static ui %} {% block heading %}{% trans "Parent claims" %}{% endblock heading %} {% block subheading %}{% trans "Parents asking to be linked to a child the club already has on file." %}{% endblock subheading %} {% block panel %}

{% lucide "inbox" size=18 %} {% trans "Waiting for review" %}

{% blocktrans %}Check each request against your own records before approving. The shortlist only ever contains children who have nobody on file, so approving can never re-parent a child who already has one. An approved parent is added as a guardian: they get the login, but owe no fee and are not counted as a member.{% endblocktrans %}

{% for claim in pending %}
{% trans "Parent says they are" %}
{{ claim.parent_name }}
{{ claim.parent_email }}
{% trans "Parent of" %}
{{ claim.claimed_child_name }}
{{ claim.child_date_of_birth|date:"j F Y" }}
{% comment %} size="small" + show_label=False on the dropdown: {% form_field %} defaults to daisyUI's medium control height, taller than the btn-sm used by Approve/Reject below -- without it the dropdown stands out against the buttons either side of it. justify-between (rather than everything in one flex-wrap run) keeps Approve and Reject apart even as the row wraps on a narrow card -- Approve stays pinned left, Reject right, so the two are never one stray click apart the way adjacent buttons would be. {% endcomment %}
{% if claim.has_candidates %}
{% csrf_token %}
{% form_field claim.review_form.child size="small" show_label=False %}
{% else %}

{% trans "No child without a parent matches this. Check the spelling and the date of birth with them before rejecting." %}

{% endif %}
{% empty %}

{% trans "Nothing waiting." %}

{% endfor %}
{% trans "Reject claim" as reject_claim_title %} {% trans "Reject" as reject_claim_submit_label %} {% for claim in pending %} {% url 'management:parent_claim_reject' claim.pk as reject_claim_url %} {% blocktrans with name=claim.parent_name asvar reject_claim_blurb %}Why is {{ name }}'s claim being rejected? Recorded in the club's own history, not sent to them.{% endblocktrans %} {% include "controlpanel/_modal_form.html" with modal_id=claim.pk|dom_id:"claim_reject_modal" title=reject_claim_title form=claim.reject_form action_url=reject_claim_url submit_label=reject_claim_submit_label submit_icon="x" blurb=reject_claim_blurb %} {% endfor %}

{% lucide "user-search" size=18 %} {% trans "Children with nobody on file" %}

{% trans "Imported without a parent. They stay here until someone claims them." %}

{% if reviewed %}

{% lucide "history" size=18 %} {% trans "Already dealt with" %}

{% for claim in reviewed %} {% endfor %}
{% trans "Parent" %} {% trans "Claimed" %} {% trans "Outcome" %} {% trans "Reviewed by" %}
{{ claim.parent_name }}
{{ claim.parent_email }}
{{ claim.claimed_child_name }} {% if claim.status == "approved" %} {% trans "Approved" %} {% if claim.child %}
{{ claim.child }}
{% endif %} {% else %} {% trans "Rejected" %} {% if claim.note %}
{{ claim.note }}
{% endif %} {% endif %}
{{ claim.reviewed_by|default:"—" }}
{% endif %} {% endblock panel %} {% block extra_body %} {% endblock extra_body %}