function validate(frm){

	for (i=0; i<frm.elements.length; i++){

		fld = frm.elements[i];

		if (fld.name.indexOf('R_') >= 0){

			if (fld.value==""){

				if (fld.type=="text" || fld.type=="password" || fld.type=="textarea") {

					alertText = "Please Enter "+fld.title

				} else if (fld.type=="select-one") {

					alertText = "Please Select "+fld.title

				}

				alert(alertText);

				fld.focus();

				return false;

			}

			if (fld.name.indexOf('DR_') >= 0){

				if (!IsDate(fld.value)) {

					fld.focus();

					return false;

				}

			}

			if (fld.name.indexOf('NR_') >= 0){

				if (!IsNumeric(fld.value)) {

					alert("Please enter numeric value in "+fld.title);

					fld.focus();

					return false;

				}

			}

		} else if (fld.name.indexOf('D_')>=0 && fld.value!=""){

			if (!IsDate(fld.value)) {

				fld.focus();

				return false;

			}

		} else if (fld.name.indexOf('N_')>=0 && fld.value!=""){

			if (!IsNumeric(fld.value)) {

				alert("Please enter numeric value in "+fld.title);

				fld.focus();

				return false;

			}

		}

	}

/*	if (!CheckPassword()) return false;

	if (frm.R_Email)

		if (!CheckEmail(frm.R_Email)) return false;

	if (frm.R_YourEmail)

		if (!CheckEmail(frm.R_YourEmail)) return false;

	if (frm.R_ZipCode)

		if (!CheckZipCode(frm.R_ZipCode)) return false;

	if (frm.R_Terms){

		if (frm.R_Terms.checked==false){

			alert("Please confirm that you are agree with our Terms of Use");

			return false;

		}

	}

*/	return true;

}



function openwin(URL,H,W){

	var mms = window.open(URL, '', 'width='+W+',height='+H+',status=No,resizable=No,scrollbars=No,top=200,left=200');

	mms.focus();

}



function CheckPassword(){

	if (document.frm.R_Password)

	if (document.frm.R_Password.value != document.frm.R_CPassword.value){

		alert("Password and Confirm Password are not same");

		document.frm.R_CPassword.focus();

		return false;

	}

	return true;

}



function CheckEmail(e){

	var str=e.value;

	var filter=/^.+@.+\..{2,3}$/

	if (filter.test(str))

		result=true;

	else{

	    alert("Your email address does not appears to be valid, Please write a valid email address");

	    e.focus();

		result=false;

	}

	return (result);

}



function IsNumeric(sText){

	var ValidChars = "0123456789.";

	var IsNumber=true;

	var Char;

	for (j=0; j< sText.length && IsNumber == true; j++){ 

		Char = sText.charAt(j); 

		if (ValidChars.indexOf(Char) == -1){

			IsNumber = false;

		}

	}

	return IsNumber;

}



function IsDate(dateStr){

	var datePat = /^(\d{1,2})(\/|-)(\d{1,2})(\/|-)(\d{4})$/;

	var matchArray = dateStr.match(datePat); // is the format ok?

	if (matchArray == null){

		alert("Please enter date as either mm/dd/yyyy or mm-dd-yyyy.");

		return false;

	}

	month = matchArray[1]; // p@rse date into variables

	day = matchArray[3];

	year = matchArray[5];

	if (month < 1 || month > 12) { // check month range

		alert("Month must be between 1 and 12.");

		return false;

	}

	if (day < 1 || day > 31) {

		alert("Day must be between 1 and 31.");

		return false;

	}

	if ((month==4 || month==6 || month==9 || month==11) && day==31) {

		alert("Month "+month+" doesn`t have 31 days!")

		return false;

	}

	if (month == 2) { // check for february 29th

		var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));

		if (day > 29 || (day==29 && !isleap)) {

			alert("February " + year + " doesn`t have " + day + " days!");

			return false;

		}

	}

	return true; // date is valid

}



function SearchValidate(frm){

	if (frm.HomeOption){

		if (frm.HomeOption[0].checked==false && frm.HomeOption[1].checked==false){

			alert("Please select one from \"Purchase A Home\" or \"Rent A Home\".");

			frm.HomeOption[0].focus();

			return false;

		}

	}

	if (frm.city.value=="" && frm.state.value=="" && frm.zipcode.value==""){

		alert("Please enter a city and state or a valid zip code");

		frm.city.focus();

		return false;

	} else if ((frm.city.value!="" && frm.state.value=="") || (frm.city.value=="" && frm.state.value!="")){

		alert("Please enter a city and state combination");

		frm.city.focus();

		return false;

	} else if (frm.minprice.selectedIndex>frm.maxprice.selectedIndex){

		alert("You have selected a minimum price ($"+frm.minprice.value+") greater than you maximum price ($"+frm.maxprice.value+").\n\nMaximum price should be greater than minimum price in order to find listings.\n\nPlease correct this before continuing.");

		frm.minprice.focus();

		return false;

	} else if (frm.minprice.selectedIndex==frm.maxprice.selectedIndex && frm.minprice.selectedIndex>0){

		return confirm("You have selected a minimum price that is equal to your maximum price ($"+frm.minprice.value+").\nThis will cause your search to find ONLY listing with a current list price of EXACTLY $"+frm.minprice.value+".\n\nIs this okay?");

	}

	return true;

}
function toggleEntry()
{
	 var elname=event.srcElement.name;
	 var el=event.srcElement;
	 var txtel;
	 var txtel2;

	switch( elname)
	  {
		  case "estimated_repairs":
		  	 {txtel=document.forms[0].txt_estimated_repairs;
			  break;}
	 	  case "arv":
		      {txtel=document.forms[0].txt_arvmin;
		      txtel2=document.forms[0].txt_arvmax;
			  break;}		  
	 	  case "OS_acquisition_cost":
			  {txtel=document.forms[0].txt_acquisition_cost_min;
			  txtel2=document.forms[0].txt_acquisition_cost_max;
			  break;}		  
	 	  case "OS_equity":
  			 {txtel=document.forms[0].txt_equity;
			  break;}		  
	 	  case "OS_roi":
		  	 {txtel=document.forms[0].txt_roi;
			  break;}		  
	  }
	  if(el.checked)
	  {
	   txtel.disabled=false;
	   txtel2.disabled=false;
	   }
	 else
	   {
	   txtel.disabled=true;	
	   txtel2.disabled=true;	
		}
}

function toggleBuyRent()
{
	if (document.forms[0].HomeOption[0].checked==true) {
		document.forms[0].minrent.disabled=true;
		document.forms[0].maxrent.disabled=true;
		}
	else {
		document.forms[0].minrent.disabled=false;
		document.forms[0].maxrent.disabled=false;
	}
}
