// <syntaxhighlight lang=javascript>
var lang = new Array(
'[[WP:VAND|Vandalism]]-only account',
'[[WP:3RR|Three-revert rule]] violation',
'[[WP:EW|Edit warring]]',
'Abusing [[WP:SOCK|multiple accounts]]',
'{{' + 'blocked proxy}}',
'{{' + 'tor}}',
'{{' + 'zombie proxy}}',
'{{' + 'UsernameBlocked}}',
'{{' + 'UsernameHardBlocked}}'
);
function blockaux()
{
var bl = document.getElementById('wpBlockReasonList');
var be = document.getElementById('wpBlockExpiry');
switch (bl.value)
{
case lang[0]:
case lang[3]:
case lang[8]:
blockparam(true, true, true, true, false, false);
break;
case lang[1]:
case lang[2]:
var temp = prompt('On', '');
document.getElementById('mw-bi-reason').value = (temp == null ? '' : 'on [[' + temp + ']]');
default:
blockparam(false, true, true, true, false, false);
break;
case lang[4]:
case lang[5]:
case lang[6]:
blockparam(false, false, true, true, false, true);
break;
case lang[7]:
blockparam(true, true, false, false, false, false);
break;
}
}
function blockparam(indef, ao, ac, ab, em, proxy)
{
var bo = document.getElementById('wpBlockOther');
var tp1 = '<td align="right"><label for="mw-bi-other">Other time:</label></td><td><input name="wpBlockOther" size="45" value="';
var tp2 = '" tabindex="3" id="mw-bi-other"></td>';
if (indef)
{
document.getElementById('wpBlockExpiry').value = 'other';
bo.innerHTML = tp1 + 'infinite' + tp2;
}
else if (proxy)
{
document.getElementById('wpBlockExpiry').value = 'other';
bo.innerHTML = tp1 + '3 years' + tp2;
}
document.getElementById('wpAnonOnly').checked = ao;
document.getElementById('wpCreateAccount').checked = ac;
document.getElementById('wpEnableAutoblock').checked = ab;
document.getElementById('wpEmailBan').checked = em;
considerChangingExpiryFocus();
}
addOnloadHook(function()
{
if (document.getElementById('wpBlockReasonList'))
{
var bl = document.getElementById('wpBlockReasonList');
bl.parentNode.innerHTML = '<select tabindex="4" id="wpBlockReasonList" name="wpBlockReasonList" onchange="blockaux();"></select>';
var bl = document.getElementById('wpBlockReasonList');
var rsn = new Array(
new Array('other', 'Other reason'),
new Array('[[WP:VAND|Vandalism|Vandalism]]', 'Vandalism'),
new Array(lang[0], 'VOA'),
new Array(lang[1], '3RR'),
new Array(lang[2], 'Edit warring'),
new Array(lang[3], 'Sockpuppetry'),
new Array('Attempting to [[WP:HAR|harass]] other users', 'Harassment'),
new Array('Creating [[WP:PN|nonsense]] pages', 'Creating nonsense'),
new Array('Inserting [[WP:V|unverifiable]] information', 'Unveriable info'),
new Array('[[WP:SPAM|Spamming]] links to external sites', 'Spamming'),
new Array('Repeated violations of [[WP:C|copyright policy]]', 'Copyvio'),
new Array('{{' + 'anonblock}}', 'Anon block'),
new Array('{{' + 'schoolblock}}', 'School'),
new Array(lang[4], 'Proxy'),
new Array(lang[5], 'Tor'),
new Array(lang[6], 'Zombie'),
new Array(lang[7], 'Username'),
new Array(lang[8], 'Username hardblock')
);
for (i = 0; i < rsn.length; i++)
{
var bl_new = document.createElement('option');
bl_new.text = rsn[i][1];
bl_new.value = rsn[i][0];
bl.add(bl_new, null);
}
}
});
// </syntaxhighlight>