Модуль:РВ/ЧТМ
Перейти к навигации
Перейти к поиску
local p = {}
-----------------------------------------------------------------------
-- СЛОВАРЬ РЕЗУЛЬТАТОВ (Замена шаблону РВ/П)
-----------------------------------------------------------------------
local RESULT_TEXT = {
["ч"] = "'''ЧЕМПИОН.'''",
["ф"] = "'''ФИНАЛ.'''",
["б"] = "'''Бронза.'''",
["д"] = "'''Дерево.'''",
["чф"] = "'''1/4 финала.'''",
["в"] = "'''1/8 финала.'''",
["2г"] = "2-е место в группе.",
["3г"] = "3-е место в группе.",
["4г"] = "4-е место в группе.",
["5г"] = "5-е место в группе.",
["6г"] = "6-е место в группе.",
["фпм"] = "'''ФИНАЛ''' ''(переходные матчи ещё не состоялись).''",
["фпмв"] = "'''ФИНАЛ''' ''(победа в переходных матчах).''",
["фпмп"] = "ФИНАЛ ''(поражение в переходных матчах).''",
["бпм"] = "'''Бронза''' ''(переходные матчи ещё не состоялись).''",
["бпмв"] = "'''Бронза''' ''(победа в переходных матчах).''",
["бпмп"] = "Бронза ''(поражение в переходных матчах).''",
["дпм"] = "'''Дерево''' ''(переходные матчи ещё не состоялись).''",
["дпмв"] = "'''Дерево''' ''(победа в переходных матчах).''",
["дпмп"] = "Дерево ''(поражение в переходных матчах).''",
["чфпм"] = "'''1/4 финала''' ''(переходные матчи ещё не состоялись).''",
["чфпмв"] = "'''1/4 финала''' ''(победа в переходных матчах).''",
["чфпмп"] = "1/4 финала ''(поражение в переходных матчах).''",
["пм"] = "'''переходные матчи''' ''(ещё не состоялись)''.",
["пмв"] = "'''переходные матчи''' ''(победа).''",
["пмп"] = "переходные матчи ''(поражение).''",
["5"] = "5-е место.",
["6"] = "6-е место.",
["7"] = "7-е место.",
["8"] = "8-е место.",
["ос"] = "''отборочный турнир (стыковые матчи).''",
["о3"] = "''отборочный турнир (3-й раунд).''",
["о2"] = "''отборочный турнир (2-й раунд).''",
["о1"] = "''отборочный турнир (1-й раунд).''",
["оп"] = "''отборочный турнир (предварительный раунд).''",
["о"] = "''отборочный турнир.''",
["по"] = "'''участники плей-офф''' (матч ещё не состоялся).",
["уч"] = "'''участники 1/4 финала''' (матч ещё не состоялся).",
["пол"] = "'''участники полуфинала''' (матч ещё не состоялся).",
["у"] = "участники финального турнира (матчи ещё не состоялись).",
-- Если нужны коды Дивизионов для будущего, можно добавить их сюда
}
local NOT_PARTICIPATED = "''<span style=\"color:grey\">не принимали участия.</span>''"
-----------------------------------------------------------------------
-- БАЗА ДАННЫХ ЧТМ
-----------------------------------------------------------------------
local db = {}
db["2006"] = {
["АСА"]="чф",
["АНТ"]="в",
["АФГ"]="3г",
["БАН"]="3г",
["БЕН"]="3г",
["БУТ"]="в",
["ВОС"]="3г",
["ГВА"]="4г",
["ГУА"]="в",
["ДЖИ"]="3г",
["ДРЕ"]="4г",
["КАЙ"]="чф",
["КИР"]="в",
["МАЛ"]="3г",
["МАР"]="4г",
["МОЗ"]="4г",
["МОН"]="ч",
["МНТ"]="4г",
["МЬЯ"]="б",
["НИГ"]="в",
["ПАП"]="3г",
["САМ"]="4г",
["САН"]="ф",
["СОЛ"]="чф",
["СУР"]="3г",
["ТАД"]="в",
["ТАИ"]="4г",
["ТЕР"]="б",
["ТУР"]="чф",
["ФИД"]="4г",
["ЦАР"]="в",
["ШРИ"]="в"
}
db["2010"] = {
["АСА"]="в",
["АНТ"]="о",
["АФГ"]="ч",
["БАН"]="о",
["БАР"]="о",
["БЕЛ"]="о",
["БЕН"]="3г",
["БРУ"]="о",
["БУТ"]="о",
["ВАТ"]="4г",
["ВОС"]="о",
["ГАЙ"]="о",
["ГВА"]="чф",
["ГВИ"]="о",
["ГИБ"]="о",
["ГРЕ"]="о",
["ГУА"]="4г",
["ДЖИ"]="о",
["ДОМ"]="в",
["ДРЕ"]="о",
["КАЙ"]="о",
["КИР"]="ос",
["КРБ"]="о",
["КЮР"]="о",
["ЛАО"]="о",
["МАЛ"]="в",
["МАР"]="о",
["МОЗ"]="в",
["МОН"]="в",
["МНТ"]="в",
["МЬЯ"]="б",
["НИГ"]="в",
["НИК"]="чф",
["НОВ"]="о",
["ОСТ"]="чф",
["ПАК"]="ос",
["САМ"]="о",
["САН"]="о",
["СВА"]="о",
["СЕЙ"]="ос",
["СЕН"]="о",
["СОЛ"]="чф",
["СОМ"]="ос",
["СУР"]="4г",
["ТАД"]="ф",
["ТАИ"]="4г",
["ТЕР"]="в",
["ТУР"]="4г",
["ФИД"]="4г",
["ЦАР"]="о",
["ЧАД"]="д",
["ШРИ"]="о",
["ЭРИ"]="3г",
["АОМ"]="о",
["АРУ"]="о",
["БАГ"]="о",
["ГАМ"]="о",
["ГРЛ"]="оп",
["ЗАС"]="оп",
["КОМ"]="о",
["ЛЕС"]="о",
["МАВ"]="о",
["МИК"]="о",
["МРТ"]="о",
["НАУ"]="о",
["НЕП"]="о",
["ОКУ"]="о",
["ПАЛ"]="о",
["ПУЭ"]="о",
["РЕЮ"]="оп",
["ТОН"]="о",
["ТУВ"]="о",
["ЭКВ"]="о"
}
db["2014"] = {
["АСА"]="4г",
["АНТ"]="в",
["АФГ"]="в",
["БАН"]="о",
["БАР"]="в",
["БЕЛ"]="о",
["БЕН"]="3г",
["БРУ"]="о",
["БУТ"]="о",
["ВАТ"]="о",
["ВОС"]="о",
["ГАЙ"]="3г",
["ГВА"]="чф",
["ГВИ"]="о",
["ГИБ"]="б",
["ГРЕ"]="о",
["ГУА"]="о",
["ДЖИ"]="оп",
["ДОМ"]="ч",
["ДРЕ"]="4г",
["КАЙ"]="о",
["КИР"]="чф",
["КРБ"]="о",
["КЮР"]="4г",
["ЛАО"]="о",
["МАЛ"]="3г",
["МАР"]="оп",
["МОЗ"]="в",
["МОН"]="чф",
["МНТ"]="о",
["МЬЯ"]="в",
["НИГ"]="3г",
["НИК"]="4г",
["НОВ"]="оп",
["ОСТ"]="д",
["ПАК"]="4г",
["ПАП"]="оп",
["САМ"]="в",
["САН"]="3г",
["СВА"]="о",
["СЕЙ"]="о",
["СЕН"]="о",
["СОЛ"]="в",
["СОМ"]="в",
["СУР"]="4г",
["ТАД"]="4г",
["ТАИ"]="о",
["ТЕР"]="чф",
["ТУР"]="3г",
["ФИД"]="о",
["ЦАР"]="3г",
["ЧАД"]="ф",
["ШРИ"]="4г",
["ЭРИ"]="3г",
["АОМ"]="оп",
["АРУ"]="о",
["БАГ"]="о",
["БЕР"]="о",
["ГАМ"]="о",
["ГРЛ"]="оп",
["ЗАС"]="о",
["КОМ"]="о",
["ЛЕС"]="о",
["МАВ"]="о",
["МРТ"]="о",
["МИК"]="оп",
["НАУ"]="о",
["НЕП"]="о",
["НИУ"]="оп",
["НОР"]="оп",
["ОКУ"]="оп",
["ПАЛ"]="оп",
["ПУЭ"]="о",
["РЕЮ"]="оп",
["ТОН"]="оп",
["ТУВ"]="оп",
["ФИЛ"]="о",
["ФРА"]="оп",
["ЭКВ"]="о"
}
db["2018"] = {
["АСА"]="о",
["АНТ"]="в",
["АФГ"]="в",
["БАН"]="о",
["БАР"]="ос",
["БЕЛ"]="о",
["БЕН"]="ос",
["БРУ"]="4г",
["БУТ"]="в",
["ВАТ"]="о",
["ВОС"]="оп",
["ГАЙ"]="в",
["ГВА"]="в",
["ГВИ"]="4г",
["ГИБ"]="ос",
["ГРЕ"]="ос",
["ГУА"]="4г",
["ДЖИ"]="ос",
["ДОМ"]="ф",
["ДРЕ"]="3г",
["ИНД"]="оп",
["КАЙ"]="4г",
["КАМ"]="о",
["КИР"]="д",
["КРБ"]="о",
["КЮР"]="ос",
["ЛАО"]="о",
["МАЛ"]="3г",
["МАР"]="оп",
["МОЗ"]="в",
["МОН"]="ч",
["МНТ"]="3г",
["МЬЯ"]="ос",
["НИГ"]="чф",
["НИК"]="4г",
["НОВ"]="оп",
["ОСТ"]="чф",
["ПАК"]="в",
["ПАП"]="оп",
["САМ"]="3г",
["САН"]="3г",
["СВА"]="4г",
["СЕЙ"]="4г",
["СЕН"]="ос",
["СОЛ"]="чф",
["СОМ"]="в",
["СУР"]="о",
["ТАД"]="3г",
["ТАИ"]="3г",
["ТАН"]="4г",
["ТЕР"]="б",
["ТУР"]="о",
["ФИД"]="о",
["ЦАР"]="ос",
["ЧАД"]="3г",
["ШРИ"]="о",
["ЭРИ"]="чф",
["АВИ"]="оп",
["АОМ"]="ос",
["АРУ"]="о",
["БАГ"]="ос",
["БЕР"]="о",
["БОТ"]="о",
["ГАМ"]="о",
["ГВБ"]="о",
["ГОН"]="оп",
["ГРЛ"]="ос",
["ЗАС"]="ос",
["КИТ"]="о",
["КОМ"]="ос",
["ЛЕС"]="о",
["ЛИВ"]="о",
["МАВ"]="о",
["МАД"]="о",
["МРТ"]="о",
["МЕЛ"]="оп",
["МИД"]="оп",
["МИК"]="оп",
["НАУ"]="о",
["НЕП"]="о",
["НИУ"]="о",
["НОР"]="оп",
["ОКУ"]="оп",
["ПАЛ"]="оп",
["ПУЭ"]="о",
["РЕЮ"]="оп",
["СЕУ"]="оп",
["СИН"]="о",
["СПМ"]="о",
["ТОК"]="оп",
["ТОН"]="оп",
["ТУВ"]="оп",
["УОЛ"]="оп",
["ФИЛ"]="о",
["ФРА"]="оп",
["ШПИ"]="о",
["ЭКВ"]="о"
}
db["2022"] = {
["АЛЯ"]="о",
["АСА"]="в",
["АНТ"]="4г",
["АФГ"]="в",
["БАН"]="3г",
["БАР"]="4г",
["БЕЛ"]="о",
["БЕН"]="ос",
["БРУ"]="3г",
["БУТ"]="о",
["ВАТ"]="о",
["ВОС"]="о",
["ГАВ"]="о",
["ГАЙ"]="чф",
["ГВА"]="3г",
["ГВИ"]="о",
["ГИБ"]="ф",
["ГРЕ"]="о",
["ГУА"]="4г",
["ДЖИ"]="о1",
["ДОМ"]="в",
["ДРЕ"]="ос",
["ИНД"]="о",
["КАЙ"]="3г",
["КАМ"]="о",
["КИР"]="б",
["КРБ"]="4г",
["КЮР"]="о",
["ЛАО"]="о",
["МАЛ"]="4г",
["МАР"]="о",
["МОЗ"]="3г",
["МОН"]="ч",
["МНТ"]="о",
["МЬЯ"]="д",
["НИГ"]="в",
["НИК"]="о",
["НОВ"]="о",
["ОСТ"]="в",
["ПАК"]="о",
["ПАП"]="о",
["САМ"]="3г",
["САН"]="чф",
["СВА"]="о2",
["СЕЙ"]="о2",
["СЕН"]="о",
["СОЛ"]="в",
["СОМ"]="3г",
["СУР"]="4г",
["ТАД"]="чф",
["ТАИ"]="о",
["ТАН"]="о1",
["ТЕР"]="чф",
["ТУР"]="о",
["ФИД"]="3г",
["ЦАР"]="4г",
["ЧАД"]="в",
["ШРИ"]="в",
["ЭРИ"]="4г",
["АВИ"]="о",
["АНГ"]="о",
["АОМ"]="о",
["АРУ"]="о",
["БАГ"]="о",
["БЕР"]="о",
["БОТ"]="о1",
["БВИ"]="о",
["БУР"]="о1",
["ГАМ"]="о2",
["ГВБ"]="о2",
["ГОН"]="о",
["ГРЛ"]="о",
["ЗАС"]="о1",
["КЕН"]="о1",
["КИТ"]="о",
["КОМ"]="о2",
["ЛЕС"]="о1",
["ЛИВ"]="о",
["МАВ"]="о1",
["МВР"]="о1",
["МАД"]="о2",
["МРТ"]="о",
["МЕЛ"]="о1",
["МИД"]="оп",
["МИК"]="оп",
["НАУ"]="о",
["НЕП"]="о",
["НИУ"]="оп",
["НОР"]="оп",
["ОКУ"]="о",
["ПАЛ"]="о",
["ПУЭ"]="о",
["РЕЮ"]="о1",
["СПМ"]="о",
["СВГ"]="о",
["СКН"]="о",
["СЕУ"]="о1",
["СИН"]="о",
["СТП"]="о1",
["ТОК"]="оп",
["ТОН"]="о",
["ТУВ"]="о",
["УОЛ"]="о",
["ФИЛ"]="о",
["ФРА"]="оп",
["ШПИ"]="о",
["ЭКВ"]="о2",
["ЯНМ"]="о"
}
db["2026"] = {
["АЛЯ"]="о",
["АСА"]="в",
["АНТ"]="ос",
["АФГ"]="в",
["БАН"]="о",
["БАР"]="4г",
["БЕЛ"]="4г",
["БЕН"]="ос",
["БРУ"]="3г",
["БУТ"]="о",
["ВАТ"]="о",
["ВОС"]="о",
["ГАВ"]="о",
["ГАЙ"]="чф",
["ГВА"]="3г",
["ГВИ"]="о",
["ГИБ"]="в",
["ГРЕ"]="4г",
["ГУА"]="о",
["ДЖИ"]="о1",
["ДОМ"]="ч",
["ДРЕ"]="в",
["ИНД"]="ос",
["КАЙ"]="ос",
["КАМ"]="3г",
["КИР"]="б",
["КРБ"]="4г",
["КЮР"]="ос",
["ЛАО"]="4г",
["МАЛ"]="ос",
["МАР"]="о",
["МОЗ"]="чф",
["МОН"]="в",
["МНТ"]="3г",
["МЬЯ"]="чф",
["НИГ"]="чф",
["НИК"]="ос",
["НОВ"]="о",
["ОСТ"]="4г",
["ПАК"]="о",
["ПАП"]="о",
["САМ"]="о",
["САН"]="3г",
["СВА"]="о2",
["СЕЙ"]="о2",
["СЕН"]="3г",
["СОЛ"]="в",
["СОМ"]="3г",
["СУР"]="в",
["ТАД"]="о",
["ТАИ"]="о",
["ТАН"]="о1",
["ТЕР"]="4г",
["ТУР"]="д",
["ФИД"]="ос",
["ЦАР"]="ф",
["ЧАД"]="3г",
["ШРИ"]="4г",
["ЭРИ"]="в",
["АВИ"]="о",
["АНГ"]="о",
["АОМ"]="о",
["АРУ"]="о",
["БАГ"]="ос",
["БЕР"]="о",
["БОТ"]="о1",
["БВИ"]="о",
["БУР"]="о2",
["ГАМ"]="о2",
["ГВБ"]="о1",
["ГОН"]="о",
["ГРЛ"]="о",
["ЗАН"]="о1",
["ЗАС"]="о1",
["ЙЕМ"]="о",
["КЕН"]="о1",
["КЕР"]="оп",
["КИТ"]="о",
["КОМ"]="о1",
["ЛЕС"]="о1",
["ЛИВ"]="о",
["МАВ"]="о2",
["МВР"]="о1",
["МАД"]="о2",
["МЛЗ"]="о",
["МРТ"]="о",
["МЕЛ"]="о1",
["МИД"]="оп",
["МИК"]="оп",
["НАУ"]="о",
["НЕП"]="о",
["НИУ"]="о",
["НОР"]="о",
["ОВО"]="о1",
["ОКУ"]="о",
["ПАЛ"]="о",
["ПЛС"]="о",
["ПУЭ"]="о",
["РЕЮ"]="о1",
["СПМ"]="о",
["СВГ"]="о",
["СКН"]="о",
["СЕУ"]="о1",
["СИН"]="о",
["СТП"]="о1",
["ТАС"]="оп",
["ТОК"]="оп",
["ТОН"]="о",
["ТУВ"]="о",
["УОЛ"]="о",
["ФИЛ"]="о",
["ФРА"]="оп",
["ХЁР"]="оп",
["ШПИ"]="о",
["ЭКВ"]="о2",
["ЭФИ"]="о1",
["ЯНМ"]="о"
}
db["2030"] = {
["АЛЯ"]="3г",
["АСА"]="4г",
["АНТ"]="о2",
["АФГ"]="4г",
["БАН"]="о2",
["БАР"]="о2",
["БЕЛ"]="о2",
["БЕН"]="ос",
["БРУ"]="о2",
["БУТ"]="о1",
["ВАТ"]="о1",
["ВОС"]="о1",
["ГАВ"]="о1",
["ГАЙ"]="4г",
["ГВА"]="в",
["ГВИ"]="о2",
["ГИБ"]="4г",
["ГРЕ"]="о2",
["ГУА"]="4г",
["ДЖИ"]="о1",
["ДОМ"]="в",
["ДРЕ"]="чф",
["ИНД"]="ф",
["КАЙ"]="д",
["КАМ"]="о2",
["КИР"]="чф",
["КРБ"]="ос",
["КЮР"]="о2",
["ЛАО"]="о2",
["МАЛ"]="о2",
["МАР"]="о2",
["МОЗ"]="3г",
["МОН"]="б",
["МНТ"]="4г",
["МЬЯ"]="в",
["НИГ"]="3г",
["НИК"]="о2",
["НОВ"]="3г",
["ОСТ"]="в",
["ПАК"]="4г",
["ПАП"]="о1",
["САМ"]="4г",
["САН"]="3г",
["СВА"]="о2",
["СЕЙ"]="о2",
["СЕН"]="ч",
["СОЛ"]="в",
["СОМ"]="3г",
["СУР"]="3г",
["ТАД"]="в",
["ТАИ"]="о2",
["ТАН"]="о2",
["ТЕР"]="чф",
["ТУР"]="в",
["ФИД"]="о2",
["ЦАР"]="3г",
["ЧАД"]="чф",
["ШРИ"]="о2",
["ЭРИ"]="в",
["АВИ"]="о1",
["АНГ"]="о1",
["АОМ"]="о1",
["АРУ"]="о1",
["АТО"]="о1",
["БАГ"]="о1",
["БЕР"]="о2",
["БОТ"]="о1",
["БВИ"]="о1",
["БУР"]="о1",
["ГАЛ"]="о1",
["ГАМ"]="о2",
["ГВБ"]="о1",
["ГОН"]="о1",
["ГРЛ"]="о1",
["ЗАН"]="о1",
["ЗАС"]="о1",
["ЗФИ"]="о1",
["ЙЕМ"]="о1",
["КЕН"]="о1",
["КЕР"]="о1",
["КРМ"]="о1",
["КИТ"]="о1",
["КОК"]="о1",
["КОМ"]="о2",
["ЛЕС"]="о1",
["ЛИВ"]="о1",
["МАВ"]="о1",
["МВР"]="о2",
["МАД"]="о2",
["МАЙ"]="о1",
["МЛЗ"]="о1",
["МРН"]="о1",
["МРТ"]="о1",
["МЕЛ"]="о1",
["МИД"]="о1",
["МИК"]="о1",
["МНК"]="о1",
["НАУ"]="о2",
["НЕП"]="о1",
["НИУ"]="о2",
["НЗЕ"]="о1",
["НОР"]="о1",
["ОГН"]="о1",
["ОВО"]="о1",
["ОЕВ"]="о1",
["ОАН"]="о1",
["ОКУ"]="о2",
["ПАЛ"]="о1",
["ПЛС"]="о1",
["ПОЛ"]="о1",
["ПУЭ"]="о1",
["РЕЮ"]="о1",
["СПМ"]="о1",
["СВГ"]="о1",
["СКН"]="о1",
["СЕУ"]="о1",
["СИН"]="о2",
["СТП"]="о1",
["ТАС"]="о1",
["ТОК"]="о1",
["ТОН"]="о2",
["ТРИ"]="о1",
["ТУВ"]="о1",
["УОЛ"]="о1",
["ФИЛ"]="о1",
["ФРА"]="о1",
["ХЁР"]="о1",
["ШПИ"]="о1",
["ЭКВ"]="о2",
["ЭФИ"]="ос",
["ЮЖН"]="о1",
["ЯНМ"]="о1"
}
db["2034"] = {
["АЛЯ"]="в",
["АСА"]="4г",
["АНТ"]="ос",
["АФГ"]="4г",
["БАН"]="о3",
["БАР"]="о3",
["БЕЛ"]="ос",
["БЕН"]="в",
["БРУ"]="ос",
["БУТ"]="о1",
["ВАТ"]="о3",
["ВОС"]="о1",
["ГАВ"]="о1",
["ГАЙ"]="в",
["ГВА"]="ч",
["ГВИ"]="о3",
["ГИБ"]="о3",
["ГРЕ"]="в",
["ГУА"]="в",
["ДЖИ"]="о2",
["ДОМ"]="3г",
["ДРЕ"]="ос",
["ИНД"]="в",
["КАЙ"]="3г",
["КАМ"]="4г",
["КИР"]="чф",
["КРБ"]="о3",
["КЮР"]="о3",
["ЛАО"]="3г",
["МАЛ"]="о3",
["МАР"]="о3",
["МОЗ"]="4г",
["МОН"]="д",
["МНТ"]="о3",
["МЬЯ"]="3г",
["НИГ"]="чф",
["НИК"]="ос",
["НОВ"]="о3",
["ОСТ"]="3г",
["ПАК"]="4г",
["ПАП"]="о2",
["САМ"]="о3",
["САН"]="ф",
["СВА"]="о3",
["СЕЙ"]="3г",
["СЕН"]="3г",
["СОЛ"]="4г",
["СОМ"]="в",
["СУР"]="в",
["ТАД"]="3г",
["ТАИ"]="ос",
["ТАН"]="о3",
["ТЕР"]="б",
["ТУР"]="чф",
["ФИД"]="о3",
["ЦАР"]="4г",
["ЧАД"]="4г",
["ШРИ"]="о3",
["ЭРИ"]="чф",
["АВИ"]="о1",
["АНГ"]="о1",
["АОМ"]="о2",
["АРУ"]="о3",
["АТО"]="о1",
["БАГ"]="о3",
["БЕР"]="о3",
["БОТ"]="о3",
["БВИ"]="о1",
["БУР"]="о1",
["ГАЛ"]="о1",
["ГАМ"]="о2",
["ГВБ"]="о1",
["ГОН"]="о2",
["ГРЛ"]="о1",
["ЗАН"]="о2",
["ЗАС"]="о1",
["ЗФИ"]="о2",
["ЙЕМ"]="о1",
["КАН"]="о1",
["КЕН"]="о1",
["КЕР"]="о1",
["КРМ"]="о1",
["КИТ"]="о1",
["КОК"]="о1",
["КОМ"]="о3",
["ЛЕС"]="о2",
["ЛИВ"]="о1",
["МАВ"]="о1",
["МВР"]="о3",
["МАД"]="о3",
["МАЙ"]="о1",
["МЛЗ"]="о1",
["МРН"]="о3",
["МРТ"]="о2",
["МЕЛ"]="о1",
["МИД"]="о1",
["МИК"]="о1",
["МНК"]="о1",
["НАУ"]="о3",
["НЕП"]="о2",
["НИУ"]="о2",
["НЗЕ"]="о1",
["НОР"]="о1",
["ОГН"]="о1",
["ОВО"]="о1",
["ОЕВ"]="о1",
["ОАН"]="о1",
["ОКУ"]="о3",
["ПАЛ"]="о2",
["ПЛС"]="о1",
["ПОЛ"]="о1",
["ПУЭ"]="о3",
["РЕЮ"]="о1",
["СПМ"]="о1",
["СКН"]="о1",
["СЕУ"]="о1",
["СИН"]="о2",
["СТП"]="о1",
["ТАС"]="о1",
["ТОК"]="о1",
["ТОН"]="о3",
["ТРИ"]="о1",
["ТУА"]="о1",
["ТУВ"]="о1",
["УОЛ"]="о1",
["ФИЛ"]="о2",
["ФРА"]="о1",
["ХЁР"]="о1",
["ШПИ"]="о1",
["ЭКВ"]="о2",
["ЭФИ"]="о3",
["ЮЖН"]="о1",
["ЯНМ"]="о1"
}
db["2038"] = {
["АЛЯ"]="4г",
["АСА"]="о3",
["АНТ"]="4г",
["АФГ"]="в",
["БАН"]="о3",
["БАР"]="о3",
["БЕЛ"]="о3",
["БЕН"]="о3",
["БРУ"]="о3",
["БУТ"]="о2",
["ВАТ"]="о3",
["ВОС"]="о1",
["ГАВ"]="в",
["ГАЙ"]="3г",
["ГВА"]="в",
["ГВИ"]="о3",
["ГИБ"]="4г",
["ГРЕ"]="о3",
["ГУА"]="о3",
["ДЖИ"]="о1",
["ДОМ"]="чф",
["ДРЕ"]="ос",
["ИНД"]="ф",
["КАЙ"]="3г",
["КАМ"]="о3",
["КИР"]="ч",
["КРБ"]="ос",
["КЮР"]="о2",
["ЛАО"]="о3",
["МАЛ"]="4г",
["МАР"]="о3",
["МОЗ"]="4г",
["МОН"]="3г",
["МНТ"]="3г",
["МЬЯ"]="3г",
["НИГ"]="в",
["НИК"]="4г",
["НОВ"]="о3",
["ОСТ"]="в",
["ПАК"]="3г",
["ПАП"]="о3",
["САМ"]="чф",
["САН"]="в",
["СВА"]="о3",
["СЕЙ"]="4г",
["СЕН"]="б",
["СОЛ"]="д",
["СОМ"]="4г",
["СУР"]="ос",
["ТАД"]="ос",
["ТАИ"]="о3",
["ТАН"]="ос",
["ТЕР"]="чф",
["ТУР"]="в",
["ФИД"]="3г",
["ЦАР"]="чф",
["ЧАД"]="в",
["ШРИ"]="о3",
["ЭРИ"]="3г",
["АБХ"]="о1",
["АВИ"]="о1",
["АОМ"]="о2",
["АРУ"]="о3",
["АТО"]="о1",
["БАГ"]="о3",
["БЕР"]="о3",
["БОН"]="о1",
["БОТ"]="о2",
["БВИ"]="о1",
["БУР"]="о3",
["ГАЛ"]="о2",
["ГАМ"]="о2",
["ГВБ"]="о1",
["ГОН"]="о1",
["ГРЛ"]="о2",
["ЗАН"]="о1",
["ЗАС"]="о1",
["ЗАП"]="о1",
["ЗФИ"]="о1",
["ЙЕМ"]="о1",
["КАН"]="о1",
["КАШ"]="о1",
["КЕН"]="о2",
["КЕР"]="о1",
["КРМ"]="о1",
["КИТ"]="о2",
["КОК"]="о2",
["КОМ"]="о3",
["ЛЕС"]="о1",
["ЛИВ"]="о2",
["МАВ"]="о1",
["МВР"]="о3",
["МАД"]="о3",
["МАЙ"]="о1",
["МЛЗ"]="о1",
["МАО"]="о2",
["МРН"]="о3",
["МРТ"]="о1",
["МЕЛ"]="о1",
["МИД"]="о1",
["МИК"]="о1",
["МНК"]="о2",
["НАУ"]="о3",
["НЕП"]="о1",
["НИУ"]="о2",
["НЗЕ"]="о2",
["НОР"]="о1",
["ОГН"]="о1",
["ОВО"]="о1",
["ОЕВ"]="о1",
["ОПП"]="о1",
["ОАН"]="о1",
["ОКУ"]="о3",
["ПАЛ"]="о1",
["ПЛС"]="о1",
["ПОЛ"]="о1",
["ПУЭ"]="о3",
["РЕЮ"]="о2",
["САБ"]="о2",
["СЕВ"]="о1",
["СПМ"]="о1",
["СВГ"]="о1",
["СКН"]="о1",
["СМА"]="о1",
["СЭС"]="о1",
["СЕУ"]="о1",
["СИН"]="о1",
["СТП"]="о1",
["ТАС"]="о2",
["ТОК"]="о2",
["ТОН"]="о2",
["ТРИ"]="о1",
["ТУА"]="о1",
["ТУВ"]="о1",
["УОЛ"]="о1",
["ФИЛ"]="о2",
["ФРА"]="о1",
["ХЁР"]="о1",
["ШПИ"]="о1",
["ЭКВ"]="о3",
["ЭФИ"]="о2",
["ЮЖН"]="о1",
["ЯНМ"]="о1"
}
db["2042"] = {
["АЛЯ"]="чф",
["АСА"]="в",
["АНТ"]="ос",
["АФГ"]="в",
["БАН"]="о3",
["БАР"]="о3",
["БЕЛ"]="о3",
["БЕН"]="ос",
["БРУ"]="ос",
["БУТ"]="о3",
["ВАТ"]="о2",
["ВОС"]="о1",
["ГАВ"]="о3",
["ГАЙ"]="3г",
["ГВА"]="в",
["ГВИ"]="о3",
["ГИБ"]="о3",
["ГРЕ"]="о3",
["ГУА"]="3г",
["ДЖИ"]="о2",
["ДОМ"]="д",
["ДРЕ"]="в",
["ИНД"]="ч",
["КАЙ"]="в",
["КАМ"]="4г",
["КИР"]="чф",
["КРБ"]="4г",
["КЮР"]="ос",
["ЛАО"]="о3",
["МАЛ"]="о3",
["МАР"]="о3",
["МОЗ"]="чф",
["МОН"]="в",
["МНТ"]="4г",
["МЬЯ"]="4г",
["НИГ"]="3г",
["НИК"]="о3",
["НОВ"]="о3",
["ОСТ"]="в",
["ПАК"]="ос",
["ПАП"]="о3",
["САМ"]="3г",
["САН"]="3г",
["СВА"]="в",
["СЕЙ"]="о3",
["СЕН"]="б",
["СОЛ"]="3г",
["СОМ"]="чф",
["СУР"]="4г",
["ТАД"]="ос",
["ТАИ"]="4г",
["ТАН"]="о3",
["ТЕР"]="ф",
["ТУР"]="3г",
["ФИД"]="4г",
["ЦАР"]="3г",
["ЧАД"]="ос",
["ШРИ"]="о3",
["ЭРИ"]="4г",
["АНГ"]="о1",
["АОМ"]="о2",
["АРУ"]="о2",
["БАГ"]="о3",
["БЕР"]="о3",
["БОТ"]="о3",
["БВИ"]="о1",
["БУР"]="о2",
["ГАЛ"]="о1",
["ГАМ"]="о3",
["ГВБ"]="о1",
["ГОН"]="о1",
["ГРЛ"]="о3",
["ЗАН"]="о2",
["ЗАС"]="о2",
["ЗФИ"]="о1",
["КЕН"]="о1",
["КЕР"]="о1",
["КИТ"]="о3",
["КОК"]="о1",
["КОМ"]="о3",
["ЛЕС"]="о2",
["ЛИВ"]="о2",
["МАВ"]="о3",
["МВР"]="о3",
["МАД"]="о3",
["МЛЗ"]="о1",
["МАО"]="о1",
["МРН"]="о2",
["МРТ"]="о1",
["МИК"]="о2",
["МНК"]="о1",
["НАУ"]="о3",
["НЕП"]="о2",
["НИУ"]="о1",
["НЗЕ"]="о1",
["НОР"]="о2",
["ОГН"]="о1",
["ОВО"]="о2",
["ОПА"]="о2",
["ОАН"]="о1",
["ОКУ"]="о2",
["ПАЛ"]="о2",
["ПЛС"]="о1",
["ПУЭ"]="о3",
["РЕЮ"]="о1",
["САБ"]="о1",
["СВГ"]="о1",
["СКН"]="о2",
["СИН"]="о2",
["ТАС"]="о3",
["ТОК"]="о1",
["ТОН"]="о1",
["ТРИ"]="о1",
["ТУВ"]="о2",
["ФИЛ"]="о1",
["ФРА"]="о2",
["ХЁР"]="о1",
["ШПИ"]="о1",
["ЭКВ"]="о2",
["ЭФИ"]="о3"
}
db["2046"] = {
["СЕУ"]="о1",
["ГВБ"]="о1",
["БГН"]="о1",
["ЙЕМ"]="о1",
["МНК"]="о1",
["МЛЗ"]="о1",
["АВИ"]="о1",
["АТО"]="о1",
["ЛАП"]="о1",
["СТП"]="о1",
["ЮЖН"]="о1",
["ЮТИ"]="о1",
["КЕН"]="о1",
["СПМ"]="о1",
["КАШ"]="о1",
["БВИ"]="о1",
["ОГН"]="о1",
["ГАЛ"]="о1",
["КОС"]="о1",
["МИД"]="о1",
["КЕР"]="о1",
["МЕЛ"]="о1",
["ТУА"]="о1",
["МАО"]="о1",
["ОПА"]="о1",
["САБ"]="о1",
["МИК"]="о1",
["НЗЕ"]="о1",
["ОАН"]="о1",
["СЭС"]="о1",
["КОК"]="о1",
["ПЛС"]="о1",
["ТРИ"]="о1",
["СМА"]="о1",
["РЕЮ"]="о1",
["ШПИ"]="о1",
["СИН"]="о1",
["ГОН"]="о1",
["АНГ"]="о1",
["ТУВ"]="о1",
["МРН"]="о1",
["ФИЛ"]="о2",
["ДЖИ"]="о2",
["ЗАН"]="о2",
["ЛЕС"]="о2",
["ХЁР"]="о2",
["МВР"]="о2",
["ТОК"]="о2",
["ВОС"]="о2",
["ОВО"]="о2",
["НОР"]="о2",
["ТОН"]="о2",
["ГВИ"]="о2",
["ФРА"]="о2",
["ЛИВ"]="о2",
["СКН"]="о2",
["НЕП"]="о2",
["ПУЭ"]="о2",
["БУР"]="о2",
["АРУ"]="о2",
["ЭКВ"]="о2",
["ГРЛ"]="о2",
["КОМ"]="о2",
["МРТ"]="о2",
["ПАЛ"]="о2",
["МАВ"]="о2",
["БРУ"]="о3",
["БЕР"]="о3",
["ЛАО"]="о3",
["ЗАС"]="о3",
["ВАТ"]="о3",
["КЮР"]="о3",
["НОВ"]="о3",
["БОТ"]="о3",
["КРБ"]="о3",
["НИУ"]="о3",
["ПАП"]="о3",
["МАР"]="о3",
["АНТ"]="о3",
["МАД"]="о3",
["БАГ"]="о3",
["ГУА"]="о3",
["ТАС"]="о3",
["БЕЛ"]="о3",
["ДРЕ"]="о3",
["КИТ"]="о3",
["НИК"]="о3",
["ЭФИ"]="о3",
["ШРИ"]="о3",
["НАУ"]="о3",
["СУР"]="о3",
["ОКУ"]="о3",
["ФИД"]="о3",
["ГАМ"]="о3",
["ТАН"]="о3",
["АОМ"]="о3",
["БАР"]="о3",
["БУТ"]="о3",
["КАЙ"]="ос",
["САМ"]="ос",
["БАН"]="ос",
["СЕЙ"]="ос",
["ТАИ"]="ос",
["ИНД"]="3г",
["СВА"]="4г",
["ПАК"]="3г",
["МОН"]="4г",
["НИГ"]="3г",
["МНТ"]="4г",
["ГРЕ"]="3г",
["ДОМ"]="4г",
["БЕН"]="3г",
["ТАД"]="4г",
["ЦАР"]="3г",
["МАЛ"]="4г",
["КАМ"]="3г",
["АФГ"]="4г",
["ГИБ"]="3г",
["АЛЯ"]="4г",
["ЭРИ"]="в",
["СОМ"]="в",
["ГАЙ"]="в",
["ОСТ"]="в",
["МЬЯ"]="в",
["ТЕР"]="в",
["ГАВ"]="в",
["МОЗ"]="в",
["САН"]="чф",
["АСА"]="чф",
["ГВА"]="чф",
["СОЛ"]="чф",
["ЧАД"]="б",
["СЕН"]="ф",
["КИР"]="ч",
["ТУР"]="д"
}
-- Массив с годами турниров по порядку
local YEARS = {"2006", "2010", "2014", "2018", "2022", "2026", "2030", "2034", "2038", "2042", "2046"}
-----------------------------------------------------------------------
-- ГЛАВНАЯ ФУНКЦИЯ ДЛЯ ГЕНЕРАЦИИ СПИСКА ЧТМ
-----------------------------------------------------------------------
function p.RenderList(frame)
local team_code = frame.args[1] or frame:getParent().args[1]
-- Если код команды не передан, прерываем
if not team_code or team_code == "" then return "" end
local lines = {}
-- Перебираем все годы из массива
for _, year in ipairs(YEARS) do
-- Ищем короткий код ('ч', 'в', 'о') для этой команды в этом году
local short_code = db[year][team_code]
local text = ""
-- Если код есть и он описан в словаре
if short_code and RESULT_TEXT[short_code] then
text = RESULT_TEXT[short_code]
else
-- Если кода нет (команда не участвовала)
text = NOT_PARTICIPATED
end
-- Формируем строку: * [[ЧТМ-2006|2006]] — ТЕКСТ
table.insert(lines, "* [[ЧТМ-" .. year .. "|" .. year .. "]] — " .. text)
end
-- Соединяем все строки переносом каретки и возвращаем готовый список
return table.concat(lines, "\n")
end
-- Оставляем старые функции, чтобы случайно не сломать другие турниры, если они ссылаются сюда напрямую
function p.a (frame) return db["2006"][frame.args[1]] end
function p.b (frame) return db["2010"][frame.args[1]] end
function p.c (frame) return db["2014"][frame.args[1]] end
function p.d (frame) return db["2018"][frame.args[1]] end
function p.e (frame) return db["2022"][frame.args[1]] end
function p.f (frame) return db["2026"][frame.args[1]] end
function p.g (frame) return db["2030"][frame.args[1]] end
function p.h (frame) return db["2034"][frame.args[1]] end
function p.i (frame) return db["2038"][frame.args[1]] end
function p.j (frame) return db["2042"][frame.args[1]] end
function p.k (frame) return db["2046"][frame.args[1]] end
-----------------------------------------------------------------------
-- СЛОВАРЬ ФОРМАТИРОВАНИЯ ТАБЛИЦЫ (Замена шаблону РВ/П2)
-----------------------------------------------------------------------
local TABLE_CELL_FORMAT = {
["ч"] = "'''{{DC|gold|Ч}}'''",
["ф"] = "'''{{DC|silver|Ф}}'''",
["б"] = "'''{{DC|rgb(204,153,102)|Б}}'''",
["д"] = "'''{{DC|darkkhaki|Д}}'''",
["чф"] = "'''1/4'''",
["в"] = "'''1/8'''",
["2г"] = "'''2гр'''",
["3г"] = "'''3гр'''",
["4г"] = "'''4гр'''",
["5г"] = "'''5гр'''",
["6г"] = "'''6гр'''",
["бпм"] = "'''{{DC|rgb(204,153,102)|Б(?)}}'''",
["бпмв"] = "'''{{DC|rgb(204,153,102)|Б(+)}}'''",
["бпмп"] = "'''{{DC|rgb(204,153,102)|Б(-)}}'''",
["дпм"] = "'''{{DC|darkkhaki|Д(?)}}'''",
["дпмв"] = "'''{{DC|darkkhaki|Д(+)}}'''",
["дпмп"] = "'''{{DC|darkkhaki|Д(-)}}'''",
["чфпм"] = "'''1/4(?)'''",
["чфпмв"] = "'''1/4(+)'''",
["чфпмп"] = "'''1/4(-)'''",
["пм"] = "'''пм(?)'''",
["пмв"] = "'''ст(+)'''",
["пмп"] = "ст(-)",
["5"] = "5",
["6"] = "6",
["7"] = "7",
["8"] = "8",
["ос"] = "''о(ст)''",
["о3"] = "''о(3)''",
["о2"] = "''о(2)''",
["о1"] = "''о(1)''",
["оп"] = "''о(пр)''",
["о"] = "''о''",
["по"] = "'''по'''",
["уч"] = "'''1/4'''",
["пол"] = "'''1/2'''",
["у"] = "'''фт'''"
}
-- Коды, означающие попадание в финальный турнир
local FINAL_TOURNAMENT_CODES = {
["ч"] = true, ["ф"] = true, ["б"] = true, ["д"] = true,
["чф"] = true, ["в"] = true, ["3г"] = true, ["4г"] = true,
["по"] = true, ["уч"] = true, ["пол"] = true, ["у"] = true
}
local PREPROCESSED_CACHE = {}
-----------------------------------------------------------------------
-- АБСОЛЮТНО НАГЛЫЙ ГЕНЕРАТОР ПОЛНОЙ ТАБЛИЦЫ ЧТМ
-----------------------------------------------------------------------
function p.RenderFullTable(frame)
-- 1. СОБИРАЕМ ВСЕХ УЧАСТНИКОВ И ПРОВЕРЯЕМ СТАТУС (Финал / Отбор)
local teams_status = {}
for _, year in ipairs(YEARS) do
if db[year] then
for team_code, result_code in pairs(db[year]) do
-- Если команду видим впервые, добавляем в список
if not teams_status[team_code] then
teams_status[team_code] = { has_final = false }
end
-- Если результат команды есть в списке "элитных", ставим флажок
if FINAL_TOURNAMENT_CODES[result_code] then
teams_status[team_code].has_final = true
end
end
end
end
-- 2. ПЕРЕВОДИМ КОДЫ В НАЗВАНИЯ И РАЗБИВАЕМ НА ДВА МАССИВА
local final_teams = {}
local qual_teams = {}
for team_code, info in pairs(teams_status) do
local country_name = frame:expandTemplate{ title = '3', args = { team_code } }
local team_data = { code = team_code, name = country_name }
if info.has_final then
table.insert(final_teams, team_data)
else
table.insert(qual_teams, team_data)
end
end
-- Сортируем оба массива по строгому алфавиту полного названия
table.sort(final_teams, function(a, b) return a.name < b.name end)
table.sort(qual_teams, function(a, b) return a.name < b.name end)
local lines = {}
-- Количество колонок (Флаг + Имя + количество турниров)
local cols_count = #YEARS + 2
local tpl_name = "С" .. tostring(cols_count)
local header_tpl = "З" .. tostring(cols_count)
-- 3. ОТКРЫВАЕМ ТАБЛИЦУ
table.insert(lines, frame:expandTemplate{ title = 'Т', args = { ["ПШТ"] = "да" } })
-- 4. ГЕНЕРИРУЕМ ШАПКУ
local header_args = { "Флаг", "Команда" }
for _, year in ipairs(YEARS) do
local short_year = "'" .. string.sub(year, 3, 4)
table.insert(header_args, "[[ЧТМ-" .. year .. "|" .. short_year .. "]]")
end
table.insert(lines, frame:expandTemplate{ title = header_tpl, args = header_args })
-- Вспомогательная функция для генерации строк команд
local function generate_rows(team_list)
for _, team_data in ipairs(team_list) do
local row_args = {
"[[Файл:" .. team_data.name .. ".jpg|40px]]",
"[[" .. team_data.name .. "]]"
}
for _, year in ipairs(YEARS) do
local short_code = db[year][team_data.code]
local text = "—"
if short_code then
if TABLE_CELL_FORMAT[short_code] then
if not PREPROCESSED_CACHE[short_code] then
local html = frame:preprocess(TABLE_CELL_FORMAT[short_code])
PREPROCESSED_CACHE[short_code] = string.gsub(html, "[\r\n]", "")
end
text = PREPROCESSED_CACHE[short_code]
else
text = short_code
end
end
table.insert(row_args, text)
end
table.insert(lines, frame:expandTemplate{ title = tpl_name, args = row_args })
end
end
-- 5. БЛОК ФИНАЛИСТОВ
table.insert(lines, '|-')
table.insert(lines, '|colspan="' .. cols_count .. '" align="center"|\'\'\'Участвовали в финальных турнирах:\'\'\'')
generate_rows(final_teams)
-- 6. БЛОК ОТБОРОЧНЫХ
table.insert(lines, '|-')
table.insert(lines, '|colspan="' .. cols_count .. '" align="center"|\'\'\'Не участвовали в финальных турнирах:\'\'\'')
generate_rows(qual_teams)
-- 7. ЗАКРЫВАЕМ ТАБЛИЦУ
table.insert(lines, "|}")
return table.concat(lines, "\n")
end
return p