Módulo:Box
[crear]
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)
Por favor, añade las categorías a la subpágina de documentación.
(subpáginas - enlaces)
local p = {}
local Enlaces = require('Módulo:Enlaces')
function p.box( frame, conA, conB, conC )
local html = mw.html.create()
local argus = {}
local titulo = mw.title.getCurrentTitle()
local essub = titulo.isSubpage
for k,v in pairs(frame:getParent().args) do -- crea una tabla con los parámetros incluídos en la plantilla, y elimina parámetros vacíos
if v ~= '' and type(k) ~= 'number' then
argus[mw.ustring.lower(k)] = v -- todos los parámetros en minúsculas por defecto:
end
end
-- HTML
-- corregir parámetros con nombres alternativos
local divgrande = html:tag('div'):addClass('noprint ws-noexport wsbox'):cssText('text-align: center; padding: 1em; background-color:#F1F1DE; overflow:auto; border-radius:0.7em; box-shadow:0.2em 0.3em 0.2em #B7B7B7; display:table;width:95%') -- div principal que contiene al resto
local anterior = divgrande:tag('div'):attr('id','headerprevious'):cssText('padding:0;display:table-cell;vertical-align:middle;width:16%')
if conA and conA ~= '' then
local anteriorspan = anterior:tag('span'):cssText('float: left; display: block;font-size:smaller')
anteriorspan:tag('span'):cssText(';margin-right: 0.5em; position: relative; top: 1.5px'):wikitext('← ')
anteriorspan:wikitext(conA)
if argus['enlaces'] and mw.ustring.lower(argus['enlaces']) == 'no' then
anteriorspan:cssText('display:none')
end
end
local medio = divgrande:tag('div'):cssText('width:68%;display:table-cell;vertical-align:middle;')
medio:wikitext(conB)
local proximo = divgrande:tag('div'):attr('id','headernext'):cssText('padding:0;display:table-cell;vertical-align:middle;width:16%')
if conC and conC ~= '' then
local proximospan = proximo:tag('span'):cssText('float: right; display: block;font-size:smaller')
:wikitext(' '..conC)
proximospan:tag('span'):cssText('margin-left: 0.5em; position: relative; top: 1.5px'):wikitext(' →')
if argus['enlaces'] and mw.ustring.lower(argus['enlaces']) == 'no' then
proximospan:cssText('display:none')
end
end
inferior = medio:tag('div'):addClass('plainlinks'):cssText('clear: both; padding: 0.5em; text-align: center; margin:0 auto; font-size: 80%')
--enlaces parte inferior
listaenlaces = Enlaces.all(argus)
textoenlaces = Enlaces.formattedlinks(listaenlaces)
inferior:wikitext(textoenlaces)
if argus['notas'] and argus['notas'] ~= '' then
html:tag('div'):cssText('font-size:90%;width:95%;margin:auto'):wikitext("'''Nota:''' "..argus['notas']):tag('hr')
end
--[==[ for k,v in pairs(argus) do
if params[k] or altparams[k] then
if params[k] == 0 then
categorias = categorias..'[[Categoría:Wikisource:Páginas que usan parámetros obsoletos en la plantilla Imprenta]]' --añade categoría de seguimiento a parámetros obsoletos (declarados arriba)
end
else
html:wikitext(errorMessage('Error: parámetro '..k..' no reconocido'))
categorias=categorias..'[[Categoría:Wikisource:Páginas que usan parámetros no reconocidos en la plantilla Imprenta]]'
end
end
if titulo.namespace ~= 100 then --solo categorías en el espacio portal
categorias = ''
end
divgrande:wikitext(categorias)
--]==]
return tostring(html)
end
function p.testBox(frame)
return p.box(frame, 'A', 'B', 'C')
end
return p