Module:Database reports/sandbox
Appearance
| This is the module sandbox page for Module:Database reports (diff). |
The subpages of this page are used for storing database report configurations.
For the module used to create the subpages, see Module:Database report (without the 's').
Subpages
[edit]- Database reports/Example report
- Database reports/Example report/doc
- Database reports/Hot articles
- Database reports/Hot articles/doc
- Database reports/Hot articles/sandbox
- Database reports/Hot articles by category
- Database reports/Hot articles by category/doc
- Database reports/Long pages by namespace
- Database reports/Long pages by namespace/doc
- Database reports/WikiProject edit count
- Database reports/WikiProject edit count/doc
- Database reports/doc
- Database reports/sandbox
local Report = require('Module:Database report')
local Arguments = require('Module:Arguments')
local p = {}
p.main = function(frame)
local args = Arguments.getArgs(frame)
local report = Report:new()
report:setSQL([[
SELECT page_namespace, page_title FROM page LIMIT 10
]])
report:useWikilinks(2, args.ns_number)
report:setHeadContent('This is the head content')
report:setSilent(args.silent ~= nil)
return report:generate()
end
p.withJs = function()
local report = Report:new()
report:setSQL([[
SELECT page_namespace, page_title from page WHERE page_random > 0.65 limit 50
]])
report:setPostprocessJS([[
async function postprocess(rows) {
const result = await bot.api({
"format": "json",
"prop": "revisions",
"titles": "Main Page",
"formatversion": "2"
});
const user = result.query.pages[0].revisions[0].user;
const restData = await bot.request('/media/api/rest_v1/metrics/pageviews/per-article/en.wikipedia.org/all-access/all-agents/Main%20Page/daily/20240531/20240531');
log(restData);
rows.forEach(row => {
row.title = row.page_title.replace(/_/g, ' ');
row.user = user;
row.random = Math.random();
row.views = restData.items[0].views;
delete row.page_namespace;
delete row.page_title;
});
return rows;
}
]])
return report:generate()
end
return p