var intTotalNumberofAreas = 0;
var blnSubmitForm = false;
function ValidateSprinklerForm(){


		//This function will validate the input of the form to make sure everything is good to send on
	//to the calculator
	var strZipCode;
	var strLanscapeName;
	var strPlantType;
	var strSoilType;
	var	strWaterSystem;
	var intZoneID;
	var strErrorString;

	var objNewArea;
	var objNewSoilType;
	var objNewPlantType;
	var objNewSystemType;
	var objNewAppRate;

	var objTotalCalcsToDo;

	var objNewBubRate;
	var objNewDripRate;

		

	strZipCode = document.frmSprinklerInput.zipcode_num.value;
	strLanscapeName = document.frmSprinklerInput.area_name.value;

	
	//strPlantType = document.frmSprinklerInput.plant_type_cd.value;

	//This takes a zip code and returns the zoneID that zipcode is in.  
	intZoneID = ValidateZipCodeforZoneID(strZipCode)

	//If it is 0 no zip code was found
	if (intZoneID > 0) 
		{
	
		//There was a valid MWD Zip Code....now set the ZoneID of the form
		document.frmSprinklerInput.ZoneID.value = intZoneID;
		strErrorString = "";
	
		}
	else
		{
		//This is not a valid MWD Zip Code
		strErrorString = "The zipcode you entered is not in the Metropolitan's service area. Please try again.\r\n"
		}

	if (strLanscapeName == "")
	{

		strErrorString = "The landscape area must have a name.\r\n"
	}
//	if (ValidatePlantType(strPlantType) != 1)
//			{
//			strErrorString += " The plant type you selected is invalid. Please try again.\r\n"
//			}



//	If ValidateSoilType(strSoilType) <> vbTrue Then
//		strErrorString = strErrorString + " The soil type you selected is invalid. Please try again." & vbcrlf
//	End If

//	If ValidateWateringSystem(strWaterSystem) <> vbTrue Then
//		strErrorString = strErrorString + " The watering system type you selected is invalid. Please try again." & vbcrlf
//	End If


	if (strErrorString == "")
			{
			
			intTotalNumberofAreas = parseInt(intTotalNumberofAreas) + 1;

			document.frmSprinklerInput.TotalAreastoCalc.value = intTotalNumberofAreas;

			//There is probably a better way to do this with arrays or cookies but quick and dirty works too
			//Everything is aok.....set the variables
			//sprinklercalc.asp has 6 sets of variables to store
			//x is 1 through 6
			//<INPUT TYPE="HIDDEN" NAME="soil_type_cdx">
			//<INPUT TYPE="HIDDEN" NAME="plant_type_cdx">
			//<INPUT TYPE="HIDDEN" NAME="system_type_cdx">
			//<INPUT TYPE="HIDDEN" NAME="area_namex">
			//<INPUT TYPE="HIDDEN" NAME="app_rate_num_inputx">
			//These store the variables to run 6 seperate sets sprinkler calcs
			


			//Get the next blank set of variables
			objNewArea = document.getElementsByName("area_name" + intTotalNumberofAreas); 
			objNewSoilType = document.getElementsByName("soil_type_cd" + intTotalNumberofAreas);
			objNewPlantType = document.getElementsByName("plant_type_cd" + intTotalNumberofAreas);
			objNewSystemType = document.getElementsByName("system_type_cd" + intTotalNumberofAreas);
			objNewAppRate = document.getElementsByName("app_rate_num_input" + intTotalNumberofAreas);
			objNewBubRate = document.getElementsByName("bubbler_rate_cd" + intTotalNumberofAreas);
			objNewDripRate = document.getElementsByName("drip_rate_cd" + intTotalNumberofAreas);
			
			//Fill the blank variables with the new ones
			objNewArea[0].value = document.frmSprinklerInput.area_name.value;
			

			for (i = 0; i <= 5; i++)
			{
				if (document.frmSprinklerInput.soil_type_cd[i].checked == true)
				{
					objNewSoilType[0].value = document.frmSprinklerInput.soil_type_cd[i].value;
					break;
				}

			}	
			objNewPlantType[0].value = document.frmSprinklerInput.plant_type_cd.value;


			
			for (i = 0; i <= 5; i++)
			{	

				if (document.frmSprinklerInput.system_type_cd[i].checked == true)
				{
					
					objNewSystemType[0].value = document.frmSprinklerInput.system_type_cd[i].value;
					break;
				}

			}
			
			objNewAppRate[0].value = document.frmSprinklerInput.app_rate_num_input.value;
			
			objNewBubRate[0].value = document.frmSprinklerInput.bubbler_rate_cd.value;
			objNewDripRate[0].value = document.frmSprinklerInput.drip_rate_cd.value;

			

			if (blnSubmitForm == false)
				{	//reset the input boxes....except zipcode....disable that field
					// You are not submitting the form.....adding another area
					document.frmSprinklerInput.zipcode_num.disabled = true;
					document.frmSprinklerInput.area_name.value = "";
					document.frmSprinklerInput.soil_type_cd[0].checked = true;
					document.frmSprinklerInput.plant_type_cd.value = "Cool Season Grass";
					document.frmSprinklerInput.system_type_cd[0].checked = true;
					document.frmSprinklerInput.bubbler_rate_cd[2].selected = true;
					document.frmSprinklerInput.app_rate_num_input.value = "";
					document.frmSprinklerInput.drip_rate_cd[1].selected = true;
				}
			else
				{
				document.frmSprinklerInput.zipcode_num.disabled = false;
				}
			
			return blnSubmitForm;
			}
	else
		{
			//Set the Error description in a popup box and 
			alert(strErrorString);
			return false;
		}


	

}

