function action_repost_values(url_id,form_number)
{
	var elements = document.forms[form_number].elements.length ;
	var element_id = "" ;
	document.getElementById(url_id).action += "?" ;
	while(elements)
	{
		elements-- ;
		if(document.forms[form_number].elements[elements].getAttribute("name")!="retURL")
		{
			element_id = document.forms[form_number].elements[elements].getAttribute("id") ;
			document.getElementById(url_id).action += document.forms[form_number].elements[elements].getAttribute("name") + "=" ;
			document.getElementById(url_id).action += document.getElementById(element_id).value ;
			if(elements)
			{
				document.getElementById(url_id).action += "&" ;
			}
		}
	}
}

function survey_validate()
{
	var validation = survey_validation() ;
	if(validation)
	{
		document.survey.submit() ;
	}
}

function validate(return_url,type)
{
	// -- Start Pass State Value to State Field
//		document.getElementById("Contact0State_id").value = document.getElementById("state_id").value ;
	// -- End Pass State Value to State Field
	var validation = validate_all() ;
	if(validation)
	{
		title_case_name("Contact0FirstName_id") ;
		title_case_name("Contact0LastName_id") ;
		title_case_name("Contact0_RDStreetNumber_id") ;
		document.getElementById("Contact0State_id").value = document.getElementById("Contact0State_id").value.toUpperCase() ;
		document.getElementById("Contact0City_id").value = document.getElementById("Contact0City_id").value.toUpperCase() ;
		if(type=="action")
		{
			action_repost_values(return_url,1) ;
		}
		else if(type=="value")
		{
			repost_values(return_url,1) ;
		}
		document.freedvd_form.submit() ;
	}
	return validation ;
}
	
function instant_validate(return_url,type)
{
	var validation = tiny_validation() ;
	if(validation)
	{
		title_case_name("Contact0FirstName_instant_id") ;
		title_case_name("Contact0LastName_instant_id") ;
		if(type=="action")
		{
			action_repost_values(return_url,0) ;
		}
		else if(type=="value")
		{
			repost_values(return_url,0) ;
		}
		document.instant_dvd.submit() ;
	}
}

function get_country()
{
	if(document.getElementById("state_id").selectedIndex>0 && document.getElementById("state_id").selectedIndex!=9)
	{
		if(document.getElementById("state_id").selectedIndex<9)
		{
			document.getElementById("Contact0_RDCountry_id").value = "AUSTRALIA" ;
		}
		else
		{
			document.getElementById("Contact0_RDCountry_id").value = "NEW ZEALAND" ;
		}
	}
}
	
function repost_values(url_id)
{
	var elements = document.forms[form_number].elements.length ;
	var element_id = "" ;
	document.getElementById(url_id).value += "?" ;
	while(elements)
	{
		elements-- ;
		if(document.forms[form_number].elements[elements].getAttribute("name")!="retURL")
		{
			element_id = document.forms[form_number].elements[elements].getAttribute("id") ;
			document.getElementById(url_id).value += document.forms[form_number].elements[elements].getAttribute("name") + "=" ;
			document.getElementById(url_id).value += document.getElementById(element_id).value ;
			if(elements)
			{
				document.getElementById(url_id).value += "&" ;
			}
		}
	}
}

function survey_validation()
{
	var return_value = true ;
	return_value*= required_option("00N20000001DxKo_id","Employment Situation") ;
	return_value*= required_option("00N20000001DxKy_id","Total Assets") ;
	return return_value ;
}

function tiny_validation()
{
	var return_value = true ;
	return_value*= first_name_validate(document.getElementById('Contact0FirstName_instant_id').value) ;
	return_value*= last_name_validate(document.getElementById('Contact0LastName_instant_id').value) ;
	if(return_value)
	{
		return_value*= email_validate(document.getElementById('Contact0Email_instant_id').value) ;
		if(return_value)
		{
			return_value*= mobile_phone_validate(document.getElementById('Contact0Phone1_instant_id').value,true) ;
		}
	}
	return return_value ;
}

