Content deleted Content added
No edit summary |
No edit summary |
||
Line 8:
]]
require('Module:No globals')
local p = {}
local cfg -- Data structure from ~/Events
local eventdata -- Data structure from ~/localfiles/<holiday name>
--[[--------------------------< inlineError >-----------------------
Line 186 ⟶ 189:
]]
local function dateOffset(origdate, offset)
local year, month, day = origdate:match ('(%d%d%d%d)-(%d%d)-(%d%d)')
Line 201 ⟶ 204:
]]
local function renderHoli(cfg,eventdata,calcdate,date,df,format,tname,cite)
local hits = 0
Line 210 ⟶ 213:
-- user-supplied date calculator
if cfg.datatype == "calculator" then
startdate = calcdate
enddate = dateOffset(startdate, cfg.days - 1)
return inlineError("holiday", '
-- read dates from localfile -- it assumes dates are in chrono order, need a more flexible method
Line 242 ⟶ 245:
enddate = dateOffset(startdate, cfg.days - 1)
elseif startdate and not enddate then
return inlineError("
else
return inlineError("
end
end
Line 311 ⟶ 314:
local cite = nil -- leave a citation at end
local calcdate = ""
▲ track = {} -- global tracking-category table
--- Determine holiday
Line 319 ⟶ 320:
holiday = trimArg(args.event) -- event alias
if not holiday then
return inlineError("holiday",
end
end
Line 326 ⟶ 327:
date = trimArg(args.year) -- required
if not date then
return inlineError("year",
elseif not isValidDate(date, "01", "01") then
return inlineError("year",
end
Line 340 ⟶ 341:
-- Load configuration file
local eventsfile = mw.loadData ('Module:Calendar date/Events')
if eventsfile.hebrew_calendar[mw.ustring.upper(holiday)] then
cfg = eventsfile.hebrew_calendar[mw.ustring.upper(holiday)]
Line 346 ⟶ 347:
cfg = eventsfile.misc_events[mw.ustring.upper(holiday)]
else
return inlineError("holiday", '
end
-- If datatype = localfile
if cfg.datatype == "localfile" then
local eventfile = nil
eventfile = mw.loadData ('Module:Calendar date/localfiles/' .. holiday)
if eventfile.event then
eventdata = eventfile.event
else
return inlineError("holiday", '
end
Line 363 ⟶ 365:
local year, month, day = calcdate:match ('(%d%d%d%d)-(%d%d)-(%d%d)')
if not isValidDate(year, month, day) then
return inlineError("holiday", '
end
else
return inlineError("holiday", '
end
|