Modul:Taksoboks: Forskjell mellom sideversjoner

Fra wikisida.no
Hopp til navigering Hopp til søk
Ny side: --[[ Modul:Taksoboks Denne modulen skal i framtiden kalles fra Mal:Taksoboks. Den skal inneholde nødvendige funksjoner og data som kan fjerne behovet for de mange ulike taksoboksene. Til og begynne med kan den kalles fra de ulike taksoboksene med relevante funksjoner for å utføre samme oppgave. Etterhvert kan kanskje de mange taksoboksene fases ut og fjernes med bot ]] local p = {} --[[ the module should give priority to manually added parameters, 30–349 are parameters for…
 
Ingen redigeringsforklaring
Linje 225: Linje 225:
     ['default'] = '{{ucfirst:{{#titleparts:{{{1}}}|1}} }}',
     ['default'] = '{{ucfirst:{{#titleparts:{{{1}}}|1}} }}',
}
}
local function getBestP18fromWikidata()
if not mw.wikibase then
mw.log('no wikibase connection')
return ""
end
local wikidataItem = mw.wikibase.getEntity('Q131219') -- remove qid when testing is over
if not wikidataItem then
return ""
end
local claims = wikidataItem:getBestStatements('P18')
if not claims then
return ""
end
local img = claims[1]['mainsnak']['datavalue']['value']
return img
end