// -- Start - this is to be deleted, just need to double check that no one is still calling this function
function asterisk()
{
	var new_postal_code = document.getElementById('Contact0_RDPOBox_id').value ;
	if(new_postal_code)
	{
		document.getElementById("asterisk_1").innerHTML = "Street Number &nbsp;" ;
		document.getElementById("asterisk_2").innerHTML = "Street Name &nbsp;" ;
	}
	else
	{
		document.getElementById("asterisk_1").innerHTML = "Street Number *" ;
		document.getElementById("asterisk_2").innerHTML = "Street Name *" ;
	}
}
// -- End - this is to be deleted, just need to double check that no one is still calling this function

function title_case_name(name_id)
{
	var new_name_id = document.getElementById(name_id).value.toLowerCase() ;
	var to_split = new_name_id.split(" ") ;
	for(c=0 ; c<to_split.length ; c++)
	{
		if(c==0)
		{
			to_split[c] = (to_split[c].substring(0,1)).toUpperCase() + to_split[c].substring(1) ;
		}
		else
		{
			to_split[c] = (to_split[c].substring(0,1)).toUpperCase() + to_split[c].substring(1) ;	
		}
	}
	return_value = to_split.join(' ') ;
	document.getElementById(name_id).value = return_value ;
}

function universal_validation(form_name)
{
	var return_value = false ;

/*
	return_value*= email_validate(document.getElementById('Contact0Email_id').value) ;
	if(return_value)
	{
		return_value*= first_name_validate(document.getElementById('Contact0FirstName_id').value) ;
		return_value*= last_name_validate(document.getElementById('Contact0LastName_id').value) ;
		if(return_value)
		{
			return_value*= phone_entry_validate() ;
			return_value*= mobile_phone_validate(document.getElementById('Contact0Phone1_id').value,false) ;
			return_value*= work_phone_validate() ;
			return_value*= home_phone_validate() ;
			if(return_value)
			{
				return_value*= street_address_validate(document.getElementById('Contact0_RDStreetNumber_id').value) ;
				if(return_value)
				{				
					return_value*= city_validate() ;
					return_value*= state_validate() ;
					return_value*= postal_code_validate() ;
					if(return_value)
					{
						return_value*= country_validate() ;
						return_value*= age_validate() ;
						return_value*= income_validate() ;
					}
				}
			}
		}
	}*/
	return return_value ;
}

function validate_all()
{
	var return_value = true ;
	return_value*= email_validate(document.getElementById('Contact0Email_id').value) ;
	if(return_value)
	{
		return_value*= first_name_validate(document.getElementById('Contact0FirstName_id').value) ;
		return_value*= last_name_validate(document.getElementById('Contact0LastName_id').value) ;
		if(return_value)
		{
			//return_value*= phone_entry_validate() ;
			return_value*= mobile_phone_validate(document.getElementById('Contact0Phone1_id').value,true) ;
			return_value*= work_phone_validate() ;
			return_value*= home_phone_validate() ;
			if(return_value)
			{
				return_value*= street_address_validate(document.getElementById('Contact0_RDStreetNumber_id').value) ;
				if(return_value)
				{				
					return_value*= city_validate() ;
					return_value*= state_validate() ;
					return_value*= postal_code_validate() ;
					if(return_value)
					{
						return_value*= country_validate() ;
						return_value*= age_validate() ;
						return_value*= income_validate() ;
					}
				}
			}
		}
	}
	return return_value ;
}

function email_validate(new_email)
{
	if(new_email=="")
	{
		alert("Please provide email address.");
		return false;
	}
	else
	{
		if (new_email.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) != -1)
		{
			return true;
		}
		else
		{
			alert("Invalid e-mail format.");
			return false;
		}
	}
}

function last_name_validate(last_name)
{
	if(last_name=="")
	{
		alert("Please provide your Last Name");
		return false ;
	}
	else
	{
		return true ;
	}
}

function first_name_validate(first_name)
{
	if(first_name=="")
	{
		alert("Please Provide Your First Name");
		return false ;
	}
	else
	{

		return true ;
	}
}

