Module:Systime: Difference between revisions
Fireheart& (talk | contribs) (Implement 'toSystime'.) |
Fireheart& (talk | contribs) m (Add missing spacing.) |
||
| (26 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
-- This module implements {{Systime}}. | -- This module implements {{Systime}}. | ||
local p = {} | |||
time = os.time({year = year, month = month ~= | |||
function p.toSystime(frame) | |||
year = frame.args.year | |||
month = frame.args.month | |||
day = frame.args.day | |||
hour = frame.args.hour | |||
min = frame.args.min | |||
sec = frame.args.sec | |||
time = os.time({year = year, month = month ~= "" and month or 1, day = day ~= "" and day or 1, hour = hour, min = min, sec = sec}) | |||
date = os.date("*t", time) | date = os.date("*t", time) | ||
yday = month ~= | yday = month ~= "" and day ~= "" and "+" .. date.yday or "" | ||
tdec = date.hour / 24 + date.min / 60 / 24 + date.sec / 60 / 60 / 24 | tdec = date.hour / 24 + date.min / 60 / 24 + date.sec / 60 / 60 / 24 | ||
tdec = hour ~= | tdec = hour ~= "" and string.sub(math.floor(tdec * 100 + 0.5) / 100, 2) or "" | ||
year = date.year - 2124 | year = date.year - 2124 | ||
return year .. yday .. tdec | return year .. yday .. tdec | ||
end | end | ||
function p.toTimestamp(frame) | |||
year = frame.args.year | |||
month = frame.args.month | |||
day = frame.args.day | |||
hour = frame.args.hour | |||
min = frame.args.min | |||
sec = frame.args.sec | |||
time = os.time({year = year, month = month ~= "" and month or 1, day = day ~= "" and day or 1, hour = hour, min = min, sec = sec}) | |||
return (month ~= "" and day ~= "" and os.date("%Y %B %d", time) or os.date("%Y", time)) .. (hour ~= "" and os.date(" %H:%M", time) or "") | |||
end | |||
return p | |||
Latest revision as of 18:59, 3 February 2024
Documentation for this module may be created at Module:Systime/doc
-- This module implements {{Systime}}.
local p = {}
function p.toSystime(frame)
year = frame.args.year
month = frame.args.month
day = frame.args.day
hour = frame.args.hour
min = frame.args.min
sec = frame.args.sec
time = os.time({year = year, month = month ~= "" and month or 1, day = day ~= "" and day or 1, hour = hour, min = min, sec = sec})
date = os.date("*t", time)
yday = month ~= "" and day ~= "" and "+" .. date.yday or ""
tdec = date.hour / 24 + date.min / 60 / 24 + date.sec / 60 / 60 / 24
tdec = hour ~= "" and string.sub(math.floor(tdec * 100 + 0.5) / 100, 2) or ""
year = date.year - 2124
return year .. yday .. tdec
end
function p.toTimestamp(frame)
year = frame.args.year
month = frame.args.month
day = frame.args.day
hour = frame.args.hour
min = frame.args.min
sec = frame.args.sec
time = os.time({year = year, month = month ~= "" and month or 1, day = day ~= "" and day or 1, hour = hour, min = min, sec = sec})
return (month ~= "" and day ~= "" and os.date("%Y %B %d", time) or os.date("%Y", time)) .. (hour ~= "" and os.date(" %H:%M", time) or "")
end
return p