Módulo:Wikidata/Formato premio

De Enciclopedia de conocimiento de la Iglesia de Dios
< Módulo:Wikidata
Revisión del 02:21 26 abr 2023 de Pyc1948 (discusión | contribs.) (Página creada con «local p = {} local moduloWikidataFormatos = require('Módulo:Wikidata/Formatos') local obtenerDatos = moduloWikidataFormatos.obtenerDatos local enlazar = moduloWikidataFormatos.enlazar local noMostrarPremio={ ['Q20899118'] = true, -- NPR Top 100 Science Fiction and Fantasy Books } -- Formato para un premio individual de una obra sin incluir los calificativos function p.formatoPremio(valor, opciones) local enlace, etiqueta, idEntidad = obtenerDatos(valor)…»)
(difs.) ← Revisión anterior | Revisión actual (difs.) | Revisión siguiente → (difs.)
Ir a la navegación Ir a la búsqueda

Uso

En este módulo se definen algunos de los tipos de datos de la plantilla {{propiedad}} o equivalentemente de las funciones permitidas para el parámetro valor-función del módulo:Wikidata.

premio

<section begin=Wikidata_premio_texto />

uso desde la plantilla propiedad
{{Propiedad|id. de la propiedad|tipo de datoPlantilla:=premio|parámetros opcionales}}

Tipo de dato para la propiedad « (P166)». Se muestra el premio eliminando los literales de la forma " a ...", " a la ..." o " en la categoría ...".

Para la lista de los parámetros posibles véase la plantilla {{propiedad}} o el módulo:Wikidata si se accede desde un módulo Lua.

Pueden verse ejemplos de utilización en la página de pruebas del módulo. <section end=Wikidata_premio_texto />


local p = {}
local moduloWikidataFormatos = require('Módulo:Wikidata/Formatos')
	local obtenerDatos = moduloWikidataFormatos.obtenerDatos
	local enlazar      = moduloWikidataFormatos.enlazar

local noMostrarPremio={
	['Q20899118'] = true, -- NPR Top 100 Science Fiction and Fantasy Books
}

-- Formato para un premio individual de una obra sin incluir los calificativos

function p.formatoPremio(valor, opciones)
	local enlace, etiqueta, idEntidad = obtenerDatos(valor)
	
	if idEntidad and noMostrarPremio[idEntidad] then 
		return
	end
	
    -- Eliminar de la etiqueta la categoría del premio
        
    if etiqueta then
      	etiqueta = etiqueta:match('^(.*)%s+a%s.*$')  or  -- Ejemplo: Premio Nébula a la mejor novela corta  --> Premio Nébula
    	           etiqueta:match('^(.*)%s+al%s.*$') or  -- Ejemplo: Premio Hugo al mejor relato --> Premio Hugo
    	           etiqueta:match('^(.*) en la categoría') or  -- Ejemplo: Premio Prometheus en la categoría Hall of Fame --> Premio Prometheus
       	           etiqueta
    end

    return enlazar(enlace, etiqueta, idEntidad, opciones)
end

-- Alias para simplificar el uso desde la plantilla propiedad, por ejemplo:
--  {{Propiedad|P166|tipo de dato=premio}}
--
p['premio'] 		= p.formatoPremio

return p