User:Euphoria/massBlock.js: Difference between revisions

From Test Wiki
no edit summary
No edit summary
No edit summary
Line 1: Line 1:
if (mw.config.get('wgUserGroups').includes('sysop')) {
if (mw.config.get('wgUserGroups').includes('sysop')) {
    // Function to create the blocking interface
     function createBlockingInterface() {
     function createBlockingInterface() {
         var formHtml = '<div id="massBlockForm" style="background: white; border: 1px solid black; padding: 10px;">'
         var formHtml = '<div id="massBlockForm" style="background: white; border: 1px solid black; padding: 10px;">'
Line 21: Line 22:
             + '</div>';
             + '</div>';


         // Append the form to a specific part of the Wikipedia interface
         // Check if the form already exists to avoid duplicates
         $('#someWikipediaContainer').append(formHtml);
         if ($('#massBlockForm').length === 0) {
            $('body').append(formHtml);
        }


         $('#executeMassBlock').click(function() {
         $('#executeMassBlock').click(function() {
Line 34: Line 37:
     }
     }


    // Function to block a user
     function blockUser(username, reason, duration) {
     function blockUser(username, reason, duration) {
         var api = new mw.Api();
         var api = new mw.Api();
Line 51: Line 55:
     }
     }


    // Add link to the sidebar
     $(document).ready(function() {
     $(document).ready(function() {
         createBlockingInterface();
         var portletLink = mw.util.addPortletLink(
            'p-tb', // This is the ID of the toolbox section in the sidebar
            '#', // We'll bind the click event to open the interface
            'Mass Block', // The text of the link
            't-massblock', // The ID of the new link
            'Mass block users' // Tooltip text for the link
        );
 
        // Bind click event to the link
        $(portletLink).click(function(e) {
            e.preventDefault(); // Prevent the default action
            createBlockingInterface(); // Call the function to create/open the blocking interface
        });
     });
     });
}
}
152

edits

Cookies help us deliver our services. By using our services, you agree to our use of cookies.