function loadPage()
{
	cookieForms('open', 'yourform');
	if (document.yourform.finishedPersonal.value == "no")
	{
	document.getElementById("img1").style.display = "none";
	}
	else
	{
		document.getElementById("img1").style.display = "inline";
	}
	
	if (document.yourform.finishedAuto.value == "no")
	{
		document.getElementById("img2").style.display = "none";
	}
	else
	{
		document.getElementById("img2").style.display = "inline";
	}	

	if (document.yourform.finishedHome.value == "no")
	{
		document.getElementById("img3").style.display = "none";
	}
	else
	{
		document.getElementById("img3").style.display = "inline";
	}
	
	if (document.yourform.finishedLife.value == "no")
	{
		document.getElementById("img4").style.display = "none";
	}
	else
	{
		document.getElementById("img4").style.display = "inline";
	}
	
	if (document.yourform.finishedRental.value == "no")
	{
		document.getElementById("img5").style.display = "none";
	}
	else
	{
		document.getElementById("img5").style.display = "inline";
	}
}

function section(sectName, sectTable)
{
	//open or close section
	if (document.getElementById(sectTable).style.display == "none")
	{
		document.getElementById(sectTable).style.display = "block";
	}
	else
	{
		document.getElementById(sectTable).style.display = "none";
	}
}

function marital(status)
{
	//unhide spouse fields if married
	if (status == "married")
	{
		document.getElementById("spousePersonal").style.display = "block";
		document.getElementById("spouseLicense").style.display = "block";
		document.getElementById("spouseLicenseState").style.display = "block";
	}
	else
	{
		document.getElementById("spousePersonal").style.display = "none";
		document.getElementById("spouseLicense").style.display = "none";
		document.getElementById("spouseLicenseState").style.display = "none";
	}
}

function incidents(status)
{
	//unhide incidents fields if necessary
	if (status == 1)
	{
		document.getElementById("incidentTable").style.display = "block";
	}
	else
	{
		document.getElementById("incidentTable").style.display = "none";
	}
}

function sendpart(part, table)
{
	//validate form is filled out
	//alert and focus to missed fields
	//if part is done set image to visible and close section
	if (part == "personal")
	{
		if (checkPersonal(document.yourform))
		{
			document.yourform.finishedPersonal.value = "yes";
			document.getElementById("img1").style.display = "inline";
			section(part, table);
		}
	}
	else if (part == "auto")
	{
		if (checkAuto(document.yourform))
		{
			document.yourform.finishedAuto.value = "yes";
			document.getElementById("img2").style.display = "inline";
			section(part, table);
		}
	}
	else if (part == "home")
	{
		if (checkHome(document.yourform))
		{
			document.yourform.finishedHome.value = "yes";
			document.getElementById("img3").style.display = "inline";
			section(part, table);
		}
	}
	else if (part == "life")
	{
		if (checkLife(document.yourform))
		{
			document.yourform.finishedLife.value = "yes";
			document.getElementById("img4").style.display = "inline";
			section(part, table);
		}
	}
	else if (part == "rental")
	{
		if (checkRental(document.yourform))
		{
			document.yourform.finishedRental.value = "yes";
			document.getElementById("img5").style.display = "inline";
			section(part, table);
		}
	}
	
	cookieForms('save', 'yourform');
}

function checkPersonal(thisform)
{
	//validate the data in personal, alert and change focus to missed fields
	with (thisform)
	{
		if (validate_required(firstName,"Please enter your first name") == false)
		{	return false;	}
		else if (validate_required(lastName,"Please enter your last name") == false)
		{	return false;	}
		else if (validate_required(dateOfBirth,"Please enter your date of birth") == false)
		{	return false;	}
		else if (validate_required(email,"Please enter your email") == false)
		{	return false;	}
		else if (validate_required(Street,"Please enter your address") == false)
		{	return false;	}
		else if (validate_required(City,"Please enter your city") == false)
		{	return false;	}
		else if (validate_required(State,"Please enter your state") == false)
		{	return false;	}
		else if (validate_required(Zip,"Please enter your zip code") == false)
		{	return false;	}
		else if (validate_required(Phone,"Please enter your phone number") == false)
		{	return false;	}
		else if (validate_radio(gender,"Please enter your gender") == false)
		{	return false;	}
		else if (validate_required(maritalStatus,"Please enter your marital status") == false)
		{	return false;	}
		//check if we must check for spouse name
		else if (document.getElementById("spousePersonal").style.display == "block" && validate_required(spouseName,"Please enter your spouse's name") == false)
		{	return false;	}
		else if (validate_radio(employed,"Please tell us if you are currently employed") == false)
		{	return false;	}
		else if (validate_required(occupation,"Please enter your occupation") == false)
		{	return false;	}
		else if (validate_required(education,"Please enter your highest level of education") == false)
		{	return false;	}
		else if (validate_required(credit,"Please rate your credit") == false)
		{	return false;	}
		else if (validate_radio(homeOwnership,"Please indicate any home ownership") == false)
		{	return false;	}
		else
		{	return true;	}
	}
}

