Módulo:Block value
Documentation for this module may be created at Módulo:Block value/doc
local p = {} p.value = function( 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 type = args.type -- Most of these transforms are unnecessary, but are kept for compatibility with original template -- Strip trailing "s" on everything but these local keepS = { glass = true, steps = true, stairs = true, bars = true, cactus = true, leaves = true, grass = true, potatoes = true } if not keepS[block:match( '%w+$' )] then block = block:gsub( 's$', '' ) end -- Other transforms block = block :gsub( 'wooden', 'wood' ) :gsub( 'mossy', 'moss' ) :gsub( 'steps', 'stairs' ) :gsub( "['%(%)%-%s]+", '' ) local value = mw.loadData( 'Module:' .. type .. ' values' )[block] local category = '' if not value then value = '[[Template:' .. type .. ' values#Missing value|?]]' local title = mw.title.getCurrentTitle() if not args.nocat and title.namespace == 0 and not title.isSubpage then category = '[[Category:Missing ' .. type:lower() .. ']]' end end return value .. category end return p