Moduł wykorzystywany przez szablon {{imię}}.


local error_category = '[[Kategoria:Złe użycie szablonu|5]]'

function main( frame )
	local language_raw = frame.args.language_raw
	local language = frame.args.language
	local gender = frame.args.gender
	
	if language_raw == '' then
		error( 'pusty pierwszy parametr: język (np. „polski”)', 0 )
	end

	local categories = {}
	local out
	
	if gender == 'm' then
		out = '<i>imię męskie</i>'
		table.insert( categories, mw.ustring.format( '[[Kategoria:%s - imiona męskie]]', language ) )
	elseif gender == 'ż' then
		out = '<i>imię żeńskie</i>'
		table.insert( categories, mw.ustring.format( '[[Kategoria:%s - imiona żeńskie]]', language ) )
	elseif gender == 'mż' then
		out = '<i>imię męskie lub żeńskie</i>'
		table.insert( categories, mw.ustring.format( '[[Kategoria:%s - imiona męskie]]', language ) )
		table.insert( categories, mw.ustring.format( '[[Kategoria:%s - imiona żeńskie]]', language ) )
	else
		error( 'pusty lub nierozpoznany drugi parametr: płeć („m”, „ż”, „mż”)', 0 )
	end
	
	if language == 'inny' then
		categories = { error_category }
	end
	
	if mw.title.getCurrentTitle():inNamespace( 0 ) then
		out = out .. table.concat( categories, '' )
	end
	
	return out
end

return { main = main }