Module:DayCalc: Difference between revisions

Fixing up the get_next_tuesday logic and made it use an offset so that the date calculation uses Pacific Standard Time
(Simplifying, but still kludged. Will need to fix properly later)
(Fixing up the get_next_tuesday logic and made it use an offset so that the date calculation uses Pacific Standard Time)
 
Line 5:
function p.get_next_tuesday(frame)
local isodate = frame.args.isodate
local current_timepst_tzoffset = os.time0 - ( 8 * 60 * 60 )
local current_time = os.time() + pst_tzoffset
local current_day_of_week = tonumber(os.date("%w", current_time))
local days_until_tuesday = (79 - current_day_of_week) % 7
local next_tuesday_time = current_time + days_until_tuesday * 8640024 --* 8640060 seconds* in a day60
local retval="UNDEFINED"
 
if isodate == "true" and current_day_of_week == 2 then
retval = os.date("%Y-%m-%d", current_time)
elseif current_day_of_week == 2 then
retval="2023-12-19"
retval = os.date("%B %d, %Y", current_time)
elseif isodate == true then
retval = os.date("%Y-%m-%d", next_tuesday_time)
else
retval = os.date("%B %d, %Y", current_timenext_tuesday_time)
retval="December 19, 2023"
end
return retval