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
- Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
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:SirPrize]] (Keine doppelten QS-/SLA-/Löschanträge mehr)
// Achtung: verwendet Variablen autosave, reloadme und isEdit/isUserpage/isContrib (aus der monobook.js)
// <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 (minimalVersion(20)<20) return;
// Variables that should be defined in your monobook
if (typeof(autosave) == 'undefined')
autosave = false;
if (typeof(usekatproject) == 'undefined')
usekatproject = true;
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();
switch (typ) {
case 1: { var kurz="QS";
var vorlage="subst:Qualitätssicherung";
var seite="Qualitätssicherung";
break; }
case 2: { var kurz="LA";
var vorlage="subst:Löschantrag";
var seite="Löschkandidaten";
break; }
case 3: { var kurz="SLA";
var vorlage="Löschen";
var seite="";
break; }
case 4: { var kurz="BildLA";
var vorlage="subst:Löschantrag";
var seite="Löschkandidaten/Bilder";
break; }
case 5: { var kurz="URV";
var vorlage="subst:URV";
var seite="Löschkandidaten/Urheberrechtsverletzungen";
break; }
case 6: { var kurz="Vandale";
var vorlage="Vandale";
var seite="Vandalensperrung";
break; }
case 7: { var kurz="LAKAT";
if (usekatproject) {
var vorlage="subst:Löschantrag";
var seite="WikiProjekt_Kategorien/Diskussionen";
} else {
var vorlage="subst:Löschantrag";
var seite="Löschkandidaten";
}
break; }
case 8: { var kurz="LAVORL";
var vorlage="subst:Löschantrag";
var seite="Löschkandidaten";
break; }
}
var standardsig = '-- \~\~\~\~';
var customsig;
if (typeof(usersignature) == 'undefined')
customsig = standardsig;
else
customsig = usersignature;
var lemma = getLemma();
// special lemma handling for vandals (usernames):
if (typ == 6) {
if (isUserpage) {
// leading stuff
lemma = lemma.replace(/Benutzer.Diskussion./,'');
lemma = lemma.replace(/Benutzer./,'');
// trailing stuff
lemma = lemma.replace(/\/.*/,'').replace(/&action.*/,'');
}
if (isContrib) {
lemma = lemma.replace(/.*\//,'');
}
}
var lemma2 = lemma.split('_').join(' ');
if (typ == 5)
var grund=prompt(kurz+'-Quelle (z.B. URL):','[]');
else if (typ == 6)
var grund=prompt('Vandalismusbelege:','vandaliert in [[]]');
else
var grund=prompt(kurz+'-Grund:','');
if (grund != null) {
grund=trim(grund);
var speichernpa = (autosave) ? "&" + speichernp + "=1" : "";
// Eintragen auf der entsprechenden LK/QS/usw.-Seite
//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
var uri = encodeURI(wpath + wnamesp + seite
+ ((typ == 7 && usekatproject)? ('/' + 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;
window.open(uri);
}
//URV
if (typ == 5) {
// Öffnen der URV-Seite gleich zum Eintragen des LA, Texte werden als Parameter übergeben
var uri = encodeURI(wpath + wnamesp + seite + '&action=edit')
+ "&" + subjp + "="
+ encodeURIComponent( '+[[' + lemma2 + ']]')
+ "&" + addp + "="
+ encodeURIComponent('# [[' + lemma2 + ']] - ' + grund + ' ' + customsig + '\n' )
+ speichernpa;
window.open(uri);
}
//Vandale
if (typ == 6) {
// Öffnen der VS-Seite gleich zum Eintragen der Meldung, Texte werden als Parameter übergeben
var uri = encodeURI(wpath + wnamesp + seite +'&action=edit§ion=new')
+ "&" + subjp + "="
+ encodeURIComponent( '[[Benutzer:' + lemma2 + ']]' )
+ "&" + textp + "="
+ encodeURIComponent( '{{' + vorlage + '|' + lemma2 + '}} ' + grund + ' ' + customsig + '\n' )
+ speichernpa;
window.open(uri);
}
// bearbeiten der Artikelseite und eintragen lassen (macht aktion() weiter unten)
// (bei Vandalenmeldung nichts auf aktueller Seite eintragen!!)
if (typ != 6) {
// Vorlage eintragen
window.focus();
// vereinheitlicht plus kursiv (PDD)
var txt = '{{' + vorlage + '}} \'\'' + grund + '\'\' ' + customsig + '\n----\n\n\n';
if (isEdit) {
// wir sind schon im Edit-Modus
if (typ == 5) {
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 (antragGestellt(typ)) {
alert("Es wurde bereits ein solcher Antrag gestellt!");
} else if (typ==3) {
if (document.getElementById("newarticletext")) {
alert("Artikel wurde bereits gelöscht!");
} else absenden();
} else absenden();
}
} else {
// Wir müssen die Seite erst zum editieren öffnen
if (typ != 5) {
uri = wpath + encodeURIComponent( /* ((typ == 7)? 'Kategorie:':'') +*/ lemma) + "&action=edit"
+ "&" + subjp + "=" + encodeURIComponent(kurz + "+")
+ "&" + insp + "=" + encodeURIComponent(txt)
+ "&typ=" + typ // TODO: vielleicht so etwas wie typp an geeigneter Stelle definieren
+ speichernpa;
} else {
uri = wpath + encodeURIComponent(lemma) + "&action=edit"
+ "&" + subjp + "=" + encodeURIComponent(kurz + "+")
+ "&" + textp + "=" + encodeURIComponent(txt)
+ "&typ=" + typ // TODO: vielleicht so etwas wie typp an geeigneter Stelle definieren
+ speichernpa;
}
location.href = uri;
} // END: if (isEdit)...else...
} // END: if (typ != 6)...
} // END: if (grund != null)...
} // END: function eintragen(typ)...
//
// Funktion nowcomm()
// Trägt NowCommons-Baustein ein
// (aufgerufen aus der monobook.js)
//
function nowcomm() {
var lemma = getLemma();
if (lemma.substring(0, 5) == "Bild:") lemma=lemma.slice(5);
var lemmaneu = prompt('Neuer Dateiname',lemma);
if (lemmaneu != null )
newtext('NowCommons','{{NowCommons|' + lemmaneu +'}}',3);
}
//
// Helper-Funktion getLemma()
// extrahiert Lemma, entfernt "Bild:" und "Kategorie:"
// (aufgerufen von eintragen() und nowcomm() aus der eintragen.js)
//
function getLemma () { //Littl
var lemma;
if ((isContrib) && ( UrlParameters["target"] > "" ))
lemma = UrlParameters["target"];
else if ( UrlParameters["title"] > "" )
lemma = UrlParameters["title"];
else
lemma = decodeURIComponent(location.href.substring(location.href.indexOf("/wiki/") + 6)).split('#')[0];
// if (lemma.substring(0, 5) == "Bild:") lemma=lemma.slice(5);
// if (lemma.substring(0, 10) == "Kategorie:") lemma=lemma.slice(10);
if (isPHP) lemma=lemma.split('+').join('_');
return lemma;
}
//
// Funktion aktion (früher "loeschkandidat")
// Entnimmt Parameter aus der URI, fügt sie in die Textfelder ein und klickt ggf. auf "Speichern"
// (aufgerufen in der Init()-Funktion der monobook.js)
//
function aktion() { //Littl, (k)Revvar
var abbruch = false;
if (UrlParameters["typ"]>"") // TODO: typp statt "typ" verwenden
abbruch = antragGestellt(UrlParameters["typ"]); // TODO: typp statt "typ" verwenden
if (UrlParameters[subjp]>"")
document.editform.wpSummary.value = UrlParameters[subjp];
if (UrlParameters[textp]>"")
document.editform.wpTextbox1.value = UrlParameters[textp];
if (UrlParameters[insp]>"")
document.editform.wpTextbox1.value = UrlParameters[insp]
+ document.editform.wpTextbox1.value;
if (UrlParameters[addp]>"")
document.editform.wpTextbox1.value = document.editform.wpTextbox1.value
+ UrlParameters[addp];
if (UrlParameters[minorp] == "1")
document.editform.wpMinoredit.checked=true;
if (UrlParameters[speichernp] == "1") {
if (abbruch) {
// TODO: nach dem alert evtl. zur Seite zurückkehren
alert("Es wurde bereits ein solcher Antrag gestellt!");
} else if (UrlParameters[subjp].search("SLA")==0) {
if (document.getElementById("newarticletext")) {
alert("Artikel wurde bereits gelöscht!");
} else absenden();
} else absenden();
}
}
//
// Funktion antragGestellt
// Die Funktion schaut, ob schon ein entsprechender Baustein auf der Seite ist.
// typ ist derselbe Wert, der auch in der Funktion eintragen() benutzt wird.
//
function antragGestellt(typ) {
if(!isEdit)
return false;
if(typ==1 && document.editform.wpTextbox1.value.search(/\{\{Qualitätssicherungstext\}\}/) != -1) {
return true;
} else if(typ==2 && document.editform.wpTextbox1.value.search(/\{\{Löschantragstext\|/) != -1) {
return true;
} else if(typ==3 && document.editform.wpTextbox1.value.search(/\{\{Löschen\}\}/) != -1) {
return true;
} else if(typ==4 && document.editform.wpTextbox1.value.search(/\{\{Löschantragstext\|/) != -1) {
return true;
} else if(typ==5 &&
(document.editform.wpTextbox1.value.search(/\{\{URV\}\}/) != -1 ||
document.editform.wpTextbox1.value.search(/\{\{Urheberrecht ungeklärt\}\}/) != -1 )) {
return true;
} else if(typ==6) {
// TODO: Auf [[WP:VS]] nach dem passenden Vandalenbaustein suchen
return false;
} else if(typ==7 && document.editform.wpTextbox1.value.search(/\{\{Löschantragstext\|/) != -1) {
return true;
} else if(typ==8 && document.editform.wpTextbox1.value.search(/\{\{Löschantragstext\|/) != -1) {
return true;
}
return false;
}
// </nowiki>