Module:SlabStuff: Difference between revisions
From IdleOn MMO Wiki
Kiokurashi (talk | contribs) mNo edit summary Tag: Reverted |
Kiokurashi (talk | contribs) mNo edit summary Tag: Manual revert |
||
Line 37: | Line 37: | ||
mw.ext.VariablesLua.vardefine('SlabNum', results[1].Number) | mw.ext.VariablesLua.vardefine('SlabNum', results[1].Number) | ||
return '' | return '' | ||
end | end | ||
return slab | return slab |
Latest revision as of 09:52, 7 April 2023
Documentation for this module may be created at Module:SlabStuff/doc
local slab = {}
local cargo = mw.ext.cargo
local function explode(list, delimiter)
if delimiter == nil then
delimiter = "%s"
end
t = {}
for str in string.gmatch(list, "([^" .. delimiter .. "]+)") do
table.insert(t, str)
end
return t
end
function slab.slabOrderList(frame)
local bigList = frame.args.OrderList
local tableList = explode(bigList, ',')
local ret = ''
for i = 1, #tableList do
frame:expandTemplate{ title = 'SlabOrder/store', args = { Item = tableList[i], Number = i } }
end
return ret
end
function slab.SlabNumGrab(frame)
local item = frame.args.Item
local tables = 'SlabOrder'
local fields = 'Number'
local args = {
where = 'SlabOrder.Item="'.. item ..'"',
orderBy = 'SlabOrder.Number',
default = ''
}
local results = cargo.query( tables, fields, args )
if #results == 0 then return '' end -- if no results, return original string and continue.
mw.ext.VariablesLua.vardefine('SlabNum', results[1].Number)
return ''
end
return slab