function ValidateWateringSystem(strSoilType)
{
//This function checks the whether the Watering System was filled out. 
	switch (strSoilType)
	{
	case "Sprinkler": case "Micro-Spray": case "Impact Rotor": case "Gear Rotor": case "Bubbler": case "Drip":
				{
					isValid = 1;
				}
			default : isValid = 0;
	}																	
}



function ValidateSoilType(strSoilType)
{
	//This function checks the whether the Soil Type was filled out. 
	//This should never happen as there is a default value
	var isValid;

		switch (strSoilType)
		{
		case "Sand": case "Sandy Loam": case "Loam": case "Clay Loam": case "Clay":
			{
				isValid = 1;
			}
		default : isValid = 0;
		}
}



function ValidateName(strName){
//Checks to see if the landscape area has a name applied to it.
//Take out spaces and make sure there is something in this value.  
//TODO:Also make sure there are no special characters in it. 

var isValid;

	if (Trim(strName) != "")  
		{
		isValid = 1; //The name is valid
		}
	else	
		{
		isValid = 0; //The name is invalid
		}
	
	return isValid;}


function ValidatePlantType(strPlantType)
//This function checks the whether the planttype was filled out. 
//This should never happen as there is a default value
{
	switch (strPlantType)
	{
	case "plant_type_cd": case "Cool Season Grass": case "Warm Season Grass": case "Low Water Use": case "Moderate Water Use": case "High Water Use": 
		{
		return 1;
		}
		default:
		{
		return 0;
		}
	}
}

