« Module:Auteur2 » : différence entre les versions
Contenu supprimé Contenu ajouté
usage des dates plus restrictif en cas de précision inférieure à l'année |
n'affiche pas d'erreur si Wikidata contiens plusieurs dates avec la même année |
||
Ligne 114 :
function getDateFromTimeStatements(statements, field)
if #statements == 0 then▼
precision = 0
}
end▼
local time = nil
for _, statement in pairs(statements) do
local newTime = getDateFromTimeStatement(statement, field)
if time == nil then
time = newTime
elseif time.year ~= newTime.year then --années contradictoires
text = errorMessage('Plusieurs années de ' .. field .. ' possibles sur Wikidata. Une manière simple de résoudre se problème est de mettre la date à afficher au rang "préféré".'),
precision = 0
}
end
return {
precision = 0
}
end
return time
end
function getDateFromTimeStatement(statement, field)
local struct = {
year = nil,
Ligne 120 ⟶ 149 :
precision = 0
}
▲ if #statements == 0 then
▲ return struct
▲ end
▲ if #statements > 1 then
▲ return struct
▲ end
▲ local snak = statements[1].mainsnak
if snak.snaktype ~= 'value' then
struct.text = errorMessage('La date de ' .. field .. ' n’est pas une valeur sur Wikidata')
|