function toggleImage(imageObject, imageName) {
	if (!imageObject) return;
	if (imageObject.src.indexOf('up') >= 0) {
		imageObject.src = 'images/' + imageName + '_over.gif';
	} else {
		imageObject.src = 'images/' + imageName + '_up.gif';
	}
}

function validate(formObject) {
	var error = 0;
	var type;
	for (var i=0; i<formObject.length; i++) {
		if (formObject.elements[i].name != 'question') { //this part is only use for sign up where question is an optional field
			if (formObject.elements[i].type == 'text' || formObject.elements[i].type == 'textarea') {
				if (formObject.elements[i].name == 'phone_number') {
					type = 'phone';
				} else if (formObject.elements[i].name == 'email_address') {
					type = 'email';
				} else if(formObject.elements[i].name.indexOf('name') >= 0) {
					type = 'name';
				} else {
					type = 'default';
				}
				if (!validField(formObject.elements[i].value, type)) {
					$('error_' + formObject.elements[i].name).src ='images/error_gen.gif';
					error++;
				} else {
					$('error_' + formObject.elements[i].name).src ='images/approved_gen.gif';
				}
			}
		}
	}
	if (error == 0) {
		return true;
	}
	return false;
}

function toggleField(object) {
	if (object) {
		if (object.className == 'fieldBlur') {
			object.className = 'fieldFocus';
		} else {
			object.className = 'fieldBlur';
		}
	}
}

function invidiualValidate(object, type) {
	if (!validField(object.value, type)) {
		$('error_' + object.name).src ='images/error_gen.gif';
	} else {
		$('error_' + object.name).src ='images/approved_gen.gif';
	}
}

function validField(str, type) {
	var name_regex  = /^([a-zA-Z '-]+)$/;
	var email_regex  = /^[^_][a-zA-Z0-9_]+[^_]@{1}[a-z]+[.]{1}(([a-z]{2,3})|([a-z]{2,3}[.]{1}[a-z]{2,3}))$/;
	var phone_regex  = /(\+)?([-\._\(\) ]?[\d]{3,20}[-\._\(\) ]?){2,10}/;
	var length_check = false;
	switch (type) {
		case 'name': myregexp = new RegExp(name_regex); break;
		case 'email': myregexp = new RegExp(email_regex); break;
		case 'phone': myregexp = new RegExp(phone_regex); break;
		default: length_check = true;
	}
	if (length_check) {
		if (str.length > 5) {
			return true;
		} else {
			return false;
		}
	}
	if (str.match(myregexp)) {
		return true;
	} else {
		return false;
	}
}

function $(elementId) {
	return document.getElementById(elementId);
}


function emptyFields(formObject) {
	for (var i=0; i<formObject.length; i++) {
		if (formObject.elements[i].type == 'text' || formObject.elements[i].type == 'password') {
			if (formObject.elements[i].value.length < 2) {
				alert('Please make sure ' + formObject.elements[i].name + ' is not empty!' );
				return false
			}
		}
	}
	return true;
}

function swapHideShow(show_id, hide_id)
{
		$(show_id).className = 'show';
		$(hide_id).className = 'hide';
}