function checkAuto(thisform)
{
	//validate the data in auto, alert and change focus to missed fields
	with (thisform)
	{
		if (validate_required(driversLicense,"Please enter your drivers license number") == false)
		{	return false;	}
		//check if we must check for spouse license
		else if (document.getElementById("spouseLicense").style.display == "block" && validate_required(spouseDriversLicense,"Please enter your spouse's Drivers License") == false)
		{	return false;	}
		else if (validate_required(licenseState,"Please enter the state in which you are currently licensed") == false)
		{	return false;	}
		//check for auto 1
		else if (validate_required(YearOne,"Please enter a year for vehicle one") == false)
		{	return false;	}
		else if (validate_required(MakeOne,"Please enter a make for vehicle one") == false)
		{	return false;	}
		else if (validate_required(ModelOne,"Please enter a model for vehicle one") == false)
		{	return false;	}
		else if (validate_required(vehicleUsageOne,"Please enter a usage for vehicle one") == false)
		{	return false;	}
		else if (validate_required(vehicleMileageOne,"Please enter a mileage for vehicle one") == false)
		{	return false;	}
		//check for auto 2
		else if (document.getElementById("addVehicleTwoYearButton").style.display == "none" && validate_required(YearTwo,"Please enter a year for vehicle two") == false)
		{	return false;	}
		else if (document.getElementById("addVehicleTwoYearButton").style.display == "none" && validate_required(MakeTwo,"Please enter a make for vehicle two") == false)
		{	return false;	}
		else if (document.getElementById("addVehicleTwoYearButton").style.display == "none" && validate_required(ModelTwo,"Please enter a model for vehicle two") == false)
		{	return false;	}
		else if (document.getElementById("addVehicleTwoYearButton").style.display == "none" && validate_required(vehicleUsageTwo,"Please enter a usage for vehicle two") == false)
		{	return false;	}
		else if (document.getElementById("addVehicleTwoYearButton").style.display == "none" && validate_required(vehicleMileageTwo,"Please enter a mileage for vehicle two") == false)
		{	return false;	}
		
		else if (validate_required(comprehensiveDeductible,"Please enter your desired comprehensive deductible") == false)
		{	return false;	}
		else if (validate_required(collisionDeductible,"Please enter your desired collision deductible") == false)
		{	return false;	}
		else if (validate_required(bodilyInjury,"Please enter your desired bodily injury coverage") == false)
		{	return false;	}
		else if (validate_required(propertyDamage,"Please enter your desired property damage coverage") == false)
		{	return false;	}
		else if (validate_required(uninsuredMotorist,"Please enter your desired uninsured motorist coverage") == false)
		{	return false;	}
		else if (validate_required(medicalPayments,"Please enter your desired medical payments coverage") == false)
		{	return false;	}
		//don't check for current company
		//don't check for current bodily injury
		//don't check for current length
		else if (validate_radio(leasedVehicle,"Please enter if your vehicle is leased") == false)
		{	return false;	}
		else if (validate_required(autoIncidents,"Please enter if you have had auto incidents") == false)
		{	return false;	}
		else if (validate_radio(sr22,"Please enter if you require an SR-22") == false)
		{	return false;	}
		else if (validate_radio(autoGPA,"Please enter if you are a student with a GPA over 3.0") == false)
		{	return false;	}
		else
		{	return true;	}
	}
}


function checkHome(thisform)
{
	//validate the data in home, alert and change focus to missed fields
	with (thisform)
	{
		if (validate_required(typeofHomeInsurance,"Please enter type of Home Insurance") == false)
		{	return false;	}
		else if (validate_required(homeBuilt,"Please enter when the home was built") == false)
		{	return false;	}
		else if (validate_required(homeStories,"Please enter the number of stories") == false)
		{	return false;	}
		else if (validate_required(homeSecurity,"Please enter any type of home security") == false)
		{	return false;	}
		else if (validate_required(roofType,"Please enter the roof type") == false)
		{	return false;	}
		else if (validate_required(sqFt,"Please enter the square footage") == false)
		{	return false;	}
		else if (validate_required(numBedrooms,"Please enter the number of bedrooms") == false)
		{	return false;	}
		else if (validate_required(numFullBaths,"Please enter the number of full baths") == false)
		{	return false;	}
		else if (validate_required(numHalfBaths,"Please enter the number of half baths") == false)
		{	return false;	}
		else if (validate_required(fireplaces,"Please enter the number of fireplaces") == false)
		{	return false;	}
		//don't check for pool spa trampoline
		else if (validate_required(numOccupants,"Please enter the number of occupants") == false)
		{	return false;	}
		//don't check for dogs of specific breed
		//don't check for numdogs
		//don't check for current home carrier
		//don't check for current policy expiration
		else if (validate_required(deductible,"Please enter your desired deductible") == false)
		{	return false;	}
		else if (validate_required(liability,"Please enter your desired liability amount") == false)
		{	return false;	}
		else
		{	return true;	}
	}
}


