{% extends "management/base.html" %} {% load lucide i18n %} {% block heading %}{% trans "Review import" %}{% endblock heading %} {% block panel %} {% if not season %}
{% lucide "triangle-alert" size=16 %} {% trans "No active season — members will still be created, but won't be rostered for one until it exists." %}
{% endif %}

{% blocktrans count counter=valid_count %}{{ counter }} member will be created.{% plural %}{{ counter }} members will be created.{% endblocktrans %} {% if skipped_count %}{% blocktrans count counter=skipped_count %}{{ counter }} row will be skipped.{% plural %}{{ counter }} rows will be skipped.{% endblocktrans %}{% endif %}

{% for result in results %} {% empty %} {% endfor %}
{% trans "Row" %} {% trans "Last name" %} {% trans "First name" %} {% trans "Email" %} {% trans "Family" %} {% trans "Joining as" %} {% trans "Outcome" %}
{{ result.line_number }} {{ result.raw.last_name }} {{ result.raw.first_name }} {{ result.raw.email }} {% if result.family_group %} {{ result.family_group }} {% if result.family_role %}{{ result.family_role|capfirst }}{% endif %} {% else %} {% endif %} {% comment %} A guardian holds the login for a child but is not a member: no fee, and not counted in any member total. See club.models.ClubMembership.Kind. {% endcomment %} {% if result.membership_kwargs.kind == "guardian" %} {% trans "Guardian" %} {% else %} {% trans "Member" %} {% endif %} {% if result.member %} {% trans "Will create" %} {% else %} {% trans "Skipped" %}
{{ result.errors|join:"; " }}
{% endif %}
{% trans "No rows found in the uploaded file." %}
{% lucide "arrow-left" size=16 %} {% trans "Back" %} {% if valid_count %}
{% csrf_token %}
{% endif %}
{% endblock panel %}