Jump to content

Մոդուլ:Taxobox/Classification

Վիքիպեդիայից՝ ազատ հանրագիտարանից

Documentation for this module may be created at Մոդուլ:Taxobox/Classification/doc

local eksport = {}
local data = require('Module:Taxobox/Classification/data')

function eksport.parserkall(frame)
	local argument = frame.args[1]
	local typeUtdata = frame.args[2]
	local kategori = frame.args[3]
	return eksport.hovud(argument, typeUtdata, kategori)
end

function eksport.hovud(argument, typeUtdata, kategori)
	local opphavlegArgument = argument
	local utdata = opphavlegArgument
	local argument = opphavlegArgument:gmatch('([^(),0-9]+)')()
	local resultat
	local aarstal = opphavlegArgument:gmatch('([0-9][0-9][0-9][0-9])')()
	
	if aarstal then
		utdata = utdata:gsub(aarstal, '[[' .. aarstal .. ']]')
	end
	
	if not data[argument] and typeUtdata ~= 'berre kategori' then
		return utdata
	elseif typeUtdata == 'fullt namn' then
		resultat = data[argument][1]
	elseif typeUtdata == 'wikilenkje, argument' then
		lenkje = '[[' .. data[argument][1] .. '|' .. argument .. ']]' 
		resultat = utdata:gsub(argument, lenkje)
	elseif typeUtdata == 'wikilenkje, data' then
		lenkje = '[[' .. data[argument][1] .. '|' .. data[argument][2] .. ']]'
		resultat = utdata:gsub(argument, lenkje)
	elseif typeUtdata == 'berre kategori' then
		resultat = ''
	end
	if kategori == 'om finst' and data[argument] and mw.title.getCurrentTitle().namespace == 0 then
		local kategoritittel = 'Կատեգորիա:' .. data[argument][1] .. ' հեղինակի անվանած տաքսոններ'
		if mw.title.new(kategoritittel):getContent() ~= nil then
			resultat = resultat .. ' [[' .. kategoritittel .. ']]'
		end
	end
	return resultat
end

return eksport