Modul:TNT: Unterschied zwischen den Versionen

Even more helpful error message
K (Changed protection level for "Module:TNT": High-risk Lua module: per request at WP:RFPP to match Module:Excerpt ([Edit=Require template editor access] (indefinite) [Move=Require template editor access] (indefinite)))
(Even more helpful error message)
Zeile 50: Zeile 50:
id = mw.text.trim(v)
id = mw.text.trim(v)
elseif type(k) == 'number' then
elseif type(k) == 'number' then
table.insert(params, mw.text.trim(v))
params[k - 2] = mw.text.trim(v)
elseif k == 'lang' and v ~= '_' then
elseif k == 'lang' and v ~= '_' then
lang = mw.text.trim(v)
lang = mw.text.trim(v)
Zeile 96: Zeile 96:
local data = loadData(dataset)
local data = loadData(dataset)
local names = {}
local names = {}
for _, field in pairs(data.schema.fields) do
for _, field in ipairs(data.schema.fields) do
table.insert(names, field.name)
table.insert(names, field.name)
end
end
Zeile 102: Zeile 102:
local params = {}
local params = {}
local paramOrder = {}
local paramOrder = {}
for _, row in pairs(data.data) do
for _, row in ipairs(data.data) do
local newVal = {}
local newVal = {}
local name = nil
local name = nil
for pos, val in pairs(row) do
for pos, columnName in ipairs(names) do
local columnName = names[pos]
if columnName == 'name' then
if columnName == 'name' then
name = val
name = row[pos]
else
else
newVal[columnName] = val
newVal[columnName] = row[pos]
end
end
end
end
Zeile 157: Zeile 156:
-- Give helpful error to thirdparties who try and copy this module.
-- Give helpful error to thirdparties who try and copy this module.
if not mw.ext or not mw.ext.data or not mw.ext.data.get then
if not mw.ext or not mw.ext.data or not mw.ext.data.get then
error('Missing JsonConfig extension; Cannot load https://commons.wikimedia.org/wiki/Data:' .. dataset)
error(string.format([['''Missing JsonConfig extension, or not properly configured;
Cannot load https://commons.wikimedia.org/wiki/Data:%s.
See https://www.mediawiki.org/wiki/Extension:JsonConfig#Supporting_Wikimedia_templates''']], dataset))
end
end