From a24181d66b35a17ed461e8ac4333841ccd4db90e Mon Sep 17 00:00:00 2001 From: Andreas Hubel <andi@saerdnaer.de> Date: Sat, 21 Dec 2024 00:45:48 +0100 Subject: [PATCH] chore(schedule): add version field on confernce and schedule model --- src/core/locale/de/LC_MESSAGES/django.po | 12 ++++++++++ src/core/locale/en/LC_MESSAGES/django.po | 12 ++++++++++ ...0166_schedulesource_last_import_version.py | 22 +++++++++++++++++++ .../0167_conference_schedule_version.py | 22 +++++++++++++++++++ src/core/models/conference.py | 7 ++++++ src/core/models/schedules.py | 6 +++++ 6 files changed, 81 insertions(+) create mode 100644 src/core/migrations/0166_schedulesource_last_import_version.py create mode 100644 src/core/migrations/0167_conference_schedule_version.py diff --git a/src/core/locale/de/LC_MESSAGES/django.po b/src/core/locale/de/LC_MESSAGES/django.po index fc92843e2..92d67b13f 100644 --- a/src/core/locale/de/LC_MESSAGES/django.po +++ b/src/core/locale/de/LC_MESSAGES/django.po @@ -790,6 +790,12 @@ msgstr "Konfiguration für die Karten, wie z.B. Art/Typ, Layer oder Startpositio msgid "Conference__map_config" msgstr "Karten" +msgid "Conference__schedule_version__help" +msgstr "Globale Versionsbezeichner für das Gesammt-Progamm in der Schedule.XML Schnittstelle" + +msgid "Conference__schedule_version" +msgstr "Schedule Version" + msgid "Conference__support_assembly_type" msgstr "min. eine Assembly-Art muss erlaubt sein" @@ -1864,6 +1870,12 @@ msgstr "Zeitpunkt des letzten erfolgreichen Imports" msgid "ScheduleSource__last_import" msgstr "letzter Import" +msgid "ScheduleSource__version__help" +msgstr "Version des letzten erfolgreichen Imports" + +msgid "ScheduleSource__version" +msgstr "Quellversion" + msgid "unknown" msgstr "unbekannt" diff --git a/src/core/locale/en/LC_MESSAGES/django.po b/src/core/locale/en/LC_MESSAGES/django.po index dfb63b7f4..ef4cf8ce5 100644 --- a/src/core/locale/en/LC_MESSAGES/django.po +++ b/src/core/locale/en/LC_MESSAGES/django.po @@ -790,6 +790,12 @@ msgstr "configuration for the maps used, e.g. type, layers and initial position/ msgid "Conference__map_config" msgstr "maps" +msgid "Conference__schedule_version__help" +msgstr "Global version identifier for the overall Schedule.XML API" + +msgid "Conference__schedule_version" +msgstr "Schedule version" + msgid "Conference__support_assembly_type" msgstr "at least one of the assembly types must be supported" @@ -1862,6 +1868,12 @@ msgstr "timestamp of the last successful import" msgid "ScheduleSource__last_import" msgstr "last import" +msgid "ScheduleSource__version__help" +msgstr "version of the last successful import" + +msgid "ScheduleSource__version" +msgstr "source version" + msgid "unknown" msgstr "unknown" diff --git a/src/core/migrations/0166_schedulesource_last_import_version.py b/src/core/migrations/0166_schedulesource_last_import_version.py new file mode 100644 index 000000000..55f1eb855 --- /dev/null +++ b/src/core/migrations/0166_schedulesource_last_import_version.py @@ -0,0 +1,22 @@ +# Generated by Django 5.1.3 on 2024-12-17 19:27 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + dependencies = [ + ("core", "0165_alter_eventparticipant_options_and_more"), + ] + + operations = [ + migrations.AddField( + model_name="schedulesource", + name="last_import_version", + field=models.TextField( + blank=True, + help_text="ScheduleSource__version__help", + null=True, + verbose_name="ScheduleSource__version", + ), + ), + ] diff --git a/src/core/migrations/0167_conference_schedule_version.py b/src/core/migrations/0167_conference_schedule_version.py new file mode 100644 index 000000000..8bfc199ea --- /dev/null +++ b/src/core/migrations/0167_conference_schedule_version.py @@ -0,0 +1,22 @@ +# Generated by Django 5.1.3 on 2024-12-17 19:36 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + dependencies = [ + ("core", "0166_schedulesource_last_import_version"), + ] + + operations = [ + migrations.AddField( + model_name="conference", + name="schedule_version", + field=models.TextField( + blank=True, + help_text="Conference__schedule_version__help", + null=True, + verbose_name="Conference__schedule_version", + ), + ), + ] diff --git a/src/core/models/conference.py b/src/core/models/conference.py index 02c7c5393..fb40255e7 100644 --- a/src/core/models/conference.py +++ b/src/core/models/conference.py @@ -361,6 +361,13 @@ class Conference(models.Model): Konfiguration für die eingebundene Karten wie z. B. Typ, Startposition/-bereich, verfügbare/angezeigte Layer, etc. """ + schedule_version = models.TextField( + blank=True, + null=True, + help_text=_('Conference__schedule_version__help'), + verbose_name=_('Conference__schedule_version'), + ) + def clean(self): super().clean() diff --git a/src/core/models/schedules.py b/src/core/models/schedules.py index aed616a49..b1d397851 100644 --- a/src/core/models/schedules.py +++ b/src/core/models/schedules.py @@ -71,6 +71,12 @@ class ScheduleSource(models.Model): help_text=_('ScheduleSource__last_import__help'), verbose_name=_('ScheduleSource__last_import'), ) + last_import_version = models.TextField( + blank=True, + null=True, + help_text=_('ScheduleSource__version__help'), + verbose_name=_('ScheduleSource__version'), + ) def __str__(self): return f'{self.import_type}{{{self.import_url_masked}}}' -- GitLab