Moduł:Stopka portal: Różnice pomiędzy wersjami
Z Nonsensopedii, polskiej encyklopedii humoru
Ostrzyciel (dyskusja • edycje) M |
Ostrzyciel (dyskusja • edycje) M (na razie wykomentuję) |
||
Linia 12: | Linia 12: | ||
} |
} |
||
}, |
}, |
||
['Polityka'] = { |
-- ['Polityka'] = { |
||
-- letter = 'P', |
|||
-- color = '#090082', |
|||
-- text = { |
|||
-- "Zobacz więcej artykułów w '''[[Portal:Polityka|portalu o polityce]]'''." |
|||
-- } |
|||
}, |
-- }, |
||
} |
} |
||
Wersja z 14:41, 2 lip 2021
Generuje linki do portali w szablonie {{Stopka}}
. Zobacz też: Moduł:Stopka.
local tools = require('Moduł:Narzędzia')
local p = {}
-- Portale dodawaj alfabetycznie.
-- Edytuj śmiało, teksty zachęcające do kliknięcia w link są losowane z podanej tu puli
local portals = {
['Historia'] = {
letter = 'H',
color = '#820000',
text = {
"Zobacz więcej artykułów w '''[[Portal:Historia|portalu o historii]]'''."
}
},
-- ['Polityka'] = {
-- letter = 'P',
-- color = '#090082',
-- text = {
-- "Zobacz więcej artykułów w '''[[Portal:Polityka|portalu o polityce]]'''."
-- }
-- },
}
function p.getText()
local text = ''
local title = mw.title.getCurrentTitle()
local res = mw.smw.getQueryResult{
'[[Zawiera artykuł::' .. title.fullText .. ']]',
'[[Portal:+]]'
}
for _, r in ipairs(res.results) do
local name = mw.ustring.gsub(r.fulltext, 'Portal:', '')
local info = portals[name]
if info then
div = mw.html.create('div')
:addClass('n-portal-link')
--
:tag('span')
:addClass('n-portal-initial')
:addClass('link-kolor')
:cssText('color: ' .. info.color)
:node('[[Portal:' .. name .. '|' .. info.letter .. ']]')
:done()
--
:tag('span')
:addClass('n-portal-link-text')
:node(info.text[math.random(#info.text)])
:done()
text = tostring(div)
end
end
return text
end
return p