function clearInfo() {
	holdingDiv = document.getElementById("formInfo");
	for (i=0; i<holdingDiv.childNodes.length; i++) {
		node = holdingDiv.childNodes[i];
		if (node.nodeName=="DIV") {
			node.style.display = "none";
		}
	}
}

function showInfo(listItem){
	selectDiv = listItem+"Info";
	document.getElementById(selectDiv).style.display = "block";
}

function disableForm(){
	thisForm = document.contactform;
	for (i=0; i<thisForm.elements.length; i++) {
		node = thisForm.elements[i];
		if (node.nodeName=="INPUT") {
			if (node.id != 'send') {
				node.disabled = true; 
				node.className += " blanked";
			}
			else {
				node.disabled = true; 
				node.className += " blanked";
			}
		}
		else if (node.nodeName=="TEXTAREA") {
			node.disabled = true;
			node.className += " blanked";
		}
	}
	
	arrLabels = document.getElementsByClassName("fieldTitle");
	for (i=0; i<arrLabels.length; i++) {
		if (arrLabels[i].id != 'subject')
			arrLabels[i].className += " blanklabel";
	}
	
	document.getElementById('destination').style.display = 'none';
}

function enableForm() {
	thisForm = document.contactform;
	for (i=0; i<thisForm.elements.length; i++) {
		node = thisForm.elements[i];
		if (node.nodeName=="INPUT") {
			node.disabled = false; 
			node.className=node.className.replace(" blanked", "");
		}
		if (node.nodeName=="TEXTAREA") {
			node.disabled = false;
			node.className=node.className.replace(" blanked", "");
		}
	}	
	
	arrLabels = document.getElementsByClassName("fieldTitle");
	for (i=0; i<arrLabels.length; i++) {
		if (arrLabels[i].id != 'subject')
			arrLabels[i].className += node.className.replace(" blanklabel", "");
	}
	
	document.getElementById('destination').style.display = 'block';
}

function modForm(selObj){
	var emailAddress = "";
	clearInfo();
	enableForm();
	contactFunc = selObj.options[selObj.selectedIndex].value;
	showInfo(contactFunc);
	emailtarget = document.contactform.recipient;
	
	switch (contactFunc){
		case "general":
			emailAddress = "enquiries@kobsons.com";
			break;
		case "sales":
			emailAddress = "sales@kobsons.com";
			break;
		case "support":
			disableForm();
			break;
		case "abuse":
			disableForm();
			break;
		case "domrelease":
			disableForm();
			break;
		case "press":
			emailAddress = "press@kobsons.com";
			break;
		default:
			disableForm();
			showInfo("generic");
			break;
	}
	
	emailtarget.value = emailAddress;
	document.getElementById('destinationemail').innerHTML = emailAddress;
	document.getElementById('destinationemail').href = 'mailto:' + emailAddress;
}

function initForm(){
	clearInfo();
	showInfo("general");
}

document.getElementsByClassName = function (class_name) {
	var all_obj, ret_obj = new Array(), j = 0;

	if (document.all) {
		all_obj = document.all;
	}
	else if (document.getElementsByTagName && !document.all) {
		all_obj = document.getElementsByTagName("*");
	}

	for (i = 0; i < all_obj.length; i++) {		
		if ((' ' + all_obj[i].className + ' ').toLowerCase().match(new RegExp(('^.* ' + class_name + ' .*$' ).toLowerCase(),'g'))) {
			ret_obj[j++] = all_obj[i];
		}
	}
	return ret_obj;
}

strEmailRegEx = /^(\w([-._\w]*\w)*@(\w[-_\w]*\w\.)+\w{2,9})$/;
function checkContactForm() {
	strError = '';
	
	if (document.getElementById("name").value == '')
		strError += '\n* Your name';
	
	if (!regExCheck(document.getElementById("email").value, strEmailRegEx))
		strError += '\n* Your email address';	
		
	if (document.getElementById("phone").value == '')
		strError += '\n* Your phone number';	
		
	if (document.getElementById("enquiry").value == '')
		strError += '\n* An enquiry';	
		
	if (strError.length > 0) {
		strError = 'You have not entered the following fields:\n' + strError;	
		alert(strError);
		return false;
	}
	else
		return true;
}

function regExCheck(strToCheck, arrItem) {
	var pattern = new RegExp(arrItem);
		return (pattern.test(strToCheck));
}