local p =
function p.main(frame) local parent = frame:getParent local pages = local index = 1
while parent.args['page' .. index] or parent.args['content' .. index] do local pageName = parent.args['page' .. index] local content = parent.args['content' .. index] local sectionName = parent.args['section' .. index] local pageDiv = mw.html.create('div'):addClass('blocks-block')
if sectionName then local editLink if pageName then editLink = mw.uri.fullUrl(pageName,) elseif content then editLink = mw.uri.fullUrl(mw.title.getCurrentTitle.prefixedText,) end local encodedEditLink = mw.text.encode(tostring(editLink)) local editButton = mw.html.create('span') :addClass('mw-editsection plainlinks') :wikitext('[[' .. encodedEditLink .. ' edit] ]')
local heading = mw.html.create('h2') :wikitext(sectionName) :node(editButton) local headingContainer = mw.html.create('div') :addClass('heading-container') :node(heading) pageDiv:node(headingContainer) end
if pageName then local transcludedContent = frame:expandTemplate pageDiv:wikitext('\n' .. transcludedContent) elseif content then pageDiv:wikitext('\n' .. content) end
table.insert(pages, pageDiv) index = index + 1 end
if #pages
local mainDiv = mw.html.create('div') for _, pageDiv in ipairs(pages) do mainDiv:node(pageDiv) end
return tostring(mainDiv)end
return p