Module:Block value: Difference between revisions
Jump to navigation
Jump to search
m merge duplicated code |
m strip trailing s only if not found otherwise |
||
(5 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
local p = {} | local p = {} | ||
p.value | |||
function p.value( f ) | |||
local args = f | local args = f | ||
if f == mw.getCurrentFrame() then | if f == mw.getCurrentFrame() then | ||
Line 6: | Line 7: | ||
end | end | ||
local block = mw.text.trim( args[1] or '' ):lower() | local block = mw.text.trim( args[1] or '' ):lower() | ||
local | local argType = args.type | ||
local values = mw.loadData( 'Module:' .. argType .. ' values' ) | |||
local value = values[block] | |||
local category = '' | local category = '' | ||
if not value then | if not value then | ||
value = '[[Template:' .. | value = values[block:gsub( 's$', '' )] | ||
if not value then | |||
value = '[[Template:' .. argType .. ' values#Missing value|?]]' | |||
local title = mw.title.getCurrentTitle() | |||
if not args.nocat and title.namespace == 0 and not title.isSubpage then | |||
category = '[[Category:Missing ' .. argType:lower() .. ']]' | |||
end | |||
end | end | ||
end | end | ||
return value .. category | return value .. category | ||
end | end | ||
return p | return p |
Latest revision as of 16:56, 2 March 2020
Documentation for this module may be created at Module:Block value/doc
local p = {}
function p.value( f )
local args = f
if f == mw.getCurrentFrame() then
args = require( 'Module:ProcessArgs' ).merge( true )
end
local block = mw.text.trim( args[1] or '' ):lower()
local argType = args.type
local values = mw.loadData( 'Module:' .. argType .. ' values' )
local value = values[block]
local category = ''
if not value then
value = values[block:gsub( 's$', '' )]
if not value then
value = '[[Template:' .. argType .. ' values#Missing value|?]]'
local title = mw.title.getCurrentTitle()
if not args.nocat and title.namespace == 0 and not title.isSubpage then
category = '[[Category:Missing ' .. argType:lower() .. ']]'
end
end
end
return value .. category
end
return p