local day = 24*60*60 -- in seconds local week = 7*day local year = 52*week local date = os.date function formatters.date (t,flag) local diff = os.time() - t local nm if diff < day then nm = 'today' elseif diff < week then nm = date('%a',t) elseif diff < year then return date('%d %b',t) else return date('%c',t) end return nm..' '..date('%H:%M',t) end