function mobile_phone_validate(new_mobile,require)
{
	if(new_mobile!="")
	{
//		var match_number = new_mobile.match(/^[\-||\+]\d+$/) ;
		var match_number = new_mobile.match(/[0-9-\+]+$/) ;
		if(match_number)
		{
			return true ;
		}
		else
		{
			alert("Invalid Mobile Phone, should only contain numbers(0-9),'+','-' or space") ;
			return false ;
		}
	}
	else if(require)
	{
		alert("Please provide your Mobile Phone Number") ;
		return false
	}
	else
	{
		return true ;
	}
}

function work_phone_validate()
{
	var new_work = document.getElementById('Contact0Phone2_id').value;
	if(new_work!="")
	{
		var match_number = new_work.match(/[0-9-\+]+$/) ;
		if(match_number)
		{
			return true;
		}
		else
		{
			alert("Invalid Work Phone, should only contain numbers(0-9),'+','-' or space")
			return false ;
		}
	}
	else
	{
		return true ;
	}
}

function home_phone_validate()
{
	var new_mobile = document.getElementById('Contact0Phone3_id').value;
	if(new_mobile!="")
	{
		var match_number = new_mobile.match(/[0-9-\+]+$/) ;
		if(match_number)
		{
			return true ;
		}
		else
		{
			alert("Invalid Home Phone, should only contain numbers(0-9),'+','-' or space") ;
			return false;
		}
	}
	else
	{
		return true ;
	}
}

function phone_entry_validate()
{
	var mobile_phone = document.getElementById('Contact0Phone1_id').value ;
	var work_phone = document.getElementById('Contact0Phone2_id').value ;
	var home_phone = document.getElementById('Contact0Phone3_id').value ;
	if(mobile_phone=="" && work_phone=="" && home_phone=="")
	{
		alert("Please provide at least one phone number");
		return false ;
	}
	else
	{
		return true ;
	}
}

function po_box_validate()
{
	var new_po_box = document.getElementById('Contact0_RDPOBox_id').value;
	if(new_po_box!="")
	{
		var match_number = new_po_box.match(/^\d+$/); 
		if(match_number)
		{
			return true;
		}
		else
		{
			alert("Enter your PO Box number on the PO Box field");
			return false;
		}
	}
	else
	{
		return true ;
	}
}


function address_entry_validate()
{
	var po_box = document.getElementById('Contact0_RDPOBox_id').value ;
	var street_number = document.getElementById('Contact0_RDStreetNumber_id').value ;
	var street_name = document.getElementById('Contact0StreetAddress1_id').value ;
	if(po_box=="" && street_number=="" && street_name=="")
	{
		alert("Please provide at least your PO Box Number or Street Number and Name");
		return false ;
	}
	else
	{
		return true ;
	}
}

function street_address_validate(street_address)
{
	if(street_address=="")
	{
		alert("Please provide your Street Address");
		return false ;
	}
	else
	{
		return true ;
	}
}

function street_number_validate()
{
	var po_box = document.getElementById('Contact0_RDPOBox_id').value ;
	var street_number = document.getElementById('Contact0_RDStreetNumber_id').value ;
	var street_name = document.getElementById('Contact0StreetAddress1_id').value ;
	
	if(street_number=="" && (po_box=="" || street_name!=""))
	{
		alert("Please provide your Street Number");
		return false ;
	}
	else
	{
		return true ;
	}
}

function street_name_validate()
{
	var po_box = document.getElementById('Contact0_RDPOBox_id').value ;
	var street_number = document.getElementById('Contact0_RDStreetNumber_id').value ;
	var street_name = document.getElementById('Contact0StreetAddress1_id').value ;
	
	if(street_name=="" && po_box=="")
	{
		alert("Please provide your Street Name");
		return false ;
	}
	else
	{
		return true ;
	}
}

function city_validate()
{
	var city = document.getElementById('Contact0City_id').value ;
	if(city=="")
	{
		alert("Please provide your City");
		return false ;
	}
	else
	{
		return true ;
	}
}

function state_validate()
{
	var state = document.getElementById('Contact0State_id').value ;
	if(state=="" && document.getElementById('state_id'))
	{
		state = document.getElementById('state_id').value ;
	}
	if(state=="")
	{
		alert("Please provide your State");
		return false ;
	}
	else
	{
		return true ;
	}
}

