Benutzer:$traight-$hoota/bapperl.js
aus Wikipedia, der freien Enzyklopädie
Hinweis: Leere nach dem Veröffentlichen den Browser-Cache, um die Änderungen sehen zu können.
- Firefox/Safari: Umschalttaste drücken und gleichzeitig Aktualisieren anklicken oder entweder Strg+F5 oder Strg+R (⌘+R auf dem Mac) drücken
- Google Chrome: Umschalttaste+Strg+R (⌘+Umschalttaste+R auf dem Mac) drücken
- Internet Explorer/Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
- Opera: Strg+F5
importPage('PDD/alertOnChanges.js'),
// LA (generisch, Bild, Kategorie, Vorlage) / QS / URV / Vandalen eintragen
//
// Fragt nach der Begründung, füllt die Eingabefelder aus, und ruft die Löschkandidatenseite/QSSeite auf.
// Ursprünglich von [[Benutzer:BLueFiSH.as]]
// Modifiziert von [[Benutzer:Littl]]
// Modifiziert von [[Benutzer:Revvar]] (Aufpassen, falls bei SLA Seite bereits gelöscht)
// Modifiziert von [[Benutzer:PDD]] (Vandalensperrmeldung, Kategorien-LAs, viele kleine Fixes)
// Modifiziert von [[Benutzer:C-M]] (SLA-Shortcuts)
// kompletter Neubau von [[Benutzer:$traight-$hoota]]
// <nowiki>
// Funktion setBapperl(typ)
// Trägt, je nach Typ der Meldung, Bausteine bzw. Begründung auf den Seiten ein
// (aufgerufen aus der monobook.js)
//
Bapperl = {
types: {
"QS": {
template: "subst:QS",
page: "Qualitätssicherung",
reason: {
question: 'QS-Grund'
},
dontformat : true
},
"LA": {
vorlage: "subst:Löschantrag",
seite: "Löschkandidaten",
reason: {
question: 'QS-Grund'
},
substnoinclude: true,
dontformat: true
},
"SLA": {
vorlage: "Löschen",
reason: {
question: 'QS-Grund',
defaultValue: 'kein Artikel',
shortcuts: {
'b': 'Bandspam',
'c': 'Clanspam',
'd': 'Verwaiste Diskussionsseite',
'i': 'Offensichtliche Irrelevanz',
'k': 'Kein Artikel',
'l': 'Linkcontainer',
'm': 'Müll',
'r': 'Rapperspam',
't': 'Tastaturtest',
'u': 'Unfug',
'w': 'Wörterbucheintrag',
'x': 'Wiedergänger',
'z': 'Werbeeintrag'
}
},
dontformat: true,
reason: 'kein Artikel'
},
/*"BildLA": {
vorlage: "subst:Löschantrag",
seite: "Löschkandidaten/Bilder",
useReason : true,
substnoinclude : true,
dontformat : true
},*/
"URV": {
vorlage: "URV",
seite: "Löschkandidaten/Urheberrechtsverletzungen",
reason: {
question: 'URV-Quelle (z.B. URL)',
defaultValue: '[]'
},
generateURI: function(type, reason, settings, lemma, lemma2) {
return encodeURI(settings.wpath + settings.wnamesp + type.seite + '&action=edit')
+ "&" + settings.subjp + "="
+ encodeURIComponent( '+[[' + lemma2 + ']]')
+ "&" + settings.addp + "="
+ encodeURIComponent('# [[' + lemma2 + ']] von ' + reason + ' ' + settings.customsig + '\n' )
+ settings.speichernpa;
},
replaceText: true
},
"Vandale": {
vorlage: "Benutzer",
seite: "Vandalismusmeldung",
reason: {
question: 'VM-Grund',
defaultValue: ''
},
generateURI: function(type, reason, settings, lemma, lemma2) {
return encodeURI(settings.wpath + settings.wnamesp + type.seite +'&action=edit§ion=new')
+ "&" + settings.subjp + "="
+ encodeURIComponent( '[[Benutzer:' + lemma2 + ']]' )
+ "&" + settings.textp + "="
+ encodeURIComponent( '{{' + type.vorlage + '|' + lemma2 + '}} ' + reason + ' ' + settings.customsig + '\n' )
+ settings.speichernpa;
},
editArticle: false
},
"LA-KAT": {
vorlage: "subst:Löschantrag",
seite: "WikiProjekt_Kategorien/Diskussionen",
reason: {
question: 'LA-Grund'
},
substnoinclude : true,
dontformat : true
},
"LA-VORL": {
vorlage: "subst:Löschantrag",
seite: "Löschkandidaten",
reason: {
question: 'LA-Grund'
},
substnoinclude : true,
dontformat : true
},
"Artikelvandalismus": {
vorlage: "Artikel",
seite: "Vandalismusmeldung",
reason: {
question: 'VM-Grund',
defaultValue: ''
},
editArticle: false
},
"Reset": {
vorlage: "Bitte erst NACH dieser Zeile schreiben! (Begrüßungskasten)",
replaceText: true
},
/*"Lemmasperrung": { // outdated, do not use!
vorlage: "gesperrtes Lemma",
editArticle: false
},
"Lemmasperrung": {
seite: "Gesperrte Lemmata",
editArticle: false
},*/
"Benutzersperrung": {
seite: "Unbegrenzt gesperrte Benutzer",
editArticle: false
}
},
addType: function(key, data){
this.types[key] = data;
},
settings: {
wpath: 'http://de.wikipedia.org/w/index.php?title=',
wnamesp: 'Wikipedia:',
wdnamesp: 'Wikipedia_Diskussion:',
autosave: true
},
createBapperl: function(typeKey) {
if(!this.types[typeKey]) {
throw new Exception("Bapperl type '" + typeKey + "' is not available");
}
var type = this.types[typeKey];
var lemma = getLemma();
if ((type == "Vandale") || (typ == "Benutzersperrung")) {
if (isUserpage) {
// leading stuff
lemma2 = lemma.replace(/Benutzer.Diskussion./,'');
if (lemma2 == lemma)
lemma2 = lemma.replace(/Benutzer./,'');
lemma = lemma2;
// trailing stuff
lemma = lemma.replace(/\/.*/,'').replace(/&action.*/,'');
}
if (isContrib) {
lemma = lemma.replace(/.*\//,'');
}
}
lemma2 = lemma.split('_').join(' ');
if(type.reason) {
var reason = prompt(type.reason.question ? type.reason.question : "Reason", type.reason.defaultValue ? type.reason.defaultValue : "");
reason = trim(reason);
if(type.reason.shortcuts) {
if(type.reason.shortcuts[reason]) {
reason = type.reason.shortcuts[reason];
}
}
}
var settings = this.settings;
settings.speichernpa = (settings.autosave) ? "&" + settings.speichernp + "=1" : "";
settings.nocreatepa = "&" + settings.nocreatep + "=1";
if(type.generateURI && typeof type.generateURI == "function") {
var uri = type.generateURI(type, reason, settings, lemma, lemma2);
} else {
var uri = this.generateDefaultURI(type, reason, settings, lemma, lemma2);
}
if (uri != "") {
alert(uri);
/*window.open(uri);
window.focus();*/
}
if(type.editArticle !== false) {
var grundsig = " \'\'" + reason + "\'\' " + settings.customsig;
var txt = "";
// vereinheitlicht plus kursiv (PDD)
if(type.grundparam) {
// wenn grund als Parameter übergeben wird: | und = escapen
txt += "{{" + type.vorlage + '|' + grundsig.split('|').join('{{!}}').split('=').join('=') + '}}';
}else{
txt += "{{" + type.vorlage + '}}' + grundsig;
}
if (! type.dontformat) {
txt += "\n----\n\n";
for (var i = 0; i < settings.emptylinesafterhr; i++)
txt += "\n";
}
}else if (! this.looksLikeTemplate(lemma2)) {
txt += "\n";
}
if (! type.substnoinclude) {
if (looksLikeTemplate(lemma2))
txt = "<noinclude>\n" + txt + "</noinclude>";
}
} else { // typ==10 oder 11
txt += "\n";
}
if (isEdit) {
// wir sind schon im Edit-Modus
if (type.replaceText) {
document.editform.wpTextbox1.value = txt;
} else {
document.editform.wpTextbox1.value = txt + document.editform.wpTextbox1.value;
}
document.editform.wpSummary.value = kurz + '+';
document.editform.wpWatchthis.checked = false;
if (settings.autosave) {
if ((typ != 11) && (document.getElementById("newarticletext"))) {
alert("Artikel wurde bereits gelöscht!");
}
else document.editform.wpSave.click();
} else {
// Wir müssen die Seite erst zum Editieren öffnen
if (type.replaceText) {
// URV-Baustein & Spielwiese-Reset ersetzen den kompletten Text
uri = settings.wpath + encodeURIComponent(lemma) + "&action=edit"
+ "&" + settings.subjp + "=" + encodeURIComponent(typeKey + "+")
+ "&" + settings.textp + "=" + encodeURIComponent(txt)
+ settings.speichernpa;
} else {
// alle anderen Bausteine werden am Anfang eingefügt
uri = settings.wpath + encodeURIComponent(lemma) + "&action=edit"
+ "&" + settings.subjp + "=" + encodeURIComponent(typeKey + "+")
+ "&" + settings.insp + "=" + encodeURIComponent(txt)
+ settings.speichernpa;
}
if (typ != 11) uri += nocreatepa;
// neue Seite im aktuellen Fenster öffnen
alert(uri);
//location.href = uri;
} // END: if (isEdit)...else...
}
},
generateDefaultURI: function(type, reason, settings, lemma, lemma2) {
return settings.wpath
+ encodeURI(settings.wnamesp + type.seite + '/' + settings.WPDatum)
+ "&action=edit" + "§ion=new"
+ "&" + settings.subjp + "="
+ encodeURIComponent( '[[' + lemma2 + ']]' )
+ "&" + settings.textp + "="
+ encodeURIComponent( reason + ' ' + settings.customsig + '\n' )
+ settings.speichernpa;
},
looksLikeTemplate: function (aktuelleslemma) {
return (wgNamespaceNumber == 10) ||
(aktuelleslemma.indexOf("Vorlage:") > -1) ||
(aktuelleslemma.indexOf(":Vorlage/") > -1) ||
(aktuelleslemma.indexOf("/Vorlage/") > -1);
}
}
function setBapperl(type) {
Bapperl.createBapperl();
}