Mudanças entre as edições de "Módulo:Teste"
Ir para navegação
Ir para pesquisar
| Linha 3: | Linha 3: | ||
function p.render(frame) | function p.render(frame) | ||
local args = frame:getParent().args or {} | local args = frame:getParent().args or {} | ||
local | local pointsStr = args.points or "" | ||
local | local html = mw.html.create() | ||
if | if pointsStr == "" then | ||
return "" | return "" | ||
end | end | ||
for | for item in mw.text.gsplit(pointsStr, ";", true) do | ||
item = mw.text.trim(item) | |||
if | if item ~= "" then | ||
local x, y, | -- Espera cada “item” no formato: X|Y|Descrição|PáginaDestino | ||
if x and y and | local x, y, desc, target = item:match("^(%d+)|(%d+)|(.+)|(.+)$") | ||
local | if x and y and desc and target then | ||
local span = html:tag("span") | |||
:addClass("map-point") | :addClass("map-point") | ||
:css("top", y .. "px") | :css("top", y .. "px") | ||
:css("left", x .. "px") | :css("left", x .. "px") | ||
span:tag("a") | |||
:attr("href", mw.title.new(target):getFullText()) | |||
:wikitext(desc) | |||
:attr("href", | |||
:wikitext( | |||
:done() | :done() | ||
span:tag("span") | |||
:addClass("tooltip") | :addClass("tooltip") | ||
:wikitext( | :wikitext(desc) | ||
:done() | :done() | ||
end | end | ||
| Linha 50: | Linha 34: | ||
end | end | ||
return tostring( | return tostring(html) | ||
end | end | ||
return p | return p | ||
Edição das 22h53min de 5 de junho de 2025
A documentação para este módulo pode ser criada em Módulo:Teste/doc
local p = {}
function p.render(frame)
local args = frame:getParent().args or {}
local pointsStr = args.points or ""
local html = mw.html.create()
if pointsStr == "" then
return ""
end
for item in mw.text.gsplit(pointsStr, ";", true) do
item = mw.text.trim(item)
if item ~= "" then
-- Espera cada “item” no formato: X|Y|Descrição|PáginaDestino
local x, y, desc, target = item:match("^(%d+)|(%d+)|(.+)|(.+)$")
if x and y and desc and target then
local span = html:tag("span")
:addClass("map-point")
:css("top", y .. "px")
:css("left", x .. "px")
span:tag("a")
:attr("href", mw.title.new(target):getFullText())
:wikitext(desc)
:done()
span:tag("span")
:addClass("tooltip")
:wikitext(desc)
:done()
end
end
end
return tostring(html)
end
return p