Module:Leapyear
Jump to navigation
Jump to search
Template:Template for discussion/dated
Usage
By default returns 1 if it's a leap year and 0 when it isn't if unnamed parameter 1 is defined it returns that when it is a leap-year and if unnamed parameter 2 is defined it returns it when it's not a leap year. Use blank to return nothing.
Use local mLeapyear = require('Module:Leapyear')._main when using in a module that already uses Module:Arguments
Example
0
{{#invoke:leapyear|main}}
no
{{#invoke:leapyear|main|yes|no}} |yes |no
0
{{#invoke:leapyear|main|blank|0}} |blank |0
{{#invoke:leapyear|main|1|blank}} |1 |blank
local getArgs = require('Module:Arguments').getArgs
local p = {}
local function leap_year ()
local leapyear
if (0 == (year%4) and (0 ~= (year%100) or 0 == (year%400))) then -- if leapyear then
leapyear = 'yes' -- leapyear = yes
end
end
function p.main(frame)
local args = getArgs(frame)
return p._main(args)
end
function p._main(args)
if leapyear == 'yes' then -- if leapyear then
if args[1] then -- if args[1] is defined then
if args[1] == 'blank' then -- if args[1] is blank then
return -- return (''blank'')
else
return args[1] -- if args[1] isn't blank then return args[1]
end
else
return 1 -- if args[1] isn't defined return 1
end
else -- if not leapyear then
if args[2] then -- if args[2] is defined then
if args[2] == 'blank' then -- if args[2] is blank
return -- return (''blank'')
else
return args[2] -- if args[2] isn't blank then return args[2]
end
else
return 0 -- if args[2] isn't defined return 0
end
end
end
return p -- displays result