Modul:External links/conf/Film

Dokumentaciju za ovaj modul možete napraviti na stranici Modul:External links/conf/Film/dok

local function bbfc_formatter(id)
	return mw.message.newRawMessage("http://www.bbfc.co.uk/node/$1", id):plain()
end

local function commons_formatter(id)
	return "https://commons.wikimedia.org/wiki/Category:" .. id:gsub(" ", "_")
end

local configured_claims = {}
configured_claims['nb'] = {
	{ prop ='P373', message ="$3 [$2 ''$1''] – bilder, video eller lyd på [[Wikimedia Commons]]", langcode = 'en', genitiv = false, url_f=commons_formatter },	
	{ prop='P345',  message ="$3 [$2 ''$1''] på [[Internet Movie Database]]", short="[$2 IMDb]", langcode ='en', genitiv = false },
	{ prop='P1439', message ="$3 [$2 ''$1''] i [[Nasjonalbiblioteket]]s filmografi", short="[$2 Norsk Filmografi]", langcode ='nb', genitiv = false },
	{ prop='filmweb', message ="$3 [$2 ''$1''] hos [[Filmweb]]", short="[$2 Filmweb]", langcode ='nb', genitiv = false, url="http://www.filmweb.no/film/article$1.ece", regex="\\d+" },
	{ prop='medietilsynet', message ="$3 [$2 ''$1''] hos [[Medietilsynet]]", short="[$2 Medietilsynet]", langcode ='nb', genitiv = false, url="http://www.medietilsynet.no/filmdatabasen/?q=$1", regex=".+" },
	{ prop='nfi', message ="$3 [$2 ''$1''] i [[Norsk filminstitutt]]s filmdatabase", short="[$2 NFI]", langcode ='en', genitiv = false, url="http://www.nfi.no/english/norwegianfilms/search/Film?key=$1", regex="[A-Za-z0-9]+" },
	{ prop='P2334', message ="$3 [$2 ''$1''] i [[Svensk Filmdatabas]]", short="[$2 SFDb]", langcode ='sv', genitiv = false },
	{ prop='P1804', message ="$3 [$2 ''$1''] i Danmark Nationale Filminstitut", short="[$2 DFI]", langcode ='da', genitiv = false },
	{ prop='danskefilm', message ="$3 [$2 ''$1''] på danskefilm.dk", short="[$2 danskefilm.dk]", langcode ='da', genitiv = false, url="http://www.danskefilm.dk/film/$1.html", regex=".+" },
	{ prop='danskefilmstum', message ="$3 [$2 ''$1''] på danskefilm.dk", short="[$2 danskefilm.dk]", langcode ='da', genitiv = false, url="http://www.danskefilm.dk/stumfilm/$1.html", regex=".+" },
	{ prop='P1265', message ="$3 [$2 ''$1''] på Allociné", short="[$2 Allociné]", langcode ='fr', genitiv = false },
	{ prop='P1970', message ="$3 [$2 ''$1''] på MovieMeter", short="[$2 MovieMeter]", langcode ='nl', genitiv = false },
	{ prop='P1562', message ="$3 [$2 ''$1''] på [[AllMovie]]", short="[$2 Allmovie]", langcode ='en', genitiv = false },
	{ prop='P2631', message ="$3 [$2 ''$1''] på [[Turner Classic Movies]]", short="[$2 TCMdb]", langcode ='en', genitiv = false },
	{ prop='P1258', message ="$3 [$2 ''$1''] på [[Rotten Tomatoes]]", short="[$2 Rotten Tomatoes]", langcode ='en', genitiv = false },
	{ prop='P1712', message ="$3 [$2 ''$1''] på [[Metacritic]]", short="[$2 Metacritic]", langcode ='en', genitiv = false },
	{ prop='P1237', message ="$3 [$2 ''$1''] på [[Box Office Mojo]]", short="[$2 Mojo]", langcode ='en', genitiv = false },
	{ prop='filmsite', message ="$3 [$2 ''$1''] hos [[Filmsite.org]]", short="[$2 Filmsite.org]", langcode ='en', genitiv = false, url="http://www.filmsite.org/$1.html", regex="[A-Za-z0-9]+" },
	{ prop='bfi', message ="$3 [$2 ''$1''] hos British Screen online", short="[$2 BFI]", langcode ='en', genitiv = false, url="http://www.screenonline.org.uk/film/id/$1/", regex="[A-Za-z0-9]+" },
	{ prop='bbfc',  message ="$3 [$2 ''$1''] på BBfc", short="[$2 BBfc]", langcode ='en', genitiv = false, url="http://www.bbfc.co.uk/node/$1", regex="\\d+" },
	{ prop='bbfc2', message ="$3 [$2 ''$1''] på BBfc", short="[$2 BBfc]", langcode ='en', genitiv = false, url_f=bbfc_formatter, regex="\\d+" },
}
local messages_conf = {}
messages_conf['nb'] = {
	['short-list-separator'] = " '''·''' ",
	['no-data-cat'] = '[[Kategori:Artikler uten filmlenker fra Wikidata]]',
	['with-data-cat'] = '[[Kategori:Artikler med filmlenker fra Wikidata]]',
	['with-local-cat'] = '[[Kategori:Artikler med filmlenker fra lokale verdier]]',
	['no-data-text'] = "''Artikkelen har ingen egenskaper for filmdatabaser i Wikidata''",
	['no-wikilink'] = "''Artikkelen mangler oppslag i Wikidata''",
	['no-wikilink-cat'] = "[[Kategori:Artikler med filmlenker og uten kobling til Wikidata]]",
	['track-cat-wd-wd'] = '[[Kategori:Artikler med filmlenker for $1 fra Wikidata]]',
	['track-cat-local-local'] = '[[Kategori:Artikler med filmlenker for $1 lokalt]]',
	['track-cat-wd-local'] = '[[Kategori:Artikler med filmlenker med $1 fra Wikidata men verdi lokalt]]',
	['track-cat-local-wd'] = '[[Kategori:Artikler med filmlenker med $1 definert lokalt men verdi fra Wikidata]]',
	['track-cat-local-wd-equal'] = '[[Kategori:Artikler med filmlenker hvor $1 sin verdi lokalt er lik med Wikidata]]',
	['track-cat-local-wd-unequal'] = '[[Kategori:Artikler med filmlenker hvor $1 sin verdi lokalt er ulik Wikidata]]',
}
local limits = {
	['links-shown'] = 10,		-- maximum number of links shown in the article.
}


local p = {}

function p.getConfiguredClaims (self, lang)
	return configured_claims[lang]
end

function p.getMessage (self, lang, msg)
	return messages_conf[lang][msg] 
end

function p.getLimits (self)
	return limits
end

-- metatable for the export
local mt = {
	-- adjust the installation of the module
	['__call'] = function (self, lang)
		self.configured_claims = configured_claims[lang]
		self.messages_conf = messages_conf[lang]
		return self
	end
}

-- install the metatable
setmetatable(p, mt)

return p