模組:TFA title
外观
围绕Module:TFA title/data.json中的数据的Lua包装器,主要用于{{Editnotices/Namespace/Main}}。
用法
[编辑]{{#invoke:TFA title|is_todays_tfa|{{PAGENAME}}}},如果目标页面是今日特色内容(典范条目或特色列表)则返回yes,反之则不返回任何内容。
local p = {}
local data = mw.loadJsonData("Module:TFA title/data.json")
-- Internal, today's date as YYYY-MM-DD
local function today()
return os.date("%Y-%m-%d")
end
-- Get the TFA title for the specified "YYYY-MM-DD" date. May be
-- a single title, an array of multiple titles, or nil, if no title is known
function p.title(date)
return data.titles[date] or nil
end
-- Today's TFA, see title() for possible return values
function p.today_title()
return p.title(today())
end
-- Is the specified title the TFA today?
-- Returns "yes" or "", for use with {{#if:}}
function p.is_todays_tfa(frame)
return p.is_tfa_on(frame.args[1], today())
end
-- Is the specified title the TFA on the specified date?
-- Returns "yes" or "", for use with {{#if:}}
function p.is_tfa_on(title, date)
local days_title = p.title(date)
if days_title == nil then
-- no clue
return ""
end
if type(days_title) == "string" then
if title == days_title then
return "yes"
else
return ""
end
end
-- table case, multiple titles
for _, check in pairs( days_title ) do
if check == title then
return "yes"
end
end
return ""
end
return p