// ------------------------------------------------------------------
// Function to reset all controls on AddressDetails.aspx Page.
// ------------------------------------------------------------------
function runClearButtonForAddressDetails()
{
	document.getElementById("texStreetNumber").value = "";
	document.getElementById("texSuite").value = "";
	document.getElementById("ddlDir").value = "";
	document.getElementById("texStreetName").value = ""	;
	document.getElementById("ddlPostDir").value = "";
	document.getElementById("ddlStreetType").value = "";
	ValidatorValidate(revStreetNumber)
	return false;
}

// ---------------------------------------------------------------------------------------------------------
// Function to ensure that Street Number is entered when Suite Info is Provided on AddressDetails.aspx Page.
// ---------------------------------------------------------------------------------------------------------
function evaluateFieldsForAddressDetails(source, arguments)
{           
	  if (document.getElementById("texStreetNumber").value == undefined)
	  {
	    arguments.IsValid = false;
	  } 
	  else
	  {
	   //Strip out White Space
		var regexp = /^(\s*)$/;

		document.getElementById("texStreetNumber").value = document.getElementById("texStreetNumber").value.replace( regexp, '' )
						
		if (document.getElementById("texStreetNumber").value.length == 0)
		{        
			arguments.IsValid = false;
		}
		else
		{
			arguments.IsValid = true;
		}
	  }
}

// ---------------------------------------------------------------------------------------------------------
// Function to ensure that Street Number is entered when Suite Info is Provided on AddressDetails.aspx Page.
// ---------------------------------------------------------------------------------------------------------
function evaluateStreetNumberValidatorForAddressDetails()
{
	ValidatorValidate(cvStreetNumber)
}

// -----------------------------------------------------------------------------------------------------
// Function to ensure that Contact Email is entered in appropriate cases on PermitApplication.aspx page.
// -----------------------------------------------------------------------------------------------------
function evaluateCheckBoxForPermitApplication()
{	
	if (document.getElementById("cheNotifyMeViaEmailOfEachInspectionResult").checked == true)
	{        
		ValidatorEnable(rfvContactPersonEmail, true);
	}
	else
	{
		ValidatorEnable(rfvContactPersonEmail, false);
	}

}

// -----------------------------------------------------------------------------------
// Function to validate at least one permit is checked on PermitApplication.aspx page.
// -----------------------------------------------------------------------------------
function ValidatecvPermitsForPermitApplication(source, arguments)
{
    if (document.getElementById("cheElectricalPermit").checked == false
	    && 
	    document.getElementById("cheMechanicalPermit").checked == false
	    &&
	    document.getElementById("chePlumbingPermit").checked == false)
	{
	  arguments.IsValid = false;
	}
	else
	{
	  arguments.IsValid = true;    	
	}
}

// -----------------------------------------------------------------------------------
// Function to validate at least one check box or radio button option is checked on 
// PermitApplication.aspx page.
// -----------------------------------------------------------------------------------
function ValidatecvMechanicalPermitOnClientSideForMechanicalPermit(source, arguments)
{
	if (document.getElementById("cheHeating").checked == false
	    &&
	    document.getElementById("cheAirConditioning").checked == false)
	    {
			arguments.IsValid = false
	    }
	    else
	    {
	      if (document.getElementById("cheHeating").checked == true)
	      {
			if (document.getElementById("radOil").checked == true
			    ||
			    document.getElementById("radElectric").checked == true
			    ||
			    document.getElementById("radGas").checked == true)
			{
				arguments.IsValid = true
			}
			else
			{
				arguments.IsValid = false
			}
	      }
	      else
	      {
	        arguments.IsValid = true
	      }
	    }
}

// -----------------------------------------------------------------------------------
// Function to validate at least one check box or radio button option is checked on 
// PermitApplication.aspx page.
// -----------------------------------------------------------------------------------
function ValidatecvPlumbingPermitOnClientSideForPlumbingPermit(source, arguments)
{
  if (document.getElementById("cheRepairOrReplaceUndergroundWaterLine").checked == true
      || 
	  document.getElementById("cheRepairOrReplaceSewerService").checked == true
	  || 
	  document.getElementById("cheReplacePlumbingFixture").checked == true
	  || 
	  document.getElementById("cheAddNewPlumbingFixtureToExistingSystem").checked == true
	  || 
	  document.getElementById("radNoChangeInFuelType").checked == true
	  ||
	  document.getElementById("radChangeInFuelTypeFromGasToElectric").checked == true
	  ||
	  document.getElementById("radChangeInFuelTypeFromElectricToGas").checked == true)
	 {
		arguments.IsValid = true;    	
	 }
	 else
	 {
		arguments.IsValid = false;
	 }
}

// -----------------------------------------------------------------------------------
// Function to validate Description of Proposed Work does not exceed 50 characters for
// PermitApplication.aspx page.
// -----------------------------------------------------------------------------------
function ValidatecvProposedWorkForPermitApplication(source, arguments)
{
	if (document.getElementById("texDescriptionOfProposedWork").value.length > 50)
	{
	  arguments.IsValid = false;
	}
	else
	{
	  arguments.IsValid = true;    	
	}
}

// -----------------------------------------------------------------------------------
// Function to validate that the new heating type is not the same as the existing 
// heating type for the MechanicalPermit.aspx page.
// -----------------------------------------------------------------------------------
function ValidateCvHeatingType(source,arguments)
{
   if (document.getElementById("radOil").checked == true 
       &&
       document.getElementById("radNewOil").checked == true)
   { 
     arguments.IsValid = false;
   }
   else 
   if (document.getElementById("radGas").checked == true 
       &&
       document.getElementById("radNewGas").checked == true)
   {
     arguments.IsValid = false;
   }     
   else 
   if (document.getElementById("radElectric").checked == true 
       &&
       document.getElementById("radNewElectric").checked == true)
   {
     arguments.IsValid = false;
   }
   else
   {
     arguments.IsValid = true;   
   }   
}