Utente:Ruthven/adminscript.js: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
submit changed
.
 
(23 versioni intermedie di uno stesso utente non sono mostrate)
Riga 1:
//<nowiki>
// Inserisci blocco personalizzato, con notifica nella discussione
$(function(){
var btoken;
if (mw.config.get( 'wgCanonicalSpecialPageName' ) === "Block") {
$('button.oo-ui-inputWidget-input.oo-ui-buttonElement-button').hide();
$('#mw-upload-form .mw-htmlform-submit').change({
$('.mw-htmlform-submit').append('<button type="submit" id="mw-htmlform-Fakesubmit" tabindex="0" aria-disabled="false" value="Blocca l\'utente" class="oo-ui-inputWidget-input oo-ui-buttonElement-button"><span class="oo-ui-labelElement-label">Blocca l\'utente</span><span class="oo-ui-iconElement-icon oo-ui-image-invert"></span><span class="oo-ui-indicatorElement-indicator oo-ui-image-invert"></span></button>');
click: function() {
 
if ($('#msgscriptcktalk').is(':checked') && $('#msgScripttalkcontent').val() !== ''){
$('button#mw-htmlform-Fakesubmit.oo-ui-inputWidget-input.oo-ui-buttonElement-button').click(function() {
$.post(mw.util.wikiScript('api'),
if ($('#msgscriptcktalk').is(':checked') && $('#msgScripttalkcontent').val() !== ''){
$.post(mw.util.wikiScript('api'),
{
format: 'json',
Line 12 ⟶ 15:
title: 'User talk:' + $('#mw-bi-target').val(),
appendtext: $('#msgScripttalkcontent').val(),
token: btokenmw.user.tokens.get('editToken'), //btoken
summary:'notifica di blocco',
recreatewatchlist:'nochange',
recreate:true
});
).done(function(){
//getBlockcsfr
$('button.oo-ui-inputWidget-input.oo-ui-buttonElement-button').click();
//action = 'block'
});
//$('.mw-htmlform-submit').click();
} else {
$('button.oo-ui-inputWidget-input.oo-ui-buttonElement-button').click();
}
}
});
mw.util.addCSS(
'#msgScriptForm {margin-top: 15px; background-color: #eeffaa; border: 1px solid grey;}' +
Line 108 ⟶ 114:
// })
// );
 
// Blocco utente
mw.util.addCSS(
'#blockScriptForm {margin-top: 15px;}' +
'.blockscript-firstlink {margin-left:5px;}' +
'#blockScriptdivtalk {margin-top: 5px;}' +
'#blockScripttalkcontent, #blockScriptupcontent {margin-left:5px;}'
);
//Crea il div dove andare a appendere gli oggetti dello script
$('.mw-htmlform-submit').after($('<div>', {id:'blockScriptForm'}));
//crea i div per raccogliere gli oggetti talk e up
$('#blockScriptForm').append(
$("<div>", {
id: "blockScriptdivup"
})
);
$('#blockScriptForm').append(
$("<div>", {
id: "blockScriptdivtalk"
})
);
//appende gli oggetti della up
$('#blockScriptdivup').append(
$("<input>", {
type: "checkbox",
id: "blockScriptckup",
})
);
$('#blockScriptdivup').append(
$("<label>", {
'for': "blockScriptckup",
text: 'Sostituisci la pagina utente con:'
})
);
$('#blockScriptdivup').append(
$("<input>", {
id: 'blockScriptupcontent'
})
);
//appende gli oggetti della talk
$('#blockScriptdivtalk').append(
$("<input>", {
type: "checkbox",
id: "blockScriptcktalk",
})
);
$('#blockScriptdivtalk').append(
$("<label>", {
'for': "blockScriptcktalk",
text: 'Sostituisci la discussione utente con:'
})
);
$('#blockScriptdivtalk').append(
$("<input>", {
id: 'blockScripttalkcontent'
})
);
//inserisce i link dopo gli oggetti up
$('#blockScriptdivup').append(
$("<a>", {
text: "Bloccoinfinito",
href:'#',
title: "Inserisci {{BloccoInfinito}}",
class:"blockscript-firstlink",
click:function() {
$('#blockScriptupcontent').val('{{BloccoInfinito}}');
return false;
}
}),
$("<a>", {
text: "SP",
title: "Inserisci {{SP}}",
href:'#',
class:"blockscript-link",
click:function() {
sock= prompt('Inserisci il nome utente principale (senza [[utente:)');
$('#blockScriptupcontent').val('{{SP|' + sock + '}}');
return false;
}
}),
$("<a>", {
text: "Bloccoinfinito + SP",
title: "Inserisci {{BloccoInfinito}} + {{SP}}",
href:'#',
class:"blockscript-link",
click:function() {
sock= prompt('Inserisci il nome utente principale (senza [[utente:)','');
$('#blockScriptupcontent').val('{{BloccoInfinito}}{{SP|' + sock + '}}');
return false;
}
}),
$("<a>", {
text: "NUI",
title: "Inserisci {{NUI}} --~~~~",
href:'#',
class:"blockscript-link",
click:function() {
$('#blockScriptupcontent').val('{{NUI}} --~~~~');
return false;
}
})
);
$('#blockScriptdivup').find('a').slice(1).before(' | ');
//inserisce i link dopo gli oggetti talk
$('#blockScriptdivtalk').append(
$("<a>", {
text: "Bloccoinfinito",
href:'#',
title: "Inserisci {{BloccoInfinito}}",
class:"blockscript-firstlink",
click:function() {
$('#blockScripttalkcontent').val('{{BloccoInfinito}}');
return false;
}
}),
$("<a>", {
text: "SP",
title: "Inserisci {{SP}}",
href:'#',
class:"blockscript-link",
click:function() {
sock= prompt('Inserisci il nome utente principale (senza [[utente:)');
$('#blockScripttalkcontent').val('{{SP|' + sock + '}}');
return false;
}
}),
$("<a>", {
text: "Bloccoinfinito + SP",
title: "Inserisci {{BloccoInfinito}} + {{SP}}",
href:'#',
class:"blockscript-link",
click:function() {
sock= prompt('Inserisci il nome utente principale (senza [[utente:)','');
$('#blockScripttalkcontent').val('{{BloccoInfinito}}{{SP|' + sock + '}}');
return false;
}
}),
$("<a>", {
text: "NUI",
title: "Inserisci {{NUI}} --~~~~",
href:'#',
class:"blockscript-link",
click:function() {
$('#blockScripttalkcontent').val('{{NUI}} --~~~~');
return false;
}
})
);
$('#blockScriptdivtalk').find('a').slice(1).before(' | ');
//crea il nuovo pulsante di blocco
$('#blockScriptForm').append(
$("<input>", {
type: "button",
id: "blockScriptBlocca",
value: "Blocca & proteggi pagine utente",
click:function() {
getprotectToken();
}
})
);
}
function ProteggiUtente(targhet){
$.post(mw.util.wikiScript('api'),
{
format: 'json',
action: 'protect',
title: targhet,
reason: 'Pagina o sottopagina di utente [[WP:BLOCCO|bloccato infinito]]',
token: btoken,
expiry:'infinite',
protections:'edit=sysop|move=sysop'
}
).done(function(data) {
try{
//genera l'errore in caso di PU non esistente e passa al create=sysop
var er = data.protect.title;
//la protezione della talk è l'ultima operazione che compie dopo esegue il blocco
if (targhet === 'User talk:' + $('#mw-bi-target').val()){
$('.mw-htmlform-submit').click();
}
} catch ( e ) {
$.post(mw.util.wikiScript('api'),
{
format: 'json',
action: 'protect',
title: targhet,
reason: 'Pagina o sottopagina di utente [[WP:BLOCCO|bloccato infinito]]',
token: btoken,
expiry:'infinite',
protections:'create=sysop'
}
);
}
});
}
function getprotectToken(){
$.getJSON(
mw.util.wikiScript('api'),
{
format: 'json',
action: 'query',
meta: 'tokens',
type: 'csrf'
}
).done(function ( data ) {
btoken=data.query.tokens.csrftoken;
PassAuth();
});
}
function PassAuth(){
$.getJSON(
mw.util.wikiScript('api'),
{
format: 'json',
action: 'query',
list: 'users',
ususers: $('#mw-bi-target').val()
}).done (function (data){
//se l'utente esiste esegue il resto
if (data.query.users[0].missing === undefined){
// Aggiunge cartellino o messaggio nella talk utente
if ($('#msgscriptcktalk').is(':checked') && $('#msgScripttalkcontent').val() !== ''){
$.post(mw.util.wikiScript('api'),
{
format: 'json',
action: 'edit',
title: 'User talk:' + $('#mw-bi-target').val(),
appendtext: $('#msgScripttalkcontent').val(),
token: btoken,
summary:'notifica di blocco',
recreate:''
}).done (function(){ });
//Per uso comune la pagina utente va sempre sostituita
} else if ($('#blockScriptcktalk').is(':checked') && $('#blockScripttalkcontent').val() !== ''){
if($('#blockScriptckup').is(':checked')){
$.post(mw.util.wikiScript('api'),
{
format: 'json',
action: 'edit',
title: 'User:' + $('#mw-bi-target').val(),
text: $('#blockScriptupcontent').val(),
token: btoken,
summary:'Utente [[WP:BLOCCO|bloccato infinito]]',
recreate:''
}).done (function(){
ProteggiUtente('User:'+ $('#mw-bi-target').val());
});
}else{
ProteggiUtente('User:'+ $('#mw-bi-target').val());
}
$.post(mw.util.wikiScript('api'),
{
format: 'json',
action: 'edit',
title: 'User talk:' + $('#mw-bi-target').val(),
text: $('#blockScripttalkcontent').val(),
token: btoken,
summary:'Utente [[WP:BLOCCO|bloccato infinito]]',
recreate:''
}).done (function(){
ProteggiUtente('User talk:'+ $('#mw-bi-target').val());
});
}else{
alert('Devi almeno sostituire la pagina utente per bloccare');
}
}else{
alert ('Non è registrato alcun utente di nome "' + $('#mw-bi-target').val() +'". Verificare il nome inserito.');
}
});
}
}( mediaWiki, jQuery ));