// JavaScript Document
var errorcount =0;
var okforemail = /(@\w[-._\w]*\w\.\w{2,3})$/;
var okforurl = new RegExp("^[A-Za-z]+://[A-Za-z0-9-]+\.[A-Za-z0-9]+");
var okfordouble = /^((\d+(\.\d*)?)|((\d*\.)?\d+))$/;
var isnumber =  /^\d+$/;
var okfordate=/^\d{2}\/\d{2}\/\d{4}$/;

function checkselect(form_field){
	if($(form_field).selectedIndex == 0){
	    errorcount += 1;
	    $(form_field).style.backgroundColor='#FF0000';
	    $(form_field).removeEvents('change');
	    $(form_field).addEvent('change',function(){
	        checkselect(form_field);
	      });
	  }else{
	    $(form_field).style.backgroundColor='';
	}
}

function checkmatch(form_field1,form_field2){
    if($(form_field1).value != $(form_field2).value){
        errorcount += 1;
        $(form_field2).style.backgroundColor='#FF0000';
        $(form_field).removeEvents('keyup');
	    $(form_field2).addEvent('keyup',function(){
	        checkmatch(form_field1,form_field2);
	      });
	  }else{
	    $(form_field2).style.backgroundColor='';
	}
}

function checktext(form_field){
	if ($(form_field).value == ''){
	    errorcount += 1;
		$(form_field).style.backgroundColor='#FF0000';
        $(form_field).removeEvents('keyup');
	    $(form_field).addEvent('keyup',function(){
	        checktext(form_field);
	      });
	  }else{
	    $(form_field).style.backgroundColor='';
	}
}

function checkcheckbox(form_field,formname,errorid){
var ischecked = false;
for(var r14=0;r14<document.forms[formname][form_field].length;r14++){
	if(document.forms[formname][form_field][r14].checked){
		ischecked = true;
	}
}

if (!ischecked){
    errorcount += 1;
	$(errorid).style.backgroundColor='#FF0000';
		$(errorid).removeEvents('click')
		$(errorid).addEvent('click',function(){
			$(errorid).style.backgroundColor='';
		});
}
}

function checkurl(form_field) {
    if (!okforurl.test($(form_field).value)) {
        errorcount += 1;
        $(form_field).style.backgroundColor='#FF0000';
        $(form_field).removeEvents('keyup');
	    $(form_field).addEvent('keyup',function(){
	        checkurl(form_field);
	      });
	  }else{
	    $(form_field).style.backgroundColor='';
    }
}

function checkemail(form_field) {
	if (!okforemail.test($(form_field).value)){
		errorcount += 1;
        $(form_field).style.backgroundColor='#FF0000';
        $(form_field).removeEvents('keyup');
	    $(form_field).addEvent('keyup',function(){
	        checkemail(form_field);
	      });
	  }else{
	    $(form_field).style.backgroundColor='';
	}
}

function checkphone(form_field){
	if (($(form_field).value == "") || ($(form_field).value.search(/\d{3}\-\d{3}\-\d{4}/)==-1)){
		errorcount += 1;
        $(form_field).style.backgroundColor='#FF0000';
        $(form_field).removeEvents('keyup');
	    $(form_field).addEvent('keyup',function(){
	        checkphone(form_field);
	      });
	  }else{
	    $(form_field).style.backgroundColor='';
	}	
}

function checknumeric(form_field){
	if ($(form_field).value != ""){
		if (!isnumber.test($(form_field).value)){
			errorcount += 1;
            $(form_field).style.backgroundColor='#FF0000';
            $(form_field).removeEvents('keyup');
	        $(form_field).addEvent('keyup',function(){
	        checknumeric(form_field);
	      });
	  }else{
	        $(form_field).style.backgroundColor='';
		}
	}
}

function checkdouble(form_field) {
    if ($(form_field).value != "") {
        if (!okfordouble.test($(form_field).value)) {
            errorcount += 1;
            $(form_field).style.backgroundColor='#FF0000';
            $(form_field).removeEvents('keyup');
	        $(form_field).addEvent('keyup',function(){
	        checkdouble(form_field);
	      });
	      }else{
	            $(form_field).style.backgroundColor='';
        }
    }
}

function checkdate(form_field) {
	var valid = true;
if (!okfordate.test($(form_field).value)){
	valid = false;
}else{ //Detailed check for valid date ranges
	var monthfield=$(form_field).value.split("/")[0];
	var dayfield=$(form_field).value.split("/")[1];
	var yearfield=$(form_field).value.split("/")[2];
	var dayobj = new Date(yearfield, monthfield-1, dayfield);
	if ((dayobj.getMonth()+1!=monthfield)||(dayobj.getDate()!=dayfield)||(dayobj.getFullYear()!=yearfield)){
		valid = false;
	}
}
if (valid==false){
		errorcount += 1;
            $(form_field).style.backgroundColor='#FF0000';
            $(form_field).removeEvents('onchange');
	        $(form_field).addEvent('onchange',function(){
	        checkdate(form_field);
	      });
	      }else{
	            $(form_field).style.backgroundColor='';
}
}


function submitform(form_name){
	if (errorcount > 0){
		alert('You have ' + errorcount + ' errors in your form. Please correct.');
		//set the count back to 0
		errorcount = 0;
	}else{
		$(form_name).submit();
	}
}