local navn = "{{{navn|{{PAGENAME}}}}}"
local navn = "{{{navn|{{PAGENAME}}}}}"
local bilde = "{{{bilde|{{Bilde fra Wikidata|pid=P18|qid=Q131219}}}}}"
local bilde = "[[Fil:" .. getBestP18fromWikidata() .. "|frameless]]"
local t_classes = "infoboks"
local taksoboksLinjer = {
local taksoboksLinjer = {
     '{| class="' .. t_classes .. '"',
     '{| class="infoboks"',
     '|- colspan=2',
     '|- colspan=2 class="overskrift',
     '!' .. navn,
     '!' .. navn,
     '|- colspan=2',
     '|- colspan=2 class="bilde"',
     '|' .. bilde,
     '|' .. bilde,
     '|}',
     '|}',
Linje 245: Linje 266:
     return frame:preprocess( taksoboks )
     return frame:preprocess( taksoboks )
end
end
return p
return p

Sideversjonen fra 2. jan. 2024 kl. 04:39

Dokumentasjon for denne modulen kan opprettes på Modul:Taksoboks/dok

--[[ Modul:Taksoboks
Denne modulen skal i framtiden kalles fra Mal:Taksoboks. Den skal inneholde nødvendige funksjoner og data som kan fjerne behovet for de mange ulike taksoboksene. Til og begynne med kan den kalles fra de ulike taksoboksene med relevante funksjoner for å utføre samme oppgave. Etterhvert kan kanskje de mange taksoboksene fases ut og fjernes med bot

]]

local p = {}

--[[
the module should give priority to manually added parameters, 30–349 are parameters for scientific classification
]]


--[[
translatedRanks kartlegger Bruker:Petter_Bøckman/fornorske_rang 
i forhold til params.
]]
local unranked = 'Gruppe'
local translatedRanks = {
    ['virus_group'] = unranked,
    ['virusgruppe'] = unranked,--[[
        uoversatte parametre sortert overfra og ned

    ]]
    ['unranked_superdomain'] = unranked,
    ['unranked_domain'] = unranked,
    ['unranked_superregnum'] = unranked,
    ['unranked_regnum'] = unranked,
    ['unranked_subregnum'] = unranked,
    ['unranked_superdivisio'] = unranked,
    ['unranked_superphylum'] = unranked,
    ['unranked_divisio'] = unranked, 
    ['unranked_phylum'] = unranked, 
    ['unranked_subdivisio'] = unranked, 
    ['unranked_subphylum'] = unranked, 
    ['unranked_infraphylum'] = unranked, 
    ['unranked_microphylum'] = unranked, 
    ['unranked_nanophylum'] = unranked, 
    ['unranked_superclassis'] = unranked, 
    ['unranked_classis'] = unranked, 
    ['unranked_subclassis'] = unranked, 
    ['unranked_infraclassis'] = unranked, 
    ['unranked_magnordo'] = unranked, 
    ['unranked_superordo'] = unranked, 
    ['unranked_ordo'] = unranked, 
    ['unranked_infraordo'] = unranked, 
    ['unranked_parvordo'] = unranked, 
    ['unranked_zoodivisio'] = unranked, -- diviso ?
    ['unranked_zoosectio'] = unranked, 
    ['unranked_zoosubsectio'] = unranked, 
    ['unranked_superfamilia'] = unranked, 
    ['unranked_familia'] = unranked, 
    ['unranked_subfamilia'] = unranked, 
    ['unranked_supertribus'] = unranked, 
    ['unranked_subtribus'] = unranked, 
    ['unranked_alliance'] = unranked, 
    ['unranked_genus'] = unranked,
    ['unranked_subgenus'] = unranked, 
    ['unranked_sectio'] = unranked, 
    ['unranked_subsectio'] = unranked, 
    ['unranked_series'] = unranked, 
    ['unranked_subseries'] = unranked, 
    ['unranked_species_subgroup'] = unranked, 
    ['unranked_species_complex'] = unranked, 
    ['unranked_species'] = unranked,  
    ['unranked_subspecies'] = unranked, 
    ['unranked_variety'] = unranked,  
    ['unranked_'] = unranked, 
    ['unranked_'] = unranked,
    ['unranked_'] = unranked, --[[
        oversatte parametre sortert overfra og ned
        de oversatte er kun benyttet i mal-navnerommet
    ]]
    ['ikke_rankert_superdomain'] = unranked,
    ['ikke_rankert_domain'] = unranked,
    ['ikke_rankert_superregnum'] = unranked,
    ['ikke_rankert_regnum'] = unranked,
    ['ikke_rankert_subregnum'] = unranked,
    ['ikke_rankert_superdivisio'] = unranked, 
    ['ikke_rankert_superphylum'] = unranked, 
    ['ikke_rankert_divisio'] = unranked, 
    ['ikke_rankert_phylum'] = unranked, 
    ['ikke_rankert_subdivisio'] = unranked, 
    ['ikke_rankert_subphylum'] = unranked, 
    ['ikke_rankert_infraphylum'] = unranked, 
    ['ikke_rankert_microphylum'] = unranked, 
    ['ikke_rankert_nanophylum'] = unranked, 
    ['ikke_rankert_superclassis'] = unranked, 
    ['ikke_rankert_classis'] = unranked, 
    ['ikke_rankert_subclassis'] = unranked, 
    ['ikke_rankert_infraclassis'] = unranked, 
    ['ikke_rankert_magnordo'] = unranked, 
    ['ikke_rankert_superordo'] = unranked, 
    ['ikke_rankert_ordo'] = unranked, 
    ['ikke_rankert_subordo'] = unranked, 
    ['ikke_rankert_infraordo'] = unranked, 
    ['ikke_rankert_parvordo'] = unranked, 
    ['ikke_rankert_zoodivisio'] = unranked, -- divisio?
    ['ikke_rankert_zoosectio'] = unranked, 
    ['ikke_rankert_zoosubsectio'] = unranked, 
    ['ikke_rankert_superfamilia'] = unranked, 
    ['ikke_rankert_familia'] = unranked, 
    ['ikke_rankert_subfamilia'] = unranked, 
    ['ikke_rankert_supertribus'] = unranked, 
    ['ikke_rankert_subtribus'] = unranked, 
    ['ikke_rankert_alliance'] = unranked, 
    ['ikke_rankert_genus'] = unranked, 
    ['ikke_rankert_subgenus'] = unranked, 
    ['ikke_rankert_sectio'] = unranked, 
    ['ikke_rankert_subsectio'] = unranked, 
    ['ikke_rankert_series'] = unranked, 
    ['ikke_rankert_subseries'] = unranked, 
    ['ikke_rankert_species_group'] = unranked, 
    ['ikke_rankert_species_subgroup'] = unranked, 
    ['ikke_rankert_species_complex'] = unranked, 
    ['ikke_rankert_species'] = unranked, 
    ['ikke_rankert_subspecies'] = unranked, 
    ['ikke_rankert_variety'] = unranked, 
    ['ikke_rankert_'] = unranked, 
    ['ikke_rankert_'] = unranked, 
    ['ikke_rankert_'] = unranked, --[[
        rankerte parametre overfra og ned
    ]]
    ['superdomain'] = 'Overdomene',
    ['domain'] = 'Domene',
    ['superregnum'] = 'Overrike',
    ['regnum'] = 'Rike',
    ['subregnum'] = 'Underrike',
    ['superdivisio'] = 'Overdivisjon',
    ['superphylum'] = 'Overrekke',
    ['divisio'] = 'Divisjon',
    ['phylum'] = 'Rekke',
    ['zoodivisio'] = 'Divisjon',
    ['subdivisio'] = 'Subdivisjon',
    ['subphylum'] = 'Underrekke',
    ['infraphylum'] = 'Infrarekke',
    ['microphylum'] = 'Mikrorekke',
    ['nanophylum'] = 'Nanorekke',
    ['superclassis'] = 'Overklasse',
    ['classis'] = 'Klasse',
    ['subclassis'] = 'Underklasse',
    ['infraclassis'] = 'Infraklasse',
    ['magnordo'] = 'Hyperorden',
    ['superordo'] = 'Overorden',
    ['ordo'] = 'Orden',
    ['subordo'] = 'Underorden',
    ['infraordo'] = 'Infraorden',
    ['parvordo'] = 'Parvorden',
    ['superfamilia'] = 'Overfamilie',
    ['familia'] = 'Familie',
    ['subfamilia'] = 'Underfamilie',
    ['supertribus'] = 'Overtribus',
    ['tribus'] = 'Tribus', -- unødvendig å oversette
    ['subtribus'] = 'Undertribus',
    ['alliance'] = 'Allianse',
    ['genus'] = 'Slekt',
    ['subgenus'] = 'Underslekt',
    ['sectio'] = 'Seksjon',
    ['zoosectio'] = 'Seksjon',
    ['subsectio'] = 'Underseksjon',
    ['zoosubsectio'] = 'Underseksjon',
    ['series'] = 'Serien',
    ['subseries'] = 'Underserien', -- underserie(n)?
    ['species_group'] = 'Artsgruppe', -- uoversatt? herfra og ut
    ['species_subgroup'] = 'Artsuntergruppe', -- skulle kanskje vært Artsundergruppe?
    ['species_complex'] = 'Artskompleks',
    ['species'] = 'Art',
    ['subspecies'] = 'Underart',
    ['variety'] = 'Varietet',
    ['form'] = 'Form', -- Herfra og ut er ikke støttet av Mal:Taksoboks, og finnes derfor ikke i params
    ['infraspecies'] = 'Infraart',
    ['infratribus'] = 'Infratribus',
    ['subzoodivisio'] = 'Subdivisjon',
    ['micrordo'] = 'Mikro-orden',
    ['grandordo'] = 'Grandorden',
    ['cohort'] = 'Kohort', -- Skal kursiveres?
    ['informal'] = 'Uformell gruppe', -- Skal kursiveres?
    ['informal_group'] = 'Uformell gruppe', -- Skal kursiveres?
    ['stem group'] = 'Kronegruppe', -- Skal kursiveres?
    ['crown group'] = 'Kronegruppe', -- Skal kursiveres?
    ['total group'] = 'Kronegruppe', -- Skal kursiveres?
    ['legion'] = '{{ucfirst:{{{1}}}}}', -- Skal kursiveres?
    ['infralegion'] = '{{ucfirst:{{{1}}}}}', -- Skal kursiveres?
    ['superlegion'] = 'Overlegion', -- Skal kursiveres?
    ['sublegion'] = 'Underlegion', -- Skal kursiveres?
    ['cladus'] = 'Gruppe',
    ['clade'] = 'Gruppe',
    ['ichnostem-group'] = 'Iknokronegruppe', -- Skal kursiveres?
    ['ichnosuperclassis'] = 'Iknooverklasse',
    ['ichnoclassis'] = 'Iknoklasse',
    ['ichnosubclassis'] = 'Iknounderklasse',
    ['ichnoinfraclassis'] = 'Iknoinfraklasse',
    ['ichnodivisio'] = 'Iknodivisjon',
    ['ichnosubdivisio'] = 'Iknounderdivisjon',
    ['ichnoinfradivisio'] = 'Iknoinfradivisjon',
    ['ichnomagnordo'] = 'Iknohyperorden',
    ['ichnosuperordo'] = 'Iknooverorden',
    ['ichnograndordo'] = 'Iknograndorden',
    ['ichnomicrordo'] = 'Iknomikrorden',
    ['ichnoordo'] = 'Iknoorden',
    ['ichnosubordo'] = 'Iknoudnerorden',
    ['ichnoinfraordo'] = 'Iknoinfraorden',
    ['ichnoparvordo'] = 'Iknoparvorden',
    ['ichnosuperfamilia'] = 'Iknooverfamilie',
    ['ichnofamilia'] = 'Iknofamilie',
    ['ichnosubfamilia'] = 'Iknounderfamilie',
    ['ichnogenus'] = 'Iknoslekt',
    ['ichnosubgenus'] = 'Iknounderslekt',
    ['ichnospecies'] = 'Iknoart',
    ['ichnosubspecies'] = 'Iknornderart', -- Skulle kanskje vært Iknounderart
    ['ichnoinfraspecies'] = 'Iknoinfraart',
    ['ooclassis'] = 'Ooklasse',
    ['oosubclassis'] = 'Oounderklasse',
    ['oosupercohort'] = 'Oooverkohort', -- Skal kursiveres?
    ['oocohort'] = 'Ookohort', -- Skal kursiveres?
    ['oomagnordo'] = 'Oohyperorden',
    ['oosuperordo'] = 'Ooverorden',
    ['oordo'] = 'Oorden',
    ['morphotype'] = 'Morfotype',
    ['oofamilia'] = 'Oofamilie',
    ['oogenus'] = 'Ooslekt',
    ['oosubgenus'] = 'Oounderslekt',
    ['oospecies'] = 'Ooart',
    ['oosubspecies'] = 'Oounderart',
    ['ooinfraspecis'] = 'Ooinfraart',
    ['default'] = '{{ucfirst:{{#titleparts:{{{1}}}|1}} }}',
}

local function getBestP18fromWikidata()
	
	if not mw.wikibase then
		mw.log('no wikibase connection')
		return ""	
	end
	local wikidataItem = mw.wikibase.getEntity('Q131219') -- remove qid when testing is over
	if not wikidataItem then
		return ""
	end
	local claims = wikidataItem:getBestStatements('P18')
	if not claims then
		return ""	
	end
	
	local img = claims[1]['mainsnak']['datavalue']['value']
	
	return img
	
end


local navn = "{{{navn|{{PAGENAME}}}}}"
local bilde = "[[Fil:" .. getBestP18fromWikidata() .. "|frameless]]"
local taksoboksLinjer = {
    '{| class="infoboks"',
    '|- colspan=2 class="overskrift',
    '!' .. navn,
    '|- colspan=2 class="bilde"',
    '|' .. bilde,
    '|}',
}

local taksoboks = table.concat(taksoboksLinjer, '\n')
table.insert(p, taksoboks)

function p.skrivTaksoboks ( frame )
    -- use table.insert(p, name) to insert a local variable to the package
    return frame:preprocess( taksoboks )
end

return p