/*
	HvGG - Version 2

	Standard-JavaScript, optimiert fuer
	JavaScript-fähige Browser (Mozilla/Gecko, Opera, Safari/KHTML, MSIE)
*/


window.onload = function(e) {
	wechsleAussehen();
}

function wechsleAussehen() {
	if(navigator.cookieEnabled == true) {
		ichwillkekse = document.cookie;
		if(ichwillkekse.indexOf("Glucker") != -1) {
			var i, sheet;
			for(i=0; (sheet = document.getElementsByTagName("link")[i]); i++) {
				if(sheet.getAttribute("rel").indexOf("Style") != -1 && sheet.getAttribute("title")) {
					sheet.disabled = true;
					if(sheet.getAttribute("title") == "Glucker") sheet.disabled = false;
				}
			}
		}
	}
}


	
	// Druck-Ausgabe der Seite
	function seitedrucken()
	{
		window.print();
	}
	
	// Oeffnen eines Popup-Fensters zur Bild-Ausgabe
	var bildfenster;
	function bildoeffnen(BILDID,BILDBREITE,BILDHOEHE)
	{
		if (bildfenster && !bildfenster.closed)
			bildfenster.close();
	
		// BILDID muss noch in den String zum richtigen Dateinamen eingebaut werden!
		var dateiname = "images/popup.php?id=" + BILDID;
		var richtigebreite = BILDBREITE + 200;
		var richtigehoehe = Math.max(BILDHOEHE + 77, 150);
		var eigenschaften = "width=" + richtigebreite + "px,height=" + richtigehoehe + "px,left=25px,top=25px,location=no,menubar=no,toolbar=no,scrollbars=no,status=yes,resizable=no";
		
		bildfenster = window.open(dateiname,"Bild",eigenschaften);
	}
	
	// Popup-Fenster wieder schliessen
	function fensterschliessen()
	{
		window.close();
	}
	
	function ueberpruefe_suche ()
	{
	
		if (document.getElementById('suchtext').value.length < 4)
		{
			window.alert ('Der Suchbegriff muss mindestens drei Zeichen haben');
			return false;
		}
		
		return true;
	}

	function ueberpruefe_ggg_suche ()
	{
	
		if (document.getElementById('gggsuchename').value.length < 3)
		{
			window.alert ('Der Suchbegriff muss mindestens drei Zeichen haben');
			return false;
		}
		
		return true;
	}
	
	function ueberpruefe_ggg_mail_formular()
	{
		try
		{
			pruefe_textfeld('sender_name', 'Ihren Namen');
			pruefe_textfeld('sender_mail', 'Ihre E-Mail-Adresse');
			pruefe_textfeld('nachricht', 'eine Nachricht');
		}
		catch (err)
		{
			return false;
		}
		
		return true;	
	}
	
	function ueberpruefe_ggg_eintragaendern_formular()
	{
		try
		{
			pruefe_textfeld_mit_zahl('alt_jahrgang', 'den bisherigen Jahrgang', true);
			pruefe_textfeld('alt_vorname', 'den bisherigen Vornamen');
			pruefe_textfeld('alt_nachname', 'den bisherigen Nachnamen');
			pruefe_textfeld('alt_email', 'die bisherige E-Mail-Adresse');
			
			pruefe_textfeld_mit_zahl('jahrgang', 'den Jahrgang', true);
			pruefe_textfeld('vorname', 'Ihren Vornamen');
			pruefe_textfeld('nachname', 'Ihren Nachnamen');
			pruefe_textfeld('email', 'Ihre E-Mail-Adresse');
		}
		catch (err)
		{
			return false;
		}
		
		return true;	
	}
	
	function ueberpruefe_ggg_neueneintrag_formular()
	{
		try
		{
			pruefe_textfeld_mit_zahl('jahrgang', 'den Jahrgang', true);
			pruefe_textfeld('vorname', 'Ihren Vornamen');
			pruefe_textfeld('nachname', 'Ihren Nachnamen');
			pruefe_textfeld('email', 'Ihre E-Mail-Adresse');
		}
		catch (err)
		{
			return false;
		}
		
		return true;	
	}	

	function wirklich_zuruecksetzen ()
	{
		return confirm("Beim zurücksetzen des Formulars gehen alle Änderungen unwiederbringlich verloren.\nMöchte Sie wirklich fortfahren ?");
	}

///////////////////////////////////
// Elemente überprüfen
///////////////////////////////////
	function ermittle_radio (name)
	{
		elements = document.getElementsByName(name);
		
		if (!elements.length)
			return undefined;
		
		for (x = 0; x < elements.length; x++)
		{
			if (elements[x].checked)
				return elements[x].value;
		}
	}
	
	function pruefe_radio (name, text)
	{
		var res = ermittle_radio (name);
		if (undefined == res)
		{
			alert ("Element '" + name + "' kann nicht gefunden werden");
			throw "not found";
		}
		
		if (!res)
		{
			alert ("Bitte geben Sie " + text + " an");
			throw "unset";
		}
		
		return true;
	}
		
	
	function pruefe_textfeld (name, text)
	{
		elements = document.getElementsByName(name);
		
		if (1 != elements.length)
		{
			alert ("Element '" + name + "' kann nicht gefunden werden");
			throw "not found";
		}
		
		if (!elements[0].value)
		{
			alert ("Bitte geben Sie " + text + " an");
			elements[0].focus();
			throw "unset";
		}
		
		return true;
	}

	function pruefe_textfeld_mit_zahl (name, text, verbiete_null)
	{
		elements = document.getElementsByName(name);
		
		if (1 != elements.length)
		{
			alert ("Element '" + name + "' kann nicht gefunden werden");
			throw "not found";
		}
		
		if (!elements[0].value)
		{
			alert ("Bitte geben Sie " + text + " an");
			elements[0].focus();			
			throw "unset";
		}
		
		if (!ist_ganzzahl(elements[0].value) || (verbiete_null && '0' == elements[0].value))
		{
			alert ("Bitte geben Sie für " + text + " eine Zahl ein");
			elements[0].focus();
			throw "unset";
		}
		
		return true;
	}

	function pruefe_textfeld_mit_datum (name, text)
	{
		elements = document.getElementsByName(name);
		
		if (1 != elements.length)
		{
			alert ("Element '" + name + "' kann nicht gefunden werden");
			throw "not found";
		}
		
		if (!elements[0].value)
		{
			alert ("Bitte geben Sie " + text + " an");
			throw "unset";
		}
		
		if (!ist_datum(elements[0].value))
		{
			alert ("Bitte geben Sie für " + text + " einen Wert im Format TT.MM.JJJJ ein");
			throw "unset";
		}
		
		return true;
	}

	function ist_ganzzahl (str)
	{
		var re = /^\s*[-]?\d+\s*$/;
		return re.test(str);
	}
	
	function ist_datum (str)
	{
		var re = /^\s*[0123]?\d.[01]?\d(|.\d\d|.\d\d\d\d)\s*$/
		return re.test(str);
	}
