Przejdź do zawartości

Moduł:imię odojcowskie

Z Wikisłownika – wolnego słownika wielojęzycznego

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


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 father = frame.args.father
	local gender = frame.args.gender
	
	if language_raw == '' then
		error( 'pusty pierwszy parametr: język (np. „polski”)', 0 )
	end

	if father == '' then
		error( 'pusty drugi parametr: imię ojca (np. „Іван”)', 0 )
	end

	local categories = {}
	local out
	local accent = mw.ustring.char( 769 );
	local father_link = '[[' .. mw.ustring.gsub( father, accent, '' ) .. '|' .. father .. ']]'
	
	if gender == 'm' then
		out = '<i>męskie imię odojcowskie od imienia ' .. father_link .. '</i>'
		table.insert( categories, mw.ustring.format( '[[Kategoria:%s - męskie imiona odojcowskie]]', language ) )
	elseif gender == 'ż' then
		out = '<i>żeńskie imię odojcowskie od imienia ' .. father_link .. '</i>'
		table.insert( categories, mw.ustring.format( '[[Kategoria:%s - żeńskie imiona odojcowskie]]', language ) )
	elseif gender == 'mż' then
		out = '<i>męskie lub żeńskie imię odojcowskie od imienia ' .. father_link .. '</i>'
		table.insert( categories, mw.ustring.format( '[[Kategoria:%s - męskie imiona odojcowskie]]', language ) )
		table.insert( categories, mw.ustring.format( '[[Kategoria:%s - żeńskie imiona odojcowskie]]', language ) )
	else
		error( 'pusty lub nierozpoznany trzeci 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 }