Module:Wikidata: Difference between revisions

Content deleted Content added
helps if we actually call the arbitrary access
Prune repetiotion of code for extracting a q number from an entity (in many places)
Line 532:
local out = {}
for k, v in pairs(claims) do
local sitelinkqnumber = mw.wikibase.sitelink("Q" .. v.mainsnak.datavalue.value["numeric-id"])
local labelsitelink = mw.wikibase.labelsitelink("Q" .. v.mainsnak.datavalue.value["numeric-id"]qnumber)
local label = mw.wikibase.label(qnumber) or qnumber
if label == nil then label = "Q" .. v.mainsnak.datavalue.value["numeric-id"] end
 
if sitelink then
out[#out + 1] = "[[" .. sitelink .. "|" .. label .. "]]"
else
out[#out + 1] = "[[:d:Q" .. v.mainsnak.datavalue.value["numeric-id"]qnumber .. "|" .. label .. "]]<abbr title='" .. i18n["errors"]["local-article-not-found"] .. "'>[*]</abbr>"
end
end
Line 570 ⟶ 569:
local out = {}
for k, v in pairs(claims) do
local sitelinkqnumber = mw.wikibase.sitelink("Q" .. v.mainsnak.datavalue.value["numeric-id"])
local sitelink = mw.wikibase.sitelink(qnumber)
local label
local claimEntity = mw.wikibase.getEntity("Q" .. v.mainsnak.datavalue.value["numeric-id"]qnumber)
if claimEntity ~= nil then
if claimEntity.claims.P1813 then
Line 582:
end
end
if label == nil or label == "" then label = mw.wikibase.label("Q" .. v.mainsnak.datavalue.value["numeric-id"]qnumber) end
if label == nil then label = "Q" .. v.mainsnak.datavalue.value["numeric-id"]qnumber end
 
if sitelink then
out[#out + 1] = "[[" .. sitelink .. "|" .. label .. "]]"
else
out[#out + 1] = "[[:d:Q" .. v.mainsnak.datavalue.value["numeric-id"]qnumber .. "|" .. label .. "]]<abbr title='" .. i18n["errors"]["local-article-not-found"] .. "'>[*]</abbr>"
end
end
Line 624:
local out = {}
for k, v in pairs(claims) do
local sitelinkqnumber = mw.wikibase.sitelink("Q" .. v.mainsnak.datavalue.value["numeric-id"]);
local labelsitelink = mw.wikibase.labelsitelink("Q" .. v.mainsnak.datavalue.value["numeric-id"]qnumber)
local label = mw.wikibase.label(qnumber)
if label == nil then label = "Q" .. v.mainsnak.datavalue.value["numeric-id"] end
if label == nil then label = "Q" .. v.mainsnak.datavalue.value["numeric-id"]qnumber end
 
if sitelink then
out[#out + 1] = "[[" .. sitelink .. "|" .. label .. "]]"
else
out[#out + 1] = "[[:d:Q" .. v.mainsnak.datavalue.value["numeric-id"]qnumber .. "|" .. label .. "]]<abbr title='" .. i18n["errors"]["local-article-not-found"] .. "'>[*]</abbr>"
end
end
Line 657 ⟶ 658:
for k2, v2 in pairs(v.qualifiers[qualifierID]) do
if v2.snaktype == 'value' then
iflocal qnumber = (mw.wikibase.sitelink("Q" .. v2.datavalue.value["numeric-id"])) then
out[#out + 1] = "[[" ..if (mw.wikibase.sitelink("Q" .. v2.datavalue.value["numeric-id"]qnumber)) .. "]]"then
out[#out + 1] = "[[" .. mw.wikibase.sitelink(qnumber) .. "]]"
else
out[#out + 1] = "[[:d:Q" .. v2.datavalue.value["numeric-id"]qnumber .. "|" .. mw.wikibase.label("Q" .. v2.datavalue.value["numeric-id"])qnumber .. "]]<abbr title='" .. i18n["errors"]["local-article-not-found"] .. "'>[*]</abbr>"
end
end