var navArray = new Array("catering","education","about","contact");

// checks existence of ID in markup
function checkID(idName) {
	if (document.getElementById(idName)) {
		return true;
	} else {
		return false;
	}
}

// focuses on element
function focusMe(idName) {
	if (checkID(idName)){
		document.getElementById(idName).focus();
	}
}

function goHere(h) {
	window.location.href = h;
}

// submit an element
function submitMe(idName) {
	if (checkID(idName)) {
		document.getElementById(idName).submit();
	}
}

// submit an element
function resetMe(idName) {
	if (checkID(idName)) {
		document.getElementById(idName).reset();
	}
}

// sets the href of a value
function hrefMe(idName,h) {
	if (checkID(idName)) {
		document.getElementById(idName).href=h;
	}
}

// clears an element
function clearMe(t,val) {
	if (t.value==val) {
		t.value = '';
	}
}

// gives INNERHTML to an element
function htmlMe(idName,h) {
	if (checkID(idName)) {
		document.getElementById(idName).innerHTML = h;
	}
}

//gets the value
function getValue(idName) {
 if (checkID(idName)) {
 		return document.getElementById(idName).value;
	}
}

// gives value to an ID
function valueMe(idName,val) {
	if (checkID(idName)){
		document.getElementById(idName).value=val;
	}
}

// gets the class
function getClassName(idName) {
 if (checkID(idName)) {
 		return document.getElementById(idName).className;
	}
}

// shows a html block
function visibleMe(idName) {
	if (checkID(idName)) {
		document.getElementById(idName).style.visibility="visible";
	}
}

// shows a html block
function invisibleMe(idName) {
	if (checkID(idName)) {
		document.getElementById(idName).style.visibility="hidden";
	}
}

// shows a html block
function showMe(idName) {
	if (checkID(idName)) {
		document.getElementById(idName).style.display="block";
	}
}

// shows a html block
function showMe2(idName) {
	if (checkID(idName)) {
		document.getElementById(idName).style.display="inline";
	}
}

// hides a html block
function hideMe(idName) {
	if (checkID(idName)) {
		document.getElementById(idName).style.display="none";
	}
}

// changes a stylesheet class to a specified ID
function changeClass(idName,toClass) {
	if (checkID(idName)) {
		document.getElementById(idName).className=toClass;
	}
}

function showSub(hubName,navName) {
	changeClass("top"+navName,'on');
	changeClass("link"+navName,'on');
	showMe(hubName+"sub"+navName);
}

function hideSubs(hubName,navName) {
	changeClass("top"+navName,'');
	changeClass("link"+navName,'');
	for (n = 0; n < navArray.length; n++) {
		hideMe(hubName+"sub"+navArray[n]);
	}
}

function iFrameHeight(idName) {
	if(document.getElementById(idName)) {
		if (idName=="commentsFrame") {
			if (document.getElementById(idName).contentDocument) {
				h = document.getElementById(idName).contentDocument.getElementById("mac50template").offsetHeight+FFextraHeight;
			} else {
				h = document.frames(idName).document.getElementById("mac50template").scrollHeight;
			}
		} else {

			if (document.getElementById(idName).contentDocument) {
				h = document.getElementById(idName).contentDocument.body.offsetHeight+FFextraHeight;
			} else {
				h = document.frames(idName).document.body.scrollHeight;
			}
		}
		document.getElementById(idName).style.height = h;
	}
}

function tabNext(t,l,f) {
	if (t.value.length == l) {
		focusMe(f);
	}
}

function removeError(str) {
	var space;
	if (str.indexOf("error") >=0) { // keep only until space
		space = str.indexOf(" ");
		return str.substr(0,space);
	} else {
		return (str);
	}
}


function checkForm(arrayStr) {
	var splitStr = arrayStr.split("|");
	var count = 0;
	for (s = 0; s < splitStr.length; s++) {
		if (getValue(splitStr[s])=="") {
			count++;
			alert("Please fill in all required fields.");
			focusMe(splitStr[s]);
			changeClass(splitStr[s],getClassName(splitStr[s])+" error");
			break;
		} else {
			//alert();
			changeClass(splitStr[s],removeError(getClassName(splitStr[s])));
		}
	}
	if (count == 0) {
		submitMe('quoteForm');
	}
}

function showTab(pID,maxProds) {
	for (x = 0; x <= maxProds; x++) {
		changeClass("productTab"+x,"tabBlock tabBlock");
	}
	changeClass("productTab"+pID,"tabBlock tabBlockOn");
}

function changeVideo(vidID) {
	for (v = 1; v <=3; v++) {
		changeClass("homevid"+v,"");
		hideMe("vid"+v+"container");
	}
	changeClass("homevid"+vidID,"on");
	showMe("vid"+vidID+"container");
}

function mouseCalOn(c,d) {
	changeClass("calCell"+d,"specialMouse");
	showMe2("info"+d);
}
function mouseCalOff(c,d) {
	changeClass("calCell"+d,c);
	hideMe("info"+d);
}

function showNews(idName) {
	showMe("newsAbstract"+idName);
	showMe("newsImage"+idName);
	//hrefMe("newsLink"+idName,"javascript:hideNews("+idName+");");
	changeClass("newsLink"+idName,"on");
	changeClass("newsItem"+idName,"newsItem newsItemOn");
	changeClass("newsBlock"+idName,"newsBlock newsBlockOn clearfix");
}
function hideNews(idName) {
	hideMe("newsAbstract"+idName);
	hideMe("newsImage"+idName);
	//hrefMe("newsLink"+idName,"javascript:showNews("+idName+");");
	changeClass("newsLink"+idName,"");
	changeClass("newsItem"+idName,"newsItem");
	changeClass("newsBlock"+idName,"newsBlock clearfix");
}
