window.addEvent('domready', function() {	
	
	if (Browser.Engine.trident /*!Browser.Features.bgsize*/) {
	
		var syncFakeBg = function(fakeBg, bg) {
			return fakeBg.setStyles({
				left:   (bg.offsetLeft   + (Browser.Engine.trident ? 5 : 1)) + 'px',
				top:    (bg.offsetTop    + (Browser.Engine.trident ? 3 : 1)) + 'px',
				width:  (bg.offsetWidth  + (Browser.Engine.trident ? -8-3 : -2)) + 'px',
				height: (bg.offsetHeight + (Browser.Engine.trident ? -8-2 : -2)) + 'px'
			});
		};

		$$('.box .bg').each(function(bg) {
			//document.title = (bg.offsetLeft);
			
			if (!document.querySelectorAll) {
			
				var height = bg.getParent().offsetHeight;

			
				bg.setStyle('height', height + 'px');
				
				if (bg.getParent('.box').hasClass('has-button')) {
					var banner = bg.getParent('.box').getElement('.full-width');
					if (banner) {
						var mask = new Element('div').setStyles({position:'absolute',background:'white', zIndex: 1}).inject(banner, 'after');;
						syncFakeBg(mask, bg);
						mask.setStyle('height', mask.offsetHeight - banner.offsetHeight - banner.offsetTop - 5);
						mask.setStyle('top', banner.offsetHeight + banner.offsetTop);
						//var top = mask.
						//height = banner.offsetTop + banner.offsetHeight;
					}
				}
			}
			
			
			var fakeBg = new Element('b', {
				'class': 'ie-bg'
			});
			
			/*
			var fakeBg = new Element('img', {
				src: bg.getStyle('backgroundImage').replace(/^url\(["']?(.*?)["']?\)$/i, '$1') ,
				'class': Browser.Engine.trident ? 'ie-bg' : 'fake-bg'
			});
			*/
			
			syncFakeBg(fakeBg, bg);
			fakeBg.inject(bg, 'after');
			
			bg.setStyle('backgroundImage', 'none');
			
			bg.addEvent('resize', function() {
				syncFakeBg(fakeBg, bg);
			});
		});
	}
	
	if (Browser.Engine.trident && !document.querySelectorAll) {
		// IE6 alpha image thingies
		$$('#masthead .image-holder img').each(function(img) {
			document.title = "Loading " + img.src;
			
			var tmpImg = new Image();
			tmpImg.onload = function() {
					document.title = "Loaded " + img.src;
					var src = img.src;
					img.src = src.replace(/\/([^\/]+)$/, '/pixel.png');
					img.width = tmpImg.width;
					img.height = tmpImg.height;
					img.style.filter = 'progid:DXImageTransform.Microsoft.AlphaImageLoader(src="' + src + '")';
				};
			tmpImg.src = img.src;
		});
	}
	
	
	// Browser.Features.bgsize
	if (Browser.Engine.gecko && !Browser.Features.bgsize) {
		$$('button').each(function(el) {
			var fakeEl = new Element('b', {'class':'before-fake-button'}).setStyles({
				height: el.offsetHeight
			}).inject(el, 'before');
			el.addClass('fake-before');
			el.addEvent('mouseenter', function() { fakeEl.addClass('hover'); });
			el.addEvent('mouseleave', function() { fakeEl.removeClass('hover'); });
			//el.set('html', '<b class="before"></b>' + el.get('html'));
		});
	}
	
	if (Browser.Engine.trident && !document.querySelectorAll) {
		
	}
	var recalcContainer = function(container, handleImages) {
		var boxes = container.getElements('.equal');
		var maxH = 0;
		boxes.each(function(box) {
			var size = box.getComputedSize();
			var scrollSize = box.getScrollSize();
			maxH = Math.max(maxH, scrollSize.y - (size.totalHeight - size.height));
		});
		boxes.each(function(box) {
			box.setStyle('height', maxH);
		});
		
		if (typeof(handleImages) == 'undefined' || handleImages) {
			container.getElements('img').addEvent('load', function() { recalcContainer(container, false); });
		}
		/*
		var fakeBgs = container.getElements(Browser.Engine.trident ? '.ie-bg' : '.fake-bg');
		fakeBgs.each(function(fakeBg) {
			syncFakeBg(fakeBg, fakeBg.getNext());
		});
		*/
	};
	$$('.equalize').each(function(container) {
		//recalcContainer(container, true);
	});
});
