Modul:media

Definition från Wiktionary, den fria ordlistan.
Hoppa till navigering Hoppa till sök

Dokumentation för denna modul finns på /dok (redigera), /test


Denna modul anropas av {{media}} för att placera illustrerande filer (bilder, ljud och videor) med tillhörande beskrivningar på svenska uppslag. Målet är att standardisera utseendet på svenskspråkiga Wiktionary. Ingen annan mall eller modul bör anropa denna modul.

Tester

[redigera]

All tests passed. (refresh)

Text Expected Actual
test_basic:
Passed {{media|filnamn1|beskrivning1}} [[Fil:filnamn1|miniatyr| beskrivning1]] [[Fil:filnamn1|miniatyr| beskrivning1]]
Passed {{media|filnamn1|beskrivning1|filnamn2| |filnamn3}} [[Fil:filnamn1|miniatyr|stående| beskrivning1]][[Fil:filnamn2|miniatyr|stående]][[Fil:filnamn3|miniatyr|stående]] [[Fil:filnamn1|miniatyr|stående| beskrivning1]][[Fil:filnamn2|miniatyr|stående]][[Fil:filnamn3|miniatyr|stående]]
Passed {{media|filnamn1|beskrivning1|filnamn2|beskrivning2|filnamn3|beskrivning3|filnamn4|beskrivning4}} [[Fil:filnamn1|miniatyr|stående=0.6| beskrivning1]][[Fil:filnamn2|miniatyr|stående=0.6| beskrivning2]][[Fil:filnamn3|miniatyr|stående=0.6| beskrivning3]][[Fil:filnamn4|miniatyr|stående=0.6| beskrivning4]] [[Fil:filnamn1|miniatyr|stående=0.6| beskrivning1]][[Fil:filnamn2|miniatyr|stående=0.6| beskrivning2]][[Fil:filnamn3|miniatyr|stående=0.6| beskrivning3]][[Fil:filnamn4|miniatyr|stående=0.6| beskrivning4]]


local export = {}

function export.getWikitext(frame)
	files = {}
	captions = {}
	-- extrahera alla filer och beskrivningar från anropet
	for k,v in pairs(mw.getCurrentFrame():getParent().args) do
		if type(k) == "number" and k % 2 == 1 then
			files[math.ceil(k / 2)] = v
		-- kolla om det finns en beskrivning
		elseif type(k) == "number" and k % 2 == 0 and mw.ustring.gsub(v, "%s+", "") ~= "" then
			captions[k / 2] = v
		end
	end
	
	number = #files
	params = ""
	-- visa filer i olika storlek beroende på antal
	if number > 3 then
		params = "|miniatyr|stående=0.6"
	elseif number > 1 then
		params = "|miniatyr|stående"
	else
		params = "|miniatyr"
	end
	
	str = ""
	for i=1,number,1 do
		str = str .. "[[Fil:" .. files[i] .. params .. "]]"
		if captions[i] then
			-- tolka alltid jämn parameter som beskrivning
			str = mw.ustring.sub(str, 1, -3) .. "| " .. captions[i] .. "]]"
		end
	end
	
	return str
end

return export