/*
 
Correctly handle PNG transparency in Win IE 5.5 & 6.
http://homepage.ntlworld.com/bobosola. Updated 18-Jan-2006.

Use in <HEAD> with DEFER keyword wrapped in conditional comments:
<!--[if lt IE 7]>
<script defer type="text/javascript" src="pngfix.js"></script>
<![endif]-->

*/

function correctPNG() // correctly handle PNG transparency in Win IE 5.5 & 6.
{
	var arVersion = navigator.appVersion.split("MSIE")
	var version = parseFloat(arVersion[1])

	if ((version >= 5.5) && (document.body.filters)) {
		for(var i=0; i<document.images.length; i++){
			var img = document.images[i]
			var imgName = img.src.toUpperCase()
			if (imgName.substring(imgName.length-3, imgName.length) == "PNG"){
				var imgID = (img.id) ? "id='" + img.id + "' " : ""
				var imgClass = (img.className) ? "class='" + img.className + "' " : ""
				var imgTitle = (img.title) ? "title='" + img.title + "' " : "title='" + img.alt + "' "
				var imgStyle = "display:inline-block;" + img.style.cssText 
				var imgAttribs = img.attributes;
				for (var j=0; j<imgAttribs.length; j++){
					var imgAttrib = imgAttribs[j];
					if (imgAttrib.nodeName == "align"){		  
						if (imgAttrib.nodeValue == "left") imgStyle = "float:left;" + imgStyle
						if (imgAttrib.nodeValue == "right") imgStyle = "float:right;" + imgStyle
						break
					}
				}
				var strNewHTML = "<span " + imgID + imgClass + imgTitle
				strNewHTML += " style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";"
				strNewHTML += "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader"
				strNewHTML += "(src='" + img.src + "', sizingMethod='scale');\""
				strNewHTML += " onmouseover=\"PNGswap('" + img.id + "');\" onmouseout=\"PNGswap('" + img.id +"');\""
				strNewHTML += "></span>" 
				img.outerHTML = strNewHTML
				i = i-1
			}
		}
		/**************************************************************************
		***	2007.11.16	L. Price - 	Fix for Div Style.BackGround = ???.png		***
		**************************************************************************/

		var oDivArray = document.getElementsByTagName("div");
		for ( var i=oDivArray.length-1; i>=0; --i ){								//Check all Menu Items For Current Menu Name
			if((oDivArray[i].style.backgroundImage) && (oDivArray[i].style.backgroundImage.split(".")[1].substring(3,0) == "png")){
				var bg = oDivArray[i].style.backgroundImage;
				var src = bg.substring(4,bg.length-1);
				var MyFilter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "', sizingMethod='crop')";
				oDivArray[i].style.backgroundImage="";
				oDivArray[i].style.filter = MyFilter;	
				oDivArray[i].display = "block";
				oDivArray[i].style.zIndex = -1;
			}
		}
		/**************************************************************************
		***	2008.04.24	L. Price - 	Fix for Td Style.BackGround = ???.png		***
		**************************************************************************/

		var oDivArray = document.getElementsByTagName("td");
		for ( var i=oDivArray.length-1; i>=0; --i ){								//Check all Menu Items For Current Menu Name
			if((oDivArray[i].style.backgroundImage) && (oDivArray[i].style.backgroundImage.split(".")[1].substring(3,0) == "png")){
				var bg = oDivArray[i].style.backgroundImage;
				var src = bg.substring(4,bg.length-1);
				var MyFilter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "', sizingMethod='crop')";
				oDivArray[i].style.backgroundImage="";
				oDivArray[i].style.filter = MyFilter;	
				oDivArray[i].display = "block";
				oDivArray[i].style.zIndex = -1;
			}
		}
	}
	//closeAllPages();
}

//ALTERED TO swap both on/off and link/hover states.
function PNGswap(myID){

	var oImg = FindObjById(myID);
	if(!oImg){return;}
	var SwapTo = '_link';
	var SwapFrom = '_hover';

	//alert("ImgSrc="+ImgSrc);
	if(BrowserDetect.browser == "Explorer"){
		var currentAlphaImg = oImg.filters(0).src;
		//alert("currentAlphaImg="+currentAlphaImg);
		if((currentAlphaImg.indexOf("_off") != -1) || (currentAlphaImg.indexOf("_on") != -1)){
			SwapTo = "_off";
			SwapFrom  = "_on";
		}
		if (currentAlphaImg.indexOf(SwapTo) != -1)
			oImg.filters(0).src = currentAlphaImg.replace(SwapTo,SwapFrom)
		else
			oImg.filters(0).src = currentAlphaImg.replace(SwapFrom,SwapTo)
		//alert("done. Returning");
		return;
	}
	
	var ImgSrc = oImg.getAttribute('src');
	if((ImgSrc.indexOf("_off") != -1) || (ImgSrc.indexOf("_on") != -1)){
		SwapTo = "_off";
		SwapFrom  = "_on";
	}
	//alert("Ready To swap to "+SwapTo);
	if(ImgSrc.indexOf(SwapTo) != -1)
		oImg.setAttribute('src', ImgSrc.replace(SwapTo, SwapFrom));
	else
		oImg.setAttribute('src', ImgSrc.replace(SwapFrom, SwapTo));
}



function PNGswap_old(myID){
	//alert("in PNGSwap");
	if(BrowserDetect.browser == "Explorer"){
		var strOver  = "_hover";
		var strOff = "_link";
		var oSpan = document.getElementById(myID);
		if(!oSpan){return;}
		var currentAlphaImg = oSpan.filters(0).src;
		if (currentAlphaImg.indexOf(strOver) != -1)
			oSpan.filters(0).src = currentAlphaImg.replace(strOver,strOff)
		else
			oSpan.filters(0).src = currentAlphaImg.replace(strOff,strOver)
		return;
	}

	var oImg = FindObjById(myID);
	var SwapTo = '_link';
	var SwapFrom = '_hover';
	var ImgSrc = oImg.getAttribute('src');
	if(ImgSrc.indexOf('_link') != -1){
		SwapTo = '_hover';
		SwapFrom = '_link';
		
	}
	//alert("Ready To swap to "+SwapTo);
	oImg.setAttribute('src', ImgSrc.replace(SwapFrom, SwapTo));
}

function addOnloadEvent2(fnc){
  if ( typeof window.addEventListener != "undefined" )
    window.addEventListener( "load", fnc, false );
  else if ( typeof window.attachEvent != "undefined" ) {
    window.attachEvent( "onload", fnc );
  }
  else {
    if ( window.onload != null ) {
      var oldOnload = window.onload;
      window.onload = function ( e ) {
        oldOnload( e );
        window[fnc]();
      };
    }
    else 
      window.onload = fnc;
  }
}

if(BrowserDetect.browser == "Explorer"){window.attachEvent("onload", correctPNG);}



