Módulo:Infobox/Estádio
local building = require 'Módulo:Infobox/Funções/Edifício'
local general = require 'Módulo:Infobox/Funções'
local wd = require 'Módulo:Infobox/Wikidata'
local address = require 'Módulo:Endereço'
local localdata = require 'Módulo:Infobox/Localdata'
local formats = {
--{ícone mapa, ícone topo, cor título, cor sub-título, cor texto)
Q37025296 = {'pitch', nil, '#D7877B', 'padrao', 'padrao', 'padrao'}, -- estádio de atletismo
Q595452 = {'basebol', nil, '#408080', 'padrao', '#FFFFFF', 'padrao'}, -- estádio de baseball
Q37985280 = {'futebol-americano', nil, '#BFD33C', 'padrao', 'padrao', 'padrao'}, -- estádio de futebol americano
Q1154710 = {'futebol', nil, '#99CC99', 'padrao', 'padrao', 'padrao'}, -- estádio de futebol
Q741118 = {'tenis', 'desporto', '#FFAA77', 'padrao', 'padrao', 'padrao'}, -- campo de tênis
default = {nil, nil, '#EFEFEF', 'padrao', 'padrao', 'padrao'}
}
local function wdformat() --retorna uma tabela contendo a cor principal da infobox e o ícone do título
local wtypes = wd.stringTable{ -- busca os Qid das profissões
entity = localdata.item,
property = 'P31',
displayformat = 'raw',
excludespecial = true
}
local default = formats.default
wtypes = wd.addVals(wtypes or {}, {property = 'P279'}, 1) -- usamos também a subclasse
for i, item in pairs(wtypes or {}) do
if formats[item] then
return formats[item]
end
end
return default
end
local function setcharte()
if localdata['charte'] then
charte = localdata['charte']
for i, j in pairs(formats) do
if j[2] == charte then
return j
end
end
end
return wdformat()
end
local displayformat = setcharte()
return
{
maincolor = displayformat[3],
secondcolor = displayformat[4],
thirdcolor = displayformat[5],
parts = {
general.title(),
general.logo(),
building.mainimage('!Artigos de arquitetura sem imagem'),
{type = 'table', title = 'Generalidades', rows = {
{type = 'mixed', label = 'Antigos nomes', value = 'antigos nomes'},
{type = 'mixed', label = 'Apelido', value = 'apelido'},
{type = 'mixed', label = 'Nome', value = 'nome_completo'},
{type = 'mixed', label = 'Endereço', value = {'endereço', 'local'}, wikidata = function ( item ) return address.fullAddress(item) end}
}},
{type = 'table', title = 'Construção e abertura', rows = {
building.construction(),
building.opening(),
building.creator(),
building.renovation(),
{type = 'mixed', label = 'Custo de construção', value = 'custo construções'},
building.closure(),
building.demolition(),
}},
{type = 'table', title = 'Utilização', rows = {
{type = 'mixed', label = 'Clubes residentes', value = 'clubes residentes', property = 'P466'},
{type = 'mixed', label = 'Proprietário', value = 'proprietário', property = 'P127'},
{type = 'mixed', label = 'Operador', value = 'operador', property = 'P137'},
{type = 'mixed', label = 'Competições', value = 'competições'},
}},
{type = 'table', title = 'Equipamento', rows = {
{type = 'mixed', label = 'Tipo de superfície', value = {'superfície', 'gramado', 'relvado'}, property = 'P765'},
{type = 'mixed', label = 'Capacidade', value = 'capacidade'}, -- , property = 'P1083' mas veja os qualificadores para usar para evitar as coisas estranhas
{type = 'mixed', label = 'Tribunas', value = 'tribunas'},
{type = 'mixed', label = 'Público recorde', value = 'publicorecorde'},
{type = 'mixed', label = 'Data recorde', value = 'datarecorde'},
{type = 'mixed', label = 'Partida com mais público', value = 'jogorecorde'},
{type = 'mixed', label = 'Dimensões', value = 'dimensões'},
building.protection()
}},
{type = 'table', title = 'Localização', rows = {
building.coordenadas(),
}},
building.geoloc({marker=displayformat[1], default_zoom=11}),
}
}
|