function tmDisplayBanner(banners, divName, width, height, defaultSize) {
	if (!defaultSize) defaultSize = "300x250";
	var size = width + 'x' + height;
	var adDiv = document.getElementById(divName);
	
	// Loop through all the banners
	var newBanners = new Array(); 
	if (banners.constructor.toString().indexOf("Array") == -1) {
		for (var i in banners) {
			if (banners[i].type) {
				var newBanner = null;
				for (var j=0; j<newBanners.length; j++) {
					if (newBanners[j].size == banners[i].size) {
						newBanner = newBanners[j];
						break;
					}
				}
				if (newBanner == null) {
					newBanner = new Object();
					newBanner.size = banners[i].size;
					newBanner.width = banners[i].width;
					newBanner.height = banners[i].height;
					newBanners[newBanners.length] = newBanner;
				}
				if (banners[i].type == "image") {
					newBanner.imageUrl = banners[i].imageUrl ? banners[i].imageUrl : banners[i].url;
					newBanner.clickUrl = banners[i].clickUrl;
				} else if (banners[i].type == "iframe") {
					newBanner.htmlUrl = banners[i].htmlUrl ? banners[i].htmlUrl : banners[i].url;
				} else if (banners[i].type == "swf") {
					newBanner.swfUrl = banners[i].swfUrl ? banners[i].swfUrl : banners[i].url;
				}
			} else {
				tmDisplaySingleBanner(banners[i], adDiv, width, height, size, defaultSize);
			}
		}
		if (newBanners.length > 0) {
			for (var i=0; i<newBanners.length; i++) {
				tmDisplaySingleBanner(newBanners[i], adDiv, width, height, size, defaultSize);
			}
		}
	} else {
		for (var i=0; i<banners.length; i++) {
			if (banners[i].type) {
				var newBanner = null;
				for (var j=0; j<newBanners.length; j++) {
					if (newBanners[j].size == banners[i].size) {
						newBanner = newBanners[j];
						break;
					}
				}
				if (newBanner == null) {
					newBanner = new Object();
					newBanner.size = banners[i].size;
					newBanner.width = banners[i].width;
					newBanner.height = banners[i].height;
					newBanners[newBanners.length] = newBanner;
				}
				if (banners[i].type == "image") {
					newBanner.imageUrl = banners[i].imageUrl ? banners[i].imageUrl : banners[i].url;
					newBanner.clickUrl = banners[i].clickUrl;
				} else if (banners[i].type == "iframe") {
					newBanner.htmlUrl = banners[i].htmlUrl ? banners[i].htmlUrl : banners[i].url;
				} else if (banners[i].type == "swf") {
					newBanner.swfUrl = banners[i].swfUrl ? banners[i].swfUrl : banners[i].url;
				}
			} else {
				tmDisplaySingleBanner(banners[i], adDiv, width, height, size, defaultSize);
			}
		}
		if (newBanners.length > 0) {
			for (var i=0; i<newBanners.length; i++) {
				tmDisplaySingleBanner(newBanners[i], adDiv, width, height, size, defaultSize);
			}
		}
	}
}

function tmDisplaySingleBanner(banner, adDiv, width, height, size, defaultSize) {
	// Find the correct sized one
	var bannerSize = banner.size ? banner.size : banner._size;
	if ((bannerSize == null) || (bannerSize == "undefinedxundefined") || (bannerSize == "NaNxNaN") || (bannerSize == "_default"))
		bannerSize = defaultSize;
	if (bannerSize == size) {
		// Remove old ads
		var old_iframe = document.getElementById("acudeo_iframe");
		if (old_iframe) {
			adDiv.removeChild(old_iframe);
		}
		var old_span = document.getElementById("acudeo_span");
		if (old_span) {
			adDiv.removeChild(old_span);
		}
		var old_a = document.getElementById("acudeo_a");
		if (old_a) {
			adDiv.removeChild(old_a);
		}
		
		// If there is a iframe, use it
		var htmlUrl = banner.htmlUrl ? banner.htmlUrl : banner._htmlUrl;
		var swfUrl = banner.swfUrl ? banner.swfUrl : banner._swfUrl;
		var imageUrl = banner.imageUrl ? banner.imageUrl : banner._imageUrl;
		var clickUrl = banner.clickUrl ? banner.clickUrl : banner._clickUrl;
		if (htmlUrl) {
			// Create the iframe
			var iframe = document.createElement("iframe");
			iframe.setAttribute("id", "acudeo_iframe");
			iframe.style.width = width + "px";
			iframe.style.height = height + "px";
			iframe.style.border = "0";
			iframe.scrolling = "no";
			iframe.marginWidth = "0";
			iframe.marginHeight = "0";        
			iframe.frameBorder = "no";
			adDiv.appendChild(iframe);
			// IE has a weird caching issue, so we have to append the 
			// iframe, then set the src
			var new_iframe = document.getElementById("acudeo_iframe");
			//alert(htmlUrl);
			new_iframe.src = unescape(htmlUrl);
			new_iframe.frameborder = "no";
			
		// Otherwise if there is a SWF URL, use that
		} else if (swfUrl) {
			// Get the object HTML
			var objHtml = '<object';
			objHtml += ' classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="' + width + '" height="' + height+ '" id="acudeo_swf">';
			objHtml += '<param name="movie" value="' + swfUrl + '" />';
			objHtml += '<param name="quality" value="high" />';
			objHtml += '<param name="wmode" value="transparent" />';
			objHtml += '<param name="allowfullscreen" value="true" />';
			objHtml += '<param name="allowscriptaccess" value="always" />';
			objHtml += '<!--[if !IE]>-->';
			objHtml += '<object type="application/x-shockwave-flash" data="' + swfUrl + '" width="' + width + '" height="' + height + '" id="acudeo_swf">';
			objHtml += '<param name="quality" value="high" />';
			objHtml += '<param name="wmode" value="transparent" />';
			objHtml += '<param name="allowfullscreen" value="true" />';
			objHtml += '<param name="allowscriptaccess" value="always" />';
			objHtml += '<!--<![endif]-->';
			objHtml += '<a href="http://www.adobe.com/go/getflashplayer">';
			objHtml += '<img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" />';
			objHtml += '</a>';
			objHtml += '<!--[if !IE]>-->';
			objHtml += '</object>';
			objHtml += '<!--<![endif]-->';
			objHtml += '</object>';
	
			// Create a span to hold the
			var span = document.createElement("span");
			span.setAttribute("id", "acudeo_span");
			
			// Append the span and set the HTML
			if (navigator.appName.indexOf("Microsoft") != -1) {
				adDiv.appendChild(span);
				var span = document.getElementById("acudeo_span");
				span.outerHTML = objHtml;
			} else {
				span.innerHTML = objHtml;
				adDiv.appendChild(span);
			}
			
		// Otherwise if there is an image, use that
		} else if (imageUrl) {
			// Create the anchor tag
			var a = document.createElement("a");
			a.setAttribute("href", clickUrl);
			a.setAttribute("target", "_blank");
			a.setAttribute("id", "acudeo_a");
			
			// Create the image tag
			var img = document.createElement("img");
			img.setAttribute("src", imageUrl);
			img.setAttribute("border", 0);
			img.setAttribute("width", width);
			img.setAttribute("height", height);
			a.appendChild(img);
			
			// Add the tag
			adDiv.appendChild(a);
		}
	}
}