Benutzer:ABF2/eintragen.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)
// Weitergeführt von [[Benutzer:ABF]]
// EW eintragen und Artikel auf VM eintragen ergänzt von [[Benutzer:ABF]] mit Hilfe
// <nowiki>
// Funktion eintragen(typ)
// Trägt, je nach Typ der Meldung, Bausteine bzw. Begründung auf den Seiten ein
// (aufgerufen aus der monobook.js)
//
function eintragen(typ) { // Littl, PDD
var wpath = 'http://de.wikipedia.org/w/index.php?title=';
var wnamesp = 'Wikipedia:';
// alert (for old monobooks)
if (minimalVersionStrong(40) < 40) return;
if ((typ > 15) || (typ == 9) || (typ == 11)) alert("Funktion " + typ + " noch nicht implementiert!");
if ((typ > 15) || (typ == 9) || (typ == 11)) return;
// Variables that should be defined in your monobook
if (typeof(autosave) == 'undefined')
autosave = false;
if (typeof(signogrundparam) == 'undefined')
signogrundparam = false;
if (typeof(emptylinesafterhr) == 'undefined')
emptylinesafterhr = 1;
if (typeof(defaultSLA) == 'undefined')
defaultSLA = "";
if (typeof(defaultVandal) == 'undefined')
defaultVandal = "vandaliert in [[]]";
if (typeof(defaultBLU) == 'undefined')
defaultBLU = "keine Lizenz";
if (typeof(Monate) == 'undefined')
Monate = new Array("Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember");
if (typeof(jetzt) == 'undefined')
jetzt = new Date();
if (typeof(Jahr) == 'undefined')
Jahr = jetzt.getYear(); if (Jahr < 999) Jahr += 1900;
if (typeof(WPDatum) == 'undefined')
WPDatum = jetzt.getDate() + '._' + Monate[jetzt.getMonth()] + '_' + Jahr;
if (typeof(WPDatum2) == 'undefined')
WPDatum2 = Jahr + '/' + Monate[jetzt.getMonth()] + '/' + jetzt.getDate();
if (typeof(isEdit) == 'undefined')
isEdit = (document.URL.indexOf('action=edit') > 0) || (document.URL.indexOf ('action=submit') > 0);
if (typeof(isUserpage) == 'undefined')
isUserpage = ( (wgCanonicalNamespace == "User") || (wgCanonicalNamespace == "User_talk") );
if (typeof(isSpecial) == 'undefined')
isSpecial = (wgCanonicalNamespace == "Special");
if (typeof(isContrib) == 'undefined')
isContrib = (isSpecial && (wgCanonicalSpecialPageName == "Contributions"));
if (typeof(isPHP) == 'undefined')
isPHP = (document.URL.indexOf('index.php') > 0);
// Variablen für die einzelnen Bausteine
var kurz = "";
var vorlage = "";
var seite = "";
// bei bestimmten Vorlagen wird Grund als Parameter übergeben
// (momentan nur Vorlage:Löschantrag, Vorlage:Löschen, Vorlage:QS)
var grundparam = false;
// bestimmte Subst-Vorlagen haben schon noincludes
// (momentan nur Vorlage:Löschantrag)
var substnoinclude = false;
// bestimmte Vorlagen beinhalten bereits die Formatierung (Returns, Hline)
// (momentan nur Vorlage:Löschantrag und Vorlage:Löschen)
var dontformat = false;
switch (typ) {
case 1: { kurz="QS";
vorlage="subst:QS";
seite="Qualitätssicherung";
if (!signogrundparam) {
grundparam = true;
dontformat = true;
}
break; }
case 2: { kurz="LA";
vorlage="subst:Löschantrag";
seite="Löschkandidaten";
grundparam = true;
substnoinclude = true;
dontformat = true;
break; }
case 3: { kurz="SLA";
vorlage="Löschen";
if (!signogrundparam) {
grundparam = true;
dontformat = true;
}
break; }
case 4: { kurz="BildLA";
vorlage="subst:Löschantrag";
seite="Löschkandidaten/Bilder";
grundparam = true;
substnoinclude = true;
dontformat = true;
break; }
case 5: { kurz="URV";
vorlage="URV";
seite="Löschkandidaten/Urheberrechtsverletzungen";
break; }
case 6: { kurz="Vandale";
vorlage="Benutzer";
seite="Vandalismusmeldung";
break; }
case 7: { kurz="LAKAT";
vorlage="subst:Löschantrag";
seite="WikiProjekt_Kategorien/Diskussionen";
grundparam = true;
substnoinclude = true;
dontformat = true;
break; }
case 8: { kurz="LAVORL";
vorlage="subst:Löschantrag";
seite="Löschkandidaten";
grundparam = true;
substnoinclude = true;
dontformat = true;
break; }
case 10: { kurz="Reset";
vorlage="Bitte erst NACH dieser Zeile schreiben! (Begrüßungskasten)";
break; }
case 11: { kurz="Lemmasperrung"; // outdated, do not use!
vorlage="gesperrtes Lemma";
break; }
case 12: { kurz="Lemmasperrung";
seite="Gesperrte Lemmata";
break; }
case 13: { kurz="Entsperren";
vorlage="Entsperren";
seite="Entsperrwünsche";
break; }
case 14: { kurz="Schuetzen";
vorlage="Artikel";
seite="Vandalismusmeldung";
break; }
case 15: { kurz="BLU";
vorlage="BLU";
break; }
}
var standardsig = '-- \~\~\~\~';
var customsig;
if (typeof(usersignature) == 'undefined')
customsig = standardsig;
else
customsig = usersignature;
var lemma = getLemma();
var lemma2;
// special lemma handling for vandals (usernames):
if (typ == 6) {
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(' ');
// zu öffnende Zielseite
var uri = "";
// Begründung für die Zusammenfassungszeile
var grund = "";
if (typ == 3) grund = defaultSLA;
if (typ == 5)
grund = prompt(kurz+'-Quelle (z.B. URL):','[]');
else if (typ == 6)
grund = prompt('Vandalismusbelege:',defaultVandal);
else if ((typ != 10) && (typ != 11) && (typ != 12))
grund = prompt(kurz+'-Grund:',grund);
if (typ == 10) grund = defaultBLU;
/* Shortcuts für SLA*/
if (typ==3){
switch (grund) {
case "1": grund="Selbstdarsteller siehe [[Wikipedia:Selbstdarsteller]]"; break;
case "a": grund="Abfall"; break;
case "b": grund="Bandspam"; break;
case "c": grund="Clanspam"; break;
case "d": grund="Keine Diskussionsseite"; break;
case "d1": grund="Verwaiste Diskussionsseite"; break;
case "e": grund="Ekelig"; break;
case "f": grund="Feurig dummer Artikel"; break;
case "g": grund="Nicht zum grinsen"; break;
case "h": grund="Hölle-Wer denkt sich sowas aus?!"; break;
case "i": grund="Offensichtliche Irrelevanz"; break;
case "j": grund="Bandspam"; break;
case "k": grund="Kein Artikel"; break;
case "l": grund="Linkcontainer"; break;
case "m": grund="Müll, bitte Wegwerfen!"; break;
case "n": grund="Nazispam"; break;
case "o": grund="Oh Ne!"; break;
case "p": grund="puh!"; break;
case "q": grund="Weiß nix, was auf den Müll zutrifft..."; break;
case "r": grund="Rapperspam"; break;
case "s": grund="Bitte Lemmasperre, es reicht!"; break;
case "t": grund="Tastaturtest dafür gibt es die [[WP:SP|Spielwiese]]"; break;
case "u": grund="Unfug"; break;
case "v": grund="Sperrt vllt. mal wer die IP?!"; break;
case "w": grund="Wörterbucheintrag"; break;
case "x": grund="Wiedergänger"; break;
case "z": grund="Werbeeintrag"; break;
/* Shortcuts für BLU*/
if (typ==3){
switch (grund) {
case "k": grund="Keine Lizenz"; break;
case "c": grund="copyvio"; break;
case "r": grund="Man sieht sogar noch das copyright Zeichen"; break;
}
}
// Parameter für die URI
var speichernpa = (autosave) ? "&" + speichernp + "=1" : "";
var nocreatepa = "&" + nocreatep + "=1";
// ab hier wird eingetragen
if (grund != null) {
grund = trim(grund);
// Eintragen auf der entsprechenden LK/QS/usw.-Seite
// (wird dann ausgeführt von fillActionPage() in der monobook.js)
//QS / LA / BildLA / LAKAT / LAVORL
if (typ == 1 || typ == 2 || typ == 4 || typ == 7 || typ == 8) {
// Öffnen der QS- oder LK- oder BildLK-Seite, gleich zum Eintragen des QS/LA
// Texte werden als Parameter übergeben
uri = wpath
+ encodeURI(wnamesp + seite
+ ((typ == 7)? ('/' + WPDatum2):('/' + WPDatum)))
+ "&action=edit" + "§ion=new"
+ "&" + subjp + "="
+ encodeURIComponent( '[['
/* + ((typ == 4)? ':Bild:':'') + ((typ == 7)? ':Kategorie:':'') */
+ ( ((typ == 4)||(typ == 7)) ? ':' : '')
+ lemma2 + ']]' )
+ "&" + textp + "="
+ encodeURIComponent( grund + ' ' + customsig + '\n' )
+ speichernpa;
}
//URV
if (typ == 5) {
// Öffnen der URV-Seite gleich zum Eintragen der Meldung, Texte werden als Parameter übergeben
uri = encodeURI(wpath + wnamesp + seite + '&action=edit')
+ "&" + subjp + "="
+ encodeURIComponent( '+[[' + lemma2 + ']]')
+ "&" + addp + "="
+ encodeURIComponent('# [[' + lemma2 + ']] - ' + grund + ' ' + customsig + '\n' )
+ speichernpa;
}
//Vandale
if (typ == 6) {
// Öffnen der VM-Seite gleich zum Eintragen der Meldung, Texte werden als Parameter übergeben
uri = encodeURI(wpath + wnamesp + seite +'&action=edit§ion=new')
+ "&" + subjp + "="
+ encodeURIComponent( '[[Benutzer:' + lemma2 + ']]' )
+ "&" + textp + "="
+ encodeURIComponent( '{{' + vorlage + '|' + lemma2 + '}} ' + grund + ' ' + customsig + '\n' )
+ speichernpa;
}
//Lemmasperrung
if (typ == 12) {
// Öffnen der Lemmasperrseite und Eintragen
uri = encodeURI(wpath + wnamesp + seite + '/' + WPDatum4 + '&action=edit')
+ "&" + subjp + "="
+ encodeURIComponent( '+[[' + lemma2 + ']]')
+ "&" + addp + "="
+ encodeURIComponent('# {{:' + lemma2 + '}} ' + customsig + '\n' )
+ speichernpa;
}
//EW
if (typ == 13) {
// Öffnen der EWseite und Eintragen
uri = encodeURI(wpath + wnamesp + seite +'&action=edit§ion=new')
+ "&" + subjp + "="
+ encodeURIComponent( '[[' + lemma2 + ']]')
+ "&" + addp + "="
+ encodeURIComponent( '{{' + vorlage + '|' + lemma2 + '}} ' + grund + ' ' + customsig + '\n' )
+ speichernpa;
}
//Vandalen Artikel
if (typ == 14) {
// Öffnen der VM-Seite gleich zum Eintragen der Meldung, Texte werden als Parameter übergeben
uri = encodeURI(wpath + wnamesp + seite +'&action=edit§ion=new')
+ "&" + subjp + "="
+ encodeURIComponent( '[[' + lemma2 + ']]')
+ "&" + addp + "="
+ encodeURIComponent( '{{' + vorlage + '|' + lemma2 + '}} ' + grund + ' ' + customsig + '\n' )
+ speichernpa;
}
// neue Seite wird in neuem Fenster geöffnet
if (uri != "") {
window.open(uri);
window.focus();
}
// bearbeiten der Artikelseite und eintragen lassen
// (wird dann ausgeführt von fillActionPage() in der monobook.js)
// (bei Vandalenmeldung und Lemmasperrung nichts auf aktueller Seite eintragen!!)
if ((typ != 6) && (typ != 12) && (typ != 14) && (typ != 13)) {
var grundsig = " \'\'" + grund + "\'\' " + customsig;
// wenn grund als Parameter übergeben wird: | und = escapen
if (grundparam) {
grundsig = grundsig.split('|').join('{{!}}').split('=').join('=');
}
// vereinheitlicht plus kursiv (PDD)
var txt = "{{" + vorlage;
if (grundparam)
txt += "|";
else
txt += "}}";
if ((typ != 10) && (typ != 11)) {
txt += grundsig;
if (grundparam)
txt += "}}";
if (!dontformat) {
txt += "\n----\n\n";
for (var i = 0; i < emptylinesafterhr; i++)
txt += "\n";
}
else if (!looksLikeTemplate(lemma2))
txt += "\n";
if (!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 ((typ == 5) || (typ == 10) || (typ == 11)) {
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 (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 ((typ == 5) || (typ == 10) || (typ == 11)) {
// URV-Baustein & Spielwiese-Reset ersetzen den kompletten Text
uri = wpath + encodeURIComponent(lemma) + "&action=edit"
+ "&" + subjp + "=" + encodeURIComponent(kurz + "+")
+ "&" + textp + "=" + encodeURIComponent(txt)
+ speichernpa;
} else {
// alle anderen Bausteine werden am Anfang eingefügt
uri = wpath + encodeURIComponent(lemma) + "&action=edit"
+ "&" + subjp + "=" + encodeURIComponent(kurz + "+")
+ "&" + insp + "=" + encodeURIComponent(txt)
+ speichernpa;
}
if (typ != 11) uri += nocreatepa;
// neue Seite im aktuellen Fenster öffnen
location.href = uri;
} // END: if (isEdit)...else...
} // END: if (typ != 6)...
} // END: if (grund != null)...
} // END: function eintragen(typ)...
//
// Funktion looksLikeTemplate()
// Vorlagen-Check
// (aufgerufen aus eintragen() )
//
function looksLikeTemplate(aktuelleslemma) {
if ( (wgNamespaceNumber == 10) ||
(aktuelleslemma.indexOf("Vorlage:") > -1) ||
(aktuelleslemma.indexOf(":Vorlage/") > -1) ||
(aktuelleslemma.indexOf("/Vorlage/") > -1) )
return true;
else
return false;
}
// </nowiki>
}