Fandom

Old School RuneScape Wiki

Module:T

16,258pages on
this wiki
Add New Page
Discuss0
-- <nowiki>
-- [[Template:T]]
--
 
local p = {}
 
function p.main(frame)
    local args = frame:getParent().args
    local link = args[1]
    local uri
    local targs = {}
    local ns
    local i = 1
 
    -- strip transclusion modifiers ([[mw:Help:Magic words#Transclusion modifiers]])
    link = link
        :gsub('safesubst:', '')
        :gsub('subst:', '')
        :gsub('int:', '')
        :gsub('msg:', '')
        :gsub('msgnw:', '')
        :gsub('raw:', '')
 
    ns = mw.text.split(link, ':')[1]
 
    -- check for valid namespace else prepend Template:
    if not (ns == '' or mw.site.namespaces[ns]) then
        link = 'Template:' .. link
    end
 
    -- use fullUrl so it doesn't cause any wanted pages
    uri = mw.uri.fullUrl(link)
 
    -- generate a list of args and params    
    for k, v in pairs(args) do
        -- because lua has no continue statement
        if k ~= 1 then
            if type(k) == 'string' then
                v = k .. '=' .. v
            end
 
            targs[i] = v
            i = i + 1
        end
    end
 
 
    targs = table.concat(targs, '&#124;')
 
    if targs ~= '' then
        targs = '&#124;' .. targs
    end
 
    return '<code>{{[' .. tostring(uri) ..  ' ' .. args[1] .. ']' .. targs .. '}}</code>'
 
end
 
return p

Ad blocker interference detected!


Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.

Also on Fandom

Random Wiki