Add a club legal address, used for invoices/referee forms ahead of the home ground
New Club.legal_address/legal_zip_code/legal_city, editable from the identity page (management:club_settings). Official document headers (the dues invoice, the referee payment form) previously borrowed the club's home Location for this -- conflating "where we play" with "our registered address", which aren't always the same place. New club.services.invoicing.resolve_document_address(club) picks the club's own legal address when set, falling back to the home Location exactly as before when it isn't, so nothing breaks for a club that hasn't set one yet. Location.is_home now means only what it always should have: telling a home game from an away one. Renamed the shared "home_location" template/context variable to "document_address" on both PDFs to match -- it was never accurate once a legal address could win instead. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01ECGMEwrc2k4D8VQuwjstj9
This commit is contained in:
@@ -50,6 +50,15 @@ class Club(UUIDModel):
|
||||
)
|
||||
website = models.URLField(_("website"), blank=True, help_text=_("The club's own site, if it has one -- shown alongside its RosterChief pages, not used for anything else yet."))
|
||||
|
||||
legal_address = models.CharField(
|
||||
_("legal address"),
|
||||
max_length=255,
|
||||
blank=True,
|
||||
help_text=_("Street address for official documents (invoices, the referee payment form). Falls back to the home location's address when left blank -- set this when the club's registered address isn't where it actually plays."),
|
||||
)
|
||||
legal_zip_code = models.CharField(_("legal zip code"), max_length=255, blank=True)
|
||||
legal_city = models.CharField(_("legal city"), max_length=255, blank=True)
|
||||
|
||||
logo = models.FileField(
|
||||
_("logo"),
|
||||
upload_to=club_logo_path,
|
||||
|
||||
Reference in New Issue
Block a user