function createCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name) {
	createCookie(name,"",-1);
}

function setheight() {
	document.getElementById('left').style.height=document.getElementById('middlerighttext').offsetHeight + 161 + 62 + "px";
	document.getElementById('right').style.height=document.getElementById('middlerighttext').offsetHeight + 161 + 62 + "px";
	document.getElementById('middleleft').style.height=document.getElementById('middlerighttext').offsetHeight + "px";
}

/* general image variables */

var imageInProgress;
imageInProgress = 0; //reset to inactive

/* image functions */

function hideNature() {
	
	if(readCookie('solidcodingtemplate') == 1) {
		var destImage;
		destImage = document.getElementById('bottombarimg2');
		destImage.style.visibility = "visible";
		destImage = document.getElementById('topbarimg2');
		destImage.style.visibility = "visible";	
		destImage = document.getElementById('middlerightbgimg2');
		destImage.style.visibility = "visible";	
	
	destImage = document.getElementById('bottombarimg');
	destImage.style.visibility = "hidden";
	destImage = document.getElementById('topbarimg');
	destImage.style.visibility = "hidden";	
	destImage = document.getElementById('middlerightbgimg');
	destImage.style.visibility = "hidden";		
	
		destImage = document.getElementById('switcherimg');
		destImage.src='/images/icon_leaf.png';
		destImage.style.visibility = "visible";	
		return;
	}
	
	var destImage;
	destImage = document.getElementById('bottombarimg2');
	destImage.style.visibility = "hidden";
	destImage = document.getElementById('topbarimg2');
	destImage.style.visibility = "hidden";	
	destImage = document.getElementById('middlerightbgimg2');
	destImage.style.visibility = "hidden";	
	
		destImage = document.getElementById('bottombarimg');
		destImage.style.visibility = "visible";
		destImage = document.getElementById('topbarimg');
		destImage.style.visibility = "visible";	
		destImage = document.getElementById('middlerightbgimg');
		destImage.style.visibility = "visible";			
		
		destImage = document.getElementById('switcherimg');
		destImage.style.visibility = "visible";			
}

function changeFade() {
	var destImage;
	
	if(imageInProgress != 0) {
		return;
	}	
	
	imageInProgress = 1;
	
	if(readCookie('solidcodingtemplate') == 0 || readCookie('solidcodingtemplate') == null) {
		
		//change images to leaf mode
		//destImage = document.getElementById('bottombarimg');
		//destImage.src='images/bottom_nature.png';
		fadeInit('bottombarimg');
		fadeInit('bottombarimg2');

		//destImage = document.getElementById('topbarimg');
		//destImage.src='images/top_bar_nature.png';
		fadeInit('topbarimg');	
		fadeInit('topbarimg2');	

		fadeInit('middlerightbgimg');	
		fadeInit('middlerightbgimg2');	

		destImage = document.getElementById('switcherimg');
		destImage.src='/images/icon_leaf.png';
		destImage.style.visibility = "visible";	
		//fadeInit('switcherimg');

		createCookie('solidcodingtemplate',1,1);
	}
	else {
		//change images to stone mode
		//destImage = document.getElementById('bottombarimg');
		//destImage.src='images/bottom.png';
		fadeInit('bottombarimg');		
		fadeInit('bottombarimg2');		
		
		//destImage = document.getElementById('topbarimg');
		//destImage.src='images/top_bar.png';
		fadeInit('topbarimg');	
		fadeInit('topbarimg2');	
		
		fadeInit('middlerightbgimg');	
		fadeInit('middlerightbgimg2');			
		
		destImage = document.getElementById('switcherimg');
		destImage.src='/images/icon_mountain.png';
		destImage.style.visibility = "visible";	
		//fadeInit('switcherimg');		

		createCookie('solidcodingtemplate',0,1);
	}
}

function fadeInit(destImageID) {
	if (document.getElementById) {
		/* set the initial opacity in a (hopefully) cross browser way
		   notice that because of the way the image is in front, and not obfuscated
		   by another object we need to "fade out", i don't need a fallback mechanism
		   to show/hide the covering object...the image is just there, full stop */
		var destImage = document.getElementById(destImageID);
		
		if(destImage.style.visibility == "hidden") {
			destImage.style.visibility = "visible";
			
			if (destImage.style.MozOpacity!=null) {  
				/* Mozilla's pre-CSS3 proprietary rule */
				destImage.style.MozOpacity = 0;
			} else if (destImage.style.opacity!=null) {
				/* CSS3 compatible */
				destImage.style.opacity = 0;
			} else if (destImage.style.filter!=null) {
				/* IE's proprietary filter */
				destImage.style.filter = "alpha(opacity=0)";
			}
			window.setTimeout("fadeIn('" + destImageID + "',20)", 100);			
		}
		else {
			window.setTimeout("fadeOut('" + destImageID + "',90)", 100);			
		}
	}
}

function fadeIn(destImageID,opacity) {
	var fadeTarget = document.getElementById(destImageID);
	if (fadeTarget) {
		if (opacity <= 100) {
			if (fadeTarget.style.MozOpacity!=null) {
				/* Mozilla's pre-CSS3 proprietary rule */
				fadeTarget.style.MozOpacity = (opacity/100)-.001;
				/* the .001 fixes a glitch in the opacity calculation which normally results in a flash when reaching 1 */
			} else if (fadeTarget.style.opacity!=null) {
				/* CSS3 compatible */
				fadeTarget.style.opacity = (opacity/100)-.001;
			} else if (fadeTarget.style.filter!=null) {
				/* IE's proprietary filter */
				fadeTarget.style.filter = "alpha(opacity="+opacity+")";
				/* worth noting: IE's opacity needs values in a range of 0-100, not 0.0 - 1.0 */ 
			}
			opacity += 10;
			window.setTimeout("fadeIn('" + destImageID + "',"+opacity+")", 60);
		}
	}
}

function fadeOut(destImageID,opacity) {
	var fadeTarget = document.getElementById(destImageID);
	if (fadeTarget) {
		if (opacity > 0) {
			if (fadeTarget.style.MozOpacity!=null) {
				/* Mozilla's pre-CSS3 proprietary rule */
				fadeTarget.style.MozOpacity = (opacity/100)-.001;
				/* the .001 fixes a glitch in the opacity calculation which normally results in a flash when reaching 1 */
			} else if (fadeTarget.style.opacity!=null) {
				/* CSS3 compatible */
				fadeTarget.style.opacity = (opacity/100)-.001;
			} else if (fadeTarget.style.filter!=null) {
				/* IE's proprietary filter */
				fadeTarget.style.filter = "alpha(opacity="+opacity+")";
				/* worth noting: IE's opacity needs values in a range of 0-100, not 0.0 - 1.0 */ 
			}
			opacity -= 10;
			window.setTimeout("fadeOut('" + destImageID + "',"+opacity+")", 60);
		}
		else {
			fadeTarget.style.visibility = "hidden";
			imageInProgress = 0;
		}
	}
}

function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      if (oldonload) {
        oldonload();
      }
      func();
    }
  }
}
