This module calculates and displays PROD expiry dates, automatically highlighting expired nominations.
This module calculates and displays PROD expiry dates, automatically highlighting expired nominations.
It is primarily used by User:DreamRimmer bot II/ProdSummary through {{PROD expiry}}.
local p = {}
local lang = mw.language.getContentLanguage()
function p.main(frame)
local date = frame.args[1] or frame:getParent().args[1]
if not date or date == '' then
return ''
end
local success, unix = pcall(
function()
return tonumber(lang:formatDate('U', date))
end
)
if not success or not unix then
return '<span class="error">Invalid date</span>'
end
local days = tonumber(frame.args[2] or frame:getParent().args[2]) or 7
local expiry = unix + (days * 24 * 60 * 60)
local now = tonumber(lang:formatDate('U'))
local expiryText = lang:formatDate('j F H:i', '@' .. expiry):gsub(' ', ' ')
if now >= expiry then
local label = days == 5 and 'Expired LLMPROD' or 'Expired PROD'
return string.format(
'<span style="color:red;">%s (%s)</span>',
expiryText,
label
)
end
return expiryText
end
return p
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.