// Kristian Zarse
// First version: ??.??.2006
// Last Update: 11.May 2008
// If you need assistance in English, please don´t hesitate to contact me.


// Ziel dieser Funktion: Viele möchten die eigene Mailadresse nicht im Klartext
// auf irgendwelchen Webseiten stehen haben, da sie befürchten, dass Adress-Sammel-
// Bots oder -Spider sie dort finden un zum Spammen missbrauchen. Den 100 Varianten,
// die Adresse irgendwie zu verschlüsseln, hatte ich irgendwann eine hinzugefügt
// und im Laufe der Zeit verfeinert.
// Das Grundkonzeptsieht so aus, dass die Adress-Komponenten einzeln im Skript
// stehen, ohne dass man sie in dieser Form eben für Adresskomponenten halten
// könnte (zumindest nicht automatische Skripte). Diese Komponenten werden dann
// dynamisch zu einem funktionsfähigen Mail-Link zusammengebaut, um dennoch den
// Komfort des Klickens zu haben. Zudem wird dieses Zusammenbauen durch das
// MouseOver-Ereignis ausgelöst - in der Hoffnung, dass Bots und Spider dies
// nicht bewerkstelligen, geschweige denn auswerten, zumindest normale Varianten ;)


// Bitte nicht DIESEN Code hier in die eigene Webseite übernehmen,
// sondern vorher u.a. der Kompaktheit wegen die gestrippte* Variante,
// die keine Kommentare und anderen Ballast mehr enthält.

// *) siehe JS-Code-Stripper auf der Tools-Seite


function AMA(l, n, s, b)
{
	// Übergabeparameter:
	// ------------------
	// l: link    - Zeiger auf den aufrufenden Link (der die Funktion ausgelöst hat)
	// n: name    - Bezeichner/Name der Adresse im Array (s.u.)
	// s: subject - Betreff-Vorlage (optional)
	// b: body    - Mail-Text-Vorlage (optional)
	
	// Zunächst die Event-Handler löschen, damit sie
	// nach dem ersten Aufruf nicht mehr aktiv sind:
	l.onclick = '';
	l.onmouseover = '';

	// Aufbau des Adress-Arrays "arrMA":
	// ---------------------------------
	// 0: Bezeichner der Adresse
	// 1: Domain (ohne .de, .com, ...)
	// 2: Empfänger-Name (vor der Adresse)
	// 3: Account-Name 1. Hälfte
	// 4: Account-Name 2. Hälfte
	// 5: Top-Level-Domain (.de, .com, ...)
	// 6: Betreff
	// 7: Mailtext

	// Hier wird nun das Adress-Array definiert. Bei Änderungen bitte immer darauf
	// achten, dass das erste Element irgendwas anderes ist, dass immer alle sieben
	// Elemente definiert werden und dass die Kommata sauber gesetzt sind zwischen
	// den einzelnen Zeilen. Nur um letzteres übersichtlicher zu machen, habe ich
	// als erstes ein Dummy-Element (0) definiert. Einen anderen Sinn hat es nicht.
	var arrMA = new Array(0
		,Array('kfst-k', 'knusperflockenstammtisch', 'Kristian', 'kris', 'tian', 'de', 'Deine Knuflo-Stammtisch-Seite ...', '')
		,Array('krza-k', 'krza', 'Kristian', 'kris', 'tian', 'de', 'Hallo Kristian ...', '')
		,Array('krza-t-k', 'tools.krza', 'Kristian', 'krist', 'ian', 'de', 'Deine Tools ...', '')
		,Array('krza-n-k', 'nippesstammtisch.krza', 'Kristian', 'krist', 'ian', 'de', 'Deine Nippes-Stammtisch-Seite ...', '')
		,Array('web-k', 'web', 'Kristian', 'kris', 'tian.zarse', 'de', 'Hallo Kristian ...', '')
		);

	// Bestimmung des gewünschten Array-Indizes anhand des Bezeichners:
	i = 1; // erstes Element (0) wird übersprungen.
	do {
		if (arrMA[i][0] == n) { break; }
		i++;
	} while (i < arrMA.length);
	
	if (i == arrMA.length)
	{
		// Falls der Bezeichner ungültig war, Fehlermeldung definieren:
		l.href = "javascript:alert('Keine Mailadresse definiert!');";
		return;
	} // if

	// Falls kein Betreff/Text übergeben wurde, Standardwerte aus dem Array übernehmen:
	if ((typeof s) == 'undefined') { s = arrMA[i][6]; }
	if ((typeof b) == 'undefined') { b = arrMA[i][7]; }
	
	// Das hier ist ein bisschen übertrieben, aber das @-Zeichen sowie die folgenden
	// drei Zeichenketten werden hier in Oktalschreibweise "verschlüsselt", damit
	// wirklich nichts mehr auf einen Zusammenhang mit Mailadressen hindeutet.
	// Ob´s was bringt - keine Ahnung ... ;)
	var aet = "\100"; // @
	var m = "\155\141\151\154\164\157\072"; // mailto:
	var s0 = "\076\077\163\165\142\152\145\143\164\075"; // >?subject=
	var b0 = "\046\142\157\144\171\075"; // ?body=
	
	// Schließlich wird hier nun die Link-Adresse neu gesetzt:
	l.href = m + arrMA[i][2] + ' <' + arrMA[i][3] + arrMA[i][4] + aet + arrMA[i][1] + "\056"  + arrMA[i][5] + s0 + s + b0 + b;
	l.blur;
} // AMA (Assign Mail Address)



function SA(lang)
{
	switch (lang) {
	case 1:
		msg = 'Please klick the link with the mouse!';
		break;
	default:
		msg = 'Bitte den Link mit der Maus anklicken!';
	} // switch
	alert(msg);
} // SA (Show Alert)