Diferencia entre revisiones de «Módulo:Línea»
Contenido eliminado Contenido añadido
Sin resumen de edición |
+ parametro color |
||
Línea 96: | Línea 96: | ||
if argus['altura']~=nil then |
if argus['altura']~=nil then |
||
hr:css('height',argus['altura']) |
hr:css('height',argus['altura']) |
||
end |
|||
if argus['color'] then |
|||
if mw.ustring.sub( argus['color'], 0, 1 ) == '#' then |
|||
color = argus['color'] |
|||
else |
|||
color = frame:expandTemplate{ title = 'RGB', args = { argus['color'] } } |
|||
end |
|||
color = mw.ustring.gsub(color, '#', '#') |
|||
hr:css('color',color) |
|||
end |
end |
||
if argus['estilo'] then --estilo personalizado, al final para poder sobreescribir todo |
if argus['estilo'] then --estilo personalizado, al final para poder sobreescribir todo |
Revisión del 00:42 27 feb 2020
Esta documentación está transcluida desde Módulo:Línea/doc.
Los editores pueden experimentar en la zona de pruebas de este módulo.
Por favor, añade las categorías e interwikis a la subpágina de documentación. Subpáginas de este módulo.
Los editores pueden experimentar en la zona de pruebas de este módulo.
Por favor, añade las categorías e interwikis a la subpágina de documentación. Subpáginas de este módulo.
-- Modulo para plantillas de líneas
local p = {}
local opciones={ ["c"]="Circle",
["co"]="Circle open",
["col"]="Colon",
["d"]="Diamond",
["do"]="Diamond open",
["fl"]="Flare Left",
["fr"]="Flare Right",
["fc"]="Flare Centre",
["fy1"]="Fancy1",
["fy2"]="Fancy2",
["fy3"]="Fancy3",
["cll"]="Curl Left",
["clr"]="Curl Right",
["el"]="Ellipse",
["r"]="Rectangle",
["s"]="Square",
["w"]="Wave",
["tr"]="Tear Right",
["tl"]="Tear Left",
["str"]="Star",
["crt"]="Crescent top",
["crr"]="Crescent right",
["crb"]="Crescent bottom",
["crl"]="Crescent left",
["sp"]="Span" }
local altparams= {
['align']='alinear',
['a']='alinear',
['width']='ancho',
['e']='espacio',
['height']='altura',
['h']='altura',
['style']='estilo'
}
function p.adornada( frame )
local argus = {}
for k,v in pairs(frame.args) do
argus[k] = v
end
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
argus[k] = v
end
local html = mw.html.create() -- cuerpo principal de la plantilla
local div=html:tag('div'):addClass('adornada')
local i=1
while argus[i]~= nil and argus[i+1]~=nil do
div:wikitext("[[Archivo:Rule Segment - "..opciones[argus[i]].." - " ..argus[i+1].."px.svg" .."|middle|alt=|link=]]")
i=i+2
end
return tostring(html)
end
function p.comun( frame )
local argus = {}
for k,v in pairs(frame.args) do
argus[k] = v
end
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
argus[k] = v
end
for k,v in pairs(altparams) do --parámetros con nobmres alternativos.
if argus[k] and not argus[v] then
argus[v] = argus[k]
end
end
local html = mw.html.create() -- cuerpo principal de la plantilla
local div=html:tag('div')
if argus['alinear']~=nil then
if argus['alinear']=='left' or argus['alinear']=='izquierda' then
div:css('margin','0em auto 0em 0em')
elseif argus['alinear']=='right' or argus['alinear']=='derecha' then
div:css('margin','0em 0em 0em auto')
else
div:css('margin','0em auto 0em auto')
end
else
div:css('margin','0em auto 0em auto')
end
if argus['ancho']~=nil or argus[1]~=nil then
div:css('width',argus['ancho'] or argus[1])
end
local hr =div:tag('hr'):addClass('comun')
if argus['espacio']~=nil then
hr:css('margin-top',argus['espacio'])
hr:css('margin-bottom',argus['espacio'])
end
if argus['altura']~=nil then
hr:css('height',argus['altura'])
end
if argus['color'] then
if mw.ustring.sub( argus['color'], 0, 1 ) == '#' then
color = argus['color']
else
color = frame:expandTemplate{ title = 'RGB', args = { argus['color'] } }
end
color = mw.ustring.gsub(color, '#', '#')
hr:css('color',color)
end
if argus['estilo'] then --estilo personalizado, al final para poder sobreescribir todo
hr:cssText(argus['estilo'])
end
return tostring(html)
end
return p