Módulo:Ficha Wikidata/Formato

De Wikipedia, la enciclopedia libre
Este módulo no tiene página de documentación[crear]
--[[
   *****************************************************************
   * Nombre: Módulo:Ficha Wikidata/Formatos 
   * Descripción: Este módulo crea un objeto de formato para la ficha
   * Versión 1.1 Fecha última actualización = 6 de junio de 2014
   * Estado: En creación
   *****************************************************************
]]
local p = {}
local formato = {'geografía entidad','geografía elemento', 'geografía física','biografía','publicación', 'organización','elemento'}
--[[
  ====================================================================
    Función auxiliar que determina el formato.

    @param propiedad: Propiedad determinante 
           valor: Valor que debe tener el argumento propiedad.
    @return nombre del formato.
  ====================================================================
  ]]
function setFormato(propiedad, valor)
    return formato
end

function  p.getTablaParametros(tablaValor,propiedades)

local tablaParametros = {}
  local valorID = tablaValor[1]['mainsnak']['datavalue']['value']['numeric-id']
  local valor = mw.wikibase.label('q'.. valorID)
    if valor == 'ser humano' then
        tablaParametros['tipocabecera'] = 'humano fn'         
        tablaParametros['clase'] = 'biography vcard'
        tablaParametros['colorfondo'] = '#8DB1C3'
        tablaParametros['colortexto'] = '#fff'

elseif valor == 'ciudad' or valor == 'localidad' or valor == 'pueblo' or valor == 'municipio' or valor == 'comuna' or valor == 'barrio' or valor == 'concejo' or valor == 'capital' then
        tablaParametros['tipocabecera'] = 'mapa fn org' 
        tablaParametros['clase'] = 'geography vcar'
        tablaParametros['colorfondo'] = 'transparet'
        for k, v in pairs(propiedades) do
           if k == 'P625' then -- Coordenadas
                    tablaParametros['estilodatos1'] = 'white-space:nowrap'
                    tablaParametros['datos1'] = '[[Coordenadas geográficas|Coordenadas]]: ' .. getDeclaracion(v, k, '<br>', nil, nil, nil) 	
           elseif k == 'P132' then
              tablaParametros['etiqueta2'] = tostring('[[Entidad subnacional|Unidad]]')
              tablaParametros['datos2'] = getDeclaracion(v, k, nil, nil, nil, nil) 
           elseif k == 'P17' then
              tablaParametros['estiloetiqueta3'] = 'border:0;font-weight:100'
              tablaParametros['estilodatos3'] = 'border:0;font-weight:100'
              tablaParametros['etiqueta3'] = tostring('&bull;&nbsp; [[Anexo:Países|País]]')
              tablaParametros['datos3'] = getDeclaracion(v, k, '<br>', 'Wikidata/Formatos', 'formatBandera', nil)
          elseif k == 'P131' then
              tablaParametros['estiloetiqueta4'] = 'border:0;font-weight:100'
              tablaParametros['estilodatos4'] = 'border:0;font-weight:100'
              if getDeclaracion(v, k, '&bull;&nbsp; ', nil, nil, 'P132') then
                  tablaParametros['etiqueta4'] = '&bull;&nbsp; ' .. getDeclaracion(v, k, '&bull;&nbsp; ', nil, nil, 'P132')
              else
                  tablaParametros['etiqueta4'] = '&bull;&nbsp; '
              end
              tablaParametros['datos4'] = getDeclaracion(v, k, '<br>', 'Wikidata/Formatos', 'formatBandera', nil) 
          end
    end
    elseif valor == 'provincia' or valor =='estado' or valor =='región' or valor =='comunidad autónoma'or valor == 'departamento' or valor =='comarca' or valor =='merindad' or valor =='partido judicial' then
        tablaParametros['colorfondo'] = 'transparet'
        tablaParametros['tipocabecera'] = 'mapa fn org' 
        tablaParametros['clase'] = 'geography vcar'
    elseif valor == 'pais' or valor == 'estado soberano' then
        tablaParametros['tipocabecera'] = 'mapa fn org' 
        tablaParametros['clase'] = 'geography vcar'

    elseif valor == 'monte' or valor == 'montaña' or valor == 'volcán'then
        tablaParametros['tipocabecera'] = 'mapa fn org'
        tablaParametros['colorfondotitulo'] = '#e7dcc3'
        --tablaParametros['colortexto'] = '#fff'
        tablaParametros['estiloetiqueta'] = 'background-color:#e7dcc3;'
    elseif valor == 'rio' or valor == 'océano' or valor == 'canal' or valor == 'Pólder' or valor == 'isla artificial' or valor == 'isla fluvial' or valor == 'mar'  or valor =='lago' or valor == 'fiordo' or valor == 'golfo' or valor == 'estrecho' then
        tablaParametros['tipocabecera'] = 'mapa fn org'
        tablaParametros['colorfondotitulo'] = '#7793E0'
        tablaParametros['colortexto'] = '#fff'
        tablaParametros['estiloetiqueta'] = 'background:#ddf'
        --tablaParametros['clase'] = 'geography vcar'
    elseif valor == 'revista' then
    	tablaParametros['tipocabecera'] = 'revista'
        tablaParametros['colorfondotitulo'] = '#D2691E'
        tablaParametros['colortexto'] = '#fff'
        tablaParametros['estiloetiqueta'] = 'background-color:#D2691E; color:#fff;'
    elseif valor == 'libro' then
    	tablaParametros['tipocabecera'] = libro
    	tablaParametros['colorfondotitulo'] = '#ddf'
        tablaParametros['estiloetiqueta'] = 'padding:1px 8px'
    elseif valor == 'Arboreto' or valor == 'parque' then
    	tablaParametros['tipocabecera'] = libro
    	tablaParametros['colorfondotitulo'] = '#d0f0c0'
    elseif valor == 'museo' or valor == 'museo de artes' then	
        tablaParametros['tipocabecera']  = 'conflicto'
        tablaParametros['estilotitulo']  = 'color:white'
        tablaParametros['colorfondotitulo'] = '#996633'	
        tablaParametros['colortexto'] = '#fff'
    else
        tablaParametros['colorfondotitulo'] = '#ddf'
        tablaParametros['estiloetiqueta'] = 'padding:1px 8px'
    end
    return tablaParametros
end
--[[
  ====================================================================
    Función principal
  ====================================================================
  ]]
function p.getFormato(frame)
    local propiedad = frame.args[1]
    local valor = frame.args[2]
    return setFormato(propiedad, valor)  
end