«Модуль:WikidataSelectors» битенең юрамалары арасында аерма

Навигациягә күчү Эзләүгә күчү
Takhirgeran Umar (бәхәс) кулланучысының 2503607 төзәтмәсе кире кагылды
Нет описания правки
(Takhirgeran Umar (бәхәс) кулланучысының 2503607 төзәтмәсе кире кагылды)
Тамгалар: кире кайтару отменено
 
-- Gathering rules
local rules = p.matchSelectors( propertySelector, initPos )
 
-- If there is no rank filter, than default rank is 'best'
 
local resultClaims = {}
local mulStatement = {}
for i, statement in ipairs( claims ) do
isMatchLanguage = false
and statement['mainsnak']['datavalue']
and statement['mainsnak']['datavalue']['value']
and statement['mainsnak']['datavalue']['value']['language'] then
if and statement['mainsnak']['datavalue']['value']['language'] == language then
isMatchLanguage = true
if statement['mainsnak']['datavalue']['value']['language'] == language then
isMatchLanguage = true
end
if statement['mainsnak']['datavalue']['value']['language'] == 'mul' then
mulStatement = statement
end
end
if isMatchLanguage ~= inversed then
table.insert( resultClaims, statement )
end
end
if next(resultClaims) == nil and next(mulStatement) ~= nil then
-- if specific language is not found, but there is Q20923490 value
table.insert( resultClaims, mulStatement )
end
 
]]
function p.filterByValue( claims, value, inversed )
inversedif =not inversed or falsethen
inversed = false
end
 
local resultClaims = {}
for i, statement in ipairs( claims ) do
local statementValue = statement['mainsnak']['datavalue']['value']
if statement['mainsnak']['datavalue']['type'] == 'wikibase-entityid' then
statementValue = statementValue.id
and statement['mainsnak']['datavalue']
value = string.upper( value )
and statement['mainsnak']['datavalue']['type']
then
statementValue = statement['mainsnak']['datavalue']['value']
if statement['mainsnak']['datavalue']['type'] == 'wikibase-entityid' then
statementValue = statementValue.id
value = string.upper( value )
end
end
 
616

правок

Навигация