//Script taken from http://24ways.org/2007/supersleight-transparent-png-in-ie6
var insiderPNG	= function() {
	
	var root = false;
	var ignoreIds = new Array();
	var ignoredObjects;
	var applyPositioning = true;
	
	// Path to a transparent GIF image
	var shim = '/insider/assets/images/transparent.gif';
	
	// RegExp to match above GIF image name
	var shim_pattern	= /transparent\.gif$/i;
	
	
	
	var fnLoadPngs = function() {
		var ignore=false; 
		if (root) {
			root = document.getElementById(root);
		}else{
			root = document;
		}
		for (var i = root.all.length - 1, obj = null; (obj = root.all[i]); i--) {
			ignore = shouldIgnore(obj);		
			// background pngs
			if (obj.currentStyle.backgroundImage.match(/\.png/i) !== null && !ignore) {
				bg_fnFixPng(obj);
			}
			// image elements
			if (obj.tagName=='IMG' && obj.src.match(/\.png$/i) !== null && !ignore){
				el_fnFixPng(obj);
			}
			// apply position to 'active' elements
			if (applyPositioning && (obj.tagName=='A' || obj.tagName=='INPUT') && obj.style.position === ''  && !ignore){
				obj.style.position = 'relative';
			}
			if (obj.tagName=='A' && !ignore)
			{
				obj.style.cursor = 'pointer';
			}
		}
	};

	var bg_fnFixPng = function(obj) {
		var mode = 'scale';
		var bg	= obj.currentStyle.backgroundImage;
		var src = bg.substring(5,bg.length-2);
		if (obj.currentStyle.backgroundRepeat == 'no-repeat') {
			mode = 'crop';
		}
		obj.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "', sizingMethod='" + mode + "')";
		obj.style.backgroundImage = 'url('+shim+')';
	};

	var el_fnFixPng = function(img) {
		var src = img.src;
		img.style.width = img.width + "px";
		img.style.height = img.height + "px";
		img.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "', sizingMethod='scale')";
		img.src = shim;
	};
	
	var addLoadEvent = function(func) {
		var oldonload = window.onload;
		if (typeof window.onload != 'function') {
			window.onload = func;
		} else {
			window.onload = function() {
				if (oldonload) {
					oldonload();
				}
				func();
			};
		}
	};
	
	var shouldIgnore = function(obj){
		
		var elem;
		var children;
		
		if(!ignoredObjects)
			loadIgnoredElements();

		for(var i=0; i<ignoredObjects.length; i++)
		{
			if(obj == ignoredObjects[i])
				return true;
		}
		
		return false;
	};
	
	var loadIgnoredElements = function()
	{
		var elem;
		var children;
		ignoredObjects = new Array();
		for(var i=0;i<ignoreIds.length;i++)
		{
			elem = document.getElementById(ignoreIds[i]);
			if(elem && elem.getElementsByTagName)
			{
				ignoredObjects.push(elem);
				children = elem.getElementsByTagName("*");
				for(var j=0;j<children.length;j++)
				{
					ignoredObjects.push(children[j]);
				}
			}
		}
	}
	
	return {
		init: function() { 
			if (!window.XMLHttpRequest)
			{
				addLoadEvent(fnLoadPngs);
			}
		},
		
		limitTo: function(el) {
			root = el;
		},

		ignoreId: function(id) {
			ignoreIds.push(id);
		},
		
		run: function() {
			fnLoadPngs();
		}
	};
}();

// limit to part of the page ... pass an ID to limitTo:
// supersleight.limitTo('header');
insiderPNG.init();
insiderPNG.ignoreId("schedule_container");