function postal_code_validate()
{
	var new_postal_code = document.getElementById('Contact0PostalCode_id').value ;
	if(new_postal_code == "" || new_postal_code == null)
	{
		alert("Please provide your Postal Code");
		return false;
	}
	else if(document.getElementById('Contact0_RDCountry_id').value!="UK")
	{
		var match_number = new_postal_code.match(/^\d+$/); 
		if(match_number)
		{
			return true;
		}
		else
		{
			alert("Enter numbers only Postal Code");
			return false;
		}
	}
	else
	{
		return true ;
	}
}

function country_validate()
{
	var country = document.getElementById('Contact0_RDCountry_id').value ;
	if(country)
	{
		return true ;
	}
	else
	{
		alert("Please provide your Country");
		return false ;
	}
}

function age_validate()
{
	if(document.getElementById('Contact0_RDAge_id'))
	{
		var age = document.getElementById('Contact0_RDAge_id').selectedIndex ;
		if(age==0)
		{
			alert("Please provide your Age");
			return false ;
		}
		else
		{
			return true ;
		}
	}
	else
	{
		return true ;
	}
}

function income_validate()
{
	if(document.getElementById('Contact0_RDIncome_id'))
	{
		var income = document.getElementById('Contact0_RDIncome_id').selectedIndex ;
		if(income==0)
		{
			alert("Please provide your Income");
			return false ;
		}
		else
		{
			return true ;
		}
	}
	else
	{
		return true ;
	}
}

function required_input(entry,fieldname)
{
	if(entry="")
	{
		alert("Please provide your " + fieldname);
		return false ;
	}
	else
	{
		return true ;
	}
}

function required_option(select_id,fieldname)
{
	if(!document.getElementById(select_id).selectedIndex)
	{
		alert("Please provide your " + fieldname);
		return false ;
	}
	else
	{
		return true ;
	}
}

