// Created by Mark Pennypacker
// Modified by Dan Roberts
var isValidCWContactForm = true;

function cwvalidatecontactform(){
	var errorfound = false;
	var country = jQuery('#cwcontactform select[name=Country]').val()||'';
	var holdervalue = '';	
	var fieldname = '';
	var field = '';
	var rowSelector = '';
	var fieldSelector = '';
	
	for (ndx=0;ndx<cwcontactformarray.length;ndx++){	
		holdervalue = '';
		fieldname = cwcontactformarray[ndx];
		field = cwcontactformfields[fieldname];
		rowSelector = '#cwContactForm' + field.SAFENAME;
		fieldSelector = '#congressweb :input[name=' + field.SAFENAME + ']';
		
		if (field.ISCUSTOMFIELD){
			//Get Custom Field Value
			switch(field.TYPE){
				case 'Merge Field':
					holdervalue = jQuery(fieldSelector).val() + '';	
					break;
				case 'Drop Down':
					holdervalue = jQuery(fieldSelector + ' option:selected').val() + '';
					break;
				case 'Check Box':
					holdervalue = jQuery(fieldSelector+':checked').val() + '';	
					break;
				case 'Radio Buttons':
					holdervalue = jQuery(fieldSelector+':checked').val() + '';
					break;
				case 'Custom Paragraph':
					holdervalue = jQuery(fieldSelector).val() + '';
					break;
			}
			
			if (field.REQUIRED){	
				if (!holdervalue.length||holdervalue=='undefined'){
					errorfound = true;
					jQuery(rowSelector + ' .cwError').html('Required');	
				}
			}	
		}
		else {
			holdervalue = jQuery(fieldSelector).val();
			if ((fieldname != 'Prefix')&&(fieldname != 'State')){
				if (fieldname == 'ZipCode'){
					if (!holdervalue.length){
						errorfound = true;
						jQuery(rowSelector + ' .cwError').html('Required');	
					}
					else if (!cwAllowInternational||country=='US') {	
						var zipregex = /^\d{5}([\-]\d{4})?$/;
						if (!zipregex.test(holdervalue)){
							errorfound = true;
							jQuery(rowSelector + ' .cwError').html('Not Valid');
						}								
					}			
				}
				else if (fieldname == 'Email'){
					if (!holdervalue.length){
						errorfound = true;
						jQuery(rowSelector + ' .cwError').html('Required');	
					}
					//form Validation
				}
				else if (fieldname == 'Phone'){
					
					if (!holdervalue.length){
						errorfound = true;
						jQuery(rowSelector + ' .cwError').html('Required');	
					}
					else {
						var phoneregex = /\(?\d{3}\)?([-\/\.])\d{3}\1\d{4}/;
						if (!phoneregex.test(holdervalue)){
							errorfound = true;
							jQuery(rowSelector + ' .cwError').html('Format required is 000-000-0000');	
						}	
					}
				}
				else if (fieldname == 'Fax'){
					if (field.VALUE != 'Not Required'){
						if (!holdervalue.length){
							errorfound = true;
							jQuery(rowSelector + ' .cwError').html('Required');	
						}
					}
					if (holdervalue.length){
						var faxregex = /\(?\d{3}\)?([-\/\.])\d{3}\1\d{4}/;
						if (!faxregex.test(holdervalue)){
							errorfound = true;
							jQuery(rowSelector + ' .cwError').html('Not Valid');	
						}
					}
				}
				else {
					if (field.VALUE != 'Not Required'){
						if (!holdervalue.length){
							errorfound = true;
							jQuery(rowSelector + ' .cwError').html('Required');	
						}
					}
				}
				
			}
		}
	}
	
	isValidCWContactForm = !errorfound;
	
	return !errorfound;	
}

