function GeneralDisplay()
{
	setVisDisp('nonLastingAttorneys', true);
	chkDonorRegion();
	chkAttorneyOneRegion();
	chkSignRegion();
	setVisDisp('UKLastingUseDiv',false);
	setVisDisp('trustCorpDiv', false);
	setVisDisp('nonLastingAttorneyPowerDiv', true);
	setVisDisp('nonLastingRestrictions', true);
	setVisDisp('lifeSustainAuthDiv', false);
	setVisDisp('propertyAttorneyPowers', false);
	setVisDisp('personalAttorneyPowers', false);
	setVisDisp('notification', false);
	setVisDisp('notifyNote', false);
	setVisDisp('prescribedConfirmDiv', false);
	setVisDisp('witnessPostcodeDiv', false);
	setVisDisp('witness2PostcodeDiv', false);
	setVisDisp('authSignDiv', false);
	for(var i=1;i<=4;i++)
	{
		setVisDisp('attorneyWitnessPostcode'+i+'Div', false);
		setVisDisp('witness2Postcode'+i+'Div', false);
		setVisDisp('nonLastingAttorney'+i+'Details', true);
	}
	setVisDisp('propertyAttWitnessTitle', false);
	setVisDisp('personalAttWitnessTitle', false);
	setVisDisp('certificateProvider1Div', false);
	setVisDisp('certificateProvider2Div', false);
}

function EnduringDisplay()
{
	var govCountry = getFormObject(ct,'governingCountry').value;
	var isEnglandWales = (govCountry=='England' || govCountry=='Wales');
	setVisDisp('nonLastingAttorneys', !isEnglandWales);
	setVisDisp('lastingAttorneys', isEnglandWales);
	
	chkAttorney();
	chkAttorneyPower();
	chkProperty();
	chkRestrictions();
	propertyRestrictionDisplay();
	personalRestrictionDisplay();
	chkDonorSignature();
	setVisDisp('attorneySignDiv1', true);
	chkAttorneySignature();
	setVisDisp('UKLastingUseDiv', isEnglandWales);
	setVisDisp('nonLastingAttorneyPowerDiv', !isEnglandWales);
	setVisDisp('nonLastingRestrictions', !isEnglandWales);
	setVisDisp('notification', isEnglandWales);
	setVisDisp('prescribedConfirmDiv', isEnglandWales);
	setVisDisp('witnessPostcodeDiv', isEnglandWales);
	setVisDisp('witness2PostcodeDiv', isEnglandWales);
	for(var i=1;i<=4;i++)
	{
		setVisDisp('attorneyWitnessPostcode'+i+'Div', isEnglandWales);
		setVisDisp('witness2Postcode'+i+'Div', isEnglandWales);
		setVisDisp('nonLastingAttorney'+i+'Details', !isEnglandWales);
	}
	
	if (isEnglandWales)
	{	
		donorTitleDisplay();
		donorOtherDisplay();
		UKLastingUseDisplay();
		attorneyGuidanceDisplay();
		personalAttorneyGuidanceDisplay();
		attorneyFeeDisplay();
		personalAttorneyFeeDisplay();
		notifyOthersDisplay();
		prescribedConfirmDisplay();
	}
}

function donorTitleDisplay()
{
	setVisDisp('donorTitleOtherDiv', getFormObject(ct, 'donorTitle').value=='other');
}

function donorOtherDisplay()
{
	setVisDisp('donorOtherDiv', getFormObject(ct, 'donorOther')[0].checked);
}

function UKLastingUseDisplay()
{
	var UKLastingUseType = getFormObject(ct, 'UKLastingUse').value;
	var govCountry = getFormObject(ct,'governingCountry').value;
	
	setVisDisp('propPrescrInfo', UKLastingUseType == 'property'); 
	setVisDisp('persPrescrInfo', UKLastingUseType == 'personal'); 
	setVisDisp('bothPrescrInfo', UKLastingUseType == 'both');
	setVisDisp('trustCorpDiv', UKLastingUseType == 'property');
	setVisDisp('personalAttorneys', UKLastingUseType == 'personal');
	setVisDisp('bothPropertyPersonalDiv', UKLastingUseType == 'both');
	setVisDisp('replacementAttorneyDiv', UKLastingUseType != 'personal');
	setVisDisp('personalReplacementAttDiv', UKLastingUseType != 'property');
	setVisDisp('propertyAttorneyPowers', UKLastingUseType != 'personal');
	setVisDisp('personalAttorneyPowers', UKLastingUseType != 'property');
	bothPropertyPersonalDisplay();	
	setVisDisp('lifeSustainAuthDiv', (govCountry=='England' || govCountry=='Wales') && UKLastingUseType != 'property');
	
	replacementAttorneyDisplay();
	personalReplacementAttDisplay();
}

