Module:On This Day: Difference between revisions

From Zelda Wiki, the Zelda encyclopedia
Jump to navigation Jump to search
No edit summary
No edit summary
Line 41: Line 41:
-- mobile version
-- mobile version
result = mw.html.create("div")
result = result .. mw.html.create("div")
:addClass("mobile-only infoblock")
:addClass("mobile-only infoblock")
:attr("id", "on-this-day")
:attr("id", "on-this-day")

Revision as of 08:31, 10 February 2020

Lua error in package.lua at line 80: module 'Module:UtilsCode' not found.


local p = {}
local h = {}
local cargo = mw.ext.cargo
local utilsCode = require("Module:UtilsCode")

function p._Main(frame)
	local entry = h.GetEntryForToday()
	return h.DisplaySection(entry)
end

function h.GetEntryForToday()
	local formattedDate = os.date("%m-%d")
	local entries = cargo.query("OnThisDay", "date, title, filename, text, link", {})
	
	local todayEntries = {}
	for key, entry in ipairs(entries) do
		if string.sub(entry["date"], 6) == formattedDate then
			table.insert(todayEntries, entry)
		end
	end
	return todayEntries[1]
end

function h.DisplaySection(entry)
	if not utilsCode.IsEmpty(entry) then
		local diffYears = os.date("%Y") - tonumber(string.sub(entry["date"], 1, 4))
		
		-- desktop version
		result = mw.html.create("div")
			:addClass("no-mobile infoblock")
			:attr("id", "on-this-day")
			:node(mw.html.create("div")
				:addClass("infoblock-header")
				:wikitext("On this day,<br>" .. diffYears .. " years ago..."))
			:node(mw.html.create("div")
				:addClass("infoblock-content")
				:wikitext("[[File:" .. entry["filename"] .. "|left|200x200px]]<span class='infoblock-title'>" .. entry["title"] .. "</span><br>" .. entry["text"]))
			:node(mw.html.create("div")
				:addClass("infoblock-read-more")
				:wikitext(mw.getCurrentFrame():preprocess("<nowiki>[</nowiki>[[" .. entry["link"] .. "|Read more...]]<nowiki>]</nowiki>")))
			
		-- mobile version
		result = result .. mw.html.create("div")
			:addClass("mobile-only infoblock")
			:attr("id", "on-this-day")
			:node(mw.html.create("div")
				:addClass("infoblock-header")
				:wikitext("On this day,<br>" .. diffYears .. " years ago..."))
			:node(mw.html.create("div")
				:addClass("infoblock-title")
				:wikitext(entry["title"]))
			:node(mw.html.create("div")
				:addClass("infoblock-content")
				:wikitext("[[File:" .. entry["filename"] .. "|left|150x150px]]" .. entry["text"]))
			:node(mw.html.create("div")
				:addClass("infoblock-read-more")
				:wikitext(mw.getCurrentFrame():preprocess("<nowiki>[</nowiki>[[" .. entry["link"] .. "|Read more...]]<nowiki>]</nowiki>")))
	end
	return result
end

return p