Modul:UploadCampaignLink
Vzhled
UploadCampaignLink je vytvořen speciálně pro šablonu UploadCampaignLink, může však být použit i jinde. Nahrazuje lokální odkaz za odkaz z jiného projektu, odkaz tedy může být použit univerzálně z libovolného projektu a vždy bude mířit na stránku české Wikipedie. Modul hledá v zadaném textu libovolné odkazy, nezastaví se na prvním odkazu.
Použití
[editovat zdroj]{{#invoke:UploadCampaignLink|fixLinks|text s odkazy k úpravě}}
Testovací případy
[editovat zdroj]local str = {}
local function my_replace( arg )
local split = mw.text.split( arg, '|' )
if mw.ustring.sub( split[1], 1, 4 ) ~= ':cs:' then
if not split[2] then
split[2] = split[1]
end
split[1] = ':cs:' .. split[1]
end
return '[[' .. table.concat( split, '|' ) .. ']]'
end
function str.fixLinks( frame )
return str._fixLinks( frame.args )
end
function str._fixLinks( args )
local source_str = args[1] or ''
if source_str == '' then
return ''
end
source_str = mw.ustring.gsub( source_str, '%[%[([^%]]*)%]%]', my_replace )
return source_str
end
return str