మాడ్యూల్:Authority control: కూర్పుల మధ్య తేడాలు

Jump to navigation Jump to search
1,167 బైట్లు చేర్చారు ,  9 సంవత్సరాల క్రితం
sync with Module:Authority control/sandbox, enable musicbrainz artist links
imported>Tpt
(Wikidata support should work now)
(sync with Module:Authority control/sandbox, enable musicbrainz artist links)
id = parts[1] .. parts[2] .. append( parts[3], '0', 6 )
return '[http://id.loc.gov/authorities/names/' .. id .. ' ' .. id .. ']' .. getCatForId( 'LCCN' )
end
 
function mbLink( id )
-- TODO Implement some sanity checking regex
return '[//musicbrainz.org/artist/' .. id .. ' ' .. id .. ']'
end
 
end
return ids
end
 
function matchesWikidataRequirements( item, reqs )
for _, group in pairs( reqs ) do
local property = 'p' .. group[1]
local qid = group[2]
if item.claims[property] ~= nil then
for _, statement in pairs ( item.claims[property] ) do
if statement.mainsnak.datavalue.value['numeric-id'] == qid then
return true
end
end
end
end
return false
end
 
{ 'RID', '[[ResearcherID]]', 0, ridLink },
{ 'BIBSYS', '[[BIBSYS]]', 0, bibsysLink },
{ 'ULAN', '[[Union List of Artist Names|ULAN]]', 245, ulanLink },
{ 'MBA', '[[MusicBrainz]]', 434, mbLink },
}
 
-- Check that the Wikidata item has this property-->value before adding it
local reqs = {}
reqs['MBA'] = {
{ 106, 177220 } -- occupation -> singer
}
 
local p = {}
 
local val = parentArgs[params[1]]
if not val or val == '' then
local wikidataIdscanUseWikidata = getIdsFromWikidata( item, 'p' .. params[3] )nil
if wikidataIdsreqs[params[1]] ~= nil then
parentArgscanUseWikidata = matchesWikidataRequirements( item, reqs[params[1]] = wikidataIds[1])
else
canUseWikidata = true
end
if canUseWikidata then
local wikidataIds = getIdsFromWikidata( item, 'p' .. params[3] )
if wikidataIds[1] then
parentArgs[params[1]] = wikidataIds[1]
end
end
end
11

దిద్దుబాట్లు

"https://te.wikipedia.org/wiki/ప్రత్యేక:MobileDiff/2197246" నుండి వెలికితీశారు

మార్గదర్శకపు మెనూ