Модуль:Citation/CS1: відмінності між версіями

Додано підстановку шаблону {{tl|Ref-lang}}, за можливості
(Дати у форматі YYYY-MM-DD та дати англійською мовою тепер перетворюються на дати українською мовою)
(Додано підстановку шаблону {{tl|Ref-lang}}, за можливості)
 
end
return substitute( cfg.messages[key], {str} );
end
 
--substitute template {{ref-lang}} if possible
local refTemplateSupportedLangs =
{
[2] =
{
'uk', 'en', 'ru', 'be', 'pl', 'es', 'fr', 'de', 'ar', 'it', 'cs',
'ab', 'af', 'an', 'az', 'ba', 'bg', 'bl', 'bn', 'br', 'bs', 'ca',
'ce', 'co', 'cu', 'cv', 'cy', 'cz', 'da', 'et', 'fa', 'fi', 'fo',
'fy', 'ga', 'eo', 'eu', 'gd', 'ge', 'gl', 'el', 'ha', 'he', 'hi',
'hr', 'hu', 'hy', 'id', 'ie', 'is', 'ja', 'ka', 'kk', 'kl', 'km',
'kn', 'ko', 'kv', 'ky', 'la', 'le', 'lt', 'lb', 'lv', 'md', 'me',
'mg', 'mi', 'mk', 'mn', 'mo', 'ms', 'mt', 'ne', 'nl', 'no', 'oc',
'os', 'pt', 'rm', 'ro', 'sa', 'sh', 'sk', 'sl', 'sq', 'sr', 'sv',
'sw', 'te', 'ta', 'tg', 'th', 'tk', 'tl', 'tr', 'tt', 'ur', 'uz',
'vi', 'xal', 'yi', 'zh'
},
[3] =
{
'crh', 'rue', 'arz', 'chu', 'dsb', 'gag', 'grc', 'hsb', 'kaa',
'kdr', 'krl', 'ltg', 'mhr', 'myv', 'non', 'orv', 'pap', 'pnt',
'rmy', 'sah', 'sla', 'szl', 'udm', 'lld', 'uum'
},
[4] = {},
[5] = {'en-US'},
[6] = {'uk-old', 'old-ru', 'ru-dor'},
[7] = {'bat-smg'}
}
 
function SubstLangTemplateIfPossible(lang_code)
if #lang_code>=2 and #lang_code<=7 and inArray(lang_code, refTemplateSupportedLangs[#lang_code]) then
return '{{ref-'..lang_code..'}}'
else
return nil
end
end
 
TitleType = is_set(TitleType) and (" (" .. TitleType .. ")") or "";
TitleNote = is_set(TitleNote) and (sepc .. " " .. TitleNote) or "";
Language = is_set(Language) and (" " .. (SubstLangTemplateIfPossible(Language) or wrap( 'language', Language )) ) or "";
Edition = is_set(Edition) and (" " .. wrap( 'edition', Edition )) or "";
Issue = is_set(Issue) and (" (" .. Issue .. ")") or "";
end
return frame:preprocess( citation0( config, args) )
end