/*
	CNA Corporation scripts
	Updated 7/14/04 by Saforian, Inc.
*/




/* IE transparency filter */

var isIE = (navigator.platform == "Win32") && (navigator.appName == "Microsoft Internet Explorer") && (Number(navigator.appVersion.match(/MSIE (\d+\.\d+)/, '')[1]) >= 5.5);
if (isIE) { 
	//window.attachEvent("onload", alphaBackgrounds);
	window.attachEvent("onload", pngImages);
	window.attachEvent("onload", resizeSubnav);
	window.attachEvent("onload", cssFixes);
}

function alphaBackgrounds(){
	// Background PNG transparancy for IE (derived from allinthehead.com)
	var bg, pngFile;

	for (i=0; i<document.all.length; i++) {
		bg = document.all[i].currentStyle.backgroundImage;
		if (bg && bg.match(/\.png/i) != null) {
			pngFile = bg.substring(5, bg.length-2);
			document.all[i].runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + pngFile + "')";
			document.all[i].runtimeStyle.backgroundImage = "url('/images/global/img_spacer.gif')";
		}
	}
}

function pngImages() {
	// Inline image PNG transparency for IE (derived from youngpup.net)
	for (var i = document.images.length - 1, img = null; (img = document.images[i]); i--)
		if (img.src.match(/\.png$/i) != null) {
			var src = img.src;
			var div = document.createElement("DIV");

			div.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "', sizing='scale')"
			div.style.width = img.width + "px";
			div.style.height = img.height + "px";
			img.replaceNode(div);
		}
}

function resizeSubnav() {
	// Resize subnavigation background layer for IE

	if (document.getElementById("subnavBack")) {
		var backLayer = document.getElementById("subnavBack");
		var listLayer = document.getElementById("subnavBack").nextSibling;

		backLayer.runtimeStyle.height = (listLayer.offsetHeight + "px");
	}
	if (document.body.id == "home" && document.getElementById("whatsnewBack")) {
		var backLayer = document.getElementById("whatsnewBack");
		var listLayer = document.getElementById("whatsnewBack").nextSibling;

		backLayer.runtimeStyle.height = (listLayer.offsetHeight + "px");
	}
}

function cssFixes() {
	// Fix missing CSS features for IE

	// Remove top border from subnavigation lists
	if (document.getElementById("sidebar")) {
		lists = document.getElementById("sidebar").getElementsByTagName("ul");
		for (var i = 0; i < lists.length; i++)
			    // Set redundant first child class
				if (lists[i].firstChild) lists[i].firstChild.className += " first-child";
	}


	// Remove top border from UL.thumbs:first-child
	var lists = document.getElementsByTagName("ul");
	for (var i = 0; i < lists.length; i++)
		if (lists[i].className == "thumbs")
		    // If a thumbnail list, set redundant first child class
			if (lists[i].firstChild) lists[i].firstChild.className += " first-child";
}




// Clear search keywords
function clearSearch() {
	if (document.getElementById('keywords')) {
		document.getElementById('keywords').onfocus = function() {
			if (this.value == this.defaultValue) this.value = ""; }

		document.getElementById('keywords').onblur = function() {
			if (this.value == "") this.value = this.defaultValue; }
	}
}

// Search button rollover color - Not used
function searchButton() {
	if (document.getElementById('searchGo')) {
		document.getElementById('searchGo').onmouseover = function() { this.style.backgroundColor = "#7193b2"; this.src = "/images/button_searchgo_over.gif"; }
		document.getElementById('searchGo').onmouseout = function() { this.style.backgroundColor = "#b9b9b1"; this.src = "/images/button_searchgo.gif"; }
	}
}


// Alternate data table rows
function tableRows() {
	var evenodd, tables, rows;

	tables = document.getElementsByTagName("table");

	for (var i = 0; i < tables.length; i++) {

		// If a data table
		if (tables[i].className.indexOf("data") >= 0) {
			rows = tables[i].getElementsByTagName("tr");
			evenodd = "odd";

			for (var j = 0; j < rows.length; j++) {
				// Append new class name if needed
				rows[j].className += (rows[j].className == null) ? evenodd : " " + evenodd;

				// Alternate even/odd
				evenodd = (evenodd == "even") ? "odd" : "even";
			}
		}
	}
}



// Add function to any event handler (multibrowser)
function addEvent(obj, evType, fn) {

	if (obj.addEventListener) {
		obj.addEventListener(evType, fn, true);
		return true;
	} else if (obj.attachEvent) {
		var r = obj.attachEvent("on" + evType, fn);
		return r;
	} else
		return false;
}

if (document.getElementById) {
	addEvent(window, 'load', clearSearch);
	//addEvent(window, 'load', searchButton);
	addEvent(window, 'load', tableRows);

}