
var currentElement = '';
function showElement(id) {
var element = document.getElementById(id);
if (element)
{
	element.style.display = ((element.style.display == 'none') ? 'block' : 'none');
}
}

var requiredFields = new Array();

requiredFields[0] = new Array("firstname","First Name",false);
requiredFields[1] = new Array("lastname","Last Name",false);
requiredFields[2] = new Array("email","E-Mail",false);

requiredFields[3] = new Array("subject","Subject",false);
requiredFields[4] = new Array("message_body","Message",false);


var lbl_required_field_is_empty = "The required field '~~field~~' is empty!";

function checkRequired(id) {
	var errors = new Array();
	var x, true_id, type;
	var cnt = 0;
	var id_element = -1;

	if(!requiredFields)
		return true;
	if(requiredFields.length == 0)
		return true;

	if(id) {
		for(x = 0; x < requiredFields.length; x++)
			if(requiredFields[x][0] == id) {
				id_element = x;
				break;
			}
	}

	for(x = 0; x < requiredFields.length; x++) {
		if(x != id_element && id_element != -1)
			continue;
		if(requiredFields[x].length > 2)
			true_id = ((requiredFields[x][2] && document.getElementById("_"+requiredFields[x][0]))?"_":"")+requiredFields[x][0];
		else
			true_id = ((document.getElementById("_"+requiredFields[x][0]))?"_":"")+requiredFields[x][0];
		if(document.getElementById(true_id)) {
			type = document.getElementById(true_id).type;
			if(document.getElementById(true_id).value == '' && (type == 'text' || type == 'password' || type == 'textarea'))
				errors[cnt++] = new Array(requiredFields[x][1],true_id);
		}
	}

	if(errors.length == 0)
		return true;

	if(lbl_required_field_is_empty != '')
		alert(lbl_required_field_is_empty.replace(/~~field~~/gi, errors[0][0]));
	else
		alert(errors[0][0]);

	if(!document.getElementById(errors[0][1]).disabled && document.getElementById(errors[0][1]).type != 'hidden')
		document.getElementById(errors[0][1]).focus();

	return false;
}

function checkEmailAddress(field, empty_err) {
	var err = false;
	var res, x;
	if(!field)
		return true;

	if(field.value.length == 0) {
		if(empty_err != 'Y')
			return true;
		else
			err = true;
	}

	var arrEmail = field.value.split('@');
	if(arrEmail.length != 2 || arrEmail[0].length < 1)
		err = true;
	if(!err) {
		if(arrEmail[0].length > 2)
			res = arrEmail[0].search(/^[-\w][-\.\w]+[-\w]$/gi);
		else
			res = arrEmail[0].search(/^[-\w]+$/gi);
		if(res == -1)
			err = true;
	}
	if(!err) {
		var arr2Email = arrEmail[1].split('.');
		if(arr2Email.length < 2)
			err = true;
	}
	if(!err) {
		var domenTail = arr2Email[arr2Email.length-1];
		var _arr2Email = new Array();
		for(x = 0; x < arr2Email.length-1; x++)
			_arr2Email[x] = arr2Email[x];
		arr2Email = _arr2Email;
		var domen = arr2Email.join('.');
		res = domen.search(/^[-!#\$%&*+\\\/=?\.\w^`{|}~]+$/gi);
		if(res == -1)
			err = true;
		res = domenTail.search(/^[a-zA-Z]+$/gi);
		if(res == -1 || domenTail.length < 2 || domenTail.length > 6)
			err = true;
	}
//	/^([-\w][-\.\w]*)?[-\w]@([-!#\$%&*+\\\/=?\w^`{|}~]+\.)+[a-zA-Z]{2,6}$/gi

	if (err) {
		alert("E-mail address is invalid! Please correct");
		field.focus();
		field.select();
	}
	return !err;
}
