Ir al contenido

Módulo:Infotexto

De Wikisource, la biblioteca libre.
Documentación del módulo
Los editores pueden experimentar en la zona de pruebas
Por favor, añade las categorías a la subpágina de documentación.
(subpáginas - enlaces)
local p = {}

local getArgs = require('Módulo:Arguments').getArgs

local argmap = {'año', 'fuente', 'colaborador', 'progreso', 'notas', 'revisor', ['primera_edicion'] = 'año' }

function p.infotexto( frame )
	local titulo = mw.title.getCurrentTitle().text
	local argus = getArgs(frame) -- crea una tabla con los parámetros incluídos en la plantilla, y elimina parámetros vacíos
	local html = mw.html.create() -- cuerpo principal de la plantilla
	for key, val in pairs(argus) do
		if argmap[key] then
			argus[argmap[key]] = val
			html:wikitext('[[Categoría:Fichas de Infotexto que usan parámetros obsoletos]]')
		end
	end
	mw.log()
	
	
	local tabla = html:tag('table'):addClass('infotexto-tabla')
	local header = tabla:tag('tr'):addClass('infotexto-titulo')
		:tag('td'):wikitext("Información acerca de la edición de '''"..titulo.."'''")
	local bajada = tabla:tag('tr'):tag('td'):wikitext('Ver las políticas oficiales: [[Wikisource:Calidad de textos]] y [[Wikisource:Derechos de autor]]')
	
	local contenido = tabla:tag('tr'):tag('td')
	contenido:wikitext("'''Año primera edición:''' "..(argus['año'] or '')..'<br/>\n'..
	'----\n'..
	"'''Fuente:''' "..(argus['fuente'] or '')..'<br />\n'..
	'----\n'..
	"'''Contribución y/o corrección por:''' "..(argus['colaborador'] or '')..'<br/>\n'..
	'----\n'..
	"'''Revisión y/o validación por:''' "..(argus['revisor'] or '')..'<br/>\n'..
	'---- \n'..
	"'''[[Wikisource:Calidad de textos|Nivel de progreso]]:''' "..(argus['progreso'] or '')..'<br/>\n'..
	'----\n'..
	"'''Notas:''' "..(argus['notas'] or ''))
	
	contenido:tag('div'):addClass("infotexto-pie")
	:wikitext("'''''Atención:''' Antes de realizar cambios mayores en el formato de esta obra, es recomendable que lo consultes con "..(argus['colaborador'] or 'el usuario contribuidor').."''")
	
	-- categorías básicas de mantenimiento:
	if not argus['fuente'] then
		html:wikitext('[[Categoría:Fichas de Infotexto sin fuente]]')
	end
	if not argus['año'] then
		html:wikitext('[[Categoría:Fichas de Infotexto sin fecha]]')
	end
	
	html:wikitext('[[Categoría:Fichas de Infotexto]]')
	return tostring(html)
end

return p