MediaWiki
Gadget-statistics.js
From Dogcraft Wiki
No edit summary |
(test) |
||
Line 5: | Line 5: | ||
var templateNoInclude = '<noinclude>\n{{EditCountMain|mode=table}}\n{{EditCountMain|mode=single|username=username}}\n{{EditCountMain|mode=single|username=Me!}}\n{{EditCountMain|mode=raw}}\n{{EditCountMain|mode=double}} text\ntext\ntext <br> text\n</noinclude>\n', | var templateNoInclude = '<noinclude>\n{{EditCountMain|mode=table}}\n{{EditCountMain|mode=single|username=username}}\n{{EditCountMain|mode=single|username=Me!}}\n{{EditCountMain|mode=raw}}\n{{EditCountMain|mode=double}} text\ntext\ntext <br> text\n</noinclude>\n', | ||
templateSection1 = '<includeonly>{{#switch: {{{mode|}}}\n|table = <div class=\"phonefullscreen uecTable2\">\n{{{!}} class=\"wikitable sortable\"\n!Username\n!Edit count\n', | templateSection1 = '<includeonly>{{#switch: {{{mode|}}}\n|table = <div class=\"phonefullscreen uecTable2\">\n{{{!}} class=\"wikitable sortable\"\n!Username\n!Edit count\n', | ||
templateSection1data = | templateSection1data = getEditCount("table"), | ||
templateSection2 = '{{!}}}</div>\n|single = \n{{#switch: {{{username}}} \n', | templateSection2 = '{{!}}}</div>\n|single = \n{{#switch: {{{username}}} \n', | ||
templateSection2data = | templateSection2data = getEditCount("single"), | ||
templateSection3 = '|There is no data on this user\n}}\n|raw =\n', | templateSection3 = '|There is no data on this user\n}}\n|raw =\n', | ||
templateSection3data = | templateSection3data = getEditCount("raw"), | ||
templateSection4 = '|That mode does not exist\n}}\n', | templateSection4 = '|That mode does not exist\n}}\n', | ||
pagecontent = templateNoInclude + templateSection1 + templateSection1data + templateSection2 + templateSection2data + templateSection3 + templateSection3data + templateSection4; | pagecontent = templateNoInclude + templateSection1 + templateSection1data + templateSection2 + templateSection2data + templateSection3 + templateSection3data + templateSection4; | ||
Line 25: | Line 25: | ||
api = new mw.Api(); | api = new mw.Api(); | ||
api.postWithToken( 'csrf', params ); | api.postWithToken( 'csrf', params ); | ||
} | } | ||
function getEditCount() { | function getEditCount(uecMode) { | ||
var params = { | |||
action: 'query', | |||
format: 'json', | |||
list: 'allusers', | |||
aulimit: 200, | |||
auprop: 'editcount' | |||
}, | |||
api = new mw.Api(); | |||
api.get(params).done( function (data) | |||
{ | |||
var users = data.query.allusers, | |||
uecData, | |||
u; | |||
if (uecMode == "table") | |||
{ | |||
for ( u in users ) { | |||
uecData += '{{!}}-\n{{!}}users[u].name {{!!}} users[u].editcount\n{{!}}-\n'; | |||
} | |||
} | |||
else if (uecMode == "single") | |||
{ | |||
for ( u in users ) { | |||
uecData += '|users[u].name = users[u].editcount \n'; | |||
} | |||
} | |||
else if (uecMode == "raw") | |||
{ | |||
for ( u in users ) { | |||
uecData += 'users[u].name users[u].editcount\n'; | |||
} | |||
} | |||
}); | |||
return uecData; | |||
} | } | ||
Revision as of 17:22, 5 July 2020
$(document).ready(function() {
function testAPIEdit() {
var templateNoInclude = '<noinclude>\n{{EditCountMain|mode=table}}\n{{EditCountMain|mode=single|username=username}}\n{{EditCountMain|mode=single|username=Me!}}\n{{EditCountMain|mode=raw}}\n{{EditCountMain|mode=double}} text\ntext\ntext <br> text\n</noinclude>\n',
templateSection1 = '<includeonly>{{#switch: {{{mode|}}}\n|table = <div class=\"phonefullscreen uecTable2\">\n{{{!}} class=\"wikitable sortable\"\n!Username\n!Edit count\n',
templateSection1data = getEditCount("table"),
templateSection2 = '{{!}}}</div>\n|single = \n{{#switch: {{{username}}} \n',
templateSection2data = getEditCount("single"),
templateSection3 = '|There is no data on this user\n}}\n|raw =\n',
templateSection3data = getEditCount("raw"),
templateSection4 = '|That mode does not exist\n}}\n',
pagecontent = templateNoInclude + templateSection1 + templateSection1data + templateSection2 + templateSection2data + templateSection3 + templateSection3data + templateSection4;
var params = {
action: 'edit',
format: 'json',
title: 'User:Domino/Sandbox',
text: pagecontent,
summary: 'Edit added with the API',
bot : 1,
},
api = new mw.Api();
api.postWithToken( 'csrf', params );
}
function getEditCount(uecMode) {
var params = {
action: 'query',
format: 'json',
list: 'allusers',
aulimit: 200,
auprop: 'editcount'
},
api = new mw.Api();
api.get(params).done( function (data)
{
var users = data.query.allusers,
uecData,
u;
if (uecMode == "table")
{
for ( u in users ) {
uecData += '{{!}}-\n{{!}}users[u].name {{!!}} users[u].editcount\n{{!}}-\n';
}
}
else if (uecMode == "single")
{
for ( u in users ) {
uecData += '|users[u].name = users[u].editcount \n';
}
}
else if (uecMode == "raw")
{
for ( u in users ) {
uecData += 'users[u].name users[u].editcount\n';
}
}
});
return uecData;
}
document.getElementById('gadgetSandboxButton').innerHTML = "<div id='gadgetSandboxButtoninner'><button type='button' style='background:blue;'>Press this to get editcounts</button></div>";
document.getElementById('gadgetSandboxButton').onclick = function() {testAPIEdit()};
});
This page was last modified on 5 July 2020, at 17:22. (12 months ago)