Modulo:Collegamenti esterni: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
modifico resa dei link multipli a stesso sito sfruttandone i qualificatori e introduco categorie di errore come da discussione
Riga 95:
-- @param {table} [url] - uno o più URL, quanti sono i valori della proprietà Wikidata
-- @param {table} [qualifier] - eventuali qualificatori da annettere al titolo per ciascun URL
-- @param {table} linkConf - la configurazione fissa per questo collegamento esterno
-- @param {table} extraConf - altri elementi di configurazione ricavati dall'item
-- @param {string} from - entityId se diverso da quello collegato alla pagina corrente
-- @return {table} un nuovo oggetto ExtLink
function ExtLink:new(url, qualifier, linkConf, extraConf, from)
local self = {}
setmetatable(self, { __index = ExtLink })
Line 109 ⟶ 110:
self.qualifier = #url > 1 and qualifier
self.linkConf = linkConf
self.extraConf = extraConf
self.from = from
self.title = getCurrentTitle()
Line 227 ⟶ 229:
lingua = self.linkConf.lingua,
cid = self.linkConf.cid,
autore = self.linkConf.autore or self.extraConf.autore,
volume = self.extraConf.volume,
p = self.extraConf.pagina,
data = self.linkConf.data or self.extraConf.data,
tipo = self.linkConf.tipo or self.sitodis
}) .. mEditAtWikidata._showMessage({ pid = self.linkConf.pid, qid = self.from })
Line 300 ⟶ 305:
for _, linkConf in ipairs(cfg[groupName]) do
if not linkConf.istanza or checkInstance(linkConf.istanza, self.from) then
local url, qualifier, extraConf
local claims = mWikidata._getClaims(linkConf.pid, { from = self.from, snaktype = 'value' })
if claims and #claims > 0 then
-- qualificatori generali
extraConf = {}
extraConf.autore = mWikidata._formatQualifiers(claims[1], 'P50')
extraConf.volume = mWikidata._formatQualifiers(claims[1], 'P478')
extraConf.pagina = mWikidata._formatQualifiers(claims[1], 'P304')
extraConf.data = mWikidata._formatQualifiers(claims[1], 'P577')
-- uno o più url ed eventuali qualificatori per distinguerli
url = {}
for i, claim in ipairs(claims) do
Line 336 ⟶ 348:
end
if url then
table.insert(ret[groupName], ExtLink:new(url, qualifier, linkConf, extraConf, self.from))
-- categorie
local tail = #url > 1 and linkConf.multi and (qualifier == nil or #qualifier ~= #url) and