{% extends "management/base.html" %} {% load i18n lucide ui %} {% comment %} A club's own self-service identity/branding editor -- see management/forms.py's ClubSettingsForm for exactly which fields are editable here versus platform-staff-only (slug, seasons). D9 "Club identity & branding" in the design handoff is the reference: two columns, form fields on the left and a live preview on the right. The preview here is scoped to what actually exists in this app rather than D9's aspirational App/Website/Email tabs -- primary_color drives the sidebar (--tenant-sidebar-bg/fg, base.html), secondary_color drives the club accent (--tenant-club/-dark/-content, buttons/active nav/crest) -- so the mini sidebar + button mock below is genuinely what changing these fields does, not a fabricated mockup. The colour math (content colour, contrast ratio) mirrors Club._content_color_for exactly, so the "computed ratio" shown is the real number the server will use, not an approximation. {% endcomment %} {% block panel_title %}{% trans "Club identity" %}{% endblock panel_title %} {% block heading %}{% trans "Club identity" %}{% endblock heading %} {% block actions %} {% endblock actions %} {% block panel %}
{% csrf_token %} {% for error in form.non_field_errors %}
{% lucide "circle-x" size=18 %} {{ error }}
{% endfor %}
{% lucide "building-2" size=16 %} {% trans "Club" %}
{% form_field form.name %} {% form_field form.legal_name %} {% form_field form.contact_email %}
{% lucide "palette" size=16 %} {% trans "Colours" %}
{% trans "Accents only" %}
{% form_field form.primary_color %}
{% trans "Sidebar background" %}
{% form_field form.secondary_color %}
{% trans "Buttons & accents" %}
{% trans "Sidebar text on sidebar background" %}
{% trans "Button text on accent colour" %}
{% lucide "image" size=16 %} {% trans "Logo" %}
{% if club.logo %} {% else %} {{ club.initials }} {% endif %}
{% form_field form.logo %}
{% lucide "eye" size=16 %} {% trans "Live preview" %}

{% trans "Where these colours actually show up in the management app -- updates as you edit, before you save anything." %}

{{ club.initials|default:"CL" }}
{{ club.name|default:_("Your club") }}
{% trans "Overview" %}
{% trans "Members" %}
{% trans "Calendar" %}
{% trans "New member" %}
{% trans "Never used for: status colours (paid/overdue, present/absent), table styling, or form fields -- those stay consistent for everyone regardless of club branding." %}
{% endblock panel %} {% block extra_body %} {% endblock extra_body %}