Module:TimeAgo
From Bhikitia, An open encyclopedia
More actions
Documentation for this module may be created at Module:TimeAgo/doc
local p = {}
function p.timeago(frame)
local date = frame.args[1] or ""
if date == "" then return "Invalid date" end
local current = os.time()
local given = os.time{year=string.sub(date, 1, 4), month=string.sub(date, 6, 7), day=string.sub(date, 9, 10)}
local diff = os.difftime(current, given)
local days = math.floor(diff / (24 * 60 * 60))
if days < 1 then
return "Today"
elseif days == 1 then
return "1 day ago"
elseif days < 30 then
return days .. " days ago"
elseif days < 365 then
return math.floor(days / 30) .. " months ago"
else
return math.floor(days / 365) .. " years ago"
end
end
return p