/*********************************************************
* Änderungen:
* 20.05.06 - 1.00 - René   -- Erste Version. Alle Skripte hier gebündelt.
* 25.05.06 - 1.01 - René   -- confirmIT eingefügt. Bitte diese ab sofort benutzen!
* 31.05.06 - 1.02 - René   -- Funktionen für Required integriert. Numerice und E-Mail Felder.
* 23.06.06 - 1.03 - René   -- Numerische Textfelderfunktion auskommentiert. Siehe HTML-Klasse
* 02.10.06 - 1.04 - René   -- Variable JSSEITEN in die SVriderklasse verlegt.
* 02.11.06 - 1.05 - René   -- grosses_bild funktion geändert. Kann nun 1 oder 4 Parameter übergeben werden.
* 17.02.07 - 1.06 - René   -- JS-Funktionen zum aus- und einblenden von HTML-Elementen hinzugefügt.
* 29.03.08 - 1.07 - René   -- JS-Funktion für die Hilfebox hinzugefügt.
**********************************************************/
var speicher = new Object();

function confirmIT(url)
{
	if(url == "return")
		return sicherheitsabfrage("Bist du dir sicher?",url);

	sicherheitsabfrage("Bist du dir sicher?",url);

	return true;
}

function sicherheitsabfrage(text,url)
{
	if(confirm(text) == true)
	{
		if(url == "return")
			return true;

		window.location.href = url;
	}
	else if(url == "return")
		return false;

	return true;
}

function eingabebox(box_titel, box_text, url)
{
	var eingabe = prompt(box_titel,box_text);

	if ((eingabe != "") && (eingabe != box_text) && (eingabe != null))
		window.location.href = url.replace(/%i/,encodeURI(eingabe));
}

function grosses_bild(image_id, kategorie, item, version) // Es können auch vier Argumente der Funktion übergeben werden (image_id, kategorie, item, version)
{
	window.open(JSSEITEN+"bild.php?bild_id="+image_id+"&kategorie="+kategorie+"&item="+item+"&version="+version,"bild","toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,copyhistory=no,width=100,height=100,screenX=150,screenY=150,top=10,left=200");
}

function medien_download(medien_id, url_addon)
{
	var url = window.location.href+"&download="+medien_id+"&"+url_addon;
	    url = url.replace("&undefined","");

	window.location.href = url;
}

function UnCryptMailto(s)
{
	var n = 0;
	var r = '';

	for(var i = 0; i < s.length; i++)
	{
		n = s.charCodeAt(i);

		if (n >= 8364)
			n = 128;

		r += String.fromCharCode(n - (1));
	}
	location.href = r;
}

function seitenindex(url, start)
{
	window.location.href = url+"&start="+start;
}

function troggle_element()
{
	if(typeof(speicher[arguments[0]]) == "undefined")
		for(var i = 0; i < arguments.length; i++)
			remove_element(arguments[i]);
	else
		for(var i = arguments.length - 1; i >= 0; i--)
			insert_element(arguments[i]);
}

function remove_element()
{
	for(var i = 0; i < arguments.length; i++)
	{
		if((typeof(speicher[arguments[i]]) == "undefined") && (document.getElementById(arguments[i])))
		{
			var temp = document.getElementById(arguments[i]);

			speicher[arguments[i]]           = new Object();
			speicher[arguments[i]]["next"]   = temp.nextSibling;
			speicher[arguments[i]]["parent"] = temp.parentNode;
			speicher[arguments[i]]["data"]   = temp.parentNode.removeChild(temp);

			while(1)
			{
				if((speicher[arguments[i]]["next"] == null) || (speicher[arguments[i]]["data"].nodeType == speicher[arguments[i]]["next"].nodeType))
					break;
				else
					speicher[arguments[i]]["next"] = speicher[arguments[i]]["next"].nextSibling;
			}
			if((speicher[arguments[i]]["next"] != null) && (speicher[arguments[i]]["next"].getAttributeNode("id") != null))
				speicher[arguments[i]]["check"] = speicher[arguments[i]]["next"].getAttributeNode("id").value;
			else
				speicher[arguments[i]]["check"] = null;
		}
	}
}

function insert_element()
{
	var loop = false;
	for(var i = 0; i < arguments.length; i++)
	{
		if(typeof(speicher[arguments[i]]) != "undefined")
		{
			while(1)
			{
				loop = false;
				if(speicher[arguments[i]]["next"] == null)
					speicher[arguments[i]]["parent"].appendChild(speicher[arguments[i]]["data"]);
				else
				{
					if(speicher[arguments[i]]["check"] != null)
					{
						for(var temp in speicher)
						{
							if(temp == speicher[arguments[i]]["check"])
							{
								speicher[arguments[i]]["check"] = speicher[temp]["check"];
								speicher[arguments[i]]["next"]  = speicher[temp]["next"];
								loop = true;
								break;
							}
						}
					}
					if(!loop)
						speicher[arguments[i]]["parent"].insertBefore(speicher[arguments[i]]["data"], speicher[arguments[i]]["next"]);
				}
				if(!loop)
				{
					delete speicher[arguments[i]];
					break;
				}
			}
		}
	}
}

function hilfebox(hilfe_id)
{
	window.open(JSSEITEN+"hilfe.php?hilfe="+hilfe_id, "Zweitfenster", "width=300,height=400,left=100,top=200")
}