function bothPropertyPersonalDisplay()
{
	var UKLastingUseType = getFormObject(ct, 'UKLastingUse').value;
	var differentAttorneys = getFormObject(ct, 'bothPropertyPersonal')[1].checked;
	var both = (UKLastingUseType == 'both' && differentAttorneys);
	
	setVisDisp('propertyHeader', both);
	setVisDisp('trustCorpDiv', UKLastingUseType == 'property' || both);
	trustCorpDisplay();
	
	setVisDisp('personalHeader', both);
	setVisDisp('personalAttorneys', UKLastingUseType == 'personal' || both);	
	personalAttNumDisplay();
}

function trustCorpDisplay()
{
	setVisDisp('trustCorpInfo', getFormObject(ct, 'trustCorp')[0].checked);
	setVisDisp('propertyAttorneys', ((getFormObject(ct, 'UKLastingUse').value == 'property' && (getFormObject(ct, 'trustCorp')[1].checked || (getFormObject(ct, 'trustCorp')[0].checked && getFormObject(ct, 'trustCorpAtt')[0].checked))) 
				      || (getFormObject(ct, 'UKLastingUse').value == 'both' && getFormObject(ct, 'bothPropertyPersonal')[0].checked)
				      || (getFormObject(ct, 'UKLastingUse').value == 'both' && getFormObject(ct, 'bothPropertyPersonal')[1].checked && (getFormObject(ct, 'trustCorp')[1].checked || (getFormObject(ct, 'trustCorp')[0].checked && getFormObject(ct, 'trustCorpAtt')[0].checked)))));
	propertyAttNumDisplay();
}

function propertyAttNumDisplay()
{
	propertyAtt1TitleDisplay();
	propertyAtt2TitleDisplay();
	setVisDisp('propertyAtt1Header', getFormObject(ct, 'propertyAttNum2').checked);
	setVisDisp('secondPropertyAttorney', getFormObject(ct, 'propertyAttNum2').checked);
	setVisDisp('propertyAttorneyDecisionDiv', getFormObject(ct, 'propertyAttNum2').checked || (getFormObject(ct, 'trustCorp')[0].checked && getFormObject(ct, 'trustCorpAtt')[0].checked));
	setVisDisp('propertyAttWitnessTitle', (getFormObject(ct, 'UKLastingUse').value == 'both' && getFormObject(ct, 'bothPropertyPersonal')[1].checked));
	setVisDisp('attorneySignDiv1', getFormObject(ct, 'UKLastingUse').value != 'personal');
	setVisDisp('attorneySignDiv2', ((getFormObject(ct, 'UKLastingUse').value == 'property' || (getFormObject(ct, 'UKLastingUse').value == 'both' && getFormObject(ct, 'bothPropertyPersonal')[1].checked)) && (getFormObject(ct, 'trustCorp')[1].checked || (getFormObject(ct, 'trustCorp')[0].checked && getFormObject(ct, 'trustCorpAtt')[0].checked)) && getFormObject(ct, 'propertyAttNum2').checked)
				     || (getFormObject(ct, 'UKLastingUse').value == 'both' && getFormObject(ct, 'bothPropertyPersonal')[0].checked && getFormObject(ct, 'propertyAttNum2').checked));
	propertyAttRelDisplay();
}

function propertyAttRelDisplay()
{
	setVisDisp('propertyAttorneyDecisionOther', getFormObject(ct, 'propertyAttorneyRelationship')[2].checked);
}

