RuneScape Wiki
mNo edit summary
Tag: sourceedit
mNo edit summary
Tag: sourceedit
Line 29: Line 29:
 
-- get a list of params and args
 
-- get a list of params and args
 
table.remove(args, 1)
 
table.remove(args, 1)
mw.log(args)
+
targs = table.concat(args, '|')
+
for k, v in pairs(args) do
  +
targs[k] = v
  +
end
  +
  +
  +
targs = table.concat(targs, '|')
   
 
if targs ~= '' then
 
if targs ~= '' then

Revision as of 22:43, 4 August 2015

Documentation for this module may be created at Module:T/doc

-- <nowiki>
-- [[Template:T]]
--

local p = {}

function p.main(frame)
    local args = frame:getParent().args
    local link = args[1]
    local uri
    local targs = {}
    local ns
    
    -- strip subst/safesubst
    link = link
        :gsub('safesubst:', '')
        :gsub('subst:', '')
        
    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)
    
    -- get a list of params and args
    table.remove(args, 1)
    
    for k, v in pairs(args) do
        targs[k] = v
    end
        
    
    targs = table.concat(targs, '|')

    if targs ~= '' then
        targs = '|' .. targs
    end
    
    return '<code>{{[' .. tostring(uri) ..  ' ' .. args[1] .. ']' .. targs .. '}}</code>'

end

return p