Modul:Detaljer

Fra Wikipedia, den frie encyklopedi
Hopp til: navigasjon, søk
Dokumentasjonsikon Moduldokumentasjon [vis] [rediger] [historikk] [oppdater]

Denne modulen produserer en «for ytterligere detaljer om dette emnet»-lenke. Malen {{Detaljer}} benytter seg av denne modulen.

Bruk fra Wikitekst[rediger kilde]

Denne modulen kan ikke brukes direkte fra #invoke. Den kan kun brukes gjennom malen {{Detaljer}}. Se malens dokumentasjonsside for ytterligere informasjon.

Bruk fra andre Lua-moduler[rediger kilde]

Last modulen:

local mDetails = require('Module:Details')

Du kan deretter bruke funksjonen _details som dette:

mDetails._details(page, topic, options)

Variabelen page er siden som det skal lenkes til, og denne er påkrevd. Sidenavnet kan inkludere en seksjonslenke hvis ønsket. Hvis siden inkluderer en seksjonslenke, blir den automatisk formatert til side § seksjon, heller enn MediaWiki-standarden side#seksjon.

Variabelen topic er en beskrivelse av emnet, og er valgfri. Standardverdien er «dette emnet».

Tabellen options kan brukes til å konfiguerere funksjonens utputt. Pt. er det kun «selfref» som er tilgjengelig, og denne benyttes når utputten er en selvreferering til Wikipedia. For å sette dette valget, bruk {selfref = true}.

Eksempel 1
mDetails._details('solsystemet')

Produserer:

<div class="dablink boilerplate seealso">For ytterligere detaljer om dette emnet, se [[solsystemet]].</div>

Vises som:

Eksempel 2
mDetails._details('solsystemet', 'solsystemets opprinnelse og utvikling')

Produserer:

<div class="dablink boilerplate seealso">For ytterligere detaljer om solsystemets opprinnelse og utvikling, se [[solsystemet]].</div>

Vises som:

Tekniske detaljer[rediger kilde]

Denne modulen bruker Modul:Hattnotis til å formatere teksten i hattnotisen og Modul:Arguments til å hente argumenter fra Wikitekst.

--[[
-- Importert fra
-- https://en.wikipedia.org/w/index.php?title=Module:Details&oldid=666239536

-- This module produces a "For more details on this topic" link. It implements
-- the {{details}} template.
--]]

local mHatnote = require('Modul:Hattnotis')
local mArguments -- lazily initialise

local p = {}

function p.details(frame)
	mArguments = require('Modul:Arguments')
	local args = mArguments.getArgs(frame, {parentOnly = true})
	local page = args[1]
	local topic = args[2]
	if not page then
		return mHatnote.makeWikitextError(
			'ingen side angitt',
			'Mal:Detaljer#Feilmeldinger',
			args.kategori
		)
	end
	local options = {
		selfref = args.selfref,
	}
	return p._details(page, topic, options)
end

function p._details(page, topic, options)
	page = mHatnote._formatLink(page)
	topic = topic or 'dette emnet'
	local text = string.format('For ytterligere detaljer om %s, se %s.', topic, page)
	options = options or {}
	return mHatnote._hatnote(text, options)
end

return p