function personalAttNumDisplay()
{
	personalAtt1TitleDisplay();
	personalAtt2TitleDisplay();
	setVisDisp('personalAtt1Header', getFormObject(ct, 'propertyAttNum2').checked);
	setVisDisp('secondPersonalAttorney', getFormObject(ct, 'personalAttNum2').checked);
	setVisDisp('attorneyDecisionDiv', getFormObject(ct, 'personalAttNum2').checked && (getFormObject(ct, 'UKLastingUse').value == 'personal' || (getFormObject(ct, 'UKLastingUse').value == 'both' && getFormObject(ct, 'bothPropertyPersonal')[1].checked)));
	setVisDisp('personalAttWitnessTitle', (getFormObject(ct, 'UKLastingUse').value == 'both' && getFormObject(ct, 'bothPropertyPersonal')[1].checked));
	setVisDisp('attorneySignDiv3', (getFormObject(ct, 'UKLastingUse').value == 'personal' || (getFormObject(ct, 'UKLastingUse').value == 'both' && getFormObject(ct, 'bothPropertyPersonal')[1].checked)));
	setVisDisp('attorneySignDiv4', ((getFormObject(ct, 'UKLastingUse').value == 'personal' || (getFormObject(ct, 'UKLastingUse').value == 'both' && getFormObject(ct, 'bothPropertyPersonal')[1].checked)) && getFormObject(ct, 'personalAttNum2').checked));
	attorneyRelationshipDisplay();
}

function attorneyRelationshipDisplay()
{
	setVisDisp('attorneyDecisionOther', getFormObject(ct, 'attorneyRelationship')[2].checked);
}

function propertyAtt1TitleDisplay()
{
	setVisDisp('propertyAtt1TitleOtherDiv', getFormObject(ct, 'propertyAtt1Title').value=='other');
}

function propertyAtt2TitleDisplay()
{
	setVisDisp('propertyAtt2TitleOtherDiv', getFormObject(ct, 'propertyAtt2Title').value=='other');
}

function personalAtt1TitleDisplay()
{
	setVisDisp('personalAtt1TitleOtherDiv', getFormObject(ct, 'personalAtt1Title').value=='other');
}

function personalAtt2TitleDisplay()
{
	setVisDisp('personalAtt2TitleOtherDiv', getFormObject(ct, 'personalAtt2Title').value=='other');
}

function replacementAttorneyDisplay()
{
	setVisDisp('replacementAttorneyDetails', getFormObject(ct, 'replacementAttorney')[0].checked);
	setVisDisp('replacementAttRestrictionsDiv', getFormObject(ct, 'replacementAttorney')[0].checked);
	setVisDisp('replacementAttSignDiv', getFormObject(ct, 'replacementAttorney')[0].checked || getFormObject(ct, 'personalReplacementAtt')[0].checked);
	setVisDisp('replacementAtt1Div', getFormObject(ct, 'replacementAttorney')[0].checked && getFormObject(ct, 'UKLastingUse').value != 'personal');
	replacementAttTitleDisplay();
	replacementAttRestrictionsDisplay();
}

function replacementAttTitleDisplay()
{
	setVisDisp('replacementAttTitleOtherDiv', getFormObject(ct, 'replacementAttTitle').value=='other');
}

function replacementAttRestrictionsDisplay()
{
	setVisDisp('replacementAttRestrictionsDetails', getFormObject(ct, 'replacementAttRestrictions')[0].checked);
}

function personalReplacementAttDisplay()
{	
	setVisDisp('personalReplacementAttDetails', getFormObject(ct, 'personalReplacementAtt')[0].checked);
	setVisDisp('personalReplAttRestrictionsDiv', getFormObject(ct, 'personalReplacementAtt')[0].checked);
	setVisDisp('replacementAttSignDiv', getFormObject(ct, 'personalReplacementAtt')[0].checked || getFormObject(ct, 'replacementAttorney')[0].checked);
	setVisDisp('replacementAtt2Div', getFormObject(ct, 'personalReplacementAtt')[0].checked && getFormObject(ct, 'UKLastingUse').value != 'property');
	personalReplAttTitleDisplay();
	personalReplAttRestrictionsDisplay();
}

function personalReplAttTitleDisplay()
{
	setVisDisp('personalReplAttTitleOtherDiv', getFormObject(ct, 'personalReplAttTitle').value=='other');
}

function personalReplAttRestrictionsDisplay()
{
	setVisDisp('personalReplAttRestrictionsDetails', getFormObject(ct, 'personalReplAttRestrictions')[0].checked);
}

