Jump to content

📢 Please make sure to read our Style Guide before editing. For questions, suggestions, or technical issues, please contact Noah.

Module:ShopListTable: Difference between revisions

From CrabCraft Wiki
fixed using owner instead of shopowner
updated shop type
 
(2 intermediate revisions by the same user not shown)
Line 4: Line 4:
function p.Main(frame)
function p.Main(frame)
local tables = 'shop_data'
local tables = 'shop_data'
local fields = 'season,shopname,shopowner,shoptype,location,dateestablished'
local fields = 'season,shopname,shopowner,shoptype,location,dateopened'
local args = {
local args = {
orderBy = 'season ASC, basename ASC',
orderBy = 'season ASC, shopname ASC',
limit = 100 -- Optional; remove or increase if needed
limit = 100 -- Optional; remove or increase if needed
}
}
Line 28: Line 28:
row.shopname or '',
row.shopname or '',
row.shopowner or '',
row.shopowner or '',
row.basetype or '',
row.shoptype or '',
row.location or '',
row.location or '',
row.dateestablished or ''
row.dateopened or ''
))
))
end
end

Latest revision as of 14:56, 24 June 2025

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

local p = {}
local cargo = mw.ext.cargo

function p.Main(frame)
	local tables = 'shop_data'
	local fields = 'season,shopname,shopowner,shoptype,location,dateopened'
	local args = {
		orderBy = 'season ASC, shopname ASC',
		limit = 100 -- Optional; remove or increase if needed
	}

	local results = cargo.query(tables, fields, args)

	local out = {}
	table.insert(out, '{| class="wikitable sortable plainlinks"')
	table.insert(out, '! Season !! Shop !! Owner !! Type !! Location !! Established')

	for _, row in ipairs(results) do
		local season = ''
		if row.season then 
			season = row.season:sub(3, -3)
		end	
		
		if row.shopname ~= '$1' and row.shopname ~= 'Diamond Emporium' then
		table.insert(out, '|-')
		table.insert(out, string.format('| %s || [[%s]] || %s || %s || %s || %s',
			season or '',
			row.shopname or '',
			row.shopowner or '',
			row.shoptype or '',
			row.location or '',
			row.dateopened or ''
		))
		end
	end

	table.insert(out, '|}')
	return table.concat(out, '\n')
end

return p