Modulo:Sandbox/ValterVB/AggettiviNaz: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
.
 
Omega Bot (discussione | contributi)
m Bot: rimuovo no globals obsoleto
 
(23 versioni intermedie di 2 utenti non mostrate)
Riga 1:
require('Module:No globalsstrict')
local getArgs = require('Module:Arguments').getArgs
local mWikidata = require('Modulo:Wikidata')
Riga 7:
local t = getArgs(frame)
local dato = t[1]
local tracce1aggettivi = {}
local tracce2 = {}
local i
local ss
local wdTraccewdEtnico, wdAutori, wdParole, wdBasatoSu
local ordinegenere, ddato, titolo, duratanome
local ret
wdTraccewdEtnico = mWikidata._getClaims('P658P1549', { from = dato })
 
ss = ''
if wdTracce then
genere = ''
 
if wdTraccewdEtnico then
for _, traccianome_abitanti in ipairs(wdTraccewdEtnico) do
ss = ''
titolonome = mWikidata._formatStatement(traccianome_abitanti, { includelang = 'it'} )
 
if duratagenere == nil then
titolo = mWikidata._formatStatement(traccia)
duratagenere = 'n.d.'
 
ordine = mWikidata._formatQualifiers(traccia, 'P1545')
 
if (ordine and tonumber(ordine)) then
ordine = tonumber(ordine)
ss = ordine
else
if mWikidata._formatQualifiers(nome_abitanti, 'P518') == nil then
ordine = -1
ss genere = '-n.d.'
end
 
durata = mWikidata._formatQualifiers(traccia, 'P2047')
if durata == nil then
durata = 'n.d.'
else
durata = tonumber(durata) or 0
if (durata > 59) then
durata = math.floor(durata/60) .. '\' ' .. (durata - 60*math.floor(durata/60)) .. '"'
else
ordine genere = mWikidata._formatQualifiers(traccianome_abitanti, 'P1545P518')
durata = durata .. '"'
end
end
genere = nome .. ' (' .. genere .. ')' .. '<br/>'
 
ss = ss .. '.(nome ~= \'\'' ..and titologenere ..or '\'\' (' .. durata .. ')'
 
if traccia.mainsnak.datavalue.value.id then
ddato = traccia.mainsnak.datavalue.value.id
wdAutori = mWikidata._getClaims('P86', { from = ddato })
if wdAutori then
ss = ss .. ' <small>Comp.: '
i = 1
for _, autore in ipairs(wdAutori) do
if (i>1) then ss = ss .. ', ' end
i = i + 1
ss = ss .. mWikidata._formatStatement(autore)
end
ss = ss .. '</small>'
end
wdParole = mWikidata._getClaims('P676', { from = ddato })
if wdParole then
ss = ss .. ' <small>Parol.: '
i = 1
for _, parola in ipairs(wdParole) do
if (i>1) then ss = ss .. ', ' end
i = i + 1
ss = ss .. mWikidata._formatStatement(parola)
end
ss = ss .. '</small>'
end
wdBasatoSu = mWikidata._getClaims('P144', { from = ddato })
if wdBasatoSu then
ss = ss .. ' <small>Basato su: '
i = 1
for _, basato in ipairs(wdBasatoSu) do
if (i>1) then ss = ss .. ', ' end
i = i + 1
ss = ss .. mWikidata._formatStatement(basato)
end
ss = ss .. '</small>'
end
end
 
if (ordine == -1) then
table.insert(tracce2,ss)
else
tracce1[ordine] = ss
end
 
end
 
end
return ss
 
ret = {}
for _,k in ipairs(tracce1) do
table.insert(ret,k..'<br/>')
end
for _,k in ipairs(tracce2) do
table.insert(ret,k..'<br/>')
end
 
return table.concat(ret)
 
end