Zum Inhalt springen

Modul:Wikidata utilities: Unterschied zwischen den Versionen

+ getLastedit
(moduleInterface)
(+ getLastedit)
Zeile 4: Zeile 4:
local WikidataUtilities = {
local WikidataUtilities = {
suite  = 'WikidataUtilities',
suite  = 'WikidataUtilities',
serial = '2021-04-08',
serial = '2021-05-30',
item  = 65439025
item  = 65439025
}
}
Zeile 10: Zeile 10:
-- i18n
-- i18n
local wd = {
local wd = {
version = 'P348',
version   = 'P348',
retrieved = 'P813',
Gregorian = 'Q12138', -- calendar models
Gregorian = 'Q12138', -- calendar models
prolepticGregorian = 'Q1985727'
prolepticGregorian = 'Q1985727'
Zeile 437: Zeile 438:


return results
return results
end
-- get lastEdit from reference retrieve date
function wu.getLastedit( lastEdit, statements )
local isBoolean = type( lastEdit ) == 'boolean'
if isBoolean and lastEdit == false then
return lastEdit
end
local le = ''
for _, statement in ipairs( statements ) do
if statement.references then
for _, reference in ipairs( statement.references ) do
if reference[ wd.retrieved ] then
for _, retrieved in ipairs( reference[ wd.retrieved ] ) do
retrieved = wu.getDateFromTime( retrieved )
if retrieved > le then
le = retrieved
end
end
end
end
end
end
if isBoolean then
return ( le ~= '' ) and le or lastEdit
else
return ( le > lastEdit ) and le or lastEdit
end
end
end


Anonymer Benutzer