Modulo:Wikidata/sandbox: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m versione attuale |
lettura fonti |
||
Riga 21:
local mConvert = require('Module:Conversione')
local mLanguages = require('Module:Linguaggi')
local mCitation = require('Modulo:Citazione')
-- Categoria per le pagine con errori
Line 176 ⟶ 177:
end
local function formatFromPattern(str, args, refs)
local pattern = args.pattern
pattern = mw.ustring.gsub(pattern, '\\{', '{')
pattern = mw.ustring.gsub(pattern, '\\}', '}')
return mw.getCurrentFrame():preprocess(mw.message.newRawMessage(pattern, str, refs or ''):plain())
end
Line 364 ⟶ 365:
end
return text
end
local function formatReferences(references, args)
local formattedReferences = {}
local citeClasses = {
web = { parameter = 'url', property = 'P854' }
}
local snaks = { dataaccesso = 'P813', editore = 'P123' }
for _, reference in ipairs(references) do
local refArgs = {}
for citeClass, mainSnak in pairs(citeClasses) do
if reference.snaks[mainSnak.property] then
refArgs[mainSnak.parameter] = formatSnak(reference.snaks[mainSnak.property][1], args)
for parameter, property in pairs(snaks) do
if reference.snaks[property] then
refArgs[parameter] = formatSnak(reference.snaks[property][1], args)
end
if reference.snaks.P407 then
refArgs.lingua = formatSnak(reference.snaks.P407, { formatting = 'raw' })
end
local formattedReference = mw.getCurrentFrame()
:extensionTag('ref', mCitation.cita_da_modulo(citeClass, refArgs))
table.insert(formattedReferences, formattedReference)
break
end
end
end
return table.concat(formattedReferences)
end
Line 386 ⟶ 416:
local formattedStatement = formatStatement(claim, args)
if formattedStatement ~= '' then
local formattedReferences
if args.showreferences and claim.references then
formattedReferences = formatReferences(claim.references, args)
end
-- eventuale pattern
if args.pattern then
formattedStatement = formatFromPattern(formattedStatement, args, formattedReferences)
if formattedStatement ~= '' then
▲ else
table.insert(formattedStatements, formattedStatement)
end
|