Module:TNT: Difference between revisions

From Test Wiki
Content deleted Content added
m 1 revision imported
Update from master using #Synchronizer
Line 33: Line 33:
-- if the current page is Template:Graph:Lines/doc
-- if the current page is Template:Graph:Lines/doc
--
--

local config = (function()
local ok, res = pcall(mw.loadData, "Module:TNT/config");
return ok and res or {};
end)();


local p = {}
local p = {}
Line 89: Line 94:
function p.doc(frame)
function p.doc(frame)
local dataset = sanitizeDataset(frame.args[1])
local dataset = sanitizeDataset(frame.args[1])
local json, dataPage, categories = implGetTemplateData(dataset)
local json, dataPage, categories = implGetTemplateData(nil, dataset, frame.args)
return frame:extensionTag('templatedata', json) ..
return frame:extensionTag('templatedata', json) ..
formatMessage(i18nDataset, 'edit_doc', {link(dataPage)}) ..
formatMessage(i18nDataset, 'edit_doc', {link(dataPage)}) ..
Line 96: Line 101:


function p.getTemplateData(dataset)
function p.getTemplateData(dataset)
local data = implGetTemplateData(dataset, true);
local data = implGetTemplateData(true, dataset);
return data;
return data;
end
end


function implGetTemplateData(dataset, legacy)
function p.getTemplateDataNew(...)
return implGetTemplateData(nil, ...);
end

function implGetTemplateData(legacy, dataset, args)
-- TODO: add '_' parameter once lua starts reindexing properly for "all" languages
-- TODO: add '_' parameter once lua starts reindexing properly for "all" languages
local data, dataPage, categories = loadData(
local data, dataPage, categories = loadData(
Line 146: Line 155:
paramOrder=paramOrder,
paramOrder=paramOrder,
description=data.description,
description=data.description,
-- TODO: Store this in a dataset:
format = (args and args.format or nil),
})
})


Line 192: Line 203:
data = mw.ext.data.get('Templatedata/' .. dataset, lang);
data = mw.ext.data.get('Templatedata/' .. dataset, lang);
if data ~= false then
if data ~= false then
local legacyTemplateDataCategoryName = config.legacyTemplateDataCategoryName;
categories = '[[Category:Templates using legacy global TemplateData table name]]';
if legacyTemplateDataCategoryName ~= false then
categories = string.format(
'[[Category:%s%s]]',
legacyTemplateDataCategoryName or "Templates using legacy global TemplateData table name",
config.translatableCategoryLink and mw.getCurrentFrame():callParserFunction("#translation:") or ""
);
end
dataPage = 'Templatedata/' .. dataset;
dataPage = 'Templatedata/' .. dataset;
end
end
Line 205: Line 223:
error('Missing Commons dataset ' .. i18nDataset)
error('Missing Commons dataset ' .. i18nDataset)
else
else
error(formatMessage(i18nDataset, 'error_bad_dataset', {link(dataset)}))
error(formatMessage(i18nDataset, 'error_bad_dataset', {link(dataPage)}))
end
end
end
end
return data, dataPage, categories
return data, dataPage, categories;
end
end