MediaWiki:Gadget-OnlineAdmins.js: Difference between revisions

Jump to navigation Jump to search
Reverted to revision 846204877 by 1233 (talk). (TW)
No edit summary
(Reverted to revision 846204877 by 1233 (talk). (TW))
Line 1: Line 1:
// Localized en version
// Localized en version
// Create portlet link
// Create portlet link
function getlistusers() {
var portletLinkOnline = mw.util.addPortletLink(
    'p-personal',
    '#',
    'Find Admins',
    't-onlineadmin',
    'Seek help from admins.',
    '',
    '#pt-userpage'
);
    var rcstart, rcend, time;
    var users = [];
    var admins = [], rollbackers = [], patrollers = [];
    var api = new mw.Api();
 
    // Bind click handler
     $(portletLinkOnline).click(function(e) {
     $(portletLinkOnline).click(function(e) {
         e.preventDefault();
         e.preventDefault();
Line 43: Line 57:
                 // Removing Duplicate Usernames
                 // Removing Duplicate Usernames
                 users = $.unique(users.sort());
                 users = $.unique(users.sort());
});


var portletLinkOnline = mw.util.addPortletLink(
    'p-personal',
    '#',
    'Find Admins',
    't-onlineadmin',
    'Seek help from admins.',
    '',
    '#pt-userpage'
);
    var rcstart, rcend, time;
    var users = [];
    var admins = [], rollbackers = [], patrollers = [];
    var api = new mw.Api();
getlistusers();
                 var promises = [];
                 var promises = [];
                 var mark = function(data) {
                 var mark = function(data) {
Line 106: Line 105:
             });
             });
         });
         });
     }
     });
// Create portlet link
// Create portlet link
var portletLinkOnline = mw.util.addPortletLink(
var portletLinkOnline = mw.util.addPortletLink(
Line 129: Line 128:
         var usersExt = [];
         var usersExt = [];
         admins = [];
         admins = [];
        rollbackers = [];
         patrollers = [];
         patrollers = [];
getlistusers();
 
        //Recent edit within 15 minutes
        time = new Date();
        rcstart = time.toISOString();
        time.setMinutes(time.getMinutes() - 15);
        rcend = time.toISOString();
 
        //API:RecentChanges
        api.get({
            format: 'json',
            action: 'query',
            list: 'recentchanges',
            rcprop: 'user',
            rcstart: rcstart,
            rcend: rcend,
            rcshow: '!bot|!anon',
            rclimit: 500
        }).done(function(data) {
            $.each(data.query.recentchanges, function(i, item) {
                users[i] = item.user;
            });
            api.get({
                format: 'json',
                action: 'query',
                list: 'logevents',
                leprop: 'user',
                lestart: rcstart,
                leend: rcend,
                lelimit: 500
            }).done(function(data) {
                $.each(data.query.logevents, function(i, item) {
                    usersExt[i] = item.user;
                });
                Array.prototype.push.apply(users, usersExt);
                users = $.unique(users.sort());
                 var promises = [];
                 var promises = [];
                 var mark = function(data) {
                 var mark = function(data) {
Line 177: Line 211:
                     mw.notify('Error 404');
                     mw.notify('Error 404');
                 });
                 });
            });
        });
     });
     });
var portletLinkOnline = mw.util.addPortletLink(
var portletLinkOnline = mw.util.addPortletLink(
Line 191: Line 227:
     var rollbackers = [];
     var rollbackers = [];
     var api = new mw.Api();
     var api = new mw.Api();
getlistusers();
    $(portletLinkOnline).click(function(e) {
        e.preventDefault();
        users = [];
        var usersExt = [];
        rollbackers = [];
        time = new Date();
        rcstart = time.toISOString();
        time.setMinutes(time.getMinutes() - 15);
        rcend = time.toISOString();
        api.get({
            format: 'json',
            action: 'query',
            list: 'recentchanges',
            rcprop: 'user',
            rcstart: rcstart,
            rcend: rcend,
            rcshow: '!bot|!anon',
            rclimit: 500
        }).done(function(data) {
            $.each(data.query.recentchanges, function(i, item) {
                users[i] = item.user;
            });
            api.get({
                format: 'json',
                action: 'query',
                list: 'logevents',
                leprop: 'user',
                lestart: rcstart,
                leend: rcend,
                lelimit: 500
            }).done(function(data) {
                $.each(data.query.logevents, function(i, item) {
                    usersExt[i] = item.user;
                });
                Array.prototype.push.apply(users, usersExt);
                users = $.unique(users.sort());
                 var promises = [];
                 var promises = [];
                 var mark = function(data) {
                 var mark = function(data) {
Line 269: Line 340:
         time.setMinutes(time.getMinutes() - 15);
         time.setMinutes(time.getMinutes() - 15);
         rcend = time.toISOString();
         rcend = time.toISOString();
getlistusers();
 
        //API:RecentChanges
        api.get({
            format: 'json',
            action: 'query',
            list: 'recentchanges',
            rcprop: 'user',
            rcstart: rcstart,
            rcend: rcend,
            rcshow: '!bot|!anon',
            rclimit: 500
        }).done(function(data) {
            $.each(data.query.recentchanges, function(i, item) {
                users[i] = item.user;
            });
            api.get({
                format: 'json',
                action: 'query',
                list: 'logevents',
                leprop: 'user',
                lestart: rcstart,
                leend: rcend,
                lelimit: 500
            }).done(function(data) {
                $.each(data.query.logevents, function(i, item) {
                    usersExt[i] = item.user;
                });
                Array.prototype.push.apply(users, usersExt);
                users = $.unique(users.sort());
                 var promises = [];
                 var promises = [];
                 var mark = function(data) {
                 var mark = function(data) {
Anonymous user
Cookies help us deliver our services. By using our services, you agree to our use of cookies.

Navigation menu