Modul:Wikipedialänk-författare

Från Wikipedia

Dokumentationen för denna modul kan skapas på Modul:Wikipedialänk-författare/dok

local y = {
	{ ['site'] = 'svwikisource', ['text'] = 'Svenskspråkiga Wikisource' , ['prefix'] = 'src:' }, -- Vill man inte tillåta länkar annat än till svenska wikisource kan man ta bort alla nedanstående rader
	{ ['site'] = 'enwikisource', ['text'] = 'Engelskspråkiga Wikisource', ['prefix'] = 'src:en:' }, -- Prioriteringen är idag i samma ordning som tabellen är upplagd, enkelt att ändra
	{ ['site'] = 'dewikisource', ['text'] = 'Tyskspråkiga Wikisource', ['prefix'] = 'src:de:' }, 
	{ ['site'] = 'frwikisource', ['text'] = 'Franskspråkiga Wikisource', ['prefix'] = 'src:fr:' },
	{ ['site'] = 'nowikisource', ['text'] = 'Norska Wikisource', ['prefix'] = 'src:no:' }, -- Observera att det ska finnas avslutande kommatecken på alla rader utom den sista i tabellen
	{ ['site'] = 'dawikisource', ['text'] = 'Danskspråkiga Wikisource', ['prefix'] = 'src:da:' },
	{ ['site'] = 'fiwikisource', ['text'] = 'Finskspråkiga Wikisource', ['prefix'] = 'src:fi:' }
	}
local p = {}
 
function p.wplank( frame )
	local args = frame.args
	local projekt = args.projekt
	local projektnamn = args.projektnamn
	if not mw.wikibase then
		return 'no wikibase' -- Wikibase client är inte tillgänglig
	end
	local entity = mw.wikibase.getEntityObject()
	if not entity or entity == '' then 
		return 'no entity' -- Sidan är inte ansluten till Wikidata
	end
	if not entity.sitelinks then
		return ''
	end
	if projekt and projekt == '' then
		for j, sprak in pairs( y ) do
			for i, siter in pairs( entity.sitelinks ) do
	 			if siter.site == y[j].site then
	 				return  y[j].text .. ' har verk av eller om [[' .. y[j].prefix .. siter.title .. '|' .. args[1] ..  ']].'  .. mw.text.tag('div', {class='interProject wikisource', style='display:none;'}, '[[' .. y[j].prefix .. siter.title .. '|' .. args[1] .. ']]')
	 			end
			end
		end
		return ''
	else
		if not projektnamn or projektnamn == '' then 
			projektnamn = 'Wikisource'
		end
		for i, siter in pairs( entity.sitelinks ) do
 			if siter.site == projekt .. 'wikisource' then
 				return  projektnamn .. ' har verk av eller om [[src:' .. projekt .. ':' .. siter.title .. '|' .. args[1] ..  ']].' .. mw.text.tag('div', {class='interProject wikisource', style='display:none;'}, '[[src:' .. projekt .. ':' .. siter.title ..'|' .. args[1] ..   ']]')
 			end
		end
		return ''
	end

	return ''
end
 
return p