function attorneyGuidanceDisplay()
{
	setVisDisp('attorneyGuidanceDetailsDiv', getFormObject(ct, 'attorneyGuidance')[0].checked);
}

function personalAttorneyGuidanceDisplay()
{
	setVisDisp('personalAttorneyGuidanceDetailsDiv', getFormObject(ct, 'personalAttorneyGuidance')[0].checked);
}

function attorneyFeeDisplay()
{
	setVisDisp('attorneyFeeDetailsDiv', getFormObject(ct, 'attorneyFee')[0].checked);
}

function personalAttorneyFeeDisplay()
{
	setVisDisp('personalAttorneyFeeDetailsDiv', getFormObject(ct, 'personalAttorneyFee')[0].checked);
}

function notifyOthersDisplay()
{
	setVisDisp('notifiedDiv', getFormObject(ct, 'notifyOthers')[0].checked);
	setVisDisp('notifyNote', getFormObject(ct, 'notifyOthers')[1].checked);
	setVisDisp('certificateProvider1Div', getFormObject(ct,'governingCountry').value=='England' || getFormObject(ct,'governingCountry').value=='Wales');
	setVisDisp('certificateProviderTitle', getFormObject(ct,'governingCountry').value=='England' || getFormObject(ct,'governingCountry').value=='Wales');
	setVisDisp('certificateProvider2Div', getFormObject(ct, 'notifyOthers')[1].checked && (getFormObject(ct,'governingCountry').value=='England' || getFormObject(ct,'governingCountry').value=='Wales'));
	setVisDisp('certificate1TitleDiv', getFormObject(ct, 'notifyOthers')[1].checked);
	setVisDisp('certificate2TitleDiv', getFormObject(ct, 'notifyOthers')[1].checked);
	
	notifiedNumDisplay();
	certProv1Display()
	certProv2Display()
}

function notifiedNumDisplay()
{
	var notifiedNum = getFormObject(ct, 'notifiedNum').value;

	setVisDisp('notified1Div', false);
	setVisDisp('notified2Div', false);
	setVisDisp('notified3Div', false);
	setVisDisp('notified4Div', false);
	setVisDisp('notified5Div', false);

	switch (notifiedNum)
	{
		case '5': setVisDisp('notified5Div', true);
			  notified5TitleDisplay();
		case '4': setVisDisp('notified4Div', true);
			  notified4TitleDisplay();
		case '3': setVisDisp('notified3Div', true);
			  notified3TitleDisplay();
		case '2': setVisDisp('notified2Div', true);
			  notified2TitleDisplay();
			  setVisDisp('notified1Div', true);
			  notified1TitleDisplay();
			  break;
					
	}
}

function notified1TitleDisplay()
{
	setVisDisp('notified1TitleOtherDiv', getFormObject(ct, 'notified1Title').value == 'other');
}
function notified2TitleDisplay()
{
	setVisDisp('notified2TitleOtherDiv', getFormObject(ct, 'notified2Title').value == 'other');
}
function notified3TitleDisplay()
{
	setVisDisp('notified3TitleOtherDiv', getFormObject(ct, 'notified3Title').value == 'other');
}
function notified4TitleDisplay()
{
	setVisDisp('notified4TitleOtherDiv', getFormObject(ct, 'notified4Title').value == 'other');
}
function notified5TitleDisplay()
{
	setVisDisp('notified5TitleOtherDiv', getFormObject(ct, 'notified5Title').value == 'other');
}

function prescribedConfirmDisplay()
{
	setVisDisp('prescribedReaderDiv', getFormObject(ct, 'prescribedConfirm')[1].checked);
}


function certProv1Display()
{
	certProv1TitleDisplay();
	setVisDisp('knowProvider1Div', getFormObject(ct, 'certProv1Type')[0].checked);
	setVisDisp('skillCert1TypeDiv', getFormObject(ct, 'certProv1Type')[1].checked);
	skillCert1TypeDisplay();
}

function certProv1TitleDisplay()
{
	setVisDisp('certProv1TitleOtherDiv', getFormObject(ct, 'certProv1Title').value == 'other');
}

