//eg to call
//<form name="form1" method="get" action="" 
//           onSubmit="return check_empty(this,['Submit','chkt[]','textfield2']) && check_email(this.textfield2);">
var err_color='#A6C93A';
var normal_color='#FFFFFF';
function check_empty(curForm,ignor_element_list){
	var empty_flag=false;
	for(var i=0;i<curForm.length;i++){
		if(check_name_list(curForm.elements[i].name,ignor_element_list)) continue;		
		if(curForm.elements[i].value==''){
			empty_flag=true;
			curForm.elements[i].style.backgroundColor=err_color;
		} else {
			curForm.elements[i].style.backgroundColor=normal_color;
		} 
	}
	if(empty_flag) alert('Please fill the highlighted fields befor Submit');
	return !empty_flag;
}

function check_name_list(elem_name,elem_list){
	if (!elem_list) return false;
	for(var i=0;i<elem_list.length;i++){
		if(elem_name==elem_list[i]) return true;
	}
	return false;
}

function check_email(elem_obj) {
	var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
	var elem_val = elem_obj.value;
   	elem_obj.style.backgroundColor=normal_color;
	if(elem_val=='') return true; //won't check if empty
   
	if(reg.test(elem_val) == false) {
		elem_obj.style.backgroundColor=err_color;
		alert('Invalid Email Address at highlighted field.');
		return false;
	}
	return true;
}


function check_tele(elem_obj) {
	var reg = /^([\+])?([0-9]){7,}$/;
	var elem_val = elem_obj.value;
   	elem_obj.style.backgroundColor=normal_color;
	if(elem_val=='') return true; //won't check if empty
   
	if(reg.test(elem_val) == false) {
		elem_obj.style.backgroundColor=err_color;
		alert('Invalid Telephone / Fax number at highlighted field.');
		return false;
	}
	return true;
}

function check_number(elem_obj) {
	var reg = /^[0-9]*[\.]?[0-9]+$/;
	var elem_val = elem_obj.value;
   	elem_obj.style.backgroundColor=normal_color;
	if(elem_val=='') return true; //won't check if empty
   
	if(reg.test(elem_val) == false) {
		elem_obj.style.backgroundColor=err_color;
		alert('Invalid Number at highlighted field.');
		return false;
	}
	return true;
}

function check_ip(elem_obj) {
	var reg = /^[0-9]{1,3}[\.][0-9]{1,3}[\.][0-9]{1,3}[\.][0-9]{1,3}$/;
	var elem_val = elem_obj.value;
   	elem_obj.style.backgroundColor=normal_color;
	if(elem_val=='') return true; //won't check if empty
   
	if(reg.test(elem_val) == false) {
		elem_obj.style.backgroundColor=err_color;
		alert('Invalid IP Number at highlighted field.');
		return false;
	}
	return true;
}

function check_color(elem_obj) {
	var reg = /^[a-fA-F0-9]{6}$/;
	var elem_val = elem_obj.value;
   	elem_obj.style.backgroundColor=normal_color;
	if(elem_val=='') return true; //won't check if empty
   
	if(reg.test(elem_val) == false) {
		elem_obj.style.backgroundColor=err_color;
		alert('Invalid Color value at highlighted field.');
		return false;
	}
	return true;
}
