Modulo:Collegamenti esterni: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
supporto per titoli specifici di ciascun link (P1476 o P1810). P2093 alternativa per autore
Possibilità di usare altri Cita xxx. Aggiornamenti categorie di controllo qualificatori
Riga 19:
local THRESHOLD_GROUPED_LIST = 12
-- Categorie di servizio
local catLetta = ' letta da Wikidata'
local catMultiSenzaQual = ' multipla letta da Wikidata senza qualificatore' or 'letta da Wikidata'
local catGroupedList = 'Voci con template Collegamenti esterni e collegamenti raggruppati'
local catEmpty = 'Voci con template Collegamenti esterni senza dati da Wikidata'
Riga 117 ⟶ 119:
self.linkConf.titolo:gsub('$1', self.title) or
self.title)
self.extraConf.medium = self.linkConf.medium or 'web'
 
return self
end
Riga 202 ⟶ 205:
langs[i] = mWikidata._getLabel({ lang })
end
local formattedLink = mCitazione.collegamenticita_da_modulo({
self.extraConf.medium,
{
url = mWikidata._formatStatement(claim),
titolo = self.linkConf.titolo:gsub('$1', currTitle),
Riga 224 ⟶ 229:
-- @return {string}
function ExtLink:getListItem()
local icon = self.linkConf.icona == 'video' and
'[[File:35mm film frames.svg|16px|link=|alt=Filmato]]' or ''
-- se è specificato l'URL di formattazione è una
-- proprietà di tipo "identificativo esterno" altrimenti di tipo URL
if self.linkConf.url then
return '* ' .. icon .. mCitazione.collegamenticita_da_modulo({
self.extraConf.medium,
{
url = self.url[1],
titolo = self:_getTitolo(),
Riga 314 ⟶ 319:
if not linkConf.istanza or checkInstance(linkConf.istanza, self.from) then
local url, qualifier, extraConf
local Nqualtitoli = 0
local claims = mWikidata._getClaims(linkConf.pid, { from = self.from, snaktype = 'value' })
if claims and #claims > 0 then
Riga 326 ⟶ 332:
for i, claim in ipairs(claims) do
extraConf.titolo[i] = mWikidata._formatQualifiers(claim, 'P1476') or mWikidata._formatQualifiers(claim, 'P1810') -- titolo o "indicato come"
if extraConf.titolo[i] then Nqualtitoli = Nqualtitoli + 1 end
end
-- Uno o più url ed eventuali qualificatori per distinguerli
Riga 346 ⟶ 353:
end
for _, v in ipairs(qualifierIds) do qualifierIds[v] = true end
local altriQualNoti = {P407 = true, P50 = true, P2093 = true, P1476 = true, P1810 = true, P577 = true, P478 = true, P304 = true}
for qualifierId in pairs(claim.qualifiers) do
if qualifierIds[qualifierId] ~= true and altriQualNoti[qualifierId] ~= 'P407'true then
table.insert(self.categories, string.format('[[%sCategoria:%s]]', self.catColon, catUnknownQual))
break
Riga 362 ⟶ 370:
if url then
table.insert(ret[groupName], ExtLink:new(url, qualifier, linkConf, extraConf, self.from))
-- categoria per proprietà letta; se multipla e indistinguibile, usa categoria di avviso
-- categorie
local tail = #url > 1 and linkConf.multiurl and (qualifier == nil or #qualifier ~= #url) and (Nqualtitoli < #url - 1) and
catMultiSenzaQual or catLetta
'multipla letta da Wikidata senza qualificatore' or 'letta da Wikidata'
table.insert(self.categories, string.format('[[%sCategoria:%s %s]]', self.catColon, linkConf.pid, tail))
-- per verificare se un sito è ripetuto nel gruppo
local sito = linkConf.sito and mDelink._main({ linkConf.sito }) or getDomain(linkConf.url)