jQuery(document).ready(function () {
	
	/* Browserfenstergröße anpassen wenn nötig */
	var screenWidth = screen.width;
	var screenHeight = screen.height;
	/*  */
	var windowWidth = window.innerWidth || (window.document.documentElement.clientWidth || document.body.clientWidth );
	var windowHeight = window.innerHeight || (window.document.documentElement.clientHeight || document.body.clientHeight);
	var optimumWidth = 1113;

	if(screenWidth >= optimumWidth && windowWidth <= optimumWidth) {
		if(screenWidth * 0.9 > optimumWidth) {
			window.moveTo(screenWidth*0.05, screenHeight*0.05);
			window.resizeTo(screenWidth * 0.9, screenHeight*0.9);
		}
	}
	
	
	
	/* wenn navEntry 0 aktiv ist, muss die Farbe von n5 in blau wechseln */
	var classesOfActiveNavEntry = jQuery("li#navEntry0").attr("class").split(" ");
	for ( var i = 0; i < classesOfActiveNavEntry.length; i++ ) {
		if ( classesOfActiveNavEntry[i] == "activeMenuEntry" || classesOfActiveNavEntry[i] == "activeMenuEntry2" ) {
			var imgSrc = jQuery("li.n5 a img").attr("src");
			imgSrc = imgSrc.replace("Inactive.", "Inactive2.");
		}
	}
	
	jQuery("a.mainNavEntry").hover(
		function() {
			var relevantDivBoxes = getHoveringEffectDivs(this);
			
			/* zeige die relevanten DIVs an */
			jQuery(relevantDivBoxes).css("visibility", "visible");
			
			/* wende einen Filter mit Transparenzen und die Hintergrundfarbe auf DIVs ohne Bild an */
			var divsWithFilling = jQuery(relevantDivBoxes).filter( function() {
				if ( !! jQuery(this).children().attr("src") ) return;
				else return true;
			});
			if ( !! divsWithFilling ) {
				divsWithFilling.css("background-color", "#008ee0");
				//divsWithFilling.css("-moz-opacity", "0.6");
				//divsWithFilling.css("filter", "alpha(opacity=60)");
			}
			
			/* einblenden der aktiv highlight bilder */
			var image = jQuery(this).find("img");
			var imgSrc = jQuery(image).attr("src");
			if ( !! imgSrc ) {
				if ( imgSrc.indexOf("_1.") >= 0 ) {
					imgSrc = imgSrc.replace("_1.", "_2.");
				} else if ( imgSrc.indexOf("_3.") >= 0 ) {
					imgSrc = imgSrc.replace("_3.", "_4.");
				}
				jQuery(image).attr("src", imgSrc);
			}
		}, 
		function() {
			var relevantDivBoxes = getHoveringEffectDivs(this);
			
			jQuery(relevantDivBoxes).css("visibility", "hidden");
			
			/* ausblenden der aktiv highlight bilder, aber nicht wenn es die aktuelle Seite betrifft */
			var isActiveMenuEntry = jQuery(this).parent().attr("class").indexOf("activeMenuEntry") >= 0;
			var image = jQuery(this).find("img");
			var imgSrc = jQuery(image).attr("src");
			
			if ( !! imgSrc && ! isActiveMenuEntry ) {
				if ( imgSrc.indexOf("_2") >= 0 ) {
					imgSrc = imgSrc.replace("_2", "_1");
				} else if ( imgSrc.indexOf("_4") >= 0 ) {
					imgSrc = imgSrc.replace("_4", "_3");
				}
				jQuery(image).attr("src", imgSrc);
			}
		});
});

function getHoveringEffectDivs(object) {
	/* die Klasse des Menüeintrags bestimmen */
	var hoveredEntry = jQuery(object).parent().attr("class").split(" ");
	var hoveredClass = "";
	for ( var i=0; i < hoveredEntry.length; i++ ) {
		if ( hoveredEntry[i].length == 2 ) hoveredClass = hoveredEntry[i];
	}
	
	
	
	/* jetzt suchen wir alle DIVs die eingeblendet werden müssen */
	return relevantDivBoxes = jQuery("div#gridBoxContainer div").filter( function() {
		var classes = jQuery(this).attr("class").split(" ");
		var hasClass = false;
		var isActiveMenuEntry = false;
		
		for ( var i = 0; i < classes.length; i++ ) {
			if ( classes[i] == hoveredClass ) hasClass = true;
			if ( classes[i] == "activeMenuEntry" ) isActiveMenuEntry = true;
		}
		
		if ( isActiveMenuEntry ) return false;
		if ( hasClass ) return true;
		return false;
	});

}