/* --- MV BASE FUNCTIONS --- */

function addClass(element, value){
	if (!element.className){
		// if there is no class, assign one
		element.className = value;
	}else{
		// if there is a class, concatonate
		newClassName = element.className;
		newClassName += " ";
		newClassName += value;
		element.className = newClassName;
	}
}

function getNextElement(node){
	if (node.nodeType == 1){
		return node;
	}
	if (node.nextSibling){
		return getNextElement(node.nextSibling)
	}
	return null;
}

function styleElementSibling(tag, theclass){
	if (!document.getElementsByTagName) return false;
	var elems = document.getElementsByTagName(tag);
	//alert('number of ' + tag + ' elements found: ' + elems.length);
	for (var i=0; i<elems.length; i++){
		//alert('for loop fires, itteration: ' + (i+1));
		var tagNextSib = getNextElement(elems[i].nextSibling);
		addClass(tagNextSib, theclass);
	}
}

/* --- MCC FUNCTIONS --- */

function prepPage(){
	styleElementSibling("h2", "intro");
}

// ########################## ALT <DL>s (original script by d.murray, modified for own uses by Eric Klemen) ##########################
//add class to every other <dl>, starting with the first one.
function clearDefListItem(){
	var odd = true;
	if (!document.getElementById('news')) return false;
	var dlwrap = document.getElementById("news");
	var dls = dlwrap.getElementsByTagName("dl");
	for (var i=0; i<dls.length; i++) {
		var dl = dls[i];
		if (odd) {
			dl.className = "odd";
		}
		odd = !odd;
	}
}

/* --- WINE PAGES --- */

function stripeRows(){
	var winemenu = document.getElementById('winemenu');
	if (!winemenu) return false;
	var odd = false;
	var rows = winemenu.getElementsByTagName('li');
	for (i=0; i<rows.length; i++){
		if (odd == true){
			addClass(rows[i], "odd");
			odd = false;
		}else{
			odd = true;
		}
	}
}

function showWineDetails(id){
	var winedetails = document.getElementById('winedetails');
	if (!winedetails) return false;
	var winesection = winedetails.getElementsByTagName('dl');
	for (var i=0; i<winesection.length; i++){
		if (winesection[i].getAttribute('id') != id){
			winesection[i].style.display = "none";
		} else {
			winesection[i].style.display = "block";
		}
	}
}

function wineDetailsInit(){
	if (!document.getElementById || !document.getElementsByTagName) return false;
	var nav = document.getElementById('winemenu');
	if(!nav) return false;
	stripeRows();
	var links = nav.getElementsByTagName('a');
	for (i=0; i<links.length; i++){
		var sectionId = links[i].getAttribute('href').split('#')[1];
		if (!document.getElementById(sectionId)) continue;
		document.getElementById(sectionId).style.display = "none";
		links[i].destination = sectionId;
		links[i].onclick = function(){
			showWineDetails(this.destination);
			return false;
		}
	}
}