Module:Qud look: Difference between revisions
can now parse notxml |
update with modern border image. remove padding arg |
||
(13 intermediate revisions by 3 users not shown) | |||
Line 4: | Line 4: | ||
function p.qudlook(frame) | function p.qudlook(frame) | ||
local bordercolor | local args | ||
local | local bordercolor | ||
local | local bottomtext | ||
local linebreaks | |||
--[determine notxml]-- | --[determine notxml]-- | ||
local notxml = false | local notxml = false | ||
local notxmlin = frame.args.notxml | local notxmlin = frame.args.notxml | ||
if notxmlin ~= nil then | if notxmlin ~= nil then | ||
if notxmlin == 'yes' then | |||
notxml = true | |||
end | |||
end | end | ||
if frame.args.linebreaks == "yes" then | |||
linebreaks = true | |||
else | |||
linebreaks = false | |||
end | |||
end | |||
--[Determine Title Color]-- | --[Determine Title Color]-- | ||
local titlein= frame.args.title | local titlein = frame.args.title | ||
--[Determine qud text]-- | --[Determine qud text]-- | ||
local text = frame.args['text'] | local text = frame.args['text'] or "" | ||
if linebreaks then | |||
text = colorparse.linebreaks(text) | |||
end | |||
if | |||
end | |||
--[Determine img]-- | |||
local imgin = frame.args.image | |||
if imgin == nil or imgin == '' then | |||
img = '' | |||
else | |||
img = '[[File:' .. imgin .. '|32px]]' | |||
end | |||
--[Determine bottomtext]-- | --[Determine bottomtext]-- | ||
local bottomin = frame.args.bottomtext | local bottomin = frame.args.bottomtext | ||
if bottomin == nil or bottomin == '' then | if bottomin == nil or bottomin == '' then | ||
bottomtext = '<span style="color:white;">Perfect</span>' | |||
elseif bottomin == 'none' then | elseif bottomin == 'none' then | ||
bottomtext = '' | |||
else | else | ||
bottomtext = colorparse.parse('&Y'..bottomin, 'notxml') | |||
end | end | ||
--[Pass choices through]-- | |||
local choices = frame.args.choices | |||
if choices == nil then | |||
choices = '' | |||
end | |||
--[parse color]-- | --[parse color]-- | ||
local title | local title | ||
local textcontent | local textcontent | ||
local parsedbottomtext | local parsedbottomtext | ||
if | if titlein == nil or titlein == '' then | ||
title = '' | |||
else | |||
title = colorparse.parse('&y'..titlein, 'notxml') | |||
end | |||
if colorparse.determinexml(text) then | |||
textcontent=colorparse.parse('&y' .. text, 'xml') | |||
else | |||
end | textcontent=colorparse.parse('&y' .. text, 'notxml') | ||
end | |||
local qudtext = frame:extensionTag{ name='poem', content=textcontent } | local qudtext = frame:extensionTag{ name='poem', content=textcontent } | ||
--[Return html]-- | --[Return html]-- | ||
local html = | local html = mw.html.create('div') | ||
html | |||
:addClass('qud-look-modern-box') | |||
:node(mw.html.create('div') | |||
return | :addClass('qud-look-modern-title') | ||
:node(mw.html.create('div') | |||
:wikitext(img)) | |||
:node(mw.html.create('div') | |||
:wikitext(title))) | |||
if title ~= '' then | |||
html:node(mw.html.create('hr')) | |||
end | |||
html | |||
:node(mw.html.create('div') | |||
:addClass('qud-look-modern-text') | |||
:wikitext(qudtext)) | |||
if bottomtext ~= '' then | |||
html | |||
:node(mw.html.create('div') | |||
:addClass('qud-look-modern-status') | |||
:wikitext(bottomtext)) | |||
end | |||
if choices ~= '' then | |||
html:node(mw.html.create('div') | |||
:wikitext(choices)) | |||
end | |||
return "<div style='overflow:hidden;'>" .. tostring(html) .. '</div>\n' | |||
end | end | ||
return p | return p |