# Generated manually to seed/update Danish ApiMessage rows.
# Creates or updates rows using Language.code + message_key.

from django.db import migrations


LANGUAGE_CODE = "da"

MESSAGES = {
    "AUTH_INVALID_CREDENTIALS": "Login mislykkedes\nUgyldigt brugernavn eller kodeord.",
    "AUTH_MISSING_CREDENTIALS": "Login mislykkedes\nIndlæs venligst brugernavn og kodeord.",
    "AUTH_EMAIL_REQUIRED": "E-postadresse er påkrævet\nTil nulstilling af dit kodeord skal du indlæse din e-postadresse.",
    "AUTH_EMAIL_ALREADY_REGISTERED": "Denne e-postadresse er registreret\nDenne e-postadresse er allerede registreret i denne app. Til at fortsætte skal du logge ind (eller bruge en anden e-postadresse).",
    "DEFAULT_DEVICE_NOT_SET": "Apparatet er ikke indstillet til hurtigtest\nMåleapparatet er ikke indstillet til hurtigtest. Du kan indstille det i App-indstillingerne. Ønsker du at gøre det nu?",
    "DEVICE_DUPLICATE_SERIAL_NUMBER": "Dette apparat er allerede tidligere tilføjet \nEt måleapparat med same serienummer er allerede tiføjet.",
    "DEVICE_DUPLICATE_LABEL": "Det apparat er allerede tidligere tilføjet \nDu har allerede tilføjet et måleapparat med denne betegnelse.",
    "DUPLICATE_FIELD": "En mark med dette navn er allerede tidligere tilføjet\nEn mark med samme navn er allerede tilføjet. Anvend venligst et andet navn!",
    "FIELD_DEFAULT_DELETE_BLOCKED": "Førstevalgsmark kan ikke slettes \nFørstevalgsmarken kan ikke slettes.",
    "FIELD_HAS_RELATED_RECORDS": "Marken kan ikke slettes\nSletning af denne mark er ikke mulig. Årsag: den har tilknyttede resultater.",
    "BUYER_DUPLICATE": "Køber med dette navn er tilføjet\nEn køber med samme navn er allerede tilføjet. Anvend venligst et andet navn!",
    "BUYER_DEFAULT_DELETE_BLOCKED": "Det er ikke muligt at slette førstevalgskøberen\nData for førstevalgskøber kan ikke slettes.",
    "BUYER_HAS_RELATED_RECORDS": "Det er ikke muligt at slette\nData for denne køber kan ikke slettes. Årsagen er, at den har tilknyttede resultater.",
}


def seed_da_api_messages(apps, schema_editor):
    Language = apps.get_model("core", "Language")
    ApiMessage = apps.get_model("core", "ApiMessage")

    try:
        language = Language.objects.get(code=LANGUAGE_CODE)
    except Language.DoesNotExist:
        raise RuntimeError(f"Missing Language row for code: {LANGUAGE_CODE}")

    for message_key, message in MESSAGES.items():
        ApiMessage.objects.update_or_create(
            message_key=message_key,
            language=language,
            defaults={
                "message": message,
                "is_active": True,
            },
        )


class Migration(migrations.Migration):

    dependencies = [
        ('core', '0016_miss_multilingual_api_messages'),
    ]

    operations = [
        migrations.RunPython(seed_da_api_messages),
    ]
