IE6Hack = Class.create({
	
	initialize: function () {
		this.IE6 = navigator.appVersion.indexOf('MSIE 6')!=-1;
	},
	
	pngFix: function (pixGifUrl) {
		if (this.IE6) {
			for (var i=0;i<document.images.length;i++) {
				var imgs = document.images[i];
				this.pngFixItem(pixGifUrl,imgs);
				Element.setStyle(imgs,{ visibility: 'visible' });
			}
		}
	},
	
	pngFixItem: function (pixGifUrl,img) {
		if (this.IE6) {
			if (img.src.substring(img.src.length-3,img.src.length)=='png') {
				Element.setStyle(img,{
					width: img.offsetWidth+'px', height: img.offsetHeight+'px' ,
					filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(src=" + img.src + ",sizingMethod='scale')"	 
				});
				img.src = pixGifUrl;
			}
		}
	},
	
	pngFixRoll: function (img) {
		if (this.IE6) {
			Event.observe(img,'mouseover',this.pngRoll.bindAsEventListener(this,0,1));
			Event.observe(img,'mouseout',this.pngRoll.bindAsEventListener(this,1,0));
		}
	},
	
	pngRoll: function (e,toReplace,replaceBy) {
		if (this.IE6) {
			Event.element(e).style.filter = Event.element(e).style.filter.replace('-'+toReplace+'.png','-'+replaceBy+'.png');
		}
	},
	
	fixLayerWithFrame: function (o,id,params) {
		if (this.IE6&&!$(id)) {
			var e = o.appendChild(document.createElement('iframe'));
			e.id = id;
			Element.setStyle(e,{
				position: 'absolute',
				top: (params.top) ?params.top+'px' :o.offsetTop+'px',
				left: (params.left) ?params.left+'px' :o.offsetLeft+'px',
				width: (params.width) ?params.width+'px' :o.offsetWidth+'px',
				height: (params.height) ?params.height+'px' :o.offsetHeight+'px',
				filter: 'alpha(opacity=0);', border: '10px', zIndex: -20
			});			
		}
	}
	
});