function ValidateZipCodeforZoneID(ZipCode){
// This function validates the Zip Code to make sure it is in MWD service area.
// It also sets the ZoneID which we will use later in the sprinkler calculation
// It will return a zero for the ZoneID if a zip code is not valid
// REVISION: added "90016", "90018", "90023" because these are LA zips and they work in the current java sprinkler calculator
// even though they are not included in the original ZipcodeListMWD.java file PF 8/09/2004

var intZoneID

	switch (ZipCode)
	{
	case "90094":  case "90254":  case "90278":  case "92624":  case "92629":  case "92651":  case "92672":
		intZoneID = 1;
		break;
	case "90275":  case "90720":  case "90731":  case "90732":  case "90740":  case "90742":  case "90743":  case "90744":  case "90802": 
	case "90803":  case "90804":  case "90813":  case "90814":  case "90815":  case "90822":  case "90840":  case "92627":  case "92646": 
	case "92648":  case "92649":  case "92661":  case "92662":  case "92663":  case "90831":
		intZoneID = 2;
		break;
	 case "90001":  case "90002":  case "90003":  case "90008":  case "90011":  case "90016":  case "90018":  case "90023":  case "90025": 
	 case "90034":  case "90037":  case "90040":  case "90043":  case "90044":  case "90045":  case "90047":  case "90049":  case "90056": 
	 case "90058":  case "90059":  case "90061":  case "90062":  case "90064":  case "90066":  case "90089":  case "90201":  case "90212": 
	 case "90220":  case "90221":  case "90222":  case "90230":  case "90232":  case "90240":  case "90241":  case "90242":  case "90245": 
	 case "90247":  case "90248":  case "90249":  case "90250":  case "90255":  case "90260":  case "90262":  case "90263":  case "90265": 
	 case "90266":  case "90270":  case "90272":  case "90274":  case "90277":  case "90280":  case "90290":  case "90291":  case "90292": 
	 case "90293":  case "90301":  case "90302":  case "90303":  case "90304":  case "90305":  case "90401":  case "90402":  case "90403": 
	 case "90404":  case "90405":  case "90501":  case "90502":  case "90503":  case "90504":  case "90505":  case "90506":  case "90620": 
	 case "90621":  case "90623":  case "90630":  case "90638":  case "90639":  case "90650":  case "90670":  case "90680":  case "90689": 
	 case "90701":  case "90703":  case "90706":  case "90710":  case "90712":  case "90713":  case "90715":  case "90716":  case "90717": 
	 case "90723":  case "90745":  case "90746":  case "90747":  case "90755":  case "90805":  case "90806":  case "90807":  case "90808": 
	 case "90810":  case "90846":  case "91301":  case "92625":  case "92626":  case "92647":  case "92655":  case "92656":  case "92657": 
	 case "92660":  case "92669":  case "92673":  case "92675":  case "92677":  case "92683":  case "92694":  case "92697":  case "92704": 
	 case "92708":  case "92801":  case "92804":  case "92833":  case "92840":  case "92841":  case "92843":  case "92844":  case "92845": 
	 case "93010":  case "93030":  case "93033":  case "93035":

		intZoneID = 3;
		break;
	case "90004":  case "90005":  case "90006":  case "90007":  case "90012":  case "90013":  case "90014":  case "90015":  case "90017": 
	case "90019":  case "90020":  case "90021":  case "90022":  case "90024":  case "90026":  case "90027":  case "90028":  case "90029": 
	case "90031":  case "90032":  case "90033":  case "90035":  case "90036":  case "90038":  case "90046":  case "90048":  case "90057": 
	case "90063":  case "90068":  case "90069":  case "90071":  case "90073":  case "90077":  case "90079":  case "90095":  case "90210": 
	case "90211":  case "90213":  case "90601":  case "90602":  case "90603":  case "90605":  case "90606":  case "90608":  case "90631": 
	case "90640":  case "90660":  case "90688":  case "90816":  case "90818":  case "91745":  case "91748":  case "91754":  case "91755": 
	case "91803":  case "92602":  case "92603":  case "92604":  case "92606":  case "92610":  case "92612":  case "92614":  case "92618": 
	case "92620":  case "92630":  case "92653":  case "92676":  case "92679":  case "92686":  case "92688":  case "92691":  case "92692": 
	case "92701":  case "92703":  case "92705":  case "92706":  case "92707":  case "92709":  case "92710":  case "92780":  case "92782": 
	case "92802":  case "92805":  case "92806":  case "92807":  case "92808":  case "92821":  case "92823":  case "92831":  case "92832": 
	case "92835":  case "92861":  case "92862":  case "92865":  case "92866":  case "92867":  case "92868":  case "92869":  case "92870": 
	case "92882":  case "92886":  case "92887":  case "96014":  case "90010":  case "90067":  case "91210":  case "91523":
		
		intZoneID = 4;
		break;
	case "90039":  case "90041":  case "90042":  case "90065":  case "91001":  case "91006":  case "91007":  case "91010":  case "91011": 
	case "91016":  case "91020":  case "91030":  case "91040":  case "91042":  case "91101":  case "91103":  case "91104":  case "91105": 
	case "91106":  case "91107":  case "91108":  case "91125":  case "91126":  case "91201":  case "91202":  case "91203":  case "91204": 
	case "91205":  case "91206":  case "91207":  case "91208":  case "91210":  case "91214":  case "91216":  case "91302":  case "91303": 
	case "91304":  case "91306":  case "91307":  case "91311":  case "91316":  case "91320":  case "91324":  case "91325":  case "91326": 
	case "91330":  case "91331":  case "91335":  case "91340":  case "91343":  case "91344":  case "91345":  case "91352":  case "91356": 
	case "91360":  case "91361":  case "91362":  case "91364":  case "91367":  case "91377":  case "91401":  case "91402":  case "91403": 
	case "91405":  case "91406":  case "91411":  case "91423":  case "91436":  case "91501":  case "91502":  case "91504":  case "91505": 
	case "91506":  case "91521":  case "91522":  case "91523":  case "91528":  case "91601":  case "91602":  case "91604":  case "91605": 
	case "91606":  case "91607":  case "91608":  case "91701":  case "91706":  case "91709":  case "91711":  case "91722":  case "91723": 
	case "91724":  case "91730":  case "91731":  case "91732":  case "91733":  case "91737":  case "91740":  case "91741":  case "91744": 
	case "91746":  case "91750":  case "91762":  case "91763":  case "91765":  case "91766":  case "91767":  case "91768":  case "91770": 
	case "91773":  case "91775":  case "91776":  case "91780":  case "91784":  case "91786":  case "91789":  case "91790":  case "91791": 
	case "91792":  case "91801":  case "91907":  case "92311":  case "92680":  case "93012":  case "93021":  case "93063":  case "93064": 
	case "93065":  case "93066":  case "91024":  case "91342":  case "91358":  case "91358":
		intZoneID = 5;
		break;
	case "91710":  case "91739":  case "91752":  case "91761":  case "91764":  case "92223":  case "92335":  case "92336":  case "92337": 
	case "92501":  case "92503":  case "92504":  case "92505":  case "92506":  case "92507":  case "92508":  case "92509":  case "92518": 
	case "92530":  case "92532":  case "92543":  case "92544":  case "92545":  case "92548":  case "92551":  case "92553":  case "92555": 
	case "92557":  case "92562":  case "92563":  case "92567":  case "92570":  case "92571":  case "92582":  case "92583":  case "92584": 
	case "92585":  case "92586":  case "92587":  case "92590":  case "92591":  case "92592":  case "92595":  case "92596":  case "92860": 
	case "92879":  case "92880":  case "92881":  case "92883":  case "92220":  case "92324":  case "92373":  case "92376":
		intZoneID = 6;
		break;
	case "91932":  case "92007":  case "92014":  case "92037":  case "92054":  case "92075":  case "92101":  case "92106":  case "92107": 
    case "92109":  case "92110":  case "92118":  case "92135":  case "92140":

		intZoneID = 7;
		break;
	case "91910":  case "91911":  case "91950":  case "92008":  case "92009":  case "92024":  case "92056":  case "92067":  case "92102": 
	case "92103":  case "92104":  case "92105":  case "92108":  case "92111":  case "92112":  case "92113":  case "92116":  case "92117": 
	case "92121":  case "92122":  case "92123":  case "92130":  case "92136":  case "92139":  case "92154":
		intZoneID = 8;
		break;
	case "91901":  case "91902":  case "91913":  case "91914":  case "91915":  case "91917":  case "91935":  case "91941":  case "91942": 
    case "91945":  case "91977":  case "91978":  case "92003":  case "92019":  case "92020":  case "92021":  case "92025":  case "92026": 
    case "92027":  case "92028":  case "92029":  case "92040":  case "92055":  case "92057":  case "92059":  case "92060":  case "92061": 
    case "92064":  case "92065":  case "92069":  case "92070":  case "92071":  case "92082":  case "92083":  case "92084":  case "92114": 
    case "92115":  case "92119":  case "92120":  case "92124":  case "92126":  case "92127":  case "92128":  case "92129":  case "92131": 
    case "92145":  case "92173":  case "92390":  case "92536":  case "92081":
		intZoneID = 9;
		break;
	//Added for Piru service area PF 09/27/2004
	case "91310":  case "91321":  case "91322":  case "91335":  case "91350":  case "91351":  case "91354":  case "91355":  case "91380": 
    case "91380":  case "91381":  case "91384":  case "91385":  case "91386":  case "91387":  case "91390":  
		intZoneID = 10;
		break;
	default : 
		//Not in MWD ZipCode List
		intZoneID = 0;
		} 

	return intZoneID;
	}
<!--

//-->


