Initial commit
This commit is contained in:
448
resources/js/locales/cs/common.json
Normal file
448
resources/js/locales/cs/common.json
Normal file
@@ -0,0 +1,448 @@
|
||||
{
|
||||
"active": "Aktivní",
|
||||
"close": "Zavřít",
|
||||
"email": "Email",
|
||||
"email_and_password_required": "Email and heslo jsou povinné.",
|
||||
"enter_email": "Zadej svůj email",
|
||||
"enter_password": "Zadej heslo",
|
||||
"forgot_password": "Zapomenuté heslo?",
|
||||
"inactive": "Neaktivní",
|
||||
"login_dialog_label": "Přihlášení do VCM administrace",
|
||||
"logout_failed": "Odhlášení se nepodařilo",
|
||||
"password": "Heslo",
|
||||
"qso_count_one": "{{count}} QSO",
|
||||
"qso_count_few": "{{count}} QSO",
|
||||
"qso_count_other": "{{count}} QSO",
|
||||
"remember_me": "Zapamatovat přihlášení",
|
||||
"sign_in": "Přihlásit",
|
||||
"title": "VKV závody",
|
||||
"unable_to_sign_in": "Přihlášení se nezdařilo.",
|
||||
|
||||
"yes": "Ano",
|
||||
"no": "Ne",
|
||||
|
||||
"contest_name": "Název závodu",
|
||||
"contest_description": "Popis závodu",
|
||||
|
||||
|
||||
"rounds_loading": "Načítám kola…",
|
||||
"unable_to_load_rounds": "Nepodařilo se načíst seznam kol.",
|
||||
"rounds_empty": "Žádná kola nejsou k dispozici.",
|
||||
"round_name": "Kolo",
|
||||
"round_contest": "Závod",
|
||||
"round_schedule": "Termín",
|
||||
"round_active": "Aktivní",
|
||||
"round_test": "Test",
|
||||
"round_logs_deadline": "Logy do",
|
||||
"round_logs_deadline_passed": "Termín pro nahrání logů již vypršel.",
|
||||
"edit_round": "Upravit kolo",
|
||||
"upload_log_title": "Nahrát log",
|
||||
"select_file": "Vyber soubor",
|
||||
"upload": "Nahrát soubor na server",
|
||||
"upload_pband_mapped": "Hodnota PBand \"{{original}}\" z EDI souboru odpovídá \"{{mapped}}\" pásmu.",
|
||||
"upload_pband_missing": "PBand není vyplněné v souboru, vyber pásmo ze seznamu.",
|
||||
"upload_file_not_supported": "Soubor není podporován: chybí hlavička [REG1TEST;1].",
|
||||
"upload_spowe_normalized_from": "SPowe bylo normalizováno z \"{{from}}\" na \"{{to}}\".",
|
||||
"upload_spowe_normalized_to": "SPowe bylo normalizováno na \"{{value}}\".",
|
||||
"upload_filename_missing_fields": "Doplň PCall, PSect a PBand, aby šlo ověřit název souboru.",
|
||||
"upload_filename_unknown_code": "Nelze určit prefix názvu souboru pro zvolenou kategorii a pásmo.",
|
||||
"upload_filename_valid": "Název souboru odpovídá pravidlům.",
|
||||
"upload_filename_invalid": "Název souboru neodpovídá pravidlům. Doporučený tvar: {{expected}}",
|
||||
"upload_filename_normalize": "Normalizovat název",
|
||||
"upload_filename_used": "Při uploadu se použije: {{name}}",
|
||||
"upload_error_pick_file": "Vyber soubor.",
|
||||
"upload_error_pick_band": "Vyber pásmo (PBand) ze seznamu.",
|
||||
"upload_error_band_unknown": "PBand \"{{band}}\" neodpovídá známým pásmům, vyber správnou hodnotu.",
|
||||
"upload_error_pwwlo_required": "PWWLo je povinné.",
|
||||
"upload_error_pwwlo_format": "PWWLo musí mít 6 znaků ve formátu lokátoru (AA00AA).",
|
||||
"upload_error_rhbbs_required": "RHBBS je povinné.",
|
||||
"upload_error_rhbbs_format": "RHBBS musí být ve formátu e-mailu.",
|
||||
"upload_warning_rhbbs_required": "RHBBS chybí. Log lze nahrát, ale doporučujeme hodnotu doplnit.",
|
||||
"upload_warning_rhbbs_format": "RHBBS není ve formátu e-mailu. Log lze nahrát, ale doporučujeme hodnotu opravit.",
|
||||
"upload_error_tname_required": "TName je povinné.",
|
||||
"upload_error_pcall_required": "PCall je povinné.",
|
||||
"upload_error_pcall_format": "PCall musí být validní volací znak.",
|
||||
"upload_error_psect_required": "PSect je povinné.",
|
||||
"upload_error_psect_invalid": "PSect není validní.",
|
||||
"upload_error_psect_not_iaru": "PSect není ve formátu IARU.",
|
||||
"upload_error_spowe_required": "SPowe je povinné.",
|
||||
"upload_error_spowe_format": "SPowe musí být číslo (může být desetinné, bez jednotek).",
|
||||
"upload_error_spowe_length": "SPowe může mít maximálně 12 znaků.",
|
||||
"upload_error_spowe_limit": "SPowe ({{value}} W) přesahuje limit pro kategorii {{category}} ({{limit}} W).",
|
||||
"upload_error_sante_required": "SAnte je povinné.",
|
||||
"upload_error_sante_length": "SAnte může mít maximálně 12 znaků.",
|
||||
"upload_warn_sante_length": "Ve výsledcích bude zobrazeno pouze 12 znaků, váš popis antény je delší a bude oříznut.",
|
||||
"upload_error_rcall_required": "RCall je povinné pro zvolenou kategorii.",
|
||||
"upload_error_rcall_format": "RCall musí být validní volací znak.",
|
||||
"upload_error_mope_missing": "Vyplň alespoň MOpe1 nebo MOpe2 (můžeš zadat více značek oddělených mezerou/středníkem/čárkou).",
|
||||
"upload_error_mope_invalid": "Neplatné značky v MOpe1/MOpe2 ({{invalid}}).",
|
||||
"upload_error_not_allowed": "Nahrávání není povoleno.",
|
||||
"upload_file_drop_hint": "Přetáhni EDI soubor sem nebo klikni pro výběr.",
|
||||
"upload_psect_format_button": "Upravit kategorie podle IARU",
|
||||
"upload_error_psect_normalize": "PSect nelze normalizovat, oprav chyby a zkus to znovu.",
|
||||
"upload_error_missing_round": "Chybí ID kola.",
|
||||
"upload_error_power_band_mismatch": "PSect \"{{psect}}\" obsahuje výkonovou kategorii, ale pásmo \"{{band}}\" ji nepodporuje.",
|
||||
"upload_error_file_read": "Soubor se nepodařilo přečíst.",
|
||||
"upload_failed": "Nahrávání se nezdařilo.",
|
||||
"files_uploaded": "Nahráno: {{files}}",
|
||||
"upload_hint_authenticated": "Můžeš nahrát více souborů najednou.",
|
||||
"upload_hint_closed": "Nahrávání je dostupné během závodu do uzávěrky logů, nebo se přihlas.",
|
||||
"upload_hint_anonymous_once": "Anonymně lze nahrát jen jeden soubor.",
|
||||
"upload_hint_anonymous": "Anonymně lze nahrát jeden soubor během závodu do uzávěrky logů.",
|
||||
|
||||
"edi_error_file_empty": "{{name}}: soubor je prázdný.",
|
||||
"edi_error_missing_header": "{{name}}: chybí hlavička [REG1TEST;1].",
|
||||
"edi_error_missing_field": "{{name}}: chybí {{field}}.",
|
||||
"edi_error_tdate_format": "{{name}}: TDate musí být ve formátu YYYYMMDD;YYYYMMDD a první datum nesmí být větší než druhé.",
|
||||
"edi_error_pwwlo_format": "{{name}}: PWWLo musí mít 6 znaků ve formátu lokátoru (AA00AA).",
|
||||
"edi_error_pcall_format": "{{name}}: PCall musí být validní volací znak.",
|
||||
"edi_error_rcall_for_psect": "{{name}}: chybí nebo je neplatné RCall pro PSect {{psect}}.",
|
||||
"edi_error_mope_missing": "{{name}}: chybí MOpe1/MOpe2 pro multi operátory.",
|
||||
"edi_error_mope_invalid": "{{name}}: neplatné značky v MOpe1/MOpe2 ({{invalid}}).",
|
||||
"edi_error_missing_qso_records": "{{name}}: chybí sekce [QSORecords;N].",
|
||||
"edi_error_qso_fields_min": "{{name}}: QSO #{{index}} má málo polí (minimálně {{min}} očekáváno).",
|
||||
"edi_error_qso_date_format": "{{name}}: QSO #{{index}} má neplatné datum (YYMMDD).",
|
||||
"edi_error_qso_year_out_of_range": "{{name}}: QSO #{{index}} má rok mimo rozsah TDate.",
|
||||
"edi_error_qso_date_out_of_range": "{{name}}: QSO #{{index}} má datum mimo rozsah TDate.",
|
||||
"edi_error_qso_time_format": "{{name}}: QSO #{{index}} má neplatný čas (HHMM UTC).",
|
||||
"edi_error_qso_callsign": "{{name}}: QSO #{{index}} má neplatný volací znak.",
|
||||
"edi_error_qso_edit_in_file": "{{name}}: Záznamy QSO nelze upravit ve formuláři, oprav je v souboru a zkus ho nahrát znovu.",
|
||||
"edi_warning_qso_count_mismatch": "{{name}}: Deklarovaný počet QSO ({{expected}}) nesedí se skutečným ({{actual}}).",
|
||||
"edi_error_psect_multiple_power": "PSect obsahuje více výkonových kategorií.",
|
||||
"edi_error_psect_time_not_allowed": "PSect obsahuje časovou kategorii 6H, která není pro toto kolo povolena.",
|
||||
"edi_warning_psect_time_not_allowed": "PSect obsahuje časovou kategorii 6H, která není pro toto kolo povolena. Log lze nahrát, ale doporučujeme hodnotu opravit.",
|
||||
"edi_error_psect_multiple_time": "PSect obsahuje více časových kategorií.",
|
||||
"edi_error_psect_missing_operator": "PSect musí obsahovat SO nebo MO.",
|
||||
"edi_error_psect_check_extra": "PSect CHECK nesmí obsahovat žádné další tokeny.",
|
||||
"edi_error_psect_unknown_tokens": "PSect obsahuje neznámé tokeny: {{tokens}}.",
|
||||
"edi_warning_psect_unknown_tokens": "Neznámé tokeny v PSect: {{tokens}}.",
|
||||
"edi_field_tname": "název soutěže (TName)",
|
||||
"edi_field_tdate": "datum závodu (TDate=YYYYMMDD;YYYYMMDD)",
|
||||
"edi_field_pcall": "volací znak (PCall)",
|
||||
"edi_field_pwwlo": "lokátor (PWWLo)",
|
||||
"edi_field_psect": "sekce/kategorie (PSect)",
|
||||
"edi_field_pband": "použité pásmo (PBand)",
|
||||
"edi_field_spowe": "výkon (SPowe)",
|
||||
"edi_field_sante": "anténa (SAnte)",
|
||||
"edi_field_cqsop": "QSO body (CQSOP)",
|
||||
"edi_field_ctosc": "celkové body (CToSc)",
|
||||
"declared_note_line1": "Deklarované výsledky jsou předběžné výsledky OK a OL stanic.",
|
||||
"declared_note_line2": "Zobrazené mezinárodní výsledky nejsou oficiální výsledky a slouží pouze pro porovnání.",
|
||||
"declared_note_line3": "Deklarované výsledky jsou uspořádány na základě údajů v hlavičce EDI souborů v řádce CQSOP=. Další sloupce rovněž zobrazují data z deníku, které jsou kontrolovány pouze na správnost formátu zápisu.",
|
||||
"logs_loading": "Načítám logy…",
|
||||
"logs_empty": "Žádné logy nejsou k dispozici.",
|
||||
"unable_to_load_logs": "Nepodařilo se načíst logy.",
|
||||
"logs_waiting_processing": "Čekám na zpracování",
|
||||
"confirm_delete_log": "Opravdu smazat log?",
|
||||
"edi_pcall_hint": "Volací znak použitý v závodě (PCall).",
|
||||
"edi_padr1_hint": "Adresa QTH, řádek 1 (PAdr1).",
|
||||
"edi_padr2_hint": "Adresa QTH, řádek 2 (PAdr2).",
|
||||
"edi_mope1_hint": "Multi-operator řádek 1 (MOpe1).",
|
||||
"edi_mope2_hint": "Multi-operator řádek 2 (MOpe2).",
|
||||
"edi_rcall_hint": "Volací znak zodpovědného operátora (RCall).",
|
||||
"edi_radr1_hint": "Adresa zodpovědného operátora, řádek 1 (RAdr1).",
|
||||
"edi_radr2_hint": "Adresa zodpovědného operátora, řádek 2 (RAdr2).",
|
||||
"edi_rpoco_rcity_hint": "PSČ a město zodpovědného operátora (RPoCo / RCity).",
|
||||
"edi_rcoun_hint": "Země zodpovědného operátora (RCoun).",
|
||||
"edi_rphon_hint": "Telefonní číslo zodpovědného operátora (RPhon).",
|
||||
"edi_rhbbs_hint": "Domácí BBS zodpovědného operátora (RHBBS).",
|
||||
"edi_stxeq_hint": "Použitá TX sestava (STXEq).",
|
||||
"edi_srxeq_hint": "Použitá RX sestava (SRXEq).",
|
||||
"edi_spowe_hint": "Výkon TX ve wattech (SPowe).",
|
||||
"edi_sante_hint": "Použitá anténa (SAnte).",
|
||||
"edi_santh_hint": "Výška antény nad zemí / nad mořem (SAntH).",
|
||||
"six_hr_band_warning": "6H kategorie je povolena jen pro pásma 145 MHz a 435 MHz.",
|
||||
"override_pre_match_title": "Ruční zásahy před matchingem",
|
||||
"override_pre_match_hint": "Změny se projeví po kliknutí na „Pokračovat“. IGNORED vyřadí log z matchingu.",
|
||||
"override_loading_logs": "Načítám logy…",
|
||||
"override_no_logs": "Žádné logy k úpravě.",
|
||||
"override_detail": "Detail",
|
||||
"override_detail_title": "Detail logu",
|
||||
"override_reason_prefix": "Důvod",
|
||||
"override_status_label": "Status",
|
||||
"override_status_auto": "AUTO",
|
||||
"override_status_ignored": "IGNORED",
|
||||
"override_status_check": "CHECK",
|
||||
"override_status_ok": "OK",
|
||||
"override_status_dq": "DQ",
|
||||
"override_band_label": "Band",
|
||||
"override_category_label": "Kategorie",
|
||||
"override_power_label": "Výkon",
|
||||
"override_sixhr_label": "6H",
|
||||
"override_reason_label": "Důvod změny",
|
||||
"override_auto": "AUTO",
|
||||
"override_save": "Uložit",
|
||||
"override_saving": "Ukládám…",
|
||||
"override_saved": "Uloženo.",
|
||||
"override_no_changes": "Bez změn.",
|
||||
"override_reason_required": "Doplň důvod změny.",
|
||||
"override_save_failed": "Nepodařilo se uložit override.",
|
||||
"override_prev_page": "Předchozí",
|
||||
"override_next_page": "Další",
|
||||
"override_page_label": "Strana {{page}} / {{lastPage}}",
|
||||
"qso_problem_label": "Problém",
|
||||
"qso_problem_reason": "Důvod",
|
||||
"qso_problem_errors": "Chyby",
|
||||
"qso_problem_side": "Strana",
|
||||
"qso_problem_confidence": "Match",
|
||||
"qso_error_detail_exchange_serial_missing": "Chybí serial v exchange.",
|
||||
"qso_error_detail_exchange_wwl_missing": "Chybí lokátor (WWL) v exchange.",
|
||||
"qso_error_detail_exchange_custom_mismatch": "CUSTOM exchange neodpovídá očekávanému formátu.",
|
||||
"qso_error_detail_exchange_serial_mismatch": "Neshoda serialu mezi stanicemi.",
|
||||
"qso_error_detail_exchange_wwl_mismatch": "Neshoda lokátorů (WWL) mezi stanicemi.",
|
||||
"qso_error_detail_exchange_serial_wwl_mismatch": "Neshoda serialu i lokátoru (WWL).",
|
||||
"qso_error_detail_exchange_mismatch": "Neshoda exchange mezi stanicemi.",
|
||||
"upload_hint_bulk_auth": "Hromadný upload je dostupný pouze pro přihlášené.",
|
||||
|
||||
"results_table_rank": "Pořadí",
|
||||
"results_table_callsign": "Značka v závodě",
|
||||
"results_table_locator": "Lokátor",
|
||||
"results_table_category": "Kategorie",
|
||||
"results_table_band": "Pásmo",
|
||||
"results_table_power_watt": "Výkon [W]",
|
||||
"results_table_power_category": "Výkonová kat.",
|
||||
"results_table_score_total": "Body celkem",
|
||||
"results_table_claimed_score": "Deklarované body",
|
||||
"results_table_qso_count": "Počet QSO",
|
||||
"results_table_discarded_qso": "Vyřazeno QSO",
|
||||
"results_table_discarded_qso_help": "Počet QSO s is_valid=false.",
|
||||
"results_table_discarded_points": "Vyřazeno bodů",
|
||||
"results_table_unique_qso": "Unique QSO",
|
||||
"results_table_score_per_qso": "Body / QSO",
|
||||
"results_table_odx": "ODX",
|
||||
"results_table_antenna": "Anténa",
|
||||
"results_table_antenna_height": "Ant. height",
|
||||
"results_table_status": "Status",
|
||||
"results_table_override_reason": "Komentář rozhodčího",
|
||||
"results_evaluating": "Vyhodnocuje se",
|
||||
"results_tab": "Výsledky",
|
||||
"declared_results_tab": "Deklarované výsledky",
|
||||
"uploaded_logs_tab": "Nahrané logy",
|
||||
"results_filter_all": "Všechny výsledky",
|
||||
"results_filter_ok_ol": "OK/OL závodníci",
|
||||
"declared_recalculate": "Přepočítat",
|
||||
"declared_recalculate_started": "Přepočet byl spuštěn.",
|
||||
"declared_recalculate_failed": "Nepodařilo se spustit přepočet.",
|
||||
"round_detail_title": "Detail kola",
|
||||
"round_detail_tabs_aria": "Záložky detailu kola",
|
||||
"footer_rights": "© {{year}} VKV. Všechna práva vyhrazena.",
|
||||
"footer_docs": "Dokumentace",
|
||||
"footer_support": "Podpora",
|
||||
"results_type_final": "Finální výsledky",
|
||||
"results_type_declared": "Deklarované výsledky",
|
||||
"results_type_log_collection_open": "Otevřeno pro sběr logů",
|
||||
"results_type_not_started": "Závod ještě nezačal",
|
||||
"results_type_preliminary": "Předběžné výsledky",
|
||||
"results_type_test": "Testovací výsledky",
|
||||
"evaluation_incremental_hint": "Spustit znovu převezme overrides z posledního běhu.",
|
||||
"contests_title": "Závody",
|
||||
"contest_rounds_title": "Kola závodu",
|
||||
"open_rounds_title": "Závody:",
|
||||
"contest_index_page": "Novinky a přehled závodů",
|
||||
"select_none": "Žádný vybraný závod",
|
||||
"select_contest": "Vyber závod",
|
||||
|
||||
"admin_form_close": "Zavřít formulář",
|
||||
"admin_form_confirm_close": "Formulář obsahuje neuložené změny. Opravdu ho chcete zavřít?",
|
||||
"value_na": "—",
|
||||
"validation_number": "Musí být číslo.",
|
||||
"validation_integer": "Musí být celé číslo.",
|
||||
"validation_json": "Neplatný JSON.",
|
||||
"validation_name_required": "Název je povinný.",
|
||||
"validation_code_required": "Kód je povinný.",
|
||||
"validation_range_1_100": "Rozsah 1–100.",
|
||||
"validation_min_one": "Musí být alespoň 1.",
|
||||
"validation_min_zero": "Musí být alespoň 0.",
|
||||
"validation_range_0_2": "Rozsah 0–2.",
|
||||
|
||||
"contest_new": "Nový závod",
|
||||
"contest_edit": "Upravit závod",
|
||||
"contest_add_new": "Přidat nový závod",
|
||||
"contest_rounds_title_named": "Kola závodu \"{{name}}\":",
|
||||
"round_new": "Nové kolo",
|
||||
"round_edit": "Upravit kolo",
|
||||
"round_add_new": "Přidat nové kolo",
|
||||
|
||||
"admin_news_title": "Novinky",
|
||||
"admin_news_create": "Nová novinka",
|
||||
"admin_news_loading": "Načítám novinky…",
|
||||
"admin_news_load_failed": "Nepodařilo se načíst novinky.",
|
||||
"admin_news_title_required": "Vyplň nadpis alespoň v jednom jazyce.",
|
||||
"admin_news_content_required": "Vyplň obsah alespoň v jednom jazyce.",
|
||||
"admin_news_created": "Novinka byla vytvořena.",
|
||||
"admin_news_updated": "Novinka byla upravena.",
|
||||
"admin_news_save_failed": "Chyba při ukládání novinky.",
|
||||
"admin_news_table_aria": "Tabulka novinek",
|
||||
"admin_news_title_cs": "Název (cs)",
|
||||
"admin_news_title_en": "Název (en)",
|
||||
"admin_news_published_at": "Publikováno",
|
||||
"admin_news_published_flag": "Zveřejněno",
|
||||
"admin_news_edit_aria": "Upravit novinku",
|
||||
"admin_news_form_title_cs": "Nadpis (cs)",
|
||||
"admin_news_form_title_en": "Nadpis (en)",
|
||||
"admin_news_form_excerpt_cs": "Perex (cs)",
|
||||
"admin_news_form_excerpt_en": "Perex (en)",
|
||||
"admin_news_form_content_cs": "Obsah (cs)",
|
||||
"admin_news_form_content_en": "Obsah (en)",
|
||||
"admin_news_form_published_from": "Publikováno od",
|
||||
"admin_news_form_publish": "Publikovat",
|
||||
"admin_news_form_save": "Uložit změny",
|
||||
"admin_news_form_create": "Vytvořit novinku",
|
||||
|
||||
"admin_rulesets_title": "Rulesety",
|
||||
"admin_rulesets_loading": "Načítám rulesety…",
|
||||
"admin_rulesets_load_failed": "Nepodařilo se načíst rulesety.",
|
||||
"admin_rulesets_fix_errors": "Opravte chyby ve formuláři.",
|
||||
"admin_rulesets_options_invalid_json": "Options nejsou validní JSON.",
|
||||
"admin_rulesets_updated": "Ruleset byl upraven.",
|
||||
"admin_rulesets_created": "Ruleset byl vytvořen.",
|
||||
"admin_rulesets_save_failed": "Chyba při ukládání rulesetu.",
|
||||
"admin_rulesets_help": "Nápověda",
|
||||
"admin_rulesets_help_title": "Dokumentace rulesetu",
|
||||
"admin_rulesets_table_aria": "Tabulka rulesetů",
|
||||
"admin_rulesets_table_name": "Název",
|
||||
"admin_rulesets_table_code": "Kód",
|
||||
"admin_rulesets_table_scoring": "Bodování",
|
||||
"admin_rulesets_table_multiplier": "Multiplikátor",
|
||||
"admin_rulesets_table_updated": "Aktualizace",
|
||||
"admin_rulesets_edit_aria": "Upravit ruleset",
|
||||
"admin_rulesets_section_base_title": "Základ",
|
||||
"admin_rulesets_section_base_desc": "Identita rulesetu a krátký popis pro rozhodčí.",
|
||||
"admin_rulesets_label_name": "Název",
|
||||
"admin_rulesets_label_code": "Kód",
|
||||
"admin_rulesets_label_description": "Popis",
|
||||
"admin_rulesets_section_scoring_title": "Bodování",
|
||||
"admin_rulesets_section_scoring_desc": "Jak se počítají body a jak se zaokrouhluje vzdálenost.",
|
||||
"admin_rulesets_label_scoring_mode": "Režim bodování",
|
||||
"admin_rulesets_label_points_per_qso": "Body / QSO",
|
||||
"admin_rulesets_label_points_per_km": "Body / km",
|
||||
"admin_rulesets_label_distance_rounding": "Zaokrouhlení vzdálenosti",
|
||||
"admin_rulesets_label_min_distance_km": "Min. vzdálenost (km)",
|
||||
"admin_rulesets_section_operating_window_title": "Operating window",
|
||||
"admin_rulesets_section_operating_window_desc": "Nastavení výběru nejlepšího 6H okna (max. 2 segmenty s pauzou >= 2 h).",
|
||||
"admin_rulesets_label_operating_window_enabled": "6H operating window",
|
||||
"admin_rulesets_label_operating_window_hours": "Operating window (hodiny)",
|
||||
"admin_rulesets_label_sixhr_ranking_mode": "Režim pořadí 6H",
|
||||
"admin_rulesets_section_matching_title": "Matching",
|
||||
"admin_rulesets_section_matching_desc": "Pravidla pro párování a normalizaci volacích znaků.",
|
||||
"admin_rulesets_label_time_tolerance_sec": "Tolerace času (s)",
|
||||
"admin_rulesets_label_allow_time_shift": "Povolit posun času",
|
||||
"admin_rulesets_label_time_shift_seconds": "Posun času (s)",
|
||||
"admin_rulesets_label_time_mismatch_policy": "Politika časové neshody",
|
||||
"admin_rulesets_label_allow_time_mismatch_pairing": "Párovat mimo toleranci",
|
||||
"admin_rulesets_label_time_mismatch_max_sec": "Max. odchylka času (s)",
|
||||
"admin_rulesets_label_dup_resolution_strategy": "Pořadí řešení duplicit",
|
||||
"admin_rulesets_label_dup_resolution_placeholder": "paired_first, ok_first, earlier_time, lower_id",
|
||||
"admin_rulesets_label_callsign_suffix_len": "Max délka suffixu",
|
||||
"admin_rulesets_label_callsign_levenshtein": "Levenshtein max",
|
||||
"admin_rulesets_label_callsign_normalization": "Normalizace volacího znaku",
|
||||
"admin_rulesets_label_checklog_matching": "CHECK logy v matchingu",
|
||||
"admin_rulesets_label_time_diff_dq_percent": "Časový rozdíl DQ %",
|
||||
"admin_rulesets_label_time_diff_dq_sec": "Časový rozdíl DQ (s)",
|
||||
"admin_rulesets_label_bad_qso_dq_percent": "Bad QSO DQ %",
|
||||
"admin_rulesets_label_match_require_locator": "Matching vyžaduje lokátor",
|
||||
"admin_rulesets_label_match_require_exchange": "Matching vyžaduje exchange",
|
||||
"admin_rulesets_label_tiebreak_order": "Pořadí tie-breaku",
|
||||
"admin_rulesets_label_tiebreak_placeholder": "time_diff, exchange_match, locator_match",
|
||||
"admin_rulesets_label_ignore_suffix": "Ignorovat suffix v call",
|
||||
"admin_rulesets_label_ignore_third_part": "Ignorovat 3. část call",
|
||||
"admin_rulesets_label_rst_ignore_third_char": "Ignorovat 3. znak RST",
|
||||
"admin_rulesets_label_letters_in_rst": "RST s písmeny",
|
||||
"admin_rulesets_section_exchange_title": "Výměna",
|
||||
"admin_rulesets_section_exchange_desc": "Nastavení typu exchange a povinných částí výměny.",
|
||||
"admin_rulesets_label_exchange_type": "Typ exchange",
|
||||
"admin_rulesets_label_exchange_requires_wwl": "Vyžadovat WWL",
|
||||
"admin_rulesets_label_exchange_requires_serial": "Vyžadovat serial",
|
||||
"admin_rulesets_label_exchange_requires_report": "Report součástí výměny",
|
||||
"admin_rulesets_label_exchange_pattern": "Regex pro exchange",
|
||||
"admin_rulesets_warning_report_required": "Busted RST se vyhodnocuje jen pokud je zapnuté „Report součástí výměny“.",
|
||||
"admin_rulesets_section_errors_title": "Duplicity a busted",
|
||||
"admin_rulesets_section_errors_desc": "Jak se označují a bodují DUP/NIL/BUSTED situace.",
|
||||
"admin_rulesets_label_dupe_scope": "Rozsah DUP",
|
||||
"admin_rulesets_label_unique_qso": "Unikátní QSO",
|
||||
"admin_rulesets_label_busted_call_rx": "Busted call (RX)",
|
||||
"admin_rulesets_label_busted_call_tx": "Busted call (TX)",
|
||||
"admin_rulesets_label_busted_rst_rx": "Busted RST (RX)",
|
||||
"admin_rulesets_label_busted_rst_tx": "Busted RST (TX)",
|
||||
"admin_rulesets_label_busted_serial_rx": "Busted serial (RX)",
|
||||
"admin_rulesets_label_busted_serial_tx": "Busted serial (TX)",
|
||||
"admin_rulesets_label_busted_wwl_rx": "Busted WWL (RX)",
|
||||
"admin_rulesets_label_busted_wwl_tx": "Busted WWL (TX)",
|
||||
"admin_rulesets_label_busted_exchange_rx": "Busted exchange (RX)",
|
||||
"admin_rulesets_label_busted_exchange_tx": "Busted exchange (TX)",
|
||||
"admin_rulesets_label_dup_policy": "DUP policy",
|
||||
"admin_rulesets_label_nil_policy": "NIL policy",
|
||||
"admin_rulesets_label_no_counterpart_policy": "No counterpart policy",
|
||||
"admin_rulesets_label_not_in_counterpart_policy": "Not in counterpart policy",
|
||||
"admin_rulesets_label_unique_policy": "Unique policy",
|
||||
"admin_rulesets_label_busted_call_policy": "Busted call policy",
|
||||
"admin_rulesets_label_busted_rst_policy": "Busted RST policy",
|
||||
"admin_rulesets_label_busted_exchange_policy": "Busted exchange policy",
|
||||
"admin_rulesets_label_busted_serial_policy": "Busted serial policy",
|
||||
"admin_rulesets_label_busted_locator_policy": "Busted locator policy",
|
||||
"admin_rulesets_section_out_of_window_title": "Out-of-window",
|
||||
"admin_rulesets_section_out_of_window_desc": "Chování pro QSO mimo časové okno kola.",
|
||||
"admin_rulesets_label_out_of_window_policy": "Out-of-window policy",
|
||||
"admin_rulesets_label_out_of_window_dq_threshold": "DQ práh (out-of-window)",
|
||||
"admin_rulesets_label_require_locators": "Požadovat lokátory",
|
||||
"admin_rulesets_section_multipliers_title": "Multiplikátory",
|
||||
"admin_rulesets_section_multipliers_desc": "Nastavení typu a rozsahu multiplikátorů.",
|
||||
"admin_rulesets_label_use_multipliers": "Používat multiplikátory",
|
||||
"admin_rulesets_label_multiplier_type": "Typ multiplikátoru",
|
||||
"admin_rulesets_label_multiplier_scope": "Rozsah multiplikátoru",
|
||||
"admin_rulesets_label_multiplier_source": "Zdroj multiplikátoru",
|
||||
"admin_rulesets_label_wwl_level": "Úroveň WWL",
|
||||
"admin_rulesets_section_penalties_title": "Penalizace",
|
||||
"admin_rulesets_section_penalties_desc": "Výše penalizací pro jednotlivé typy chyb.",
|
||||
"admin_rulesets_label_penalty_dup": "Penalty DUP",
|
||||
"admin_rulesets_label_penalty_nil": "Penalty NIL",
|
||||
"admin_rulesets_label_penalty_busted_call": "Penalty busted call",
|
||||
"admin_rulesets_label_penalty_busted_rst": "Penalty busted RST",
|
||||
"admin_rulesets_label_penalty_busted_exchange": "Penalty busted exchange",
|
||||
"admin_rulesets_label_penalty_busted_serial": "Penalty busted serial",
|
||||
"admin_rulesets_label_penalty_busted_locator": "Penalty busted locator",
|
||||
"admin_rulesets_label_penalty_out_of_window": "Penalty out-of-window",
|
||||
"admin_rulesets_section_advanced_title": "Pokročilé",
|
||||
"admin_rulesets_section_advanced_desc": "Volitelné rozšíření pravidel v JSON.",
|
||||
"admin_rulesets_label_options_json": "Options (JSON)",
|
||||
"admin_rulesets_create": "Nová sada pravidel",
|
||||
"admin_rulesets_save": "Uložit změny",
|
||||
"admin_rulesets_form_create_title": "Nová sada pravidel",
|
||||
"admin_rulesets_form_edit_title": "Upravit sadu pravidel",
|
||||
|
||||
"about_link": "O aplikaci",
|
||||
"admin_contests_link": "Správa závodů",
|
||||
"admin_news_link": "Novinky",
|
||||
"admin_rulesets_link": "Rulesety",
|
||||
"admin_users_link": "Uživatelé",
|
||||
"admin_users_title": "Uživatelé",
|
||||
"admin_users_create": "Nový uživatel",
|
||||
"admin_users_load_failed": "Nepodařilo se načíst uživatele.",
|
||||
"admin_users_save_failed": "Chyba při ukládání uživatele.",
|
||||
"admin_users_deactivate_failed": "Nepodařilo se deaktivovat uživatele.",
|
||||
"admin_users_search": "Hledat jméno nebo email",
|
||||
"admin_users_name": "Jméno",
|
||||
"admin_users_email": "Email",
|
||||
"admin_users_password": "Heslo",
|
||||
"admin_users_password_hint": "Nech prázdné pro beze změny",
|
||||
"admin_users_is_admin": "Admin",
|
||||
"admin_users_is_active": "Aktivní",
|
||||
"admin_users_actions": "Akce",
|
||||
"admin_users_loading": "Načítám...",
|
||||
"admin_users_empty": "Žádní uživatelé.",
|
||||
"admin_users_edit": "Upravit",
|
||||
"admin_users_deactivate": "Deaktivovat",
|
||||
"admin_users_edit_title": "Upravit uživatele",
|
||||
"admin_users_create_title": "Nový uživatel",
|
||||
"admin_users_saving": "Ukládám…",
|
||||
"admin_users_save": "Uložit",
|
||||
"home_link": "Domů",
|
||||
"contests_link": "Závody",
|
||||
"contests_left_title": "Závody",
|
||||
"login_link": "Přihlášení",
|
||||
"logout_link": "Odhlášení",
|
||||
"back": "Zpět",
|
||||
"log": "Log",
|
||||
|
||||
"news_show_more": "Zobrazit další"
|
||||
}
|
||||
78
resources/js/locales/cs/ruleset.json
Normal file
78
resources/js/locales/cs/ruleset.json
Normal file
@@ -0,0 +1,78 @@
|
||||
{
|
||||
"ruleset_help_name": "Název rulesetu pro administraci; nemá vliv na výpočet.",
|
||||
"ruleset_help_code": "Stálý identifikátor rulesetu pro vazby, exporty a API; změna může rozbít reference.",
|
||||
"ruleset_help_description": "Popis pravidel pro rozhodčí; výpočet neovlivňuje.",
|
||||
"ruleset_help_scoring_mode": "Způsob bodování: DISTANCE = body z km; FIXED_POINTS = fixní body za valid QSO.",
|
||||
"ruleset_help_points_per_qso": "Použije se jen ve FIXED_POINTS; valid QSO dostane tuto hodnotu bodů.",
|
||||
"ruleset_help_points_per_km": "Použije se jen v DISTANCE; body = distance_km * points_per_km (po zaokrouhlení).",
|
||||
"ruleset_help_use_multipliers": "Zapne multiplikátory v agregaci; při vypnutí se počítá multiplier_count=1.",
|
||||
"ruleset_help_multiplier_type": "Typ multiplikátoru (WWL/DXCC/SECTION/COUNTRY), který se sbírá z QSO.",
|
||||
"ruleset_help_multiplier_scope": "PER_BAND = multiplikátory se počítají zvlášť pro pásma; OVERALL = společně.",
|
||||
"ruleset_help_multiplier_source": "VALID_ONLY bere jen valid QSO; ALL_MATCHED bere všechny matched (i nevalidní).",
|
||||
"ruleset_help_wwl_multiplier_level": "Úroveň WWL (2/4/6) použitá pro počítání unikátů.",
|
||||
"ruleset_help_checklog_matching": "Pokud je vypnuto, CHECK logy se z matchingu vyřadí a netvoří páry.",
|
||||
"ruleset_help_dupe_scope": "Rozsah duplicity: BAND jen v rámci pásma; BAND_MODE i podle módu.",
|
||||
"ruleset_help_callsign_normalization": "Jak se normalizují volací znaky pro matching a busted kontroly.",
|
||||
"ruleset_help_callsign_suffix_max_len": "Maximální délka suffixu za lomítkem, která se má ignorovat (delší suffix se ponechá).",
|
||||
"ruleset_help_callsign_levenshtein_max": "Maximální Levenshtein vzdálenost pro tolerantní matching callsignů (0–2).",
|
||||
"ruleset_help_distance_rounding": "Jak se zaokrouhluje distance_km před bodováním (FLOOR/ROUND/CEIL).",
|
||||
"ruleset_help_min_distance_km": "QSO pod touto vzdáleností nedostanou body nebo se označí jako nevalidní.",
|
||||
"ruleset_help_operating_window_mode": "Zapne 6H operating window: započítají se max. 2 segmenty s pauzou >= 2 h a celkovou délkou <= 6 h.",
|
||||
"ruleset_help_operating_window_hours": "Celková doba provozu je pevná (6 hodin).",
|
||||
"ruleset_help_sixhr_ranking_mode": "IARU = jedna společná 6H tabulka bez SO/MO; CRK = samostatné pořadí pro SO a MO.",
|
||||
"ruleset_help_time_tolerance_sec": "Maximální časový rozdíl pro matching; mimo toleranci se QSO spáruje hůř/není matched.",
|
||||
"ruleset_help_allow_time_shift_one_hour": "Umožní tolerovat posun času (typicky +1h) při matchingu a označí QSO jako TIME_SHIFT.",
|
||||
"ruleset_help_time_shift_seconds": "Posun v sekundách, který se zkouší jako alternativní časové okno (např. 3600).",
|
||||
"ruleset_help_time_mismatch_policy": "Jak naložit s nesouladem času: INVALID označí QSO jako nevalidní; ZERO_POINTS = validní s 0 body; FLAG_ONLY ponechá body; PENALTY nastaví 0 bodů + penalizaci.",
|
||||
"ruleset_help_allow_time_mismatch_pairing": "Povolí párování mimo časovou toleranci; výsledné QSO se označí TIME_MISMATCH.",
|
||||
"ruleset_help_time_mismatch_max_sec": "Maximální odchylka času (v sekundách) pro párování mimo toleranci; NULL = bez limitu.",
|
||||
"ruleset_help_time_diff_dq_threshold_percent": "Pokud je více než tento podíl matched QSO nad časovým prahem, log se označí jako DQ.",
|
||||
"ruleset_help_time_diff_dq_threshold_sec": "Časový práh v sekundách pro výpočet podílu QSO s velkým rozdílem času.",
|
||||
"ruleset_help_bad_qso_dq_threshold_percent": "Pokud podíl špatných QSO (NIL/DUP/BUSTED/OUT) dosáhne této hodnoty, log se vyřadí (DQ).",
|
||||
"ruleset_help_out_of_window_dq_threshold": "Počet QSO mimo časové okno, po kterém se log přepne na DQ.",
|
||||
"ruleset_help_require_locators": "Bez lokátorů se QSO označí jako nevalidní nebo nedostane body.",
|
||||
"ruleset_help_require_unique_qso": "Duplicitní QSO se označí jako DUP a další už nebudou bodovat.",
|
||||
"ruleset_help_out_of_window_policy": "Jak naložit s QSO mimo čas: IGNORE/0 bodů/PENALTY/INVALID.",
|
||||
"ruleset_help_exchange_type": "Určuje, co je součást exchange a co se porovnává pro busted_exchange.",
|
||||
"ruleset_help_exchange_requires_wwl": "Pokud chybí WWL, QSO se označí jako nevalidní/busted podle pravidel.",
|
||||
"ruleset_help_exchange_requires_serial": "Pokud chybí serial, QSO se označí jako nevalidní/busted podle pravidel.",
|
||||
"ruleset_help_exchange_requires_report": "RST je součást výměny; neshoda může vést na BUSTED_RST.",
|
||||
"ruleset_help_exchange_pattern": "Regex pro CUSTOM exchange; nevyhovující hodnota => busted_exchange.",
|
||||
"ruleset_help_match_tiebreak_order": "Pořadí kritérií při výběru kandidáta (čas, exchange, locator...).",
|
||||
"ruleset_help_match_require_locator_match": "Matching povolí jen kandidáty se shodným lokátorem; jinak NIL.",
|
||||
"ruleset_help_match_require_exchange_match": "Matching povolí jen kandidáty se shodnou výměnou; jinak NIL.",
|
||||
"ruleset_help_letters_in_rst": "Povolí alfanumerický RST; jinak se validují jen čísla.",
|
||||
"ruleset_help_ignore_slash_part": "Při normalizaci ignoruje suffix za / (např. /P).",
|
||||
"ruleset_help_ignore_third_part": "Ignoruje třetí část volací značky (např. OK1ABC/0/P).",
|
||||
"ruleset_help_rst_ignore_third_char": "Při porovnání RST ignoruje třetí znak (např. 59X).",
|
||||
"ruleset_help_discard_qso_rec_diff_call": "Pokud se liší přijatý callsign (DX call) od odeslaného callsignu protistanice, QSO dostane error_code=BUSTED_CALL a error_side=RX. Body se neudělí; penalizace se aplikuje podle busted_call_policy.",
|
||||
"ruleset_help_discard_qso_sent_diff_call": "Pokud se liší odeslaný callsign od přijatého callsignu protistanice, QSO dostane error_code=BUSTED_CALL a error_side=TX. Pro aktuální stanici se body nekrátí; penalizace se týká protistanice.",
|
||||
"ruleset_help_discard_qso_rec_diff_rst": "Neshoda přijatého RST vůči protistanici označí QSO jako BUSTED_RST s error_side=RX. Body 0; penalizace dle busted_rst_policy.",
|
||||
"ruleset_help_discard_qso_sent_diff_rst": "Neshoda odeslaného RST vůči protistanici označí QSO jako BUSTED_RST s error_side=TX. Pro aktuální stanici se body nekrátí; penalizace patří protistanici.",
|
||||
"ruleset_help_discard_qso_rec_diff_serial": "Neshoda přijatého serialu vůči protistanici označí QSO jako BUSTED_SERIAL s error_side=RX. Politika podle busted_serial_policy.",
|
||||
"ruleset_help_discard_qso_sent_diff_serial": "Neshoda odeslaného serialu vůči protistanici označí QSO jako BUSTED_SERIAL s error_side=TX. Pro aktuální stanici se body nekrátí; penalizace patří protistanici.",
|
||||
"ruleset_help_discard_qso_rec_diff_wwl": "Neshoda přijatého WWL vůči protistanici označí QSO jako BUSTED_LOCATOR s error_side=RX. Politika podle busted_locator_policy.",
|
||||
"ruleset_help_discard_qso_sent_diff_wwl": "Neshoda odeslaného WWL vůči protistanici označí QSO jako BUSTED_LOCATOR s error_side=TX. Pro aktuální stanici se body nekrátí; penalizace patří protistanici.",
|
||||
"ruleset_help_discard_qso_rec_diff_code": "Neshoda přijatého exchange vůči protistanici označí QSO jako BUSTED_SERIAL nebo BUSTED_LOCATOR (dle typu exchange) s error_side=RX. Politiky podle busted_serial_policy/busted_locator_policy.",
|
||||
"ruleset_help_discard_qso_sent_diff_code": "Neshoda odeslaného exchange vůči protistanici označí QSO jako BUSTED_SERIAL nebo BUSTED_LOCATOR (dle typu exchange) s error_side=TX. Pro aktuální stanici se body nekrátí; penalizace patří protistanici.",
|
||||
"ruleset_help_dup_resolution_strategy": "Pořadí pravidel pro výběr survivor u duplicit (paired_first, ok_first, earlier_time, lower_id).",
|
||||
"ruleset_help_dup_qso_policy": "DUP: ZERO_POINTS = 0; PENALTY = 0 + penalizace.",
|
||||
"ruleset_help_nil_qso_policy": "NIL: ZERO_POINTS = 0; PENALTY = 0 + penalizace.",
|
||||
"ruleset_help_no_counterpart_log_policy": "Bez protistanice: INVALID = nevalidní; ZERO_POINTS = validní s 0 body; FLAG_ONLY ponechá body; PENALTY = 0 + penalizace.",
|
||||
"ruleset_help_not_in_counterpart_log_policy": "Není v logu protistanice: INVALID = nevalidní; ZERO_POINTS = validní s 0 body; FLAG_ONLY ponechá body; PENALTY = 0 + penalizace.",
|
||||
"ruleset_help_unique_qso_policy": "Unikátní QSO: INVALID = nevalidní; ZERO_POINTS = validní s 0 body; FLAG_ONLY ponechá body.",
|
||||
"ruleset_help_busted_call_policy": "BUSTED_CALL: ZERO_POINTS = 0; PENALTY = 0 + penalizace.",
|
||||
"ruleset_help_busted_rst_policy": "BUSTED_RST: ZERO_POINTS = 0; PENALTY = ponechá body + penalizace.",
|
||||
"ruleset_help_busted_exchange_policy": "BUSTED exchange fallback: ZERO_POINTS = 0; PENALTY = 0 + penalizace.",
|
||||
"ruleset_help_busted_serial_policy": "BUSTED_SERIAL: ZERO_POINTS = 0; PENALTY = 0 + penalizace.",
|
||||
"ruleset_help_busted_locator_policy": "BUSTED_LOCATOR: ZERO_POINTS = 0; PENALTY = 0 + penalizace.",
|
||||
"ruleset_help_penalty_dup_points": "Výše penalizace (záporné body) za DUP, pokud je policy= PENALTY.",
|
||||
"ruleset_help_penalty_nil_points": "Výše penalizace (záporné body) za NIL, pokud je policy= PENALTY.",
|
||||
"ruleset_help_penalty_busted_call_points": "Výše penalizace (záporné body) za BUSTED_CALL, pokud je policy= PENALTY.",
|
||||
"ruleset_help_penalty_busted_rst_points": "Výše penalizace (záporné body) za BUSTED_RST, pokud je policy= PENALTY.",
|
||||
"ruleset_help_penalty_busted_exchange_points": "Výše penalizace (záporné body) za BUSTED exchange fallback, pokud je policy= PENALTY.",
|
||||
"ruleset_help_penalty_busted_serial_points": "Výše penalizace (záporné body) za BUSTED_SERIAL, pokud je policy= PENALTY.",
|
||||
"ruleset_help_penalty_busted_locator_points": "Výše penalizace (záporné body) za BUSTED_LOCATOR, pokud je policy= PENALTY.",
|
||||
"ruleset_help_penalty_out_of_window_points": "Výše penalizace za QSO mimo časové okno, když out_of_window_policy= PENALTY.",
|
||||
"ruleset_help_options_json": "Volitelná rozšíření pravidel v JSON; ovlivní výpočet jen pokud kód čte daný klíč."
|
||||
}
|
||||
444
resources/js/locales/en/common.json
Normal file
444
resources/js/locales/en/common.json
Normal file
@@ -0,0 +1,444 @@
|
||||
{
|
||||
"active": "Active",
|
||||
"close": "Close",
|
||||
"email": "Email",
|
||||
"email_and_password_required": "Email and password are required.",
|
||||
"enter_email": "Enter your email",
|
||||
"enter_password": "Enter your password",
|
||||
"forgot_password": "Forgot password?",
|
||||
"inactive": "Inactive",
|
||||
"login_dialog_label": "Login to VCM admin",
|
||||
"logout_failed": "Logout failed",
|
||||
"password": "Password",
|
||||
"qso_count_one": "{{count}} QSO",
|
||||
"qso_count_other": "{{count}} QSOs",
|
||||
"remember_me": "Remember me",
|
||||
"sign_in": "Sign in",
|
||||
"title": "VKV Contests",
|
||||
"unable_to_sign_in": "Unable to sign in.",
|
||||
|
||||
"yes": "Yes",
|
||||
"no": "No",
|
||||
|
||||
"rounds_loading": "Loading rounds…",
|
||||
"unable_to_load_rounds": "Unable to load rounds.",
|
||||
"rounds_empty": "No rounds available.",
|
||||
"round_name": "Round",
|
||||
"round_contest": "Contest",
|
||||
"round_schedule": "Schedule",
|
||||
"round_active": "Active",
|
||||
"round_test": "Test",
|
||||
"round_logs_deadline": "Logs deadline",
|
||||
"round_logs_deadline_passed": "The deadline for uploading logs has passed.",
|
||||
"edit_round": "Edit round",
|
||||
"upload_log_title": "Upload log",
|
||||
"select_file": "Select file",
|
||||
"upload": "Upload file to server",
|
||||
"upload_pband_mapped": "PBand \"{{original}}\" from EDI matches band \"{{mapped}}\".",
|
||||
"upload_pband_missing": "PBand is missing in the file, choose a band.",
|
||||
"upload_file_not_supported": "Unsupported file: missing [REG1TEST;1] header.",
|
||||
"upload_spowe_normalized_from": "SPowe normalized from \"{{from}}\" to \"{{to}}\".",
|
||||
"upload_spowe_normalized_to": "SPowe normalized to \"{{value}}\".",
|
||||
"upload_filename_missing_fields": "Fill in PCall, PSect, and PBand so the filename can be checked.",
|
||||
"upload_filename_unknown_code": "Unable to determine the filename prefix for the selected category and band.",
|
||||
"upload_filename_valid": "The filename matches the required format.",
|
||||
"upload_filename_invalid": "The filename does not match the required format. Suggested: {{expected}}",
|
||||
"upload_filename_normalize": "Normalize name",
|
||||
"upload_filename_used": "Upload will use: {{name}}",
|
||||
"upload_error_pick_file": "Select a file.",
|
||||
"upload_error_pick_band": "Select a band (PBand).",
|
||||
"upload_error_band_unknown": "PBand \"{{band}}\" does not match known bands, choose a valid one.",
|
||||
"upload_error_pwwlo_required": "PWWLo is required.",
|
||||
"upload_error_pwwlo_format": "PWWLo must have 6 characters in locator format (AA00AA).",
|
||||
"upload_error_rhbbs_required": "RHBBS is required.",
|
||||
"upload_error_rhbbs_format": "RHBBS must be a valid email.",
|
||||
"upload_warning_rhbbs_required": "RHBBS is missing. The log can be uploaded, but we recommend filling it in.",
|
||||
"upload_warning_rhbbs_format": "RHBBS is not a valid email address. The log can be uploaded, but we recommend fixing it.",
|
||||
"upload_error_tname_required": "TName is required.",
|
||||
"upload_error_pcall_required": "PCall is required.",
|
||||
"upload_error_pcall_format": "PCall must be a valid callsign.",
|
||||
"upload_error_psect_required": "PSect is required.",
|
||||
"upload_error_psect_invalid": "PSect is not valid.",
|
||||
"upload_error_psect_not_iaru": "PSect is not in IARU format.",
|
||||
"upload_error_spowe_required": "SPowe is required.",
|
||||
"upload_error_spowe_format": "SPowe must be a number (decimals allowed, without units).",
|
||||
"upload_error_spowe_length": "SPowe can be at most 12 characters.",
|
||||
"upload_error_spowe_limit": "SPowe ({{value}} W) exceeds limit for category {{category}} ({{limit}} W).",
|
||||
"upload_error_sante_required": "SAnte is required.",
|
||||
"upload_error_sante_length": "SAnte can be at most 12 characters.",
|
||||
"upload_warn_sante_length": "Only the first 12 characters will be shown in results; your antenna description is longer and will be truncated.",
|
||||
"upload_error_rcall_required": "RCall is required for this category.",
|
||||
"upload_error_rcall_format": "RCall must be a valid callsign.",
|
||||
"upload_error_mope_missing": "Fill at least MOpe1 or MOpe2 (you can enter multiple calls separated by space/semicolon/comma).",
|
||||
"upload_error_mope_invalid": "Invalid calls in MOpe1/MOpe2 ({{invalid}}).",
|
||||
"upload_error_not_allowed": "Uploading is not allowed.",
|
||||
"upload_file_drop_hint": "Drag & drop an EDI file here or click to choose.",
|
||||
"upload_psect_format_button": "Adjust categories by IARU",
|
||||
"upload_error_psect_normalize": "PSect cannot be normalized, fix errors and try again.",
|
||||
"upload_error_missing_round": "Missing round ID.",
|
||||
"upload_error_power_band_mismatch": "PSect \"{{psect}}\" contains a power category, but band \"{{band}}\" does not support it.",
|
||||
"upload_error_file_read": "The file could not be read.",
|
||||
"upload_failed": "Upload failed.",
|
||||
"files_uploaded": "Uploaded: {{files}}",
|
||||
"upload_hint_authenticated": "You can upload multiple files at once.",
|
||||
"upload_hint_closed": "Uploads are allowed during contest until logs deadline, or sign in.",
|
||||
"upload_hint_anonymous_once": "Anonymous upload allows only one file.",
|
||||
"upload_hint_anonymous": "Anonymous upload allows one file during contest until logs deadline.",
|
||||
"declared_note_line1": "Declared results are preliminary results for OK and OL stations.",
|
||||
"declared_note_line2": "Displayed international results are not official and are for comparison only.",
|
||||
"declared_note_line3": "Declared results are ordered based on the EDI header field CQSOP=. Other columns also show log data that are only checked for proper format.",
|
||||
"logs_loading": "Loading logs…",
|
||||
"logs_empty": "No logs available.",
|
||||
"unable_to_load_logs": "Unable to load logs.",
|
||||
"logs_waiting_processing": "Waiting for processing",
|
||||
"confirm_delete_log": "Really delete the log?",
|
||||
"edi_pcall_hint": "Callsign used during contest (PCall).",
|
||||
"edi_padr1_hint": "QTH address line 1 (PAdr1).",
|
||||
"edi_padr2_hint": "QTH address line 2 (PAdr2).",
|
||||
"edi_mope1_hint": "Multi-operator line 1 (MOpe1).",
|
||||
"edi_mope2_hint": "Multi-operator line 2 (MOpe2).",
|
||||
"edi_rcall_hint": "Responsible operator callsign (RCall).",
|
||||
"edi_radr1_hint": "Responsible operator address line 1 (RAdr1).",
|
||||
"edi_radr2_hint": "Responsible operator address line 2 (RAdr2).",
|
||||
"edi_rpoco_rcity_hint": "Postal code / city of responsible operator (RPoCo / RCity).",
|
||||
"edi_rcoun_hint": "Country of responsible operator (RCoun).",
|
||||
"edi_rphon_hint": "Phone of responsible operator (RPhon).",
|
||||
"edi_rhbbs_hint": "Home BBS of responsible operator (RHBBS).",
|
||||
"edi_stxeq_hint": "TX equipment (STXEq).",
|
||||
"edi_srxeq_hint": "RX equipment (SRXEq).",
|
||||
"edi_spowe_hint": "TX power in watts (SPowe).",
|
||||
"edi_sante_hint": "Antenna used (SAnte).",
|
||||
"edi_santh_hint": "Antenna height above ground/sea (SAntH).",
|
||||
"six_hr_band_warning": "6H category is allowed only for bands 145 MHz and 435 MHz.",
|
||||
"override_pre_match_title": "Manual overrides before matching",
|
||||
"override_pre_match_hint": "Changes take effect after clicking “Continue”. IGNORED excludes the log from matching.",
|
||||
"override_loading_logs": "Loading logs…",
|
||||
"override_no_logs": "No logs to edit.",
|
||||
"override_detail": "Detail",
|
||||
"override_detail_title": "Log detail",
|
||||
"override_reason_prefix": "Reason",
|
||||
"override_status_label": "Status",
|
||||
"override_status_auto": "AUTO",
|
||||
"override_status_ignored": "IGNORED",
|
||||
"override_status_check": "CHECK",
|
||||
"override_status_ok": "OK",
|
||||
"override_status_dq": "DQ",
|
||||
"override_band_label": "Band",
|
||||
"override_category_label": "Category",
|
||||
"override_power_label": "Power",
|
||||
"override_sixhr_label": "6H",
|
||||
"override_reason_label": "Reason for change",
|
||||
"override_auto": "AUTO",
|
||||
"override_save": "Save",
|
||||
"override_saving": "Saving…",
|
||||
"override_saved": "Saved.",
|
||||
"override_no_changes": "No changes.",
|
||||
"override_reason_required": "Please provide a reason for the change.",
|
||||
"override_save_failed": "Failed to save override.",
|
||||
"override_prev_page": "Previous",
|
||||
"override_next_page": "Next",
|
||||
"override_page_label": "Page {{page}} / {{lastPage}}",
|
||||
"qso_problem_label": "Problem",
|
||||
"qso_problem_reason": "Reason",
|
||||
"qso_problem_errors": "Errors",
|
||||
"qso_problem_side": "Side",
|
||||
"qso_problem_confidence": "Match",
|
||||
"qso_error_detail_exchange_serial_missing": "Serial is missing in the exchange.",
|
||||
"qso_error_detail_exchange_wwl_missing": "Locator (WWL) is missing in the exchange.",
|
||||
"qso_error_detail_exchange_custom_mismatch": "CUSTOM exchange does not match the expected format.",
|
||||
"qso_error_detail_exchange_serial_mismatch": "Serial mismatch between stations.",
|
||||
"qso_error_detail_exchange_wwl_mismatch": "Locator (WWL) mismatch between stations.",
|
||||
"qso_error_detail_exchange_serial_wwl_mismatch": "Serial and locator (WWL) mismatch.",
|
||||
"qso_error_detail_exchange_mismatch": "Exchange mismatch between stations.",
|
||||
"upload_hint_bulk_auth": "Bulk upload is available only for signed-in users.",
|
||||
|
||||
"results_table_rank": "Rank",
|
||||
"results_table_callsign": "Callsign",
|
||||
"results_table_locator": "Locator",
|
||||
"results_table_category": "Category",
|
||||
"results_table_band": "Band",
|
||||
"results_table_power_watt": "Power [W]",
|
||||
"results_table_power_category": "Power category",
|
||||
"results_table_score_total": "Total score",
|
||||
"results_table_claimed_score": "Declared score",
|
||||
"results_table_qso_count": "QSO count",
|
||||
"results_table_discarded_qso": "Discarded QSOs",
|
||||
"results_table_discarded_qso_help": "Count of QSOs with is_valid=false.",
|
||||
"results_table_discarded_points": "Discarded points",
|
||||
"results_table_unique_qso": "Unique QSOs",
|
||||
"results_table_score_per_qso": "Score / QSO",
|
||||
"results_table_odx": "ODX",
|
||||
"results_table_antenna": "Antenna",
|
||||
"results_table_antenna_height": "Antenna height",
|
||||
"results_table_status": "Status",
|
||||
"results_table_override_reason": "Referee note",
|
||||
"results_evaluating": "Evaluation in progress",
|
||||
"results_tab": "Results",
|
||||
"declared_results_tab": "Declared results",
|
||||
"uploaded_logs_tab": "Uploaded logs",
|
||||
"results_filter_all": "All results",
|
||||
"results_filter_ok_ol": "OK/OL competitors",
|
||||
"declared_recalculate": "Recalculate",
|
||||
"declared_recalculate_started": "Recalculation started.",
|
||||
"declared_recalculate_failed": "Failed to start recalculation.",
|
||||
"round_detail_title": "Round detail",
|
||||
"round_detail_tabs_aria": "Round detail tabs",
|
||||
"footer_rights": "© {{year}} VKV. All rights reserved.",
|
||||
"footer_docs": "Documentation",
|
||||
"footer_support": "Support",
|
||||
"results_type_final": "Final results",
|
||||
"results_type_declared": "Declared results",
|
||||
"results_type_log_collection_open": "Open for log collection",
|
||||
"results_type_not_started": "Contest not started yet",
|
||||
"results_type_preliminary": "Preliminary results",
|
||||
"results_type_test": "Test results",
|
||||
"evaluation_incremental_hint": "Restarting will reuse overrides from the last run.",
|
||||
"contests_title": "Contests",
|
||||
"contest_rounds_title": "Contest rounds",
|
||||
"open_rounds_title": "Contests:",
|
||||
"contest_index_page": "Contests overview",
|
||||
"select_none": "No contest selected",
|
||||
"select_contest": "Select contest",
|
||||
|
||||
"admin_form_close": "Close form",
|
||||
"admin_form_confirm_close": "The form has unsaved changes. Do you really want to close it?",
|
||||
"value_na": "—",
|
||||
"validation_number": "Must be a number.",
|
||||
"validation_integer": "Must be an integer.",
|
||||
"validation_json": "Invalid JSON.",
|
||||
"validation_name_required": "Name is required.",
|
||||
"validation_code_required": "Code is required.",
|
||||
"validation_range_1_100": "Range 1–100.",
|
||||
"validation_min_one": "Must be at least 1.",
|
||||
"validation_min_zero": "Must be at least 0.",
|
||||
"validation_range_0_2": "Range 0–2.",
|
||||
|
||||
"contest_new": "New contest",
|
||||
"contest_edit": "Edit contest",
|
||||
"contest_add_new": "Add new contest",
|
||||
"contest_rounds_title_named": "Contest rounds \"{{name}}\":",
|
||||
"round_new": "New round",
|
||||
"round_edit": "Edit round",
|
||||
"round_add_new": "Add new round",
|
||||
|
||||
"admin_news_title": "News",
|
||||
"admin_news_create": "New news",
|
||||
"admin_news_loading": "Loading news…",
|
||||
"admin_news_load_failed": "Failed to load news.",
|
||||
"admin_news_title_required": "Fill in the title in at least one language.",
|
||||
"admin_news_content_required": "Fill in the content in at least one language.",
|
||||
"admin_news_created": "News item created.",
|
||||
"admin_news_updated": "News item updated.",
|
||||
"admin_news_save_failed": "Failed to save news item.",
|
||||
"admin_news_table_aria": "News table",
|
||||
"admin_news_title_cs": "Title (cs)",
|
||||
"admin_news_title_en": "Title (en)",
|
||||
"admin_news_published_at": "Published",
|
||||
"admin_news_published_flag": "Visible",
|
||||
"admin_news_edit_aria": "Edit news item",
|
||||
"admin_news_form_title_cs": "Title (cs)",
|
||||
"admin_news_form_title_en": "Title (en)",
|
||||
"admin_news_form_excerpt_cs": "Excerpt (cs)",
|
||||
"admin_news_form_excerpt_en": "Excerpt (en)",
|
||||
"admin_news_form_content_cs": "Content (cs)",
|
||||
"admin_news_form_content_en": "Content (en)",
|
||||
"admin_news_form_published_from": "Published from",
|
||||
"admin_news_form_publish": "Publish",
|
||||
"admin_news_form_save": "Save changes",
|
||||
"admin_news_form_create": "Create news",
|
||||
|
||||
"admin_rulesets_title": "Rule sets",
|
||||
"admin_rulesets_loading": "Loading rule sets…",
|
||||
"admin_rulesets_load_failed": "Failed to load rule sets.",
|
||||
"admin_rulesets_fix_errors": "Fix the errors in the form.",
|
||||
"admin_rulesets_options_invalid_json": "Options are not valid JSON.",
|
||||
"admin_rulesets_updated": "Rule set updated.",
|
||||
"admin_rulesets_created": "Rule set created.",
|
||||
"admin_rulesets_save_failed": "Failed to save rule set.",
|
||||
"admin_rulesets_help": "Help",
|
||||
"admin_rulesets_help_title": "Ruleset documentation",
|
||||
"admin_rulesets_table_aria": "Rule sets table",
|
||||
"admin_rulesets_table_name": "Name",
|
||||
"admin_rulesets_table_code": "Code",
|
||||
"admin_rulesets_table_scoring": "Scoring",
|
||||
"admin_rulesets_table_multiplier": "Multiplier",
|
||||
"admin_rulesets_table_updated": "Updated",
|
||||
"admin_rulesets_edit_aria": "Edit rule set",
|
||||
"admin_rulesets_section_base_title": "Basics",
|
||||
"admin_rulesets_section_base_desc": "Rule set identity and a short description for referees.",
|
||||
"admin_rulesets_label_name": "Name",
|
||||
"admin_rulesets_label_code": "Code",
|
||||
"admin_rulesets_label_description": "Description",
|
||||
"admin_rulesets_section_scoring_title": "Scoring",
|
||||
"admin_rulesets_section_scoring_desc": "How points are calculated and distance rounding.",
|
||||
"admin_rulesets_label_scoring_mode": "Scoring mode",
|
||||
"admin_rulesets_label_points_per_qso": "Points / QSO",
|
||||
"admin_rulesets_label_points_per_km": "Points / km",
|
||||
"admin_rulesets_label_distance_rounding": "Distance rounding",
|
||||
"admin_rulesets_label_min_distance_km": "Min. distance (km)",
|
||||
"admin_rulesets_section_operating_window_title": "Operating window",
|
||||
"admin_rulesets_section_operating_window_desc": "Best 6H operating window selection (up to two segments separated by >=2h).",
|
||||
"admin_rulesets_label_operating_window_enabled": "6H operating window",
|
||||
"admin_rulesets_label_operating_window_hours": "Operating window (hours)",
|
||||
"admin_rulesets_label_sixhr_ranking_mode": "6H ranking mode",
|
||||
"admin_rulesets_section_matching_title": "Matching",
|
||||
"admin_rulesets_section_matching_desc": "Rules for pairing and callsign normalization.",
|
||||
"admin_rulesets_label_time_tolerance_sec": "Time tolerance (s)",
|
||||
"admin_rulesets_label_allow_time_shift": "Allow time shift",
|
||||
"admin_rulesets_label_time_shift_seconds": "Time shift (s)",
|
||||
"admin_rulesets_label_time_mismatch_policy": "Time mismatch policy",
|
||||
"admin_rulesets_label_allow_time_mismatch_pairing": "Pair outside tolerance",
|
||||
"admin_rulesets_label_time_mismatch_max_sec": "Max time mismatch (s)",
|
||||
"admin_rulesets_label_dup_resolution_strategy": "Dup resolution order",
|
||||
"admin_rulesets_label_dup_resolution_placeholder": "paired_first, ok_first, earlier_time, lower_id",
|
||||
"admin_rulesets_label_callsign_suffix_len": "Max suffix length",
|
||||
"admin_rulesets_label_callsign_levenshtein": "Levenshtein max",
|
||||
"admin_rulesets_label_callsign_normalization": "Callsign normalization",
|
||||
"admin_rulesets_label_checklog_matching": "Include CHECK logs in matching",
|
||||
"admin_rulesets_label_time_diff_dq_percent": "Time diff DQ %",
|
||||
"admin_rulesets_label_time_diff_dq_sec": "Time diff DQ (s)",
|
||||
"admin_rulesets_label_bad_qso_dq_percent": "Bad QSO DQ %",
|
||||
"admin_rulesets_label_match_require_locator": "Matching requires locator",
|
||||
"admin_rulesets_label_match_require_exchange": "Matching requires exchange",
|
||||
"admin_rulesets_label_tiebreak_order": "Tiebreak order",
|
||||
"admin_rulesets_label_tiebreak_placeholder": "time_diff, exchange_match, locator_match",
|
||||
"admin_rulesets_label_ignore_suffix": "Ignore suffix in call",
|
||||
"admin_rulesets_label_ignore_third_part": "Ignore 3rd part of call",
|
||||
"admin_rulesets_label_rst_ignore_third_char": "Ignore 3rd RST character",
|
||||
"admin_rulesets_label_letters_in_rst": "RST with letters",
|
||||
"admin_rulesets_section_exchange_title": "Exchange",
|
||||
"admin_rulesets_section_exchange_desc": "Exchange type and required parts.",
|
||||
"admin_rulesets_label_exchange_type": "Exchange type",
|
||||
"admin_rulesets_label_exchange_requires_wwl": "Require WWL",
|
||||
"admin_rulesets_label_exchange_requires_serial": "Require serial",
|
||||
"admin_rulesets_label_exchange_requires_report": "Report is part of exchange",
|
||||
"admin_rulesets_label_exchange_pattern": "Exchange regex",
|
||||
"admin_rulesets_warning_report_required": "Busted RST is evaluated only when “Report is part of exchange” is enabled.",
|
||||
"admin_rulesets_section_errors_title": "Duplicates and busted",
|
||||
"admin_rulesets_section_errors_desc": "How DUP/NIL/BUSTED situations are marked and scored.",
|
||||
"admin_rulesets_label_dupe_scope": "Dupe scope",
|
||||
"admin_rulesets_label_unique_qso": "Unique QSO",
|
||||
"admin_rulesets_label_busted_call_rx": "Busted call (RX)",
|
||||
"admin_rulesets_label_busted_call_tx": "Busted call (TX)",
|
||||
"admin_rulesets_label_busted_rst_rx": "Busted RST (RX)",
|
||||
"admin_rulesets_label_busted_rst_tx": "Busted RST (TX)",
|
||||
"admin_rulesets_label_busted_serial_rx": "Busted serial (RX)",
|
||||
"admin_rulesets_label_busted_serial_tx": "Busted serial (TX)",
|
||||
"admin_rulesets_label_busted_wwl_rx": "Busted WWL (RX)",
|
||||
"admin_rulesets_label_busted_wwl_tx": "Busted WWL (TX)",
|
||||
"admin_rulesets_label_busted_exchange_rx": "Busted exchange (RX)",
|
||||
"admin_rulesets_label_busted_exchange_tx": "Busted exchange (TX)",
|
||||
"admin_rulesets_label_dup_policy": "DUP policy",
|
||||
"admin_rulesets_label_nil_policy": "NIL policy",
|
||||
"admin_rulesets_label_no_counterpart_policy": "No counterpart policy",
|
||||
"admin_rulesets_label_not_in_counterpart_policy": "Not in counterpart policy",
|
||||
"admin_rulesets_label_unique_policy": "Unique policy",
|
||||
"admin_rulesets_label_busted_call_policy": "Busted call policy",
|
||||
"admin_rulesets_label_busted_rst_policy": "Busted RST policy",
|
||||
"admin_rulesets_label_busted_exchange_policy": "Busted exchange policy",
|
||||
"admin_rulesets_label_busted_serial_policy": "Busted serial policy",
|
||||
"admin_rulesets_label_busted_locator_policy": "Busted locator policy",
|
||||
"admin_rulesets_section_out_of_window_title": "Out-of-window",
|
||||
"admin_rulesets_section_out_of_window_desc": "Behavior for QSOs outside the contest time window.",
|
||||
"admin_rulesets_label_out_of_window_policy": "Out-of-window policy",
|
||||
"admin_rulesets_label_out_of_window_dq_threshold": "DQ threshold (out-of-window)",
|
||||
"admin_rulesets_label_require_locators": "Require locators",
|
||||
"admin_rulesets_section_multipliers_title": "Multipliers",
|
||||
"admin_rulesets_section_multipliers_desc": "Multiplier type and scope settings.",
|
||||
"admin_rulesets_label_use_multipliers": "Use multipliers",
|
||||
"admin_rulesets_label_multiplier_type": "Multiplier type",
|
||||
"admin_rulesets_label_multiplier_scope": "Multiplier scope",
|
||||
"admin_rulesets_label_multiplier_source": "Multiplier source",
|
||||
"admin_rulesets_label_wwl_level": "WWL level",
|
||||
"admin_rulesets_section_penalties_title": "Penalties",
|
||||
"admin_rulesets_section_penalties_desc": "Penalty values per error type.",
|
||||
"admin_rulesets_label_penalty_dup": "Penalty DUP",
|
||||
"admin_rulesets_label_penalty_nil": "Penalty NIL",
|
||||
"admin_rulesets_label_penalty_busted_call": "Penalty busted call",
|
||||
"admin_rulesets_label_penalty_busted_rst": "Penalty busted RST",
|
||||
"admin_rulesets_label_penalty_busted_exchange": "Penalty busted exchange",
|
||||
"admin_rulesets_label_penalty_busted_serial": "Penalty busted serial",
|
||||
"admin_rulesets_label_penalty_busted_locator": "Penalty busted locator",
|
||||
"admin_rulesets_label_penalty_out_of_window": "Penalty out-of-window",
|
||||
"admin_rulesets_section_advanced_title": "Advanced",
|
||||
"admin_rulesets_section_advanced_desc": "Optional JSON rules extensions.",
|
||||
"admin_rulesets_label_options_json": "Options (JSON)",
|
||||
"admin_rulesets_create": "New rule set",
|
||||
"admin_rulesets_save": "Save changes",
|
||||
"admin_rulesets_form_create_title": "New rule set",
|
||||
"admin_rulesets_form_edit_title": "Edit rule set",
|
||||
|
||||
"edi_error_file_empty": "{{name}}: file is empty.",
|
||||
"edi_error_missing_header": "{{name}}: missing header [REG1TEST;1].",
|
||||
"edi_error_missing_field": "{{name}}: missing {{field}}.",
|
||||
"edi_error_tdate_format": "{{name}}: TDate must be in YYYYMMDD;YYYYMMDD format and the first date must not be after the second.",
|
||||
"edi_error_pwwlo_format": "{{name}}: PWWLo must be a 6-character locator (AA00AA).",
|
||||
"edi_error_pcall_format": "{{name}}: PCall must be a valid callsign.",
|
||||
"edi_error_rcall_for_psect": "{{name}}: missing or invalid RCall for PSect {{psect}}.",
|
||||
"edi_error_mope_missing": "{{name}}: MOpe1/MOpe2 is required for multi operators.",
|
||||
"edi_error_mope_invalid": "{{name}}: invalid callsigns in MOpe1/MOpe2 ({{invalid}}).",
|
||||
"edi_error_missing_qso_records": "{{name}}: missing section [QSORecords;N].",
|
||||
"edi_error_qso_fields_min": "{{name}}: QSO #{{index}} has too few fields (at least {{min}} expected).",
|
||||
"edi_error_qso_date_format": "{{name}}: QSO #{{index}} has invalid date (YYMMDD).",
|
||||
"edi_error_qso_year_out_of_range": "{{name}}: QSO #{{index}} year is outside TDate range.",
|
||||
"edi_error_qso_date_out_of_range": "{{name}}: QSO #{{index}} date is outside TDate range.",
|
||||
"edi_error_qso_time_format": "{{name}}: QSO #{{index}} has invalid time (HHMM UTC).",
|
||||
"edi_error_qso_callsign": "{{name}}: QSO #{{index}} has invalid callsign.",
|
||||
"edi_error_qso_edit_in_file": "{{name}}: QSO records cannot be edited in the form, fix them in the file and upload again.",
|
||||
"edi_warning_qso_count_mismatch": "{{name}}: Declared QSO count ({{expected}}) does not match actual ({{actual}}).",
|
||||
"edi_error_psect_multiple_power": "PSect contains multiple power categories.",
|
||||
"edi_error_psect_time_not_allowed": "PSect contains 6H time category which is not allowed for this round.",
|
||||
"edi_warning_psect_time_not_allowed": "PSect contains 6H time category which is not allowed for this round. Upload is allowed, but we recommend fixing the value.",
|
||||
"edi_error_psect_multiple_time": "PSect contains multiple time categories.",
|
||||
"edi_error_psect_missing_operator": "PSect must contain SO or MO.",
|
||||
"edi_error_psect_check_extra": "PSect CHECK must not contain any other tokens.",
|
||||
"edi_error_psect_unknown_tokens": "PSect contains unknown tokens: {{tokens}}.",
|
||||
"edi_warning_psect_unknown_tokens": "Unknown tokens in PSect: {{tokens}}.",
|
||||
"edi_field_tname": "contest name (TName)",
|
||||
"edi_field_tdate": "contest date (TDate=YYYYMMDD;YYYYMMDD)",
|
||||
"edi_field_pcall": "callsign (PCall)",
|
||||
"edi_field_pwwlo": "locator (PWWLo)",
|
||||
"edi_field_psect": "section/category (PSect)",
|
||||
"edi_field_pband": "band used (PBand)",
|
||||
"edi_field_spowe": "power (SPowe)",
|
||||
"edi_field_sante": "antenna (SAnte)",
|
||||
"edi_field_cqsop": "QSO points (CQSOP)",
|
||||
"edi_field_ctosc": "total score (CToSc)",
|
||||
|
||||
"about_link": "About",
|
||||
"admin_contests_link": "Contests",
|
||||
"admin_news_link": "News",
|
||||
"admin_rulesets_link": "Rule sets",
|
||||
"admin_users_link": "Users",
|
||||
"admin_users_title": "Users",
|
||||
"admin_users_create": "New user",
|
||||
"admin_users_load_failed": "Failed to load users.",
|
||||
"admin_users_save_failed": "Failed to save user.",
|
||||
"admin_users_deactivate_failed": "Failed to deactivate user.",
|
||||
"admin_users_search": "Search name or email",
|
||||
"admin_users_name": "Name",
|
||||
"admin_users_email": "Email",
|
||||
"admin_users_password": "Password",
|
||||
"admin_users_password_hint": "Leave empty to keep unchanged",
|
||||
"admin_users_is_admin": "Admin",
|
||||
"admin_users_is_active": "Active",
|
||||
"admin_users_actions": "Actions",
|
||||
"admin_users_loading": "Loading...",
|
||||
"admin_users_empty": "No users.",
|
||||
"admin_users_edit": "Edit",
|
||||
"admin_users_deactivate": "Deactivate",
|
||||
"admin_users_edit_title": "Edit user",
|
||||
"admin_users_create_title": "New user",
|
||||
"admin_users_saving": "Saving…",
|
||||
"admin_users_save": "Save",
|
||||
"admin_link": "Administration",
|
||||
"contests_link": "Contests",
|
||||
"contests_left_title": "Contests",
|
||||
"home_link": "Home",
|
||||
"login_link": "Login",
|
||||
"logout_link": "Logout",
|
||||
"back": "Back",
|
||||
"log": "Log",
|
||||
|
||||
"news_show_more": "Show more"
|
||||
}
|
||||
78
resources/js/locales/en/ruleset.json
Normal file
78
resources/js/locales/en/ruleset.json
Normal file
@@ -0,0 +1,78 @@
|
||||
{
|
||||
"ruleset_help_name": "Ruleset name for administration; it does not affect scoring.",
|
||||
"ruleset_help_code": "Stable ruleset identifier for links, exports, and API; changing it can break references.",
|
||||
"ruleset_help_description": "Description for referees; it does not change the calculation.",
|
||||
"ruleset_help_scoring_mode": "Scoring method: DISTANCE = points from km; FIXED_POINTS = fixed points per valid QSO.",
|
||||
"ruleset_help_points_per_qso": "Used only in FIXED_POINTS; valid QSO gets this many points.",
|
||||
"ruleset_help_points_per_km": "Used only in DISTANCE; points = distance_km * points_per_km (after rounding).",
|
||||
"ruleset_help_use_multipliers": "Enables multipliers in aggregation; when off, multiplier_count=1.",
|
||||
"ruleset_help_multiplier_type": "Multiplier type to collect from QSOs (WWL/DXCC/SECTION/COUNTRY).",
|
||||
"ruleset_help_multiplier_scope": "PER_BAND counts per band; OVERALL counts all together.",
|
||||
"ruleset_help_multiplier_source": "VALID_ONLY uses valid QSOs; ALL_MATCHED uses all matched (even invalid).",
|
||||
"ruleset_help_wwl_multiplier_level": "WWL level (2/4/6) used to count uniques.",
|
||||
"ruleset_help_checklog_matching": "When off, CHECK logs are excluded from matching and cannot form pairs.",
|
||||
"ruleset_help_dupe_scope": "Duplicate scope: BAND within band only; BAND_MODE also by mode.",
|
||||
"ruleset_help_callsign_normalization": "How callsigns are normalized for matching and busted checks.",
|
||||
"ruleset_help_callsign_suffix_max_len": "Max suffix length after slash to ignore (longer suffix is kept).",
|
||||
"ruleset_help_callsign_levenshtein_max": "Maximum Levenshtein distance for tolerant callsign matching (0–2).",
|
||||
"ruleset_help_distance_rounding": "How distance_km is rounded before scoring (FLOOR/ROUND/CEIL).",
|
||||
"ruleset_help_min_distance_km": "QSOs below this distance get 0 points or can be marked invalid.",
|
||||
"ruleset_help_operating_window_mode": "Enables the 6H operating window: up to two segments separated by >=2h are counted (total duration <= 6 hours).",
|
||||
"ruleset_help_operating_window_hours": "Total operating time is fixed (6 hours).",
|
||||
"ruleset_help_sixhr_ranking_mode": "IARU = one combined 6H table without SO/MO; CRK = separate SO and MO rankings.",
|
||||
"ruleset_help_time_tolerance_sec": "Max time delta for matching; outside tolerance reduces matching or yields NIL.",
|
||||
"ruleset_help_allow_time_shift_one_hour": "Allows time shift (typically +1h) during matching and flags QSOs as TIME_SHIFT.",
|
||||
"ruleset_help_time_shift_seconds": "Time shift in seconds used as an alternative matching window (e.g. 3600).",
|
||||
"ruleset_help_time_mismatch_policy": "How to handle time mismatch: INVALID marks QSO invalid; ZERO_POINTS keeps valid but 0 points; FLAG_ONLY keeps points; PENALTY sets 0 points and adds penalty.",
|
||||
"ruleset_help_allow_time_mismatch_pairing": "Allow pairing outside time tolerance; resulting QSO is flagged TIME_MISMATCH.",
|
||||
"ruleset_help_time_mismatch_max_sec": "Maximum time delta (seconds) for pairing outside tolerance; NULL = unlimited.",
|
||||
"ruleset_help_time_diff_dq_threshold_percent": "If more than this share of matched QSOs exceeds the time threshold, the log is marked DQ.",
|
||||
"ruleset_help_time_diff_dq_threshold_sec": "Time threshold in seconds used to compute the share of QSOs with large time difference.",
|
||||
"ruleset_help_bad_qso_dq_threshold_percent": "If the share of bad QSOs (NIL/DUP/BUSTED/OUT) reaches this value, the log is disqualified (DQ).",
|
||||
"ruleset_help_out_of_window_dq_threshold": "Out-of-window QSO count that flips the log to DQ.",
|
||||
"ruleset_help_require_locators": "Without locators, QSOs are marked invalid or score 0.",
|
||||
"ruleset_help_require_unique_qso": "Duplicate QSOs are marked DUP and do not score.",
|
||||
"ruleset_help_out_of_window_policy": "How to handle out-of-window QSOs: IGNORE/0 points/PENALTY/INVALID.",
|
||||
"ruleset_help_exchange_type": "Defines what is part of the exchange and checked for busted_exchange.",
|
||||
"ruleset_help_exchange_requires_wwl": "If WWL is missing, the QSO is marked invalid/busted per rules.",
|
||||
"ruleset_help_exchange_requires_serial": "If serial is missing, the QSO is marked invalid/busted per rules.",
|
||||
"ruleset_help_exchange_requires_report": "RST is part of the exchange; mismatch can lead to BUSTED_RST.",
|
||||
"ruleset_help_exchange_pattern": "Regex for CUSTOM exchange; non-matching value => busted_exchange.",
|
||||
"ruleset_help_match_tiebreak_order": "Tie-break order when choosing a candidate (time, exchange, locator...).",
|
||||
"ruleset_help_match_require_locator_match": "Matching allows only candidates with matching locator; otherwise NIL.",
|
||||
"ruleset_help_match_require_exchange_match": "Matching allows only candidates with matching exchange; otherwise NIL.",
|
||||
"ruleset_help_letters_in_rst": "Allow alphanumeric RST; otherwise only digits are valid.",
|
||||
"ruleset_help_ignore_slash_part": "Ignore suffix after slash during normalization (e.g. /P).",
|
||||
"ruleset_help_ignore_third_part": "Ignore the third part of a callsign (e.g. OK1ABC/0/P).",
|
||||
"ruleset_help_rst_ignore_third_char": "Ignores the 3rd character of RST when comparing (e.g. 59X).",
|
||||
"ruleset_help_discard_qso_rec_diff_call": "If the received callsign (DX call) differs from the other station’s sent callsign, the QSO is flagged BUSTED_CALL with error_side=RX. Points are zero; penalties apply per busted_call_policy.",
|
||||
"ruleset_help_discard_qso_sent_diff_call": "If the sent callsign differs from the other station’s received callsign, the QSO is flagged BUSTED_CALL with error_side=TX. Points for the current station stay; penalties belong to the counterpart.",
|
||||
"ruleset_help_discard_qso_rec_diff_rst": "Received RST mismatch flags BUSTED_RST with error_side=RX. Points 0; penalty per busted_rst_policy.",
|
||||
"ruleset_help_discard_qso_sent_diff_rst": "Sent RST mismatch flags BUSTED_RST with error_side=TX. Points stay for current station; penalties belong to the counterpart.",
|
||||
"ruleset_help_discard_qso_rec_diff_serial": "Received serial mismatch flags BUSTED_SERIAL with error_side=RX. Policy uses busted_serial_policy.",
|
||||
"ruleset_help_discard_qso_sent_diff_serial": "Sent serial mismatch flags BUSTED_SERIAL with error_side=TX. Points stay for current station; penalties belong to the counterpart.",
|
||||
"ruleset_help_discard_qso_rec_diff_wwl": "Received locator mismatch flags BUSTED_LOCATOR with error_side=RX. Policy uses busted_locator_policy.",
|
||||
"ruleset_help_discard_qso_sent_diff_wwl": "Sent locator mismatch flags BUSTED_LOCATOR with error_side=TX. Points stay for current station; penalties belong to the counterpart.",
|
||||
"ruleset_help_discard_qso_rec_diff_code": "Received exchange mismatch flags BUSTED_SERIAL or BUSTED_LOCATOR (by exchange type) with error_side=RX. Policies use busted_serial_policy/busted_locator_policy.",
|
||||
"ruleset_help_discard_qso_sent_diff_code": "Sent exchange mismatch flags BUSTED_SERIAL or BUSTED_LOCATOR (by exchange type) with error_side=TX. Points stay for current station; penalties belong to the counterpart.",
|
||||
"ruleset_help_dup_resolution_strategy": "Order of rules for selecting the survivor among duplicates (paired_first, ok_first, earlier_time, lower_id).",
|
||||
"ruleset_help_dup_qso_policy": "DUP: ZERO_POINTS = 0; PENALTY = 0 + penalty.",
|
||||
"ruleset_help_nil_qso_policy": "NIL: ZERO_POINTS = 0; PENALTY = 0 + penalty.",
|
||||
"ruleset_help_no_counterpart_log_policy": "No counterpart log: INVALID = invalid; ZERO_POINTS = valid with 0; FLAG_ONLY = keep points; PENALTY = 0 + penalty.",
|
||||
"ruleset_help_not_in_counterpart_log_policy": "Not in counterpart log: INVALID = invalid; ZERO_POINTS = valid with 0; FLAG_ONLY = keep points; PENALTY = 0 + penalty.",
|
||||
"ruleset_help_unique_qso_policy": "Unique QSO: INVALID = invalid; ZERO_POINTS = valid with 0; FLAG_ONLY = keep points.",
|
||||
"ruleset_help_busted_call_policy": "BUSTED_CALL: ZERO_POINTS = 0; PENALTY = 0 + penalty.",
|
||||
"ruleset_help_busted_rst_policy": "BUSTED_RST: ZERO_POINTS = 0; PENALTY = keep points + penalty.",
|
||||
"ruleset_help_busted_exchange_policy": "BUSTED exchange fallback: ZERO_POINTS = 0; PENALTY = 0 + penalty.",
|
||||
"ruleset_help_busted_serial_policy": "BUSTED_SERIAL: ZERO_POINTS = 0; PENALTY = 0 + penalty.",
|
||||
"ruleset_help_busted_locator_policy": "BUSTED_LOCATOR: ZERO_POINTS = 0; PENALTY = 0 + penalty.",
|
||||
"ruleset_help_penalty_dup_points": "Penalty points (negative) for DUP when policy= PENALTY.",
|
||||
"ruleset_help_penalty_nil_points": "Penalty points (negative) for NIL when policy= PENALTY.",
|
||||
"ruleset_help_penalty_busted_call_points": "Penalty points (negative) for BUSTED_CALL when policy= PENALTY.",
|
||||
"ruleset_help_penalty_busted_rst_points": "Penalty points (negative) for BUSTED_RST when policy= PENALTY.",
|
||||
"ruleset_help_penalty_busted_exchange_points": "Penalty points (negative) for BUSTED exchange fallback when policy= PENALTY.",
|
||||
"ruleset_help_penalty_busted_serial_points": "Penalty points (negative) for BUSTED_SERIAL when policy= PENALTY.",
|
||||
"ruleset_help_penalty_busted_locator_points": "Penalty points (negative) for BUSTED_LOCATOR when policy= PENALTY.",
|
||||
"ruleset_help_penalty_out_of_window_points": "Penalty points for out-of-window QSOs when out_of_window_policy= PENALTY.",
|
||||
"ruleset_help_options_json": "Optional rule extensions in JSON; they affect scoring only if code reads the key."
|
||||
}
|
||||
Reference in New Issue
Block a user