Module:Character infobox/config
From Absit Omen Lexicon
Documentation for this module may be created at Module:Character infobox/config/doc
-- This provides the order for the different sections of the infobox
local cfg = {}
cfg.sectionOrder = {
'biographical',
'physical',
'family',
'magical',
'education',
'occupation',
'character'
}
-- Colspan makes the label be on its own row with the value below
-- adding an html tag allows the section to return html that will be included the tag listed
cfg.specialRows = {
occupation = 'dl',
relationships = 'ul',
wands = 'ul',
links = 'colspan',
extFamilyProcessed = 'ul',
homeschool = 'colspan',
familyTree = 'colspan'
}
--[[
Category Parameters
status, npc, adopt
in footer: member, memberboard,
in links: biography, network, threads
Processed parameters:
givenname, surname, suffix, maidenname = fullName
birthYear, birthMonth, birthDay = birthDate
deathYear, deathMonth, deathDay = deathDate
in header:
image, title (fullName)
Control parameters:
hideYear, hideCategories, and house = None
]]
cfg.biographical = {
'birthDate',
'deathDate',
'birthCity',
'city',
'residence',
'blood',
'alias'
}
cfg.physical = {
'species',
'gender',
'height',
'hair',
'eyes',
'skin',
'marks'
}
cfg.family = {
'fatherProcessed',
'stepmotherProcessed',
'stepfatherProcessed',
'motherProcessed',
'adoptiveFatherProcessed',
'adoptiveMotherProcessed',
'siblingsProcessed',
'extFamilyProcessed',
'relationships',
'childrenProcessed',
'familyTree',
'pet'
}
cfg.magical = {
'wands',
'animagus',
'boggart',
'patronus',
'specialAbilities'
}
cfg.education = {
'school',
'house',
'homeschool',
'schoolHouse',
'schoolYear',
'gradYear',
'classes'
}
cfg.occupation = {
'occupation'
}
cfg.occupation_sub = {
}
cfg.character = {
'playby',
'links'
}
cfg.biographical_label = {
header = 'Biographical Information',
birthDate = 'Born',
deathDate = 'Died',
birthCity = 'City of Birth',
city = 'Current City',
residence = 'Residence',
blood = 'Blood status',
alias = 'Also known as'
}
cfg.physical_label = {
header = 'Physical Information',
species = 'Species',
gender = 'Gender',
height = 'Height',
hair = 'Hair Colour',
eyes = 'Eye Colour',
skin = 'Skin Colour',
marks = 'Marks/Tattoos'
}
cfg.family_label = {
header = 'Relationships',
fatherProcessed = 'Father',
stepmotherProcessed = 'Stepmother',
stepfatherProcessed = 'Stepfather',
motherProcessed = 'Mother',
adoptiveFatherProcessed = ' Adoptive Father',
adoptiveMotherProcessed = 'Adoptive Mother',
siblingsProcessed = 'Siblings',
extFamilyProcessed = 'Extended Family',
relationships = '',
childrenProcessed = 'Children',
pet = 'Pet(s)'
}
cfg.magical_label = {
header = 'Magical Characteristics',
wands = 'Wand(s)',
animagus = 'Animagus Form',
boggart = 'Boggart',
patronus = 'Patronus',
specialAbilities = 'Special Abilities'
}
cfg.education_label = {
header = 'Education',
school = 'School',
house = 'House',
schoolYear = 'Year',
gradYear = 'Class of',
schoolHouse = 'School/House'
}
cfg.occupation_label = {
header = 'Occupation'
}
cfg.character_label = {
header = 'Character Information',
playby = 'Playby',
biography = 'Biography',
network = 'Network',
threads = 'Threads'
}
cfg.schools = {
Hogwarts = {
'Gryffindor',
'Ravenclaw',
'Slytherin',
'Hufflepuff'
},
Schools = {
'Durmstrang Institute',
'Beauxbatons Academy',
'Salem Witches Institute',
'Northwest Witches Academy',
'Red Rocks Academy',
'Pinebrook Academy',
'Beit Gaddol',
'Gondishapur',
'Mahoutokoro'
}
}
cfg.cargo = {
Characters = {
{field = 'member', type = 'String', arg = 'member'},
{field = 'sort_by', type= 'String', arg = 'sort_by'},
{field = 'npc_permission', type = 'String (allowed values=open, ref, pm, closed)', arg = 'npc'},
{field = 'status', type = 'String (allowed values=active, inactive, retired, secondary, npc)', arg = 'status', default = 'npc'},
{field = 'adoptable', type = 'Boolean', arg = 'adopt'},
{field = 'canon', type = 'Boolean', arg = 'canon'},
{field = 'biography', type = 'URL', arg = 'biography'},
{field = 'network', type = 'URL', arg = 'network'},
{field = 'threads', type = 'URL', arg = 'threads'},
{field = 'memberboard', type = 'URL', arg = 'memberBoard'},
{field = 'given_name', type = 'String', arg = 'givenname'},
{field = 'middle_name', type = 'String', arg = 'middlename'},
{field = 'surname', type = 'String', arg = 'surname'},
{field = 'maiden_name', type = 'String', arg = 'maidenname'},
{field = 'suffix', type = 'String', arg = 'suffix'},
{field = 'full_name', type = 'String', arg = 'fullName'},
{field = 'birth_date', type = 'Date', arg = 'birthDateCargo'},
{field = 'death_date', type = 'Date', arg = 'deathDateCargo'},
{field = 'age', type = 'Integer', arg = 'ageCargo'},
{field = 'house', type = 'String', arg = 'house', default = 'school'},
{field = 'school_year', type = 'String', arg = 'schoolYear'},
{field = 'graduation_year', type = 'Integer', arg = 'gradYear'},
{field = 'avatar', type = 'File', arg = 'image'},
{field = 'playby', type = 'String', arg = 'playby'},
{field = 'birth_city', type = 'String', arg = 'birthCity'},
{field = 'current_city', type = 'String', arg = 'city'},
{field = 'current_residence', type = 'Wikitext', arg = 'residence'},
{field = 'blood_type', type = 'String (allowed values=Half-blood, Pure-blood, Muggle-born, Muggle, Squib, Half-breed, Creature)', arg = 'blood'},
{field = 'aliases', type = 'List (,) of Text', arg = 'alias'},
{field = 'species', type = 'String', arg = 'species', default = 'Human'},
{field = 'gender', type = 'String', arg = 'gender'},
{field = 'height', type = 'String', arg = 'height'},
{field = 'hair_color', type = 'String', arg = 'hair'},
{field = 'eye_color', type = 'String', arg = 'eyes'},
{field = 'skin_tone', type = 'String', arg = 'skin'},
{field = 'marks', type = 'Text', arg = 'marks'},
{field = 'father', type = 'Page', arg = 'father'},
{field = 'stepmother', type = 'Page', arg = 'stepmother'},
{field = 'stepfather', type = 'Page', arg = 'stepfather'},
{field = 'mother', type = 'Page', arg = 'mother'},
{field = 'adoptive_father', type = 'Page', arg = 'adoptiveFather'},
{field = 'adoptive_mother', type = 'Page', arg = 'adoptiveMother'},
{field = 'siblings', type = 'List (;) of Page', arg = 'siblingsCargo'},
{field = 'children', type = 'List (;) of Page', arg = 'childrenCargo'},
{field = 'pets', type = 'Text', arg = 'pet'},
{field = 'boggart', type = 'String', arg = 'boggart'},
{field = 'patronus', type = 'String', arg = 'patronus'},
{field = 'special_abilities', type = 'List (,) of Page', arg = 'specialAbilities'},
{field = 'animagus_form', type = 'String', arg = 'animagus'}
},
Occupations = {
{field = 'type', type = 'String', arg = 'type'},
{field = 'title', type = 'String', arg = 'title'},
{field = 'organization', type = 'Page', arg = 'organization'},
{field = 'department', type = 'Page', arg = 'department'},
{field = 'division', type = 'Page', arg = 'division'},
{field = 'office', type = 'Page', arg = 'office'},
{field = 'current_occupation', type = 'Boolean', arg = 'current'},
{field = 'date_started', type = 'Date', arg = 'startDate'},
{field = 'date_ended', type = 'Date', arg = 'endDate'}
},
Classes = {
{field = 'elective', type = 'List (,) of String', arg = 'elective'},
{field = 'newt', type = 'List (,) of String', arg = 'newt'},
},
Relationships = {
{field = 'type', type = 'String (allowed values=Dating, Married, Engaged, Civil Union, Domestic Partnership, In a Relationship, Complicated)', arg = 'relationshipType'},
{field = 'endType', type = 'String (allowed values=Separation, Divorce, Death', arg = 'endType'},
{field = 'person', type = 'Page', arg = 'relationshipWith'},
{field = 'date_started', type = 'Date', arg = 'startDate'},
{field = 'date_ended', type = 'Date', arg = 'endDate'}
},
Wands = {
{field = 'wand', type = 'Text', arg = 'wand'},
{field = 'wandmaker', type = 'Page', arg = 'wandmaker'}
}
}
return cfg