Files
RosterChief/news/migrations/0004_news_body_en_news_title_en.py
Bernard Siebens 5dcffefb28 Round out referee amounts/colors, and add bilingual (nl/en) news content
Referee display: drop the redundant "External" pill from the PDF form, round
the event/dashboard "due" summary to 2 decimals (a fine-grained km rate like
0.083 was pushing the raw total to 3+ decimals), and theme the PDF's accent
colors off the club's own primary/secondary colors instead of a hardcoded
default.

News: title/body stay the club's own-language (Dutch) text; new optional
title_en/body_en carry a translation, with News.effective_title_en/
effective_body_en resolving the fallback to the original on read rather than
copying it in at save time -- so editing the Dutch text later never leaves a
stale English copy behind, and existing rows get correct fallback behaviour
with no backfill. The news form lays both languages out side by side; the
detail page only shows an English section when one was actually added. The
public API returns both languages in one call (title_nl/body_nl/excerpt_nl
alongside title_en/body_en/excerpt_en, the latter never blank) -- a breaking
rename of the previously-unprefixed title/body/excerpt fields.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-10 20:47:58 +02:00

24 lines
786 B
Python

# Generated by Django 6.0.6 on 2026-08-10 18:31
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('news', '0003_alter_news_body'),
]
operations = [
migrations.AddField(
model_name='news',
name='body_en',
field=models.TextField(blank=True, help_text='Optional. Supports the same Markdown as the body above. Falls back to the body above when left blank.', verbose_name='body (English)'),
),
migrations.AddField(
model_name='news',
name='title_en',
field=models.CharField(blank=True, help_text='Optional. Falls back to the title above when left blank.', max_length=255, verbose_name='title (English)'),
),
]