Přeskočit na obsah

Modul:UploadCampaignLink

Z Wikipedie, otevřené encyklopedie

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í

{{#invoke:UploadCampaignLink|fixLinks|text s odkazy k úpravě}}

Testovací případy

local str = {}

function str.fixLinks( frame )
    local new_args = str._getParameters( frame.args, {'source'} );
    local source_str = new_args['source'] or '';
        
    if source_str == '' then
        return source_str;
    end

    local result;
    result = mw.ustring.gsub( source_str, '[[', '[[:cs:' );
    result = mw.ustring.gsub( source_str, '[[:cs::cs:', '[[:cs:' );
    if mw.ustring.match( source_str, '\[\[[^\|\]]*\]\]' ) then
    	result = mw.ustring.gsub( source_str, ']]', '|]]' );
    end

    return result;
end

return str