/*
 
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]-->

Will skip an image if it has the css class "skipPngFix" on the image tag.

*/

function fixPNGs() {
  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.toUpperCase().indexOf(".PNG") > -1) {
           if (!img.hasClassName("skipPngFix")) {
             var ms = new Date();
             ms = ms.getTime();
             var imgID = (img.id) ? img.id : "img" + ms;
             var imgIDAttr = "id='" + imgID + "'";
             
             var imgClass = (img.className) ? "class='" + img.className + "' " : ""
             var imgTitle = (img.title) ? "title='" + img.title + "' " : "title='" + img.alt + "' "
             var imgStyle = img.style.cssText
             if (img.align == "left") 
               imgStyle = "float:left;" + imgStyle
             if (img.align == "right") 
               imgStyle = "float:right;" + imgStyle
             if (img.parentElement.href) 
               imgStyle = "cursor:hand;" + imgStyle
             imgOver = img.onmouseover;
             imgOut = img.onmouseout;
             imgClick = img.onclick;
             
             var strNewHTML = "<var " + imgIDAttr + imgClass + imgTitle +
             " style=\"" +
             "width:" +
             img.width +
             "px; height:" +
             img.height +
             "px;" +
             imgStyle +
             ";" +
             "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader" +
             "(src=\'" +
             img.src +
             "\', sizingMethod='scale');\"></var>"
             img.outerHTML = strNewHTML
             
             var newImg = $(imgID);
             if (imgOver) 
               newImg.onmouseover = imgOver;
             if (imgOut) 
               newImg.onmouseout = imgOut;
             if (imgClick) 
               newImg.onclick = imgClick;
             
             i = i - 1
           }
        }
     }
  }
}

Event.observe(window, 'load', fixPNGs);