Moduł:Autorzy

Z Wikiźródeł, wolnej biblioteki

Dokumentacja dla tego modułu może zostać utworzona pod nazwą Moduł:Autorzy/opis

local p = {}
 
function autorlink( txt )
	local wynik = mw.text.trim( txt )
	local strona_autora = mw.title.makeTitle( 'Autor', wynik )
	if not ( string.find( wynik, '[[', 1, true ) == nil ) then
		return wynik
	end
	if not (strona_autora == nil) and strona_autora.exists then
		return "[[" .. strona_autora.prefixedText .. "|" .. wynik .."]]"
	end
	return wynik
end

-- Funkcja zwraca listę linków do stron autorów
function p.autorzy( frame )
	local lista = mw.text.trim( frame.args[1] )
	local wynik = ''
	local kon
	if #lista == 0 then
		return ''
	end
	repeat
		kon = string.find( lista, ';', 2)
		if kon == nil then
			wynik = wynik .. autorlink( lista )
		else
			wynik = wynik .. autorlink( string.sub( lista, 1, kon-1 ) )
			lista = mw.text.trim( string.sub( lista,  kon+1 ) )
			if #lista > 0 then
				wynik = wynik .. ", <br>"
			else
				kon = nil
			end
		end
	until kon == nil
	return wynik
end

return p