Hilfe:Edittools.js: Unterschied zwischen den Versionen

aus Kamelopedia, der wüsten Enzyklopädie
Zur Navigation springen Zur Suche springen
K var load_edittools = true;
Dufo (Diskussion | Beiträge)
KKeine Bearbeitungszusammenfassung
 
(50 dazwischenliegende Versionen von 7 Benutzern werden nicht angezeigt)
Zeile 44: Zeile 44:


/** bastelt die Edittools-Box */
/** bastelt die Edittools-Box */
addOnloadHook(function() {
jQuery(document).ready(function() {
     var kategorieNamen = [
     var kategorieNamen = [
         "Abkürzung",
         "Abkürzung",
         "Adel",
         "Adel",
        "Adventskalender",
         "Affen",
         "Affen",
        "Afrika",
         "Ägypten",
         "Ägypten",
         "Aliens",
         "Aliens",
Zeile 56: Zeile 58:
         "Architektur",
         "Architektur",
         "Artikel, die wo so aussehen, wie die Dinge, die sie beschreiben tun",
         "Artikel, die wo so aussehen, wie die Dinge, die sie beschreiben tun",
        "Artikel und Kamele mit eigenem Skin",
         "Astronomie",
         "Astronomie",
         "Aua",
         "Aua",
Zeile 67: Zeile 68:
         "Behörden",
         "Behörden",
         "Beruf",
         "Beruf",
        "Besondere Tage",
         "Bildung",
         "Bildung",
         "Biographie",
         "Biographie",
         "Biologie",
         "Biologie",
        "Blumen",
        "Bösewicht",
         "Böses Kamel",
         "Böses Kamel",
         "Botanik",
         "Botanik",
         "Brauchtum",
         "Brauchtum",
        "Buchstabe",
         "Chamäleons",
         "Chamäleons",
         "Chemie",
         "Chemie",
Zeile 95: Zeile 100:
         "Fastfood",
         "Fastfood",
         "Feminismus",
         "Feminismus",
        "Fernsehen",
        "Feuer",
         "Film",
         "Film",
         "Firma",
         "Firma",
Zeile 132: Zeile 139:
         "Inseln",
         "Inseln",
         "Jahrestag",
         "Jahrestag",
        "Jahreszahl",
         "Japan",
         "Japan",
        "Kalau",
         "Kalender",
         "Kalender",
         "Kamele",
         "Kamele",
Zeile 202: Zeile 211:
         "Politik",
         "Politik",
         "Politiker",
         "Politiker",
        "Post",
         "Projekt",
         "Projekt",
         "Psychologie",
         "Psychologie",
Zeile 212: Zeile 222:
         "Rindviecher",
         "Rindviecher",
         "Rohstoffe",
         "Rohstoffe",
        "SadoMaso",
         "Sammelartikel",
         "Sammelartikel",
         "Saurier",
         "Saurier",
Zeile 226: Zeile 237:
         "Sexualität",
         "Sexualität",
         "Soziologie",
         "Soziologie",
        "Spezies",
         "Spiel",
         "Spiel",
         "Sport",
         "Sport",
Zeile 234: Zeile 244:
         "Staat",
         "Staat",
         "Stadt",
         "Stadt",
        "Stuchbabe",
         "Süßigkeiten",
         "Süßigkeiten",
         "Suppen & Soßen",
         "Suppen & Soßen",
        "Symbol",
         "Technik",
         "Technik",
         "Textilien",
         "Textilien",
Zeile 256: Zeile 266:
         "Waffen",
         "Waffen",
         "Wale",
         "Wale",
        "Währung",
         "Wärmetechnik",
         "Wärmetechnik",
         "Werbung",
         "Werbung",
        "Werkstoffe",
         "Werkzeuge & Geräte",
         "Werkzeuge & Geräte",
         "Wetter",
         "Wetter",
Zeile 320: Zeile 332:
         trenn();
         trenn();
         klammer('«','»');
         klammer('«','»');
        zeichen('⌀');
         zeichen('°');
         zeichen('°');
         zeichen('′');
         zeichen('′');
         zeichen('″');
         zeichen('″');
        zeichen('…');
         trenn();
         trenn();
        zeichen('…');
         zeichen('€');
         zeichen('€');
        zeichen('†');
         zeichen('§');
         zeichen('§');
         zeichen('™');
         zeichen('™');
        zeichen('©');
        zeichen('®');
         zeichen('•');
         zeichen('•');
         trenn();
         trenn();
Zeile 343: Zeile 357:
         zeichen('¼');
         zeichen('¼');
         zeichen('¾');
         zeichen('¾');
         zeichen('‣');
         zeichen('≙');
         trenn();
         trenn();
         zeichen('≈');
         zeichen('≈');
         zeichen('≠');
         zeichen('≠');
         zeichen('≙');
         zeichen('≡');
         zeichen('≤');
         zeichen('≤');
         zeichen('≥');
         zeichen('≥');
Zeile 365: Zeile 379:
         zeichen('☣');
         zeichen('☣');
         zeichen('☭');
         zeichen('☭');
        trenn();
        zeichen('‣');
        zeichen('♂');
        zeichen('♀');
        zeichen('⁂');
        zeichen('∞');
        zeichen('◆');
        zeichen('▲');
         trenn();
         trenn();
         zeichen('ſ');
         zeichen('ſ');
Zeile 380: Zeile 402:
         trenn();
         trenn();
         klammer('[[',']]');
         klammer('[[',']]');
        klammer('[',']');
         zeichen('|');
         zeichen('|');
         zeichen('¦');
         zeichen('¦');
Zeile 402: Zeile 425:


   // Spezialvorlagen für die Bürokraten - nur im Bürokratenspiel ganz nach oben:
   // Spezialvorlagen für die Bürokraten - nur im Bürokratenspiel ganz nach oben:
   if (wgPageName.substring(0,23) == "Projekt:Bürokratenspiel")
   if (Seitenname.substring(0,23) == "Projekt:Bürokratenspiel")
       VorlagenNamen = VorlagenNamen.concat([
       VorlagenNamen = VorlagenNamen.concat([
         "°Bürokratie",
         "°Bürokratie",
Zeile 440: Zeile 463:
"siehe°s",
"siehe°s",
"siehe auch°sa",
"siehe auch°sa",
"Sie",
"besuche bitte°bb",
"besuche bitte°bb",
"siehe vielleicht°sv",
"siehe vielleicht°sv",
Zeile 463: Zeile 487:


"°Auszeichnungen",
"°Auszeichnungen",
"GaGAWahl",
"GanzGut (Artikel)°GanzGut",
"GanzGut2 (Abbildung)°GanzGut2",
"GanzGut3 (Animation)°GanzGut3",
        "GanzGut4 (Anomalie)°GanzGut4",
        "GanzGut5 (Audio)°GanzGut5",
"Hw",
"Exzellent",
"Exzellent",
"Wahl°Wahl | Start = ~~~~~ | Stimmen =<br><!--Ab hier Stimmen abgeben--><br><br><!--Aber nur bis hierher-----><br>",
"Wahlende",
"Geschmiedet",
"Geschmiedet",


Zeile 500: Zeile 515:


"°Praktisches",
"°Praktisches",
"Anrede",
"Bügeln",
"Bügeln",
"Fortsetzung",
"Fortsetzung",
"Schon gewusst",
"Schon gewusst",
"GaGA Teaser°GaGATeaser<br>| Kopfzeile = Schlagzeile<br>| Bild = Bildname ohne &#34;Bild:&#34;<br>| Grösse = Bildbreite ohne &#34;px&#34;<br>| Bildausrichtung = right oder left<br>| Text = Teasertext<br>| Fußzeile = Weitere...<br>| Bildunterschrift = <br>",
"Artikel Teaser°ArtikelTeaser<br />| Kopfzeile = Schlagzeile<br />| Bild = Bildname ohne &#34;Bild:&#34;<br />| Grösse = Bildbreite ohne &#34;px&#34;<br />| Bildausrichtung = right oder left<br />| Text = Teasertext<br />| Fußzeile = Weitere...<br />| Bildunterschrift = <br />",
"Dieser Artikel",
"Dieser Artikel",
"Schmiede",
"Schmiede",
Zeile 513: Zeile 529:


"°Für Bilder",
"°Für Bilder",
"img°img<br>| Bildname (ohne Bild:)<br>| alt =<br>| name =<br>| title = Tooltip<br>| link =<br>| width =<br>| height =<br>",
"img°img<br />| Bildname (ohne Bild:)<br />| alt =<br />| name =<br />| title = Tooltip<br />| link =<br />| width =<br />| height =<br />",
"Drexxzeuch",
"Drexxzeuch",
"NichtGNU",
"NichtGNU",
Zeile 519: Zeile 535:
"TempBild",
"TempBild",
"ROSTklärung°ROSTklärung|~~~",
"ROSTklärung°ROSTklärung|~~~",
        "Quelle fehlt°Quelle?",


"°Listen",
"°Listen",
Zeile 535: Zeile 552:
"Preis",
"Preis",
"Hinweise",
"Hinweise",
"DankeKAT",
"Liebguck",
"Lesezirkelwerbung",
"Pate",
"Patenkind",
"Patenkind?",


"°Kamelbox negativ",
"°Kamelbox negativ",
Zeile 571: Zeile 584:
"Navbox",
"Navbox",
"Ref°Ref|1",
"Ref°Ref|1",
"Note°Note|1|Norddeutsches Amtsblatt",
"Note°Note|1|2=Norddeutsches Amtsblatt",
"Rechtshinweis",
"Rechtshinweis",
"Religionshinweis",
"Religionshinweis",
Zeile 602: Zeile 615:
"Pronomen",
"Pronomen",
"Sinn",
"Sinn",
"Sprech",
"Umwelt",
"Umwelt",
"WOMO",
"WOMO",
Zeile 656: Zeile 670:
     kat_div_2.id = 'kat_div_2';
     kat_div_2.id = 'kat_div_2';
     kat_div_2.innerHTML += inhalt;
     kat_div_2.innerHTML += inhalt;
     document.getElementById('editform').insertBefore(kat_div_2, document.getElementById('antispam-container'));
  // bei geschützten seiten jibet editform nüscht
   
     if (document.getElementById('editform')) {
    // Leerzeilen am Ende des Artikeltextes entfernen
        document.getElementById('editform').insertBefore(kat_div_2, document.getElementById('antispam-container'));
    document.editform.wpTextbox1.value = document.editform.wpTextbox1.value.replace(/\s+$/, "");
        // Leerzeilen am Ende des Artikeltextes entfernen
        document.editform.wpTextbox1.value = document.editform.wpTextbox1.value.replace(/\s+$/, "");
    }
});
});


//----------------------------------------------------------------------------
//----------------------------------------------------------------------------
//Brauche ich wegen NL-Problem bei der Paramter-Übergabe für Vorlagen:
//Brauche ich wegen NL-Problem bei der Paramter-Übergabe für Vorlagen:
//selText = sampleText.replace(/<br>/g,"\n");
//selText = sampleText.replace(/<br \/>/g,"\n");
function insertVorlage(tagOpen, tagClose, sampleText) {
function insertVorlage(tagOpen, tagClose, sampleText) {
var txtarea;
var txtarea;
Zeile 689: Zeile 705:
selText = range.text;
selText = range.text;
//insert tags
//insert tags
selText = sampleText.replace(/<br>/g,"\n");
selText = sampleText.replace(/<br \/>/g,"\n");
range.text = tagOpen + selText + tagClose;
range.text = tagOpen + selText + tagClose;
//mark sample text as selected
//mark sample text as selected
Zeile 714: Zeile 730:
selText = txtarea.value.substring(startPos, endPos);
selText = txtarea.value.substring(startPos, endPos);
//insert tags
//insert tags
selText = sampleText.replace(/<br>/g,"\n");
selText = sampleText.replace(/<br \/>/g,"\n");
txtarea.value = txtarea.value.substring(0, startPos) + tagOpen + selText + tagClose + txtarea.value.substring(endPos, txtarea.value.length);
txtarea.value = txtarea.value.substring(0, startPos) + tagOpen + selText + tagClose + txtarea.value.substring(endPos, txtarea.value.length);
//set new selection
//set new selection
Zeile 724: Zeile 740:


}
}
// <source lang="javascript">
/*
EditTools support: add a selector, change into true buttons, enable for all text input fields
The special characters to insert are defined at [[MediaWiki:Edittools]].
*/
var load_edittools = true;
// Globals: getElementsByClassName, hookEvent, addEvent (from wikibits.js)
if ( load_edittools == true ) { // Legacy. Do we really need this?
if ( typeof( EditTools_set_focus ) == 'undefined' ) {
var EditTools_set_focus = true;
}
if ( typeof( EditTools_set_focus_initially ) == 'undefined' ) {
var EditTools_set_focus_initially = EditTools_set_focus;
}
if ( typeof( EditTools_initial_subset ) == 'undefined' ) {
var EditTools_initial_subset = 0;
}
var EditTools = {
createSelector: function() {
var spec = document.getElementById( 'specialchars' );
if ( !spec ) {
return;
}
var sb = getElementsByClassName( spec, 'p', 'specialbasic' );
if ( sb.length <= 1 ) {
return; // Only care if there is more than one
}
var sel = document.createElement( 'select' );
sel.style.display = 'inline';
// sel.setAttribute( 'onchange', 'EditTools.chooseCharSubset( selectedIndex, true );' );
// Apparently, this doesn't work on IE6. Use an explicit event handling function instead:
sel.onchange = EditTools.handleOnchange;
var initial = EditTools_initial_subset;
if ( isNaN( initial ) || initial < 0 || initial >= sb.length ) {
initial = 0;
}
for ( var i = 0; i < sb.length; i++ ) {
var o = document.createElement( 'option' );
// Ugh. We have encoded Unicode characters in the names...
var id = sb[i].id.replace( /.([0-9A-F][0-9A-F])/g, '%$1' ).replace( /_/g, ' ' );
if ( i == initial ) {
o.selected = 'selected';
}
o.appendChild( document.createTextNode( decodeURIComponent( id ) ) );
sel.appendChild( o );
}
spec.insertBefore( sel, spec.firstChild );
EditTools.chooseCharSubset(
initial,
( wgAction != 'submit' ) &&
EditTools_set_focus_initially &&
( wgCanonicalNamespace != 'Special' || wgCanonicalSpecialPageName != 'Upload' )
);
},
handleOnchange: function( evt ) {
var e    = evt || window.event;      // W3C, IE
var node = e.target || e.srcElement; // W3C, IE
EditTools.chooseCharSubset( node.selectedIndex, true );
return true;
},
chooseCharSubset: function( selected, set_focus ) {
var sb = getElementsByClassName( document.getElementById( 'specialchars' ), 'p', 'specialbasic' );
EditTools.makeButtons( sb[selected] );
for ( var i = 0; i < sb.length; i++ ) {
sb[i].style.display = i == selected ? 'inline' : 'none';
}
if ( set_focus && EditTools_set_focus ) {
var txtarea = EditTools.getTextArea();
if ( txtarea ) {
txtarea.focus();
}
}
},
fixateWidth: function() {
var edit_bar = document.getElementById( 'specialchars' );
if ( !edit_bar ) {
return;
}
// Try to fixate the width of that bar, otherwise IE6 may make it wider, which will lead to
// a table re-layout on the upload form resulting in the right column extending beyond the
// right edge of the window.
edit_bar.setAttribute( 'width', '' + ( edit_bar.clientWidth || edit_bar.offsetWidth ) );
edit_bar.style.maxWidth = '' + ( edit_bar.clientWidth || edit_bar.offsetWidth ) + 'px';
// If we're inside a table, fixate the containing table cell, too.
var parent = edit_bar.parentNode;
while ( parent && parent != document.body && parent.nodeName.toLowerCase() != 'td' ) {
parent = parent.parentNode;
}
if ( parent && parent != document.body ) {
parent.setAttribute( 'width', '' + ( parent.clientWidth || parent.offsetWidth ) );
parent.style.maxWidth = '' + ( parent.clientWidth || parent.offsetWidth ) + 'px';
}
},
makeButtons: function( section ) {
var edit_bar = section || document.getElementById( 'specialchars' );
if ( !edit_bar ) {
return;
}
var links = edit_bar.getElementsByTagName( 'a' );
// 'links' is a *live* collection!
var b = null;
while ( links.length ) {
b = document.createElement( 'input' );
b.type = 'button';
b.style.fontSize = '0.9em';
b.style.paddingLeft = '1px';
b.style.paddingRight = '1px';
b.style.marginLeft = '1px';
b.onclick = links[0].onclick;
b.value = links[0].firstChild.data;
var parent = links[0].parentNode;
parent.replaceChild( b, links[0] ); // This removes links[0] from links!
b.blur(); // IE6 insists on marking some buttons as having the focus...
var margin_added = false;
// Remove text nodes (nodeType == Node.TEXT_NODE, but IE6 doesn't know that...)
// Insert some spacing where desired.
while ( b.nextSibling && b.nextSibling.nodeType == 3 ) {
if ( !margin_added && b.nextSibling.data.search( /\S/ ) >= 0 ) {
b.style.marginRight = '4px';
margin_added = true;
}
parent.removeChild( b.nextSibling );
}
}
},
enableForAllFields: function() {
if ( typeof( insertTags ) != 'function' ) {
return;
}
// insertTags from the site-wide /skins-1.5/common/edit.js just inserts in the first
// textarea in the document. Evidently, that's not good if we have multiple textareas.
// My first idea was to simply add a hidden textarea as the first one, and redefine
// insertTags such that it copied first the last active textareas contents over to that hidden
// field, set the cursor or selection there, let the standard insertTags do its thing, and
// then copy the hidden field's text, cursor position and selection back to the currently
// active field. Unfortunately, that is just as complex as simply copying the whole code
// from wikibits to here and let it work on the right text field in the first place.
var texts = document.getElementsByTagName( 'textarea' );
for ( var i = 0; i < texts.length; i++ ) {
addEvent( texts[i], 'focus', EditTools.registerTextField );
}
// While we're at it, also enable it for input fields
texts = document.getElementsByTagName( 'input' );
for ( var i = 0; i < texts.length; i++ ) {
if ( texts[i].type == 'text' ) {
addEvent( texts[i], 'focus', EditTools.registerTextField );
}
}
insertTags = EditTools.insertTags; // Redefine the global insertTags
},
last_active_textfield: null,
registerTextField: function( evt ) {
var e = evt || window.event;
var node = e.target || e.srcElement;
if ( !node ) {
return;
}
EditTools.last_active_textfield = node.id;
return true;
},
getTextArea: function() {
var txtarea = null;
if ( EditTools.last_active_textfield && EditTools.last_active_textfield != '' )
txtarea = document.getElementById( EditTools.last_active_textfield );
if ( !txtarea ) {
// Fallback option: old behaviour
if ( document.editform ) {
txtarea = document.editform.wpTextbox1;
} else {
// Some alternate form? Take the first one we can find
txtarea = document.getElementsByTagName( 'textarea' );
if ( txtarea.length > 0 ) {
txtarea = txtarea[0];
} else {
txtarea = null;
}
}
}
return txtarea;
},
insertTags: function( tagOpen, tagClose, sampleText ) {
/* Usability initiative compatibility */
if ( typeof $j != 'undefined' && typeof $j.fn.textSelection != 'undefined' ) {
$j( '#wpTextbox1' ).textSelection(
'encapsulateSelection', { 'pre': tagOpen, 'peri': sampleText, 'post': tagClose }
);
return;
}
var txtarea = EditTools.getTextArea ();
if ( !txtarea ) {
return;
}
var selText, isSample = false;
function checkSelectedText() {
if ( !selText ) {
selText = sampleText;
isSample = true;
} else if ( selText.charAt( selText.length - 1 ) == ' ' ) { // Exclude ending space char
selText = selText.substring( 0, selText.length - 1 );
tagClose += ' ';
}
}
if ( document.selection && document.selection.createRange ) { // IE/Opera
// Save window scroll position
var winScroll = 0;
if ( document.documentElement && document.documentElement.scrollTop ) {
winScroll = document.documentElement.scrollTop;
} else if ( document.body ) {
winScroll = document.body.scrollTop;
}
// Get current selection
txtarea.focus();
var range = document.selection.createRange();
selText = range.text;
// Insert tags
checkSelectedText ();
range.text = tagOpen + selText + tagClose;
// Mark sample text as selected
if ( isSample && range.moveStart ) {
if ( window.opera ) {
tagClose = tagClose.replace( /\n/g, '' );
}
range.moveStart( 'character', - tagClose.length - selText.length );
range.moveEnd( 'character', - tagClose.length );
}
range.select();
// Restore window scroll position
if ( document.documentElement && document.documentElement.scrollTop ) {
document.documentElement.scrollTop = winScroll;
} else if ( document.body ) {
document.body.scrollTop = winScroll;
}
} else if ( txtarea.selectionStart || txtarea.selectionStart == '0' ) { // Mozilla
// Save textarea scroll position
var textScroll = txtarea.scrollTop;
// Get current selection
txtarea.focus();
var startPos = txtarea.selectionStart;
var endPos  = txtarea.selectionEnd;
selText = txtarea.value.substring( startPos, endPos );
// Insert tags
checkSelectedText();
txtarea.value = txtarea.value.substring( 0, startPos ) +
tagOpen + selText + tagClose +
txtarea.value.substring( endPos );
// Set new selection
if ( isSample ) {
txtarea.selectionStart = startPos + tagOpen.length;
txtarea.selectionEnd = startPos + tagOpen.length + selText.length;
} else {
txtarea.selectionStart = startPos + tagOpen.length + selText.length + tagClose.length;
txtarea.selectionEnd = txtarea.selectionStart;
}
// Restore textarea scroll position
txtarea.scrollTop = textScroll;
}
}, // end insertTags
setup: function() {
EditTools.fixateWidth();
EditTools.createSelector();
EditTools.enableForAllFields();
}
} // end EditTools
// Do not use addOnloadHook; it runs *before* the onload event fires. At that time, onclick or
// onfocus handlers may not yet be set up properly.
hookEvent( 'load', EditTools.setup );
} // end if
// </source>

Aktuelle Version vom 31. Januar 2023, 17:49 Uhr

//<source lang="javascript">

//Diese Seite wird von MediaWiki:Monobook.js aus geladen, sobald eine Seite bearbeitet wird
// anzeigen & verbergen (siehe bald Diskussionsseite)
 function einaus (inhalt, einblenden, ausblenden) {
   var thisLevel  = document.getElementById(inhalt);
   var otherLevel = document.getElementById(einblenden);
   var linkLevel  = document.getElementById(ausblenden);
   if (thisLevel.style.display == 'none') {
       thisLevel.style.display = 'block';
       otherLevel.style.display = 'none';
       linkLevel.style.display = 'inline';
   } else {
       thisLevel.style.display = 'none';
       otherLevel.style.display = 'inline';
       linkLevel.style.display = 'none';
   }
 }

/** fügt Klick-Kat (kat) am Ende des Textes im Editierfensters ein */ function add_cat(kat) {

   document.editform.wpTextbox1.value += '\n';

}

//-----------Holt aus einer Vorlage den Text zwischen dem ersten "

{{" und "}}" raus 
//-----------und patched das ins Eingabefeld  
function Get_Page(Page){
	jQuery.ajax({
		url: wgScript,
		context: document.body,
		dataType: "text", 
		data: 'title='+Page+'&action=raw&templates=expand',
		success:  function(data){
			var x = data.split("<pre>");
			if (x[1]){
				var y = x[1].replace(/\s*/,"").split("

");

insertVorlage(, , y[0]); }else{

alert("kein verwertbares Objekt.

 vorhanden?");
			}
		}
	});
}
//------------------------------------------------------------------------------------

/** bastelt die Edittools-Box */
jQuery(document).ready(function() {
    var kategorieNamen = [
        "Abkürzung",
        "Adel",
        "Adventskalender",
        "Affen",
        "Afrika",
        "Ägypten",
        "Aliens",
        "Alkohol",
        "Amphibien",
        "Anatomie",
        "Architektur",
        "Artikel, die wo so aussehen, wie die Dinge, die sie beschreiben tun",
        "Astronomie",
        "Aua",
        "Ausgestorben",
        "Auto",
        "Bahn",
        "Bären",
        "Baum",
        "Bayern",
        "Behörden",
        "Beruf",
        "Besondere Tage",
        "Bildung",
        "Biographie",
        "Biologie",
        "Blumen",
        "Bösewicht",
        "Böses Kamel",
        "Botanik",
        "Brauchtum",
        "Buchstabe",
        "Chamäleons",
        "Chemie",
        "China",
        "Computer",
        "Denkmal",
        "Desserts & Salate",
        "Deutschland",
        "Dichter & Denker",
        "Dickhäuter",
        "Dienstleistung",
        "Drogen",
        "Eier",
        "Elektrotechnik",
        "Entdecker",
        "Enten",
        "Erfinder",
        "Eulen",
        "Fabelwesen",
        "Fäkalien",
        "Farben",
        "Fastfood",
        "Feminismus",
        "Fernsehen",
        "Feuer",
        "Film",
        "Firma",
        "Fische",
        "Fleisch",
        "Fluss",
        "Freizeit",
        "Frisuren",
        "Gastronomie",
        "Gebäck",
        "Gebirge",
        "Geheim",
        "Geheimdienst",
        "Geistlicher",
        "Genie & Wahnsinn",
        "Geographie",
        "Geologie",
        "Geschichte",
        "Gesellschaft",
        "Getränk",
        "Gewässer",
        "Gilden",
        "Google",
        "Götter",
        "Grammatik",
        "Gutes Kamel",
        "Gutmenschentum",
        "Häh?",
        "Haushaltsgeräte",
        "Herdenverhalten",
        "Helden",
        "Hornträger",
        "Hunde",
        "Hygiene",
        "Industrie",
        "Insekten",
        "Inseln",
        "Jahrestag",
        "Jahreszahl",
        "Japan",
        "Kalau",
        "Kalender",
        "Kamele",
        "Kamelkunde",
        "Kamelopedia",
        "Kasusativ",
        "Katzen",
        "Kleidung",
        "Komische Kamele",
        "Komische Typen",
        "Komische Viecher",
        "Kommunikation",
        "Kosmetik",
        "Krabbeltiere",
        "Krankheiten",
        "Krieg",
        "Kriminalität",
        "Kulinarik",
        "Kulturgut",
        "Kunst",
        "Kunstrichtung",
        "Künstler",
        "Land & Leute",
        "Landschaften",
        "Landwirtschaft",
        "Lied",
        "Listen",
        "Literatur",
        "Löcher",
        "Logik",
        "Luft & Raumfahrt",
        "Lyrik",
        "Märchen",
        "Maschinen",
        "Maßeinheit",
        "Mathematik",
        "Mechanik",
        "Medien",
        "Medizin",
        "Microsoft",
        "Mikroben",
        "Milch & Käse",
        "Militär & Polizei",
        "Mischwesen",
        "Möbel",
        "Mode",
        "Muscheln & Schnecken",
        "Musik",
        "Musiker",
        "Musikinstrument",
        "Musikrichtungen",
        "Mythologie",
        "Nachrichten",
        "Nagetiere",
        "Name",
        "Natur",
        "Nudeln & Pasta",
        "Oberflächliches",
        "Obst & Gemüse",
        "Optik & Lichttechnik",
        "Organisationen",
        "Ort",
        "Pferde & Esel",
        "Philosophie",
        "Physik",
        "Pilze",
        "Planeten",
        "Plem-Plem",
        "Politik",
        "Politiker",
        "Post",
        "Projekt",
        "Psychologie",
        "Pyramiden",
        "Raubtier",
        "Re(h)kursion",
        "Recht",
        "Religion",
        "Rezepte",
        "Rindviecher",
        "Rohstoffe",
        "SadoMaso",
        "Sammelartikel",
        "Saurier",
        "Schach",
        "Schafe",
        "Schauspieler & Entertainer",
        "ScheibchenWelt",
        "Schifffahrt",
        "Schlangen",
        "Schöner Wohnen",
        "Schule",
        "Schweine",
        "Schweiz",
        "Sexualität",
        "Soziologie",
        "Spiel",
        "Sport",
        "Sportler",
        "Sprache",
        "Sprachwissenschaft",
        "Staat",
        "Stadt",
        "Süßigkeiten",
        "Suppen & Soßen",
        "Symbol",
        "Technik",
        "Textilien",
        "Theorie",
        "Tiger",
        "Tisch",
        "Touristik",
        "Uhren",
        "Umfrage",
        "Unternehmer",
        "Unterwasser",
        "USA",
        "Verkehr",
        "Verkehrsmittel",
        "Verpackung",
        "Verschwörungstheorien",
        "Verwechslungen",
        "Vögel",
        "Waffen",
        "Wale",
        "Währung",
        "Wärmetechnik",
        "Werbung",
        "Werkstoffe",
        "Werkzeuge & Geräte",
        "Wetter",
        "Wikipedia",
        "Wirtschaft",
        "Wissenschaft",
        "Wissenschaftler",
        "Wortsinn & Tiefsinn",
        "WTF-8",
        "Würmer",
        "Wüste",
        "Wurst",
        "Zahl",
        "Zauberei",
        "Zeit",
        "Zeitgeschehen",
        "Zum Kotzen",
        "Zusammenrottung"
    ];
        
    function kategorienHTML() {
        var html    = '<a href="javascript:einaus(\'kats\',\'clickein\',\'clickaus\')">[anzeigen]</a>

'; return html; } function sonderzeichenHTML() { var html = 'Sonderzeichen:
'; html += '<a href="javascript:einaus(\'sonder\',\'sonderein\',\'sonderaus\')">[anzeigen]</a>

'; return html; } //------------------------------------------------------------------ //Jeder Eintrag besteht aus max. 3 Parametern, die mit einem "°" getrennt werden: // P1: wenn leer: Wird P2 als neue Überschrift eingefügt // wenn nicht leer: P1 wird als klickbarer Titel dargestellt und auch in das Editfeld gepatched // ausser P2 ist vorhanden // P2: wenn vorhanden: Wird anstatt von P1 ins Editfeld gepatched ausser P2=Load // wenn P2=Load : Wird die Seite/Vorlage in P3 geladen und der Inhalt zwischen // dem ersten "
Vorlage:" und "" ins Editfeld gepatched

   var VorlagenNamen = [];

   // Spezialvorlagen für die Bürokraten - nur im Bürokratenspiel ganz nach oben:
   if (Seitenname.substring(0,23) == "Projekt:Bürokratenspiel")
       VorlagenNamen = VorlagenNamen.concat([
        "°Bürokratie",
        "Ablehnung°Bürokratenspiel/Formulare/Ablehnung",
        "Abstimmung°Bürokratenspiel/Formulare/Abstimmung",
        "Anfechtung°Bürokratenspiel/Formulare/Anfechtung",
        "Anfrage°Bürokratenspiel/Formulare/Anfrage",
        "Anmerkung°Bürokratenspiel/Formulare/Anmerkung",
        "Antrag°Bürokratenspiel/Formulare/Antrag",
        "Anweisung°Bürokratenspiel/Formulare/Anweisung",
        "Bearbeitung°Bürokratenspiel/Formulare/Bearbeitung",
        "Beschluss°Bürokratenspiel/Formulare/Beschluss",
        "Beschwerde°Bürokratenspiel/Formulare/Beschwerde",
        "Feststellung°Bürokratenspiel/Formulare/Feststellung",
        "Formfehler°Bürokratenspiel/Formulare/Formfehler",
        "Genehmigung°Bürokratenspiel/Formulare/Genehmigung",
        "Gutachten°Bürokratenspiel/Formulare/Gutachten",
        "Interne Mitteilung°Bürokratenspiel/Formulare/Interne Mitteilung",
        "Kenntnisnahme°Bürokratenspiel/Formulare/Kenntnisnahme",
        "Maßnahme°Bürokratenspiel/Formulare/Maßnahme",
        "Mecklenburg-Vorpommer°Bürokratenspiel/Formulare/Mecklenburg-Vorpommer",
        "Mitteilung°Bürokratenspiel/Formulare/Mitteilung",
        "Nicht zuständig°Bürokratenspiel/Formulare/Nicht zuständig",
        "Rechenschaftsbericht°Bürokratenspiel/Formulare/Rechenschaftsbericht",
        "Rechtshinweis°Bürokratenspiel/Formulare/Rechtshinweis",
        "Rückzug°Bürokratenspiel/Formulare/Rückzug",
        "Rüge°Bürokratenspiel/Formulare/Rüge",
        "Stellungnahme°Bürokratenspiel/Formulare/Stellungnahme",
        "Ungültig°Bürokratenspiel/Formulare/Ungültig",
        "Verfügung°Bürokratenspiel/Formulare/Verfügung",
        "Verwarnung°Bürokratenspiel/Formulare/Verwarnung"
   ]);
   
   // Allgemeine Vorlagen
   VorlagenNamen = VorlagenNamen.concat([
	"°Hinweise",
	"siehe°s",
	"siehe auch°sa",
	"Sie",
	"besuche bitte°bb",
	"siehe vielleicht°sv",
	"Lies mal°lm",
	"siehe besser°sb",
	"Siehe dazu lieber°sl",
	"negativ beeinflussen°nb",
	"Dann geh doch°gd",
	"siehe nicht°sn2",
	"Siehe besser nicht°sn",
	"auf gar keinen Fall°sk",
	"siehe eben nicht°sn",
	"Hier wartet man°hwm",
	"nichts zu tun mit°nt",
	"Vergleiche mit°vg",
	"verwechseln mit°zv",
	"Nicht zu verwechseln°nv",
	"Tut nichts zur Sache°st",
        "Siehe aber°Sab",
        "Beachte jedoch°Bj",
	"WWW°sw",
	"siehe Kamelionary°sy",

	"°Auszeichnungen",
	"Exzellent",
	"Geschmiedet",

	"°Qualitätssicherung",
	"Trash",
	"Begraben",
	"Überarbeiten",
	"Humorantrag",
	"Relevanz",
	"Kompatibel",
	"Privatkram",
	"Weltbild",
	"Kuhdorf",
	"Dorftrottel",
	"Schlechtschreibung",
	"Glossar",
	"Urv",

	"°Ab da wirds nett",
	"Stub",
	"Gleicht",
	"Nicht versenken",
	"Schizophren",
	"Was",
	"Text fehlt°Text",
	"Mager",

	"°Praktisches",
	"Anrede",
	"Bügeln",
	"Fortsetzung",
	"Schon gewusst",
	"Artikel Teaser°ArtikelTeaser
| Kopfzeile = Schlagzeile
| Bild = Bildname ohne "Bild:"
| Grösse = Bildbreite ohne "px"
| Bildausrichtung = right oder left
| Text = Teasertext
| Fußzeile = Weitere...
| Bildunterschrift =
", "Dieser Artikel", "Schmiede", "Untot", "Nix kapiche", "BegriffsklärungWP", "WPTitel", "Kamelionary°Load°Vorlage:Kamelionary/preload", "°Für Bilder", "img°img
| Bildname (ohne Bild:)
| alt =
| name =
| title = Tooltip
| link =
| width =
| height =
", "Drexxzeuch", "NichtGNU", "Wiki doof", "TempBild", "ROSTklärung°ROSTklärung|~~~", "Quelle fehlt°Quelle?", "°Listen", "Listenartikel", "TOC", "°Andere Welt", "Gesungene Kamelopedia", "°Kamelbox positiv", "Moin", "Glückwunsch", "Glückwunsch2", "Hallo", "Keks", "Preis", "Hinweise", "Liebguck", "°Kamelbox negativ", "Artikelschwemme", "Vorschau", "Urlaub", "Vermisst", "Rüge", "Kacka", "Gangsta", "Plonk", "URV-Mahnung", "Versiegelt", "°Artikelschmuck", "Begriffsklärung", "Begriffsklärung2", "Begriffsklärung3", "BegriffsklärungVoll", "BegriffsklärungWP", "Begriffsverzerrung", "Cool", "Elektrohinweis", "Erklärbär", "Gesichtet", "Gesundheitshinweis", "Kotzen", "Merkelsatz", "Merksatz", "Mürrebär", "Navbox", "Ref°Ref|1", "Note°Note|1|2=Norddeutsches Amtsblatt", "Rechtshinweis", "Religionshinweis", "Scherz", "Selbstlöschung", "Spoiler", "Systematik°Load°Vorlage:Systematik", "Systematik Film°Load°Vorlage:Systematik_Film", "Systematik Bühne°Load°Vorlage:Systematik_Bühne", "Tipp", "Topsecret", "Traurig", "Vorlagenfrei", "Vorlagenwahn", "Warnung°Warnung|Grund", "Wikipedia", "Zitat°Zitat|Zitattext|Zitierter|Thema", "°Artikel-Navis", "Alphabet", "Europa", "Farben", "Kapst", "Klassiker", "Kontinente", "Mammon", "PSE", "PSEBIG", "Partei", "Pronomen", "Sinn", "Sprech", "Umwelt", "WOMO", "Werbeblock", "Zahlen", "Zahlenstrahl" ]); function add_Templ(T) { var Teil = T.split("°"); if (Teil[0]){ var html = "<a href=\"javascript:insertVorlage('\{\{','\}\}','"; if (Teil[1]){ if (Teil[1]=="Load"){ var html = "<a href=\"javascript:Get_Page('" + Teil[2] + "');\">" }else{ var html = "<a href=\"javascript:insertVorlage('\{\{','\}\}','" + Teil[1] + "');\">" } }else{ var html = "<a href=\"javascript:insertVorlage('\{\{','\}\}','" + Teil[0] + "');\">" } html +="" + Teil[0] + "</a>"; }else{ var html = "
"+Teil[1]+""; } return html; } function VorlagenHTML() { var html = 'Vorlagen:
'; html += '<a href="javascript:einaus(\'Templ\',\'Templein\',\'Templaus\')">[anzeigen]</a>

'; return html; } //------------------------------------------------------------------------------- var inhalt = 'Klick-Kategorien: <a href="/index.php/Hilfe:Edittools" target="_blank" title="Hilfe (in neuem Fenster)">?</a>
'; inhalt += kategorienHTML(); inhalt += "

"; inhalt += sonderzeichenHTML(); inhalt += "

"; inhalt += VorlagenHTML(); inhalt += "

"; var kat_div_2 = document.createElement('div'); kat_div_2.id = 'kat_div_2'; kat_div_2.innerHTML += inhalt; // bei geschützten seiten jibet editform nüscht if (document.getElementById('editform')) { document.getElementById('editform').insertBefore(kat_div_2, document.getElementById('antispam-container')); // Leerzeilen am Ende des Artikeltextes entfernen document.editform.wpTextbox1.value = document.editform.wpTextbox1.value.replace(/\s+$/, ""); } }); //---------------------------------------------------------------------------- //Brauche ich wegen NL-Problem bei der Paramter-Übergabe für Vorlagen: //selText = sampleText.replace(/
/g,"\n"); function insertVorlage(tagOpen, tagClose, sampleText) { var txtarea; if (document.editform) { txtarea = document.editform.wpTextbox1; } else { // some alternate form? take the first one we can find var areas = document.getElementsByTagName('textarea'); txtarea = areas[0]; } var selText, isSample = false; if (document.selection && document.selection.createRange) { // IE/Opera //save window scroll position if (document.documentElement && document.documentElement.scrollTop){ var winScroll = document.documentElement.scrollTop; }else if (document.body){ var winScroll = document.body.scrollTop; } //get current selection txtarea.focus(); var range = document.selection.createRange(); selText = range.text; //insert tags selText = sampleText.replace(/
/g,"\n"); range.text = tagOpen + selText + tagClose; //mark sample text as selected if (range.moveStart) { if (window.opera){tagClose = tagClose.replace(/\n/g,);} range.moveStart('character', - tagClose.length); range.moveEnd('character', - tagClose.length); } range.select(); //restore window scroll position if (document.documentElement && document.documentElement.scrollTop){ document.documentElement.scrollTop = winScroll; }else if (document.body){ document.body.scrollTop = winScroll; } } else if (txtarea.selectionStart || txtarea.selectionStart == '0') { // Mozilla //save textarea scroll position var textScroll = txtarea.scrollTop; //get current selection txtarea.focus(); var startPos = txtarea.selectionStart; var endPos = txtarea.selectionEnd; selText = txtarea.value.substring(startPos, endPos); //insert tags selText = sampleText.replace(/
/g,"\n"); txtarea.value = txtarea.value.substring(0, startPos) + tagOpen + selText + tagClose + txtarea.value.substring(endPos, txtarea.value.length); //set new selection txtarea.selectionStart = startPos + tagOpen.length + selText.length; txtarea.selectionEnd = startPos + tagOpen.length + selText.length; //restore textarea scroll position txtarea.scrollTop = textScroll; } }