Module:ToolInventoryData
From Claremont MakerSpace
Documentation for this module may be created at Module:ToolInventoryData/doc
local p = {} local function getToolInfo(asset_tag) mw.getCurrentFrame():callParserFunction( '#get_web_data', { url = 'SNIPEIT_URL/api/v1/hardware/bytag/' .. asset_tag, format='json', 'use jsonpath', data='status=$.status_label.name' } ) return { status = mw.getCurrentFrame():callParserFunction('#external_value', {'status'}) } end function p.ToolInstanceTable(frame) local out = '{| class="wikitable" style="margin: 0;"\n! Asset Tag || Status \n|-\n' for idx, asset_tag in ipairs(mw.text.split(frame.args[1], ';')) do local data = getToolInfo(asset_tag) local link ='[https://inventory.claremontmakerspace.org/hardware/bytag?assetTag='..asset_tag..' '..asset_tag..']' out = out .. '|' .. link .. '||' .. data.status .. '\n|-\n' end return out .. '|}' end return p