Jump to content

Module:ListSubpages

From Monster Girl Encyclopedia

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

local p = {} --p stands for package



function p.list( frame )
	
    local page = frame.args[1] or frame.args['page'] or tostring(mw.title.getCurrentTitle())
    -- empty parameter check
    if page == '' then page = tostring(mw.title.getCurrentTitle()) end
    -- get parent page name
    page = frame:callParserFunction('TOPLEVELPAGE', {page})
    -- get subpages
	local allSubpages = frame:callParserFunction('SUBPAGES', { page, sep = ",,,,,,,,,," })
	allSubpages = mw.text.split(allSubpages, ",,,,,,,,,,", true)
	local result = {}
	
	-- add main page
	result[#result+1] = [==[<div style="display:inline-block; position: relative; background-color: #d97308; width: 80px; color:white; text-align: center; padding:5px; border-radius: 5px; margin-right: 5px; ">[[]==]
    result[#result+1] = page
    result[#result+1] = [==[|<span style="color:white;">Main</span>]]</div>]==]
	
	-- add subpages
	if #allSubpages[1] > 0 then for i = 1, #allSubpages do
		result[#result+1] = [==[<div style="display:inline-block; position: relative; background-color: #d97308; width: 80px; color:white; text-align: center; padding:5px; border-radius: 5px; margin-right: 5px; ">[[]==]
    	result[#result+1] = allSubpages[i]
    	result[#result+1] = [==[|<span style="color:white;">]==]
		result[#result+1] = frame:callParserFunction('SUBPAGENAME', {allSubpages[i]})
		result[#result+1] = '</span>]]</div>'
	end end

   return table.concat(result)
   
    

end


return p