Modul:SportsReference

Fra Wikipedia, den frie encyklopedi
Moduldokumentasjon

Formål[rediger kilde]

Denne modulen returnerer ei lenke til Sports-Reference.com. Lenken blir tatt fra Wikidata, med mindre det ikke er noen egenskap for Sports Reference. Om det ikke er det kan modulen ta ett argument som er URL, og artikkelen blir da kategorisert som at den mangler Sports Reference på Wikidata.

Funksjoner[rediger kilde]

  • lang : Returnerer lenketekst.

Brukes av[rediger kilde]

Vedlikeholdskategorier[rediger kilde]

local function lenke(s)
	entity = mw.wikibase.getEntityObject()
	if not entity then
		label = mw.title.getCurrentTitle().text
	else
		label = mw.wikibase.label(entity.id) or mw.title.getCurrentTitle().text
	end
	if (s == nil) or (s == "") then
		-- This text gives an error that says that the Sports Reference ID is neither present on Wikidata nor in the article, and categorises the page as missing the Wikidata property.
		return " <span class='error'>Sports Reference-id er ikke angitt verken i Wikidata eller artikkelteksten!</span> [[Mal:Sports-reference#Legge inn på Wikidata|Hvordan fikser jeg dette?]] [[Kategori:Utsagn om Sports Reference mangler både på Wikidata og i artikkelen]]"
	else
		-- This is the text that is returned if there is a Sports Reference ID on Wikidata or in the article.
		return " [http://www.sports-reference.com/olympics/athletes/" .. s .. ".html " .. label .. "] – Profil og OL-resultater på ''sports-reference.com''."
	end
end

local p = {}

function p.lang(frame)
	id = string.gsub((frame.args[1] or ""), ".html", "")
	if not mw.wikibase then
		-- The "frame:expandTemplate" is the Norwegian Wikipedia template to indicate that the link is in English.
		return frame:expandTemplate{ title = "Språkikon", args = { "en" } } .. lenke(id)
	end
	local entity = mw.wikibase.getEntityObject()
	if not entity then
		-- Category for articles that don't have Wikidata items.
		return frame:expandTemplate{ title = "Språkikon", args = { "en" } } .. lenke(id) .. "[[Kategori:Artikler som mangler på Wikidata]]"
	end
	local claims = entity.claims or {}
	local hasProp = claims["P1447"]
	if not hasProp then
		-- Category for articles that don't have the Sports Reference property on Wikidata.
		return frame:expandTemplate{ title = "Språkikon", args = { "en" } } .. lenke(id) .. "[[Kategori:Artikler som mangler utsagn om Sports Reference på Wikidata]]"
	end
	local propValue = hasProp[1].mainsnak.datavalue.value
	return frame:expandTemplate{ title = "Språkikon", args = { "en" } } .. lenke(propValue)
end

return p