function certProv2Display()
{
	certProv2TitleDisplay();
	setVisDisp('knowProvider2Div', getFormObject(ct, 'certProv2Type')[0].checked);
	setVisDisp('skillCert2TypeDiv', getFormObject(ct, 'certProv2Type')[1].checked);
	skillCert2TypeDisplay();
}

function certProv2TitleDisplay()
{
	setVisDisp('certProv2TitleOtherDiv', getFormObject(ct, 'certProv2Title').value == 'other');
}

function skillCert1TypeDisplay()
{
	setVisDisp('skillCert1OtherDiv', getFormObject(ct, 'skillCert1Type').value == 'other');
}

function skillCert2TypeDisplay()
{
	setVisDisp('skillCert2OtherDiv', getFormObject(ct, 'skillCert2Type').value == 'other');
}


function SpecialDisplay()
{

}

function ScotlandDisplay()
{
}

function setAgreementType(agreementType)
{

}

function chkAttorneyPower()
{
	setVisDisp("attorneyPowerDiv",getFormObject(ct, "attorneyPower")[1].checked);

}

function chkProperty()
{
	setVisDisp("limitedPropertyDiv",getFormObject(ct, "property")[1].checked);

}


function chkRestrictions()
{
	setVisDisp('restrictionsDiv',getFormObject(ct, 'restriction')[0].checked);
	setVisDisp('restrictionExDiv',getFormObject(ct, 'restrictionExamples').checked);
}

function propertyRestrictionDisplay()
{
	setVisDisp('propertyRestrictionsDiv',getFormObject(ct, 'propertyRestriction')[0].checked);
	setVisDisp('propertyRestrictionExDiv',getFormObject(ct, 'propertyRestrictionExamples').checked);
}

function personalRestrictionDisplay()
{
	setVisDisp('personalRestrictionDiv',getFormObject(ct, 'personalRestriction')[0].checked);
	setVisDisp('personalRestrictionExDiv',getFormObject(ct, 'personalRestrictionExamples').checked);
}





function chkDonorRegion()
{
	setVisDisp("donorUsaDiv1", getFormObject(ct,"donorGovernLaw").value == "usa");
	setVisDisp("donorCanadaDiv1", getFormObject(ct,"donorGovernLaw").value == "canada");
	setVisDisp("donorUkDiv1", getFormObject(ct,"donorGovernLaw").value == "uk");
	setVisDisp("donorAustraliaDiv1", getFormObject(ct,"donorGovernLaw").value == "australia");
	setVisDisp("donorUsaDiv2", getFormObject(ct,"donorGovernLaw").value == "usa");
	setVisDisp("donorCanadaDiv2", getFormObject(ct,"donorGovernLaw").value == "canada");
	setVisDisp("donorUkDiv2", getFormObject(ct,"donorGovernLaw").value == "uk");
	setVisDisp("donorAustraliaDiv2", getFormObject(ct,"donorGovernLaw").value == "australia");
}


function chkAttorneyOneRegion()
{
	setVisDisp("attorneyUsaDiv1", getFormObject(ct,"attorneyOneGovLaw").value == "usa");
	setVisDisp("attorneyCanadaDiv1", getFormObject(ct,"attorneyOneGovLaw").value == "canada");
	setVisDisp("attorneyUkDiv1", getFormObject(ct,"attorneyOneGovLaw").value == "uk");
	setVisDisp("attorneyAustraliaDiv1", getFormObject(ct,"attorneyOneGovLaw").value == "australia");
	setVisDisp("attorneyUsaDiv2", getFormObject(ct,"attorneyOneGovLaw").value == "usa");
	setVisDisp("attorneyCanadaDiv2", getFormObject(ct,"attorneyOneGovLaw").value == "canada");
	setVisDisp("attorneyUkDiv2", getFormObject(ct,"attorneyOneGovLaw").value == "uk");
	setVisDisp("attorneyAustraliaDiv2", getFormObject(ct,"attorneyOneGovLaw").value == "australia");
}



