Jump to content
Wikipedia The Free Encyclopedia

Module:Based on

From Wikipedia, the free encyclopedia
Module documentation[view] [edit] [history] [purge]
Warning This Lua module is used on approximately 28,000 pages and changes may be widely noticed. Test changes in the module's /sandbox or /testcases subpages, or in your own module sandbox. Consider discussing changes on the talk page before implementing them.

This module implements {{Based on }}

Usage

To directly call this module (all arguments except work name optional):

{{#invoke:Based on|lua_main|Work name|Writer 1|Writer 2|...}}

To call it from a template, passing on the arguments from it:

{{#invoke:Based on|main}}

The above documentation is transcluded from Module:Based on/doc. (edit | history)
Editors can experiment in this module's sandbox (edit | diff) and testcases (create) pages.
Subpages of this module.

 local p = {}

 function p.lua_main(frame)
	local s = frame.args[1]
	
	if frame.args[3] then
		local args = {}
		
		for i, v in ipairs(frame.args) do
			if i >= 2 then
				args[#args+1] = v
			end
		end
		
		args['style'] = 'display: inline'
		args['list_style'] = 'display: inline'
		args['item1_style'] = 'display: inline'
		
		h = mw.html.create('div')
		h:wikitext(s)
		h:tag('br') -- h:newline() is not working for some reason
		h:wikitext('by ')
		h:wikitext(frame:expandTemplate{ title = 'Unbulleted list', args = args })
		
		return h
	elseif frame.args[2] then
		s = s .. '<br />by ' .. frame.args[2]
		return s
	end
	
	return s
 end

 function p.main(frame)
	return p.lua_main(frame:getParent())
 end

 return p

AltStyle によって変換されたページ (->オリジナル) /