function c(s)
{
	switch(s)
	{
		case 'AUSTRALIA':
			document.getElementById('output').innerHTML = "<select name='state' class='inputFormBox' type='text' id='Contact0State_id' style='height:18px'><option value=''></option><option value='ACT'>ACT</option><option value='NSW'>New South Wales</option><option value='NT'>Northern Territory</option><option value='QLD'>Queensland</option><option value='SA'>South Australia</option><option value='TAS'>Tasmania</option><option value='VIC'>Victoria</option><option value='WA'>Western Australia</option></select>"
			break;
		case 'NEW ZEALAND':
			document.getElementById('output').innerHTML = "<select name='state' class='inputFormBox' type='text' id='Contact0State_id' style='height:18px'><option value=''></option><option value='AUCKLAND'>Auckland</option><option value='BAY OF PLENTY'>Bay of Plenty</option><option value='CANTERBURY'>Canterbury</option><option value='CHATHAM ISLANDS'>Chatham Islands</option><option value='GISBORNE'>Gisborne</option><option value='HAWKE'S BAY'>Hawke's Bay</option><option value='MANAWATU-WANGANUI'>Manawatu-Wanganui</option><option value='MARLBOROUGH'>Marlborough</option><option value='NELSON'>Nelson</option><option value='NORTHLAND'>Northland</option><option value='OTAGO'>Otago</option><option value='SOUTHLAND'>Southland</option><option value='TARANAKI'>Taranaki</option><option value='TASMAN'>Tasman</option><option value='WAIKATO'>Waikato</option><option value='WELLINGTON'>Wellington</option><option value='WEST COAST'>West Coast</option></select>"
			break;
		case 'CANADA':
			document.getElementById('output').innerHTML = "<select name='state' class='inputFormBox' type='text' id='Contact0State_id' style='height:18px'><option value=''></option><option value='ALBERTA'>Alberta </option><option value='BRITISH'>British </option><option value='MANITOBA'>Manitoba </option><option value='NEW BRUNSWICK'>New Brunswick </option><option value='NEWFOUNDLAND'>Newfoundland </option><option value='NOVA SCOTIA'>Nova Scotia </option><option value='NUNAVUT'>Nunavut </option><option value='ONTARIO'>Ontario </option><option value='QUEBEC'>Quebec </option><option value='SASKATCHEWAN'>Saskatchewan </option></select>"
			break;			
		case 'UK':
			document.getElementById('output').innerHTML = "<select name='state' class='inputFormBox' type='text' id='Contact0State_id' style='height:18px'><option value=''></option><option value='ENGLAND'>England</option><option value='NORTHERN IRELAND'>Northern Ireland</option><option value='SCOTLAND'>Scotland</option><option value='WALES'>Wales</option></select>"
			break;		
		case 'USA':
			document.getElementById('output').innerHTML = "<select name='state' class='inputFormBox' type='text' id='Contact0State_id' style='height:18px'><option value=''></option><option value=‘ALABAMA’> Alabama </option><option value=‘ALASKA’> Alaska </option><option value=‘ARIZONA’> Arizona </option><option value=‘ARKANSAS’> Arkansas </option><option value=‘CALIFORNIA’> California </option><option value=‘COLORADO’> Colorado </option><option value=‘CONNECTICUT’> Connecticut </option><option value=‘DELAWARE’> Delaware </option><option value=‘FLORIDA’> Florida </option><option value=‘GEORGIA’> Georgia </option><option value=‘HAWAII’> Hawaii </option><option value=‘IDAHO’> Idaho </option><option value=‘ILLINOIS’> Illinois </option><option value=‘INDIANA’> Indiana </option><option value=‘IOWA’> Iowa </option><option value=‘KANSAS’> Kansas </option><option value=‘KENTUCKY’> Kentucky </option><option value=‘LOUISIANA’> Louisiana </option><option value=‘MAINE’> Maine </option><option value=‘MARYLAND’> Maryland </option><option value=‘MASSACHUSETTS’> Massachusetts </option><option value=‘MICHIGAN’> Michigan </option><option value=‘MINNESOTA’> Minnesota </option><option value=‘MISSISSIPPI’> Mississippi </option><option value=‘MISSOURI’> Missouri </option><option value=‘MONTANA’> Montana </option><option value=‘NEBRASKA’> Nebraska </option><option value=‘NEVADA’> Nevada </option><option value=‘NEW HAMPSHIRE’> New Hampshire </option><option value=‘NEW JERSEY’> New Jersey </option><option value=‘NEW MEXICO’> New Mexico </option><option value=‘NEW YORK’> New York </option><option value=‘NORTH CAROLINA’> North Carolina </option><option value=‘NORTH DAKOTA’> North Dakota </option><option value=‘OHIO’> Ohio </option><option value=‘OKLAHOMA’> Oklahoma </option><option value=‘OREGON’> Oregon </option><option value=‘PENNSYLVANIA’> Pennsylvania </option><option value=‘RHODE ISLAND’> Rhode Island </option><option value=‘SOUTH CAROLINA’> South Carolina </option><option value=‘SOUTH DAKOTA’> South Dakota </option><option value=‘TENNESSEE’> Tennessee </option><option value=‘TEXAS’> Texas </option><option value=‘UTAH’> Utah </option><option value=‘VERMONT’> Vermont </option><option value=‘VIRGINIA’> Virginia </option><option value=‘WASHINGTON’> Washington </option><option value=‘WASHINGTON, D.C. ‘> Washington, D.C. </option><option value=‘WEST VIRGINIA’> West Virginia </option><option value=‘WISCONSIN’> Wisconsin </option><option value=‘WYOMING’> Wyoming </option></select>"
			break;																											
	}
}

function get_state_data(country)
{
	switch (country)
	{
		case "AUSTRALIA":
			document.getElementById("state_output").innerHTML = "<select id='Contact0State_id' name='state'><option value='' selected></option><option value='ACT'>Australian Capital Territory</option><option value='NSW'>New South Wales</option><option value='NT'>Northern Territory</option><option value='QLD'>Queensland</option><option value='SA'>South Australia</option><option value='TAS'>Tasmania</option><option value='VIC'>Victoria</option><option value='WA'>Western Australia</option></select>";
			break;
		default:
			document.getElementById("state_output").innerHTML = "<input type='text' id='Contact0State_id' name='state' maxlength='20' />";
			break;
	}
                         
}