function submitForm(name){
	var f=document.forms[name];
	if(f){
		if(submitForm.arguments.length>1)
			if(submitForm.arguments[1])
				f.method=submitForm.arguments[1];
		if(submitForm.arguments.length>2)
			if(submitForm.arguments[2])
				f.action=submitForm.arguments[2];
		if(f.onsubmit)
			f.onsubmit();
		f.submit();
	}
	else
		alert('Form not found.');
}
function doPost(formID, action){
	submitForm(formID, 'post', action);
}
function doGet(formID, action){
	submitForm(formID, 'get', action);
}

/*function registerTagName_EnterSubmit(tagName){
	var arrInput=$$(tagName);
	for(var i=0; i<arrInput.length; i++){
		var inp=arrInput[i];
		Event.observe(inp, 'keypress', function(event){
				if(event.keyCode==Event.KEY_RETURN){
					var ele=Event.element(event);
					if(ele.form)
						if(ele.form.action)
							ele.form.submit();
				}
				return true;
			});
	}
	return true;
}
Event.observe(window, 'load', function(){
		var arrTagName=Array('input', 'select');
		for(var i=0; i<arrTagName.length; i++)
			registerTagName_EnterSubmit(arrTagName[i]);
		return true;
	});
*/	
	
var Focus = Behavior.create({
	initialize: function(classNameFocus){
		this.classNameFocus = classNameFocus || 'onFocus';
	}, 
	onfocus : function(){
		this.element.addClassName(this.classNameFocus);
	},
	onblur : function(){
		this.element.removeClassName(this.classNameFocus);
	}
});

Event.addBehavior({
	'.onBlur' : Focus('onFocus')
});

		function dbug(inVal){alert("inspect = " + Object.inspect(inVal) + "\n" +
					"isArray = " + Object.isArray(inVal) + "\n" +
					"isElement = " + Object.isElement(inVal) + "\n" +
					"isFunction = " + Object.isFunction(inVal) + "\n" +
					"isHash = " + Object.isHash(inVal) + "\n" +
					"isNumber = " + Object.isNumber(inVal) + "\n" +
					"isString = " + Object.isString(inVal) + "\n" +
					"isUndefined = " + Object.isUndefined(inVal) + "\n" +
					"keys = " + Object.keys(inVal) + "\n" +
					"toHTML = " + Object.toHTML(inVal) + "\n" +
					"toJSON = " + Object.toJSON(inVal) + "\n" +
					"toQueryString = " + Object.toQueryString(inVal) + "\n" +
					"values = " + Object.values(inVal) + "\n"); }


function isEmail(val){
	var testresults
	var str=val
	//var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i
	var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (filter.test(str))
		return true;
	else{
		return false;
	}
}

function validateContact(){

	var err = $H();

	if ($F('f_name').length == 0){
		err.update({'f_name':'Please enter your name.'});
	}
	if ($F('f_enq').length == 0){
		err.update({'f_enq':'Please select your enquiry type.'});
	}
	if ($F('f_state').length == 0){
		err.update({'f_state':'Please select your state.'});
	}
	if (!isEmail($F('f_email'))){
		err.update({'f_email':'Please enter a valid email address.'});
	}
	if ($F('f_phone').length == 0){
		err.update({'f_phone':'Please enter your phone number.'});
	}
	if ($F('f_message').length == 0){
		err.update({'f_message':'Please enter your enquiry message.'});
	}
	
	$$('form li.error').invoke('removeClassName','error');

	err.each(function(pair){
		if ($(pair.key)){
			$(pair.key).up('li').addClassName('error');
		}	

	});

	if (err.keys().size() > 0){
		alert(err.values().join('\n'));
		return false;
	}else{
		return true;
	}
}
function validateSubscriber(){

	var err = $H();

	if (!isEmail($F('f_email'))){
		err.update({'f_email':'Please enter a valid email address.'});
	}
	
	$$('form li.error').invoke('removeClassName','error');

	err.each(function(pair){
		if ($(pair.key)){
			$(pair.key).up('li').addClassName('error');
		}	

	});

	if (err.keys().size() > 0){
		alert(err.values().join('\n'));
		return false;
	}else{
		return true;
	}
}