function chkSignRegion()
{
	setVisDisp("signUsaDiv1", getFormObject(ct,"signGovLaw").value == "usa");
	setVisDisp("signCanadaDiv1", getFormObject(ct,"signGovLaw").value == "canada");
	setVisDisp("signUkDiv1", getFormObject(ct,"signGovLaw").value == "uk");
	setVisDisp("signAustraliaDiv1", getFormObject(ct,"signGovLaw").value == "australia");
	setVisDisp("signUsaDiv2", getFormObject(ct,"signGovLaw").value == "usa");
	setVisDisp("signCanadaDiv2", getFormObject(ct,"signGovLaw").value == "canada");
	setVisDisp("signUkDiv2", getFormObject(ct,"signGovLaw").value == "uk");
	setVisDisp("signAustraliaDiv2", getFormObject(ct,"signGovLaw").value == "australia");

}

function powerAttType(selAttorneyType)
{
	var govCountry = getFormObject(ct,"governLaw").value;

	setVisDisp("otherSpringingDetails",selAttorneyType.value == "Springing");

}  // end of function

function chkDonorSignature()
{	
	setVisDisp('secondWitness', getFormObject(ct, 'signing')[2].checked);
	setVisDisp('witnessDisp', getFormObject(ct, 'signing')[2].checked);
	setVisDisp('signDonor2HintText', getFormObject(ct, 'signing')[2].checked);
	setVisDisp('signDonor1HintText', !getFormObject(ct, 'signing')[2].checked);
	setVisDisp('authSignDiv', getFormObject(ct, 'signing')[2].checked && (getFormObject(ct,'governingCountry').value == 'England' || getFormObject(ct,'governingCountry').value == 'Wales'));
}

function chkAttorneySignature()
{
	var val;

if (getFormObject(ct,'governingCountry').value == 'England' && getFormObject(ct,'governingCountry').value == 'Wales')
	val = 3;
else
{
	if (getFormObject(ct, "attorneyNumber1").checked)
		val = document.getElementById("attorneyNumber1").value;

	else if (getFormObject(ct, "attorneyNumber2").checked)
		val = document.getElementById("attorneyNumber2").value;

	else
		val = document.getElementById("attorneyNumber3").value;
}

	for(var i=1;i<=val;i++)
  	{
		if((getFormObject(ct,'governingCountry').value != 'England' && getFormObject(ct,'governingCountry').value != 'Wales') && getFormObject(ct,"attorneySign"+i)[2].checked)
		{
			setVisDisp("secondWitness"+i,true);
			setVisDisp("witnessDisp"+i,true);
			setVisDisp("sign2HintText"+i, true);
			setVisDisp("sign1HintText"+i, false);
		}

		else
		{
    	setVisDisp("secondWitness"+i,false);
    	setVisDisp("witnessDisp"+i,false);
    	setVisDisp("sign2HintText"+i, false);
			setVisDisp("sign1HintText"+i, true);
    }
	}
}

function chkAttorney()
{
	var govCountry = getFormObject(ct,"governLaw").value;

	if (getFormObject(ct, "attorneyNumber2").checked == true)
	{
			setVisDisp("secondAttorney", true);
			setVisDisp("attorneyDecisionDiv", true);
			setVisDisp("thirdAttorney", false);
			setVisDisp("attorneySignDiv2", true);
			setVisDisp("attorneySignDiv3", false);
			chkAttorneySignature();
	}

	else if (getFormObject(ct, "attorneyNumber3").checked == true)
	{
		setVisDisp("thirdAttorney", true);
		setVisDisp("attorneyDecisionDiv", true);
		setVisDisp("secondAttorney", true);
		setVisDisp("attorneySignDiv3", true);
		setVisDisp("attorneySignDiv2", true);
		chkAttorneySignature();
	}

  else
	{
		setVisDisp("thirdAttorney", false);
		setVisDisp("attorneyDecisionDiv", false);
		setVisDisp("secondAttorney", false);
		setVisDisp("attorneySignDiv2", false);
		setVisDisp("attorneySignDiv3", false);
	}

}

function UKDisplay()
{
	setVisDisp("epaBookletLink", getFormObject(ct,"ukPOASelection")[0].checked && getFormObject(ct,'governingCountry').value != 'England' && getFormObject(ct,'governingCountry').value != 'Wales');
	specifyDate();

	if (getFormObject(ct,'governingCountry').value == 'Scotland')
		scotlandDisplay();

	else
	{

		if (getFormObject(ct,"ukPOASelection")[1].checked)
			GeneralDisplay();

		else
			EnduringDisplay();
	}


	//powerAttType(getFormObject(ct,'attorneyType'));


}
