Module:Reload

local util_args = require('Module:ArgsUtil') local util_table = require('Module:TableUtil') local util_vars = require('Module:VarsUtil')

local h = {} local p = {}

function p.intro(widget, template, args) if not args then args = {} end if util_vars.getBool('isReload') then return mw.html.create end args.isReload = 'Yes' local output = mw.html.create('div') :addClass('template-reload') :attr('data-for-template', template) :attr('data-target-id', h.getKey(util_vars.setGlobalIndex('tr_key'))) if args and next(args) then output:attr('data-default-args', h.concatArgs(args)) end output:wikitext(mw.getCurrentFrame:callParserFunction{		name = '#widget',		args = { widget }	}) return output end

function p.wrapper if util_vars.getBool('isReload') then return mw.html.create end local output = mw.html.create('div') :attr('id', h.getKey(util_vars.getGlobalIndex('tr_key'))) return output end

function p.isReload return util_vars.getBool('isReload') end

function h.getKey(i) return ('template-reload-%s'):format(i) end

function h.concatArgs(args) local transformedArgs = {} for k, v in pairs(args) do		transformedArgs[#transformedArgs+1] = ('%s=%s'):format(k, v)	end return util_table.concat(transformedArgs, '', h.formatArg) end

function h.formatArg(arg) return ('|%s'):format(arg) end

return p