function checkLife(thisform)
{
	//validate the data in life, alert and change focus to missed fields
	with (thisform)
	{
		if (validate_required(policyOfLifeInsurance,"Please enter the desired type of policy") == false)
		{	return false;	}
		else if (validate_required(deathBenefits,"Please enter your desired death benefits") == false)
		{	return false;	}
		//don't check for current life insurance company
		else if (validate_radio(takingMedication,"Please indicate if you are taking medication") == false)
		{	return false;	}
		else if (takingMedication[0].checked && validate_required(nameOfMedication,"Please enter the name of the medication(s)") == false)
		{	return false;	}
		else if (validate_radio(smoker,"Please indicate if you smoke") == false)
		{	return false;	}
		else if (validate_required(heightFeet,"Please enter your height (feet)") == false)
		{	return false;	}
		else if (validate_required(heightInches,"Please enter your height (inches)") == false)
		{	return false;	}
		else if (validate_required(weight,"Please enter your weight") == false)
		{	return false;	}
		//don't check for diseases
		else
		{	return true;	}
	}
}


function checkRental(thisform)
{
	//validate the data in life, alert and change focus to missed fields
	with (thisform)
	{
		if (validate_required(rentalType,"Please enter the rental type") == false)
		{	return false;	}
		else if (validate_required(propertyType,"Please enter the type of furnishings/possesions you own") == false)
		{	return false;	}
		else if (validate_required(propertyCoverage,"Please enter your desired property coverage") == false)
		{	return false;	}
		else if (validate_required(personalLiability,"Please enter your desired personal liability") == false)
		{	return false;	}
		else if (validate_required(personalDeductible,"Please enter your desired personal deductible") == false)
		{	return false;	}
		else if (validate_required(rentalSqFt,"Please enter the square footage") == false)
		{	return false;	}
		else if (validate_required(rentalBuilt,"Please enter the year rental was built") == false)
		{	return false;	}
		else if (validate_required(rentalnumDogs,"Please enter the number of dogs") == false)
		{	return false;	}
		else
		{	return true;	}
	}
}

function validate_required(field,alerttxt)
{
	//check field
	with (field)
	{
		if (value == null || value == "")
  		{
			alert(alerttxt);
			field.focus();
			return false;
		}
		else
		{
			return true
		}
	}
}

function validate_radio(field,alerttxt)
{
	//will make sure radio or checkboxes have at least one entry
	var groupChecked;

	for (var i = 0; i < field.length; i++)
	{
		if (field[i].checked)
		{
			groupChecked = field[i].value;
		}	
	}
	if(!groupChecked)//if groupChecked does not equal null
	{ 
		alert(alerttxt);
		return false;
	}
	else
	{
		return true;
	}
}


function validate_form(thisform)
{
	with (thisform)
	{
		if (document.getElementById("img1").style.display == "none")
		{
			alert("Please fill out all required Personal Information");
			return false;
		}
		else if (document.getElementById("img2").style.display == "none" && document.getElementById("img3").style.display == "none" && document.getElementById("img4").style.display == "none" && document.getElementById("img5").style.display == "none" )
		{
			alert("You must finish at least one section other than Ppersonal Information to be quoted");
			return false;
		}
		else
		{
			
			return confirm("Are you sure you are ready to get a quote?");	
		}
	}
}


function full_reset()
{
	document.getElementById("img1").style.display = "none";
	document.getElementById("img2").style.display = "none";
	document.getElementById("img3").style.display = "none";
	document.getElementById("img4").style.display = "none";
	document.getElementById("img5").style.display = "none";
}

var resetRolls = new Object();
function resetimage(src)
{
this.src=src;
this.confirm=true;
this.alt="Reset Quote";
this.write=resetimage_write;
}

