#!/usr/bin/env python3
"""Task 13 i18n: registration deadline + per-member payment keys x4 locales."""
import json
import os

BASE = os.path.join(os.path.dirname(os.path.abspath(__file__)), "..", "app", "i18n", "locales")

KEYS = {
    "en": {
        "reg_closed": "Registration Closed",
        "reg_closed_started": "This match has already started — registration is no longer possible.",
        "reg_closed_deadline": "The registration deadline (12 midnight before match day) has passed for this match.",
        "reg_open_until_start": "Registration is open right up to match start:",
        "reg_closes_midnight": "Registration closes at 12 midnight before match day:",
        "each_pays_own": "each player pays from their own wallet",
        "each_member_pays_fee": "Each selected member pays the entry fee separately from their own wallet",
        "grp_per_player": "player",
        "grp_friends": "friends",
        "grp_players": "players",
        "grp_cost": "Cost",
        "grp_slots_left": "slots left",
        "grp_zero": "zero",
    },
    "fa": {
        "reg_closed": "ثبت‌نام بسته است",
        "reg_closed_started": "این مسابقه شروع شده است — ثبت‌نام دیگر ممکن نیست.",
        "reg_closed_deadline": "مهلت ثبت‌نام (۱۲ شبِ قبل از روز مسابقه) برای این مسابقه گذشته است.",
        "reg_open_until_start": "ثبت‌نام تا لحظه شروع مسابقه باز است:",
        "reg_closes_midnight": "ثبت‌نام رأس ساعت ۱۲ شبِ قبل از روز مسابقه بسته می‌شود:",
        "each_pays_own": "هر بازیکن از کیف پول خودش پرداخت می‌کند",
        "each_member_pays_fee": "هر عضو انتخاب‌شده هزینه ورود را جداگانه از کیف پول خودش پرداخت می‌کند",
        "grp_per_player": "نفر",
        "grp_friends": "دوست",
        "grp_players": "نفر",
        "grp_cost": "هزینه",
        "grp_slots_left": "اسلات باقی‌مانده",
        "grp_zero": "صفر",
    },
    "tr": {
        "reg_closed": "Kayıt Kapalı",
        "reg_closed_started": "Bu maç zaten başladı — kayıt artık mümkün değil.",
        "reg_closed_deadline": "Kayıt son tarihi (maç gününden önceki gece yarısı 12) bu maç için geçti.",
        "reg_open_until_start": "Kayıt, maç başlangıcına kadar açıktır:",
        "reg_closes_midnight": "Kayıt, maç gününden önceki gece yarısı 12'de kapanır:",
        "each_pays_own": "her oyuncu kendi cüzdanından öder",
        "each_member_pays_fee": "Seçilen her üye katılım ücretini kendi cüzdanından ayrı ayrı öder",
        "grp_per_player": "oyuncu",
        "grp_friends": "arkadaş",
        "grp_players": "oyuncu",
        "grp_cost": "Ücret",
        "grp_slots_left": "kalan slot",
        "grp_zero": "sıfır",
    },
    "ar": {
        "reg_closed": "التسجيل مغلق",
        "reg_closed_started": "بدأت هذه المباراة بالفعل — لم يعد التسجيل ممكنًا.",
        "reg_closed_deadline": "انتهى الموعد النهائي للتسجيل (منتصف الليل قبل يوم المباراة) لهذه المباراة.",
        "reg_open_until_start": "التسجيل مفتوح حتى لحظة بداية المباراة:",
        "reg_closes_midnight": "يغلق التسجيل في منتصف الليل (12 ليلاً) قبل يوم المباراة:",
        "each_pays_own": "كل لاعب يدفع من محفظته الخاصة",
        "each_member_pays_fee": "كل عضو تم اختياره يدفع رسوم الدخول بشكل منفصل من محفظته الخاصة",
        "grp_per_player": "لاعب",
        "grp_friends": "أصدقاء",
        "grp_players": "لاعبون",
        "grp_cost": "التكلفة",
        "grp_slots_left": "المقاعد المتبقية",
        "grp_zero": "صفر",
    },
}

for lang, kv in KEYS.items():
    path = os.path.join(BASE, f"{lang}.json")
    with open(path, encoding="utf-8") as f:
        data = json.load(f)
    added = 0
    for k, v in kv.items():
        if k not in data:
            data[k] = v
            added += 1
    with open(path, "w", encoding="utf-8") as f:
        json.dump(data, f, ensure_ascii=False, indent=2)
        f.write("\n")
    print(f"{lang}: +{added} keys -> {len(data)} total")
print("OK")
