PC Gaming Shelter
An archive dedicated to preserving PC Gaming history and more

Module:Community: Difference between revisions

From PC Gaming Shelter
Created page with "local utils = require( 'Module:Utils' ) local p = {} local function propertiesPlan() -- ['Form field name'] = { 'Semantic property', 'delimiter' } local propMap = { ['Image'] = {'Image', 'file' }, ['Related game'] = {'Related game' }, ['Has status'] = {'Has status' }, ['Has note'] = {'Has note' } } return propMap end local function infoboxSectionPlan() local sectionMap = { ['Cover image'] = { heading = '',..."
 
No edit summary
Line 36: Line 36:
['Community links'] = {
['Community links'] = {
heading = 'Join',
heading = 'Join',
template = 'Infobox/Community',
template = 'Infobox/Community links',
order = '3',
order = '3',
rows = {
rows = {

Revision as of 13:45, 25 March 2026

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

local utils = require( 'Module:Utils' )

local p = {}

local function propertiesPlan()
	-- ['Form field name'] = { 'Semantic property', 'delimiter' }
	local propMap = {
		['Image']               = {'Image', 'file' },
		['Related game']        = {'Related game' },
		['Has status']          = {'Has status' },
		['Has note']            = {'Has note' }
	}
	return propMap
end

local function infoboxSectionPlan()
	local sectionMap = {
		['Cover image'] = {
			heading = '',
			template = 'Infobox/Cover',
			order = '1',
			rows = {
				'Image'
			}
		},
		['Clan Info'] = {
			heading = 'Community Info',
			template = 'Infobox/Community Info',
			order = '2',
			rows = {
				'Related game',
				'Has status',
				'Has note'
			}
		},
		['Community links'] = {
			heading = 'Join',
			template = 'Infobox/Community links',
			order = '3',
			rows = {
				'Community links'
			}
		}
	}
	return sectionMap
end

function p.infobox(frame)
	local category   = 'Communities'
	local properties = propertiesPlan()
	local sections   = infoboxSectionPlan()
	local footer     = 'Community footer'
	local infobox    = utils.createInfobox(frame, category, properties, sections, footer)
	return infobox
end

return p