Moduł:Grafika: Różnice pomiędzy wersjami
Z Nonsensopedii, polskiej encyklopedii humoru
Ostrzyciel (dyskusja • edycje) M (...potem to rozkminię) |
Ostrzyciel (dyskusja • edycje) M (wybuchnie) |
||
Linia 1: | Linia 1: | ||
local tools = require('Moduł:Narzędzia') |
local tools = require('Moduł:Narzędzia') |
||
local matma = require('Moduł:Matma') |
local matma = require('Moduł:Matma') |
||
local nielink = require('Moduł:Nielink') |
|||
local p = {} |
local p = {} |
||
Linia 27: | Linia 28: | ||
end |
end |
||
end |
end |
||
local podpisNielink = nielink._nielink(podpis) |
|||
local autor = nil |
local autor = nil |
||
Linia 35: | Linia 37: | ||
local rozmiar = args['rozmiar'] or '350x350px' |
local rozmiar = args['rozmiar'] or '350x350px' |
||
local s = '<div class="center" style="font-size: 0.9em">[[' .. file .. |
local s = '<div class="center" style="font-size: 0.9em">[[' .. file .. |
||
'|center|' .. rozmiar .. ']]' |
'|center|' .. rozmiar .. '|' .. podpisNielink .. ']]' |
||
if autor or podpis ~= '' then |
if autor or podpis ~= '' then |
Wersja z 23:53, 12 lis 2020
Moduł dla {{Grafika}}
.
local tools = require('Moduł:Narzędzia')
local matma = require('Moduł:Matma')
local nielink = require('Moduł:Nielink')
local p = {}
function p.grafika(frame)
local args = tools.getArgs(frame)
local file = matma._chooseRandom( args['1'] or '' )
if file == nil or file == '' then return '' end
local fileLowerPrefix = mw.ustring.sub(mw.ustring.lower(file), 1, 5)
if fileLowerPrefix ~= 'plik:' and fileLowerPrefix ~= 'file:' then
file = 'Plik:' .. file
end
local smwResult = mw.smw.getQueryResult{
'[[' .. file .. ']]',
'?Ma podpis pliku',
'?Ma autora'
}
local podpis = args['2'] or args['podpis'] or nil
if not podpis then
if #smwResult.results == 1 then
podpis = smwResult.results[1].printouts['Ma podpis pliku'][1] or ''
else
podpis = ''
end
end
local podpisNielink = nielink._nielink(podpis)
local autor = nil
if #smwResult.results == 1 then
autor = smwResult.results[1].printouts['Ma autora'][1]
end
local rozmiar = args['rozmiar'] or '350x350px'
local s = '<div class="center" style="font-size: 0.9em">[[' .. file ..
'|center|' .. rozmiar .. '|' .. podpisNielink .. ']]'
if autor or podpis ~= '' then
s = s .. '<div style="margin-top: 10px">'
end
s = s .. podpis
if autor then
if podpis ~= '' then s = s .. '<br>' end
s = s .. '<i>' .. mw.language.new('pl'):gender(autor, 'Autor: ', 'Autorka: ')
.. autor .. '</i>'
end
if autor or podpis ~= '' then
s = s .. '</div>'
end
local konkurs = args['konkurs'] or ''
s = s .. '<div style="margin: 0.5em auto 0 auto; max-width: 250px;">{{#ratepage:' ..
file .. '|' .. konkurs .. '|250px}}</div></div>'
return frame:preprocess(s)
end
return p