// JavaScript Document
// http://particletree.com/features/degradable-ajax-form-validation/

function hideShow () {
	if (document.getElementById && document.getElementsByTagName) {
		var inputHideShow = document.getElementById('contactSubOther');
		inputHideShow.onclick = function () {
			document.getElementById('contactMore').style.display = 'block';
		}
		var formElements = document.getElementById('contactForm').getElementsByTagName('input');
		for (i=0; i<formElements.length; i++) {
			if(formElements[i].getAttribute('id') != 'contactSubOther' && formElements[i].className == 'checkBut') {
				formElements[i].onclick = function () {
					document.getElementById('contactMore').style.display = 'none';
					document.getElementById('contactSubjectMore').value = "";
				}
			}
		}
	}
}

function validateForm() {
	if (document.getElementById) {
		var loginForm = document.getElementById('contactForm');
		loginForm.onsubmit = function () {
        	return canSubmit(this);
    	}
	}
}

function canSubmit(formId) {
	var theForm = formId;
	var valid = 1;
	// input fields
	var formElements = theForm.getElementsByTagName('input');
	for (i=0; i<formElements.length; i++) {
		var inputParam = formElements[i].className.split(" ");
		if(inputParam[0] == "required"){
			if(formElements[i].value == "") {
				valid = 0;
				var errorMsg = formElements[i].getAttribute('title');
				var errorId = formElements[i].getAttribute('id')+"Error";
				document.getElementById(errorId).innerHTML = errorMsg;
				document.getElementById(errorId).className = 'errorMsg';
			}
			else {
				var errorId = formElements[i].getAttribute('id')+"Error";
				document.getElementById(errorId).innerHTML = "";
				document.getElementById(errorId).className = '';
			}
		}
		else if(inputParam[0] == "email"){
			if(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(formElements[i].value)){
				var errorId = formElements[i].getAttribute('id')+"Error";
				document.getElementById(errorId).innerHTML = "";
				document.getElementById(errorId).className = '';
			}
			else {
				valid = 0;
				var errorMsg = formElements[i].getAttribute('title');
				var errorId = formElements[i].getAttribute('id')+"Error";
				document.getElementById(errorId).innerHTML = errorMsg;
				document.getElementById(errorId).className = 'errorMsg';
			}
		}
	}
	// textarea fields
	var formElements = theForm.getElementsByTagName('textarea');
	for (i=0; i<formElements.length; i++) {
		var inputParam = formElements[i].className.split(" ");
		if(inputParam[0] == "required"){
			if(formElements[i].value == "") {
				valid = 0;
				var errorMsg = formElements[i].getAttribute('title');
				var errorId = formElements[i].getAttribute('id')+"Error";
				document.getElementById(errorId).innerHTML = errorMsg;
				document.getElementById(errorId).className = 'errorMsg';
			}
			else {
				var errorId = formElements[i].getAttribute('id')+"Error";
				document.getElementById(errorId).innerHTML = "";
				document.getElementById(errorId).className = '';
			}
		}
	}
	if(valid == 1){
		return true;
	} else {
		return false;
	}
}

function makeMailTo() {
	if (document.getElementById) {
		var mailLink = document.getElementById('mailMe');
		var mailParam = mailLink.className.split(" ");
		mailLink.setAttribute('href','mailto:'+mailParam[0]+"@"+mailParam[1]+"."+mailParam[2]);
	}
}

function skypeIt() {
	if (document.getElementById) {
		var mailLink = document.getElementById('skypeIt');
		mailLink.onclick = function() {
			return skypeCheck();
		}
	}
}

window.onload= function () {
	hideShow(); 
	makeMailTo();
	validateForm();
	skypeIt();
}