var moz = (document.nodeName)? true:false;	// Check if browser is mozilla
var ie = (document.all)? true:false;		// Check if browser is ie

// this function is need to work around 
// a bug in IE related to element attributes
function hasClass(obj) {
	var result = false;
	if (obj.getAttributeNode("class") != null) {
		result = obj.getAttributeNode("class").value;
	}
	return result;
}   

function stripe () {

	// the flag we'll use to keep track of 
	// whether the current row is odd or even
	var even = false;
	
	// if arguments are provided to specify the colours
	// of the even & odd rows, then use the them;
	// otherwise use the following defaults:
	var evenClass = arguments[1] ? arguments[1] : " normal";
	var oddClass = arguments[2] ? arguments[2] : " alternate";
	
	// obtain a reference to the desired table
	// if no such table exists, abort
	var tables = document.getElementsByTagName("table");
	if (! tables) { return; }
	
	for (var g = 0; g < tables.length; g++) {
	
		// by definition, tables can have more than one tbody
		// element, so we'll have to get the list of child
		// <tbody>s 
		var tbodies = tables[g].getElementsByTagName("tbody");
	
		// and iterate through them...
		for (var h = 0; h < tbodies.length; h++) {
			
			// find all the <tr> elements... 
			var trs = tbodies[h].getElementsByTagName("tr");
			
			// ... and iterate through them
			for (var i = 0; i < trs.length; i++) {
	
				// avoid rows that have a class attribute
				// or backgroundColor style
				if (!hasClass(trs[i]) && ! trs[i].style.backgroundColor) {
					
					// avoid cells that have a class attribute
					// or backgroundColor style
					if (! trs[i].style.backgroundColor) {
					
						trs[i].className += even ? evenClass : oddClass;
					
					}

					
				}
				// flip from odd to even, or vice-versa
				even =  ! even;
			}
		}
	}
}


function tagOutboundLinks (redirect) {
	var localhost = document.location.hostname;
	var links = document.getElementsByTagName("a");
	
	for (i = 0; i < links.length; i++) {
		if (links[i].hostname && links[i].hostname != localhost && links[i].protocol == "http:") {
			link = links[i].href;
			links[i].href=redirect+"/"+link;
		}
	}

}

function pullquote () {
	// Check that the browser supports the methods used
		if (!document.getElementById || !document.createElement || !document.appendChild) return false;
		var oElement, oPullquote, oPullquoteP, oQuoteContent, i, j;
	// Find all span elements with a class name of pullquote
		var arrElements = document.getElementsByTagName('span');
		var oRegExp = new RegExp("(^|\\s)pullquote(\\s|$)");
		for (i=0; i<arrElements.length; i++) {
	// Save the current element
			oElement = arrElements[i];
			if (oRegExp.test(oElement.className)) {
	// Create the blockquote and p elements
				oPullquote = document.createElement('blockquote');
				oPullquote.className = oElement.className
				oPullquoteP = document.createElement('p');
	// Insert the pullquote text
				oPullquoteP.innerHTML = "<big>&#147;</big>";
		
				for(j=0;j<oElement.childNodes.length;j++) {
					oPullquoteP.appendChild(oElement.childNodes[j].cloneNode(true));
				}
				oPullquoteP.innerHTML += "<big>&#8221;</big>";
				
				oPullquote.appendChild(oPullquoteP);
	// Insert the blockquote element before the span elements parent element
				oElement.parentNode.parentNode.insertBefore(oPullquote,oElement.parentNode);
			}
		}
}

function modelsMenu() {
	var li = document.getElementById("models-menu");
		
	li.onmouseover = function() {
		if (!this.className.match(new RegExp("hover\\b")))
			this.className = "hover";
			dealersMenuHide();
	}

}

function modelsMenuHide() {
	var li = document.getElementById("models-menu");
	li.className = "x";
	//alert("hide model");
}

function dealersMenu() {
	var li = document.getElementById("dealers-menu");
		
	li.onmouseover = function() {
		if (!this.className.match(new RegExp("hover\\b")))
			this.className = "hover";
			modelsMenuHide();
	}

}

function dealersMenuHide() {
	var li = document.getElementById("dealers-menu");
	li.className = "x";
	//alert("hide dealer");
}

window.onload = function(e) {
	stripe();
	modelsMenu();
	dealersMenu();
	// pullquote();
	// tagOutboundLinks();
}