function resetimage_write()
{
document.write('<a class="reset"');
if (this.rollover)
    {
    if (! this.name)
        {
        alert('to create a rollover you must give the image a name');
        return;
        }

    resetRolls[this.name] = new Object();
    resetRolls[this.name].over = new Image();
    resetRolls[this.name].over.src=this.rollover;
    resetRolls[this.name].out = new Image();
    resetRolls[this.name].out.src=this.src;
    document.write(
        ' onMouseOver="if (document.images)document.images[\'' + 
        this.name + '\'].src=resetRolls[\'' + this.name + '\'].over.src"' + 
        ' onMouseOut="if (document.images)document.images[\'' + 
        this.name + '\'].src=resetRolls[\'' + this.name + '\'].out.src"'
        );
    }
document.write(' HREF="javascript:');
if (this.confirm)
    document.write('if(confirm(\'Are you sure you want to reset?\'))');
document.write(
    'document.forms[' + 
    (document.forms.length - 1) + '].reset();void(0);">');
document.write('<IMG SRC="' + this.src + '" ALT="' + this.alt + '"');
document.write(' BORDER=0');
if (this.name)document.write(' NAME="' + this.name + '"');
if (this.height)document.write(' HEIGHT=' + this.height);
if (this.width)document.write(' WIDTH=' + this.width);
if (this.otheratts)document.write(' '+ this.otheratts);
document.write('></A>');
}

//setting up cookies
var expDays = 100;

var exp = new Date(); 

exp.setTime(exp.getTime() + (expDays*24*60*60*1000));



function getCookieVal (offset) {  

	var endstr = document.cookie.indexOf (";", offset);  

	if (endstr == -1) { endstr = document.cookie.length; }

	return unescape(document.cookie.substring(offset, endstr));

}



function GetCookie (name) {  

	var arg = name + "=";  

	var alen = arg.length;  

	var clen = document.cookie.length;  

	var i = 0;  

	while (i < clen) {    

		var j = i + alen;    

		if (document.cookie.substring(i, j) == arg) return getCookieVal (j);    

		i = document.cookie.indexOf(" ", i) + 1;    

		if (i == 0) break;   

	}  

	return null;

}



function SetCookie (name, value) {  

	var argv = SetCookie.arguments;  

	var argc = SetCookie.arguments.length;  

	var expires = (argc > 2) ? argv[2] : null;  

	var path = (argc > 3) ? argv[3] : null;  

	var domain = (argc > 4) ? argv[4] : null;  

	var secure = (argc > 5) ? argv[5] : false;  

	document.cookie = name + "=" + escape (value) + 

	((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + 

	((path == null) ? "" : ("; path=" + path)) +  

	((domain == null) ? "" : ("; domain=" + domain)) +    

	((secure == true) ? "; secure" : "");

}




function cookieForms() 
{  
	var mode = cookieForms.arguments[0];

	

	for(f=1; f<cookieForms.arguments.length; f++) {

		formName = cookieForms.arguments[f];

		

		if(mode == 'open') {	

			cookieValue = GetCookie('saved_'+formName);

			if(cookieValue != null) {

				var cookieArray = cookieValue.split('#cf#');

				

				if(cookieArray.length == document[formName].elements.length) {

					for(i=0; i<document[formName].elements.length; i++) {

					

						if(cookieArray[i].substring(0,6) == 'select') { document[formName].elements[i].options.selectedIndex = cookieArray[i].substring(7, cookieArray[i].length-1); }

						else if((cookieArray[i] == 'cbtrue') || (cookieArray[i] == 'rbtrue')) { document[formName].elements[i].checked = true; }

						else if((cookieArray[i] == 'cbfalse') || (cookieArray[i] == 'rbfalse')) { document[formName].elements[i].checked = false; }

						else { document[formName].elements[i].value = (cookieArray[i]) ? cookieArray[i] : ''; }

					}

				}

			}

		}

				

		if(mode == 'save') {	

			cookieValue = '';

			for(i=0; i<document[formName].elements.length; i++) {

				fieldType = document[formName].elements[i].type;

				

				if(fieldType == 'password') { passValue = ''; }

				else if(fieldType == 'checkbox') { passValue = 'cb'+document[formName].elements[i].checked; }

				else if(fieldType == 'radio') { passValue = 'rb'+document[formName].elements[i].checked; }

				else if(fieldType == 'select-one') { passValue = 'select'+document[formName].elements[i].options.selectedIndex; }

				else { passValue = document[formName].elements[i].value; }

			

				cookieValue = cookieValue + passValue + '#cf#';

			}

			cookieValue = cookieValue.substring(0, cookieValue.length-4); // Remove last delimiter

			SetCookie('saved_'+formName, cookieValue, exp);		
		}	
	}
}



