!ban is a command for Special:Chat that allows to ban users entering a simple syntax on the message input.


Add the following to your wiki's MediaWiki:Chat.js — remember to request custom JavaScript through Special:Contact first — or your personal chat.js:

importArticles( {
    type: 'script',
    articles: [
        // ...
        // ...
} );
importArticles — Best Practices for installing JavaScript on FANDOM
The importArticles statement is designed to combine multiple HTTP requests into a single data transfer, allowing multiple scripts to load and execute faster. If you've been installing several different scripts, your JavaScript file has probably accumulated unnecessary import statements. Click "Expand" to learn how to efficiently batch import scripts to speed up performance and make your code look cleaner. One other approach is by using the MediaWiki:ImportJS.
If your JavaScript file has several lines of code that say importScript, importScriptPage, or importArticles, you may be able to combine them! By batch importing a collection of scripts with a single import, your JavaScript code will load faster and look cleaner. Consider the example below. On the left is an example of what your JavaScript file might currently look like. On the right is how you could improve that code.
Multiple imports — messy and slow One import — clean and efficient
  type: 'script',
  article: 'u:dev:FloatingToc/code.js'
importScriptPage('page1.js', 'wikiname');
importScriptPage('page2.js', 'wikiname');
    type: 'script',
    articles: [
Note: In this example, pay close attention to the placement of commas and other punctuation. For people who aren't familiar with programming (and even those who are!), a common mistake when writing code is to accidentally delete, forget, or misplace critical symbols like commas or quotation marks. This can cause a syntax error that breaks the code. Carefully follow the convention shown here when using importArticles.
But there's much more to importArticles than just this! For more examples and advanced usage, see the help page at Help:Including additional JavaScript and CSS.


!ban (similarly to !kick) is used to ban a user on the chat, by typing in the following syntax:


The USER NAME parameter doesn't need to contain underscores replacing the spaces. It is case-sensitive (except for the first letter — it's capitalized automatically)
The BAN LENGTH parameter goes after the for keyword and it can contain values like 2 weeks, 1 month, and 20 minutes. It is case-insensitive.
The BAN REASON parameter goes after the because keyword.

Additionally, you can set a variable with the default time to be used in case an invalid time token is given (it must be set in seconds):

var defCBanDuration = 1200; // Equals to 20 minutes. Default is 1 day. (86400)
// Import...


This script prevents you from banning yourself, so in case you input your own username on the USER NAME parameter it will show an inline-alert that reads:

You can't ban yourself.

If an invalid time is given, or it's not set, it will use the window.defCBanDuration variable time (which must be set in seconds) or, if it's undefined, it will give a day ban. It will show this inline-alert:

Ban time was invalid or undefined; default time was used.

Also note that chat mods can't use this script to ban admins or staff as those groups have chat admin and chat staff abilities respectively that prevent them from being banned by other chat mod groups.