/**
 * Die Function ?berpr?ft, ob die Absender- und Empf?ngeradressen im Weiterempfehlen-Popup korrekt eingegeben sind
 */
function checkMail() {

	// Die eingegebene Absender-Email
	var mailAbsender = document.getElementsByName("value(mailFrom)")[0].value;

	// Die eingegebene Empf?nger-Email
	var mailEmpfaenger = document.getElementsByName("value(mailTo)")[0].value;

	// Alert-Ausgabe im Fehlerfall
	var ausgabe = "";

	// Indikator, ob der Browser regul?re Ausdr?cke erlaubt
	var regularExpressions = false;

	// Indikator, ob die Absender-Mail korrekt eingegeben ist
	var absenderEmail = false;

	// Indikator, ob die Empf?nger-Mail korrekt eingegeben ist
	var empfaengerEmail = false;

	// Es wird gepr?ft, ob die Regul?re Ausdr?cke m?glich sind
	if(typeof(RegExp) == 'function') {
		var b = new RegExp('abc');
		if(b.test('abc') == true){
			regularExpressions = true;
		}
	}

	if(regularExpressions == true) {
		reg = new RegExp('^([a-zA-Z0-9\\-\\.\\_]+)'+
        '(\\@)([a-zA-Z0-9\\-\\.]+)'+
        '(\\.)([a-zA-Z]{2,4})$');
		absenderEmail = (reg.test(mailAbsender));
		if(absenderEmail == false) {
			ausgabe = "Bitte geben Sie eine g%FCltige Email f%FCr den Absender ein.\n";
		}
		empfaengerEmail = (reg.test(mailEmpfaenger));
		if(empfaengerEmail == false) {
			ausgabe += "Bitte geben Sie eine g%FCltige Email f%FCr den Empf%E4nger ein.\n";
		}
	} else {
 		absenderEmail = (mailAbsender.search('@') >= 1 &&
        mailAbsender.lastIndexOf('.') > mailAbsender.search('@') &&
        mailAbsender.lastIndexOf('.') >= mailAbsender.length-5);

		empfaengerEmail = (mailEmpfaenger.search('@') >= 1 &&
        mailEmpfaenger.lastIndexOf('.') > mailEmpfaenger.search('@') &&
        mailEmpfaenger.lastIndexOf('.') >= mailEmpfaenger.length-5);

        if(absenderEmail == false) {
			ausgabe = "Bitte geben Sie eine valide Absender-Email ein. \n";
		}
		if(empfaengerEmail == false) {
			ausgabe += "Bitte geben Sie eine valide Empf%E4nger-Email ein. \n";
		}
	}

	if((absenderEmail && empfaengerEmail) == false) {
		alert(unescape(ausgabe));
	}
	return(absenderEmail && empfaengerEmail);
}

function submitMwc(elementName) {
	window.location.href=document.getElementsByName(elementName)[0].value;
}

function dropdownClickHandler(dropdown) {
	if(dropdown.selectedIndex > 0) {
		location.href = dropdown.value;
	}

	return false;
}

//Fügt eine Function zum onresize-Event dazu ohne die bereits gesetzten Funktionen zu überschreiben

function addOnResizeFunction(func) {
	
	var oldOnResizeFunction = window.onresize;
	
	if (typeof oldOnResizeFunction != 'function') {
		// assign function
		window.onresize = func;
	} else {
		// add function
		window.onresize = function() {
			oldOnResizeFunction();
			func();
		}
	}
}

// Fügt eine Function zum onload-Event dazu ohne die bereits gesetzten Funktionen zu überschreiben

function addOnLoadFunction(func) {
	
	var oldOnLoadFunction = window.onload;
	
	if (typeof oldOnResizeFunction != 'function') {
		// assign function
		window.onload = func;
	} else {
		// add function
		window.onload = function() {
			oldOnLoadFunction();
			func();
		}
	}
}

//Fügt eine Function zum onscroll-Event dazu ohne die bereits gesetzten Funktionen zu überschreiben

function addOnScrollFunction(func) {
	
	var oldOnScrollFunction = window.onscroll;
	
	if (typeof oldOnScrollFunction != 'function') {
		// assign function
		window.onscroll = func;
	} else {
		// add function
		window.onscroll = function() {
			oldOnScrollFunction();
			func();
		}
	}
}

// Berechnet die Größe des aktuellen Viewports einer Seite
function getPageSize() {

	var xScroll, yScroll;

	if (window.innerHeight && window.scrollMaxY) {
		xScroll = window.innerWidth + window.scrollMaxX;
		yScroll = window.innerHeight + window.scrollMaxY;
	} else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac
		xScroll = document.body.scrollWidth;
		yScroll = document.body.scrollHeight;
	} else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
		xScroll = document.body.offsetWidth;
		yScroll = document.body.offsetHeight;
	}

	var windowWidth, windowHeight;

	if (self.innerHeight) {	// all except Explorer
		if(document.documentElement.clientWidth){
			windowWidth = document.documentElement.clientWidth;
		} else {
			windowWidth = self.innerWidth;
		}
		windowHeight = self.innerHeight;
	} else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
		windowWidth = document.documentElement.clientWidth;
		windowHeight = document.documentElement.clientHeight;
	} else if (document.body) { // other Explorers
		windowWidth = document.body.clientWidth;
		windowHeight = document.body.clientHeight;
	}

	// for small pages with total height less then height of the viewport
	if(yScroll < windowHeight){
		pageHeight = windowHeight;
	} else {
		pageHeight = yScroll;
	}

	// for small pages with total width less then width of the viewport
	if(xScroll < windowWidth){
		pageWidth = xScroll;
	} else {
		pageWidth = windowWidth;
	}
	
	return [pageWidth,pageHeight];
}
