﻿//JavaScript - Library
// All rights reserved on concept, design and solution as well as on attached files
// Copyright by medialink 2010 - v9.101/10.07.2010
// -----------------------------------------------------------------------------------



//----- init-section ---------------------------------------------------------------------------


//onload and unonload
function doinit(){
	initMenus();
}


function doend(){
	saveMenus();
}




//----- menu functions ----------------------------------------------------------------------------
//divblocks defined in jsDefs.js


//----- div handling
function divchange(divname){
	divroot = divname.substring(0,divname.length-2);
	divsuffix = divname.substring(divname.length-2,divname.length);

	if (divname.indexOf('cl') > -1){
		divset(divname,'none');
		divset(divroot+'op','block');
		for (var z=1; z<=divblock.length-1; z++){
			if (divblock[z].n == divroot){
				divblock[z].t = "op";
				return;
			}
		}
	}
	if (divname.indexOf('op') > -1){
		divset(divname,'none');
		divset(divroot+'cl','block');
		for (var z=1; z<=divblock.length-1; z++){
			if (divblock[z].n == divroot){
				divblock[z].t = "cl";
				return;
			}
		}
	}
}


//----- div functions
function divset(divname,displaytype){
	if (w3c){
		eval("document.getElementById('" + divname + "').style.display = '" + displaytype + "'");
	}
}


function openMenus(){
	for (var z=1; z<=divblock.length-1; z++){
		divset(divblock[z].n+"cl","none");
		divset(divblock[z].n+"op","block");
		divblock[z].t = "op";
	}
}


function closeMenus(){
	for (var z=1; z<=divblock.length-1; z++){
		divset(divblock[z].n+"op","none");
		divset(divblock[z].n+"cl","block");
		divblock[z].t = "cl";
	}
}


function saveMenus(){
	if (cookieOK == true){
		var str = ""+"";
		for (var z=1; z<=divblock.length-1; z++){
			str = str + divblock[z].n + "|" + divblock[z].t + "|";
		}
		divsettingsave = str.substring(0,str.length-1);
		SetCookie("menusections",divsettingsave,0,"/");
	}
}


function initMenus(){
	if (cookieOK == true){
		var divsettingarray = new Array();
		var str;
		str = GetCookie("menusections");
		if ((str != null) && (str != "")){
			divsettingarray = str.split("|");
			zz = 0;
			for (var z=1; z<=divblock.length-1; z++){
				divblock[z].n = divsettingarray[zz];
				divblock[z].t = divsettingarray[zz+1];
				if (divsettingarray[zz+1] == "op"){
					divset(divblock[z].n+"cl","none");
					divset(divblock[z].n+"op","block");
				}else{
					divset(divblock[z].n+"cl","block");
					divset(divblock[z].n+"op","none");			
				}
				zz = zz+2;
			}
		}
	}
}





//----- layer functions ------------------------------------------------------------------
layerobj	= null;
var speedin		= 3;
var speedout	= 6;
var looptime	= 30;
var fadeflag     = true;

function showLayer(divId){
	if (w3c){		
		layerobj = document.getElementById(divId);

		//notes for ie6/7 - hn 31.03.2009:
		//ie6: transparency on png-images works with pngbehaviour
		//ie6: transparency on png-background-images not works with pngbehaviour
		//ie7: transparency on png-background-images works with pngbehaviour
		//ie7: fading produces for transparent png-background-images black solids
		//ie7: fading not works if there's a div-construct with absolute positioning

		if ((!ie) && (fadeflag == true)){	//fading not for MSIE
			setOpacity(layerobj,0);
			layerobj.style.visibility = "visible";
			fadeIn(divId,0);
		}else{
			layerobj.style.visibility = "visible";
		}
	}
}

function setFadeflag(ff){
	if (ff == "false"){
		fadeflag = false;
	}else{
		fadeflag = true;
	}
}





function hideLayer(divId){
	if (w3c){
		if ((!ie) && (fadeflag == true)){	//fading not for MSIE
			fadeOut(divId,100)
		}else{
			layerobj.style.visibility = "hidden";
		}
	}
}


function fadeIn(divId,opacity){
	obj = document.getElementById(divId);
	if (opacity < 100){
		opacity = opacity + (speedin*3);
		if (opacity > 100){
			opacity = 100;
		}
		setOpacity(obj,opacity);
		window.setTimeout("fadeIn('"+divId+"',"+opacity+")",looptime);
	}
}


function fadeOut(divId,opacity){
	obj = document.getElementById(divId);
	if (opacity > 0){
		opacity = opacity - (speedout*3);
		if (opacity < 0){
			opacity = 0;
			obj.style.visibility = "hidden";
		}
		setOpacity(obj,opacity);
		window.setTimeout("fadeOut('"+divId+"',"+opacity+")",looptime);
	}else{
		obj.style.visibility = "hidden";
	}

}


function setOpacity(obj,opacity){
	opacity = (opacity == 100)?99.999:opacity;			// IE/Win
	obj.style.filter = "alpha(opacity="+opacity+")";	// Safari<1.2, Konqueror
	obj.style.KHTMLOpacity = opacity/100;				// Older Mozilla and Firefox
	obj.style.MozOpacity = opacity/100;					// Safari 1.2, newer Firefox and Mozilla, CSS3
	obj.style.opacity = opacity/100;
}




//-----form-functions---------------------------------------------------------------------------


//form-send
function formSend(t){

	if (t == "search"){		
		if (document.formSearch.searchterm.value == ""){
			alert(msgFormNoSearchEntry);
		}else{
			document.formSearch.submit();
		}
	}

}







//--- end of file

