Module:EcopediaMenu: Difference between revisions

From Eco - English Wiki
[checked revision][checked revision]
No edit summary
No edit summary
 
(9 intermediate revisions by the same user not shown)
Line 1: Line 1:
local p = {}
local Utils = require('Module:Utils')
local Utils = require('Module:Utils')
local IconUtils = require('Module:IconUtils')
local IconUtils = require('Module:IconUtils')
local Lang = Utils.getLanguageName()
local Lang = Utils.WikiLang
local p = {}


function p.MainMenu()
function p.MainMenu()
local MainMenu = ""
local MainMenu = ""
local MenuData = require('Module:EcopediaMenuData')
local MenuData = mw.loadData('Module:EcopediaMenuData')
local MenuList = MenuData.ecopediapages
local MenuList = MenuData.ecopediapages
local Chapter = {}
local Chapter = {}
for Name,Data in pairs(MenuList) do
for Name,Data in pairs(MenuList) do
if (Data[Type] == "Chapter" ) then Chapter[Name] = Data end
if (Data["Type"] == "Chapter" ) then  
MainMenu = MainMenu .. '<div class="col-md-3"><div class="card">'
MainMenu = MainMenu .. '<div class="card-header">' .. Data.Name[Lang] .. '</div>'
MainMenu = MainMenu .. '<ul class="list-group list-group-flush">'
for CatName,CatData in pairs(MenuList) do
if ((CatData["Type"] == "Category") and (CatData["Chapter"] == Name))  then
MainMenu = MainMenu .. ' <li class="list-group-item">' .. IconUtils.main{name = CatData.Name[Lang], id = CatData.Icon , size = 32, style = 1} .. " [[" .. CatData.Name[Lang] .. ']]</li>'
end
end
MainMenu = MainMenu .. '</ul></div></div>'
end
end
end
MainMenu = Chapter["Reference"].Name[Lang]
 
MainMenu = '<div class="row">' .. MainMenu .. '</div>'
return MainMenu
return MainMenu
end
end


return p
return p

Latest revision as of 13:11, 19 May 2026

Documentation for this module may be created at Module:EcopediaMenu/doc

local p = {}

local Utils = require('Module:Utils')
local IconUtils = require('Module:IconUtils')
local Lang = Utils.WikiLang

function p.MainMenu()
	local MainMenu = ""
	local MenuData = mw.loadData('Module:EcopediaMenuData')
	local MenuList = MenuData.ecopediapages
	
	local Chapter = {}
	for Name,Data in pairs(MenuList) do
		if (Data["Type"] == "Chapter" ) then 
			MainMenu = MainMenu .. '<div class="col-md-3"><div class="card">'
			MainMenu = MainMenu .. '<div class="card-header">' .. Data.Name[Lang] .. '</div>'
			MainMenu = MainMenu .. '<ul class="list-group list-group-flush">'
			for CatName,CatData in pairs(MenuList) do
				if ((CatData["Type"] == "Category") and (CatData["Chapter"] == Name))  then
					MainMenu = MainMenu .. ' <li class="list-group-item">' .. IconUtils.main{name = CatData.Name[Lang], id = CatData.Icon , size = 32, style = 1} .. " [[" .. CatData.Name[Lang] .. ']]</li>'
				end
			end
			MainMenu = MainMenu .. '</ul></div></div>'
		end
	end

	MainMenu = '<div class="row">' .. MainMenu .. '</div>'
	return MainMenu
end

return p