Module:Sandbox/User:The Gaffer/Modules/Infobox Switch: Difference between revisions
Jump to navigation
Jump to search
Content added Content deleted
The Gaffer (talk | contribs) No edit summary |
The Gaffer (talk | contribs) No edit summary |
||
Line 4: | Line 4: | ||
function p.main(frame) |
function p.main(frame) |
||
mw.loader.load('ext.gadget.switch-infobox') |
|||
⚫ | |||
return '<div class="infobox infobox-switch">This content will be switchable.</div>' |
|||
⚫ | |||
end |
end |
||
function p._main(args) |
-- function p._main(args) |
||
-- local contents = {} |
|||
-- local i = 1 |
|||
-- while args['item'..i] do |
|||
table.insert(contents, { text = args['text'..i] or ('Item '..i), |
-- table.insert(contents, { text = args['text'..i] or ('Item '..i), |
||
content = '\n' .. args['item'..i], |
-- content = '\n' .. args['item'..i], |
||
id = args['switch_id'..i] or i}) |
-- id = args['switch_id'..i] or i}) |
||
i = i + 1 |
-- i = i + 1 |
||
-- end |
|||
-- local ret = mw.html.create('div') |
|||
:addClass('Gadget-switch-infobox') |
-- :addClass('Gadget-switch-infobox') |
||
:addClass('loading') |
-- :addClass('loading') |
||
:tag('span') |
-- :tag('span') |
||
:addClass('loading-button') |
-- :addClass('loading-button') |
||
:addClass('button') |
-- :addClass('button') |
||
:wikitext('Loading...') |
-- :wikitext('Loading...') |
||
:done() |
-- :done() |
||
-- if args.float then |
|||
if args.float == 'left' then |
-- if args.float == 'left' then |
||
ret:addClass('tleft') |
-- ret:addClass('tleft') |
||
:addClass('thumb') |
-- :addClass('thumb') |
||
elseif args.float == 'right' then |
-- elseif args.float == 'right' then |
||
ret:addClass('tright') |
-- ret:addClass('tright') |
||
:addClass('thumb') |
-- :addClass('thumb') |
||
end |
-- end |
||
-- end |
|||
-- local mah_triggers = ret:tag('div') |
|||
:addClass('switch-infobox-triggers') |
-- :addClass('switch-infobox-triggers') |
||
-- local isSelect = yesno(args.select) |
|||
-- if isSelect then |
|||
mah_triggers:addClass('infobox-triggers-select') |
-- mah_triggers:addClass('infobox-triggers-select') |
||
-- elseif i > 6 and isSelect ~= false then |
|||
mah_triggers:addClass('infobox-triggers-select') |
-- mah_triggers:addClass('infobox-triggers-select') |
||
-- end |
|||
-- for i, v in ipairs(contents) do |
|||
mah_triggers :tag('span') |
-- mah_triggers :tag('span') |
||
:addClass('trigger') |
-- :addClass('trigger') |
||
:addClass('button') |
-- :addClass('button') |
||
:addClass(i==1 and 'button-selected' or '') |
-- :addClass(i==1 and 'button-selected' or '') |
||
:attr('data-id',v.id) |
-- :attr('data-id',v.id) |
||
:wikitext(v.text) |
-- :wikitext(v.text) |
||
:done() |
-- :done() |
||
ret :tag('div') |
-- ret :tag('div') |
||
:addClass('item') |
-- :addClass('item') |
||
:addClass(i==1 and 'showing' or '') |
-- :addClass(i==1 and 'showing' or '') |
||
:attr('data-id',v.id) |
-- :attr('data-id',v.id) |
||
:wikitext(v.content) |
-- :wikitext(v.content) |
||
:done() |
-- :done() |
||
-- end |
|||
-- return ret |
|||
end |
-- end |
||
return p |
return p |
Revision as of 18:36, 12 November 2024
Documentation for this module may be created at Module:Sandbox/User:The Gaffer/Modules/Infobox Switch/doc
--Attribution: This module was taken from the Runescape wiki - https://runescape.wiki/w/Module:Switch_infobox - See changes there for a list of contributors
local p = {}
local yesno = require('Module:Yesno')
function p.main(frame)
mw.loader.load('ext.gadget.switch-infobox')
return '<div class="infobox infobox-switch">This content will be switchable.</div>'
--return frame:preprocess(tostring(p._main(frame:getParent().args)))
end
-- function p._main(args)
-- local contents = {}
-- local i = 1
-- while args['item'..i] do
-- table.insert(contents, { text = args['text'..i] or ('Item '..i),
-- content = '\n' .. args['item'..i],
-- id = args['switch_id'..i] or i})
-- i = i + 1
-- end
-- local ret = mw.html.create('div')
-- :addClass('Gadget-switch-infobox')
-- :addClass('loading')
-- :tag('span')
-- :addClass('loading-button')
-- :addClass('button')
-- :wikitext('Loading...')
-- :done()
-- if args.float then
-- if args.float == 'left' then
-- ret:addClass('tleft')
-- :addClass('thumb')
-- elseif args.float == 'right' then
-- ret:addClass('tright')
-- :addClass('thumb')
-- end
-- end
-- local mah_triggers = ret:tag('div')
-- :addClass('switch-infobox-triggers')
-- local isSelect = yesno(args.select)
-- if isSelect then
-- mah_triggers:addClass('infobox-triggers-select')
-- elseif i > 6 and isSelect ~= false then
-- mah_triggers:addClass('infobox-triggers-select')
-- end
-- for i, v in ipairs(contents) do
-- mah_triggers :tag('span')
-- :addClass('trigger')
-- :addClass('button')
-- :addClass(i==1 and 'button-selected' or '')
-- :attr('data-id',v.id)
-- :wikitext(v.text)
-- :done()
-- ret :tag('div')
-- :addClass('item')
-- :addClass(i==1 and 'showing' or '')
-- :attr('data-id',v.id)
-- :wikitext(v.content)
-- :done()
-- end
-- return ret
-- end
return p