		function setPropertySearchState(strState,selObj){
			if (selObj){
				for (var i=0;i<selObj.length;i++){
					if (strState==selObj.options[i].value){
						selObj.options[i].selected=true;
						break;	
					}
				}
				//clearInterval(interval_id);	
			}
		}
		
		function checkPropertySearch(form,strTarget,errMsg){
			var selPriceObj=form.elements["_list_price"]
			//var selStateObj=form.elements["state"]
			var txtStateObj=form.elements["state"]
			var selPTypeObj=form.elements["_property_type"]
			var txtZipObj=form.elements["i:zip_code:e"]
			var selCityObj=form.elements["city_name"] //form.elements["city_code"]
			var selAreaObj=form.elements["area"]
			var txtOrgId=form.elements["_org_id"]
			
			var strPropType=""
			var arrListPrice
			var blnValidZip
			var blnValidState
			var blnValidCity=false
			var blnAdvancedSearch
										
			if (strTarget=="") {
				strTarget="list.asp";
			}

													
		//	blnValidZip=(fnCheckInteger(txtZipObj,'') && txtZipObj.value!="")
		//	blnValidState=(selStateObj.options[selStateObj.selectedIndex].value!="")
			if (selCityObj)
				blnValidCity=(selCityObj.options[selCityObj.selectedIndex].value!="")
			if (!blnValidCity && selAreaObj)
				blnValidCity=(selAreaObj.options[selAreaObj.selectedIndex].value!="")
										
					if (!blnValidCity) {
						alert(errMsg);
						return false;
					}					

			// Special handling for 2-state Org...  2/16/2006.  GP
			if (selCityObj && txtStateObj && txtOrgId){
				if (txtOrgId.value.toUpperCase() == "KSHEART"){
					var sCityText = selCityObj.options[selCityObj.selectedIndex].text	// e.g., "Richmond, KS"
					if (sCityText.indexOf(" KS") > 0)
						txtStateObj.value="KS"
					else if (sCityText.indexOf(" MO") > 0)
						txtStateObj.value="MO"
				}
			}
													
			//set appropriate list price params
			if (selPriceObj){
				if (selPriceObj.options[selPriceObj.selectedIndex].value.indexOf("|")!=-1){
					arrListPrice=selPriceObj.options[selPriceObj.selectedIndex].value.split("|")
					form.elements["i:list_price:gte"].value=arrListPrice[0]
					form.elements["i:list_price:lte"].value=arrListPrice[1]
				}
			}
										
			//set appropriate property type params
			if (selPTypeObj){
				strPropType=selPTypeObj.options[selPTypeObj.selectedIndex].value
				switch(strPropType){
												
					case "NHM":
						form.elements["_pType"].value="6"
						form.elements["_propType"].value=strPropType
						form.elements["property_type"].value=strPropType
						form.elements["_org_id"].value="bhi"
						break;
					case "LAN":
						form.elements["_pType"].value="2"
						form.elements["_propType"].value=strPropType
						form.elements["property_type"].value=strPropType
						break;
					case "LEA":
						form.elements["_pType"].value="3"
						form.elements["_propType"].value=strPropType
						form.elements["property_type"].value=strPropType
						break;
					case "INC":
						form.elements["_pType"].value="5"
						form.elements["_propType"].value=strPropType
						form.elements["property_type"].value=strPropType
						break;
					case "COM":
						form.elements["_pType"].value="4"
						form.elements["_propType"].value=strPropType
						form.elements["property_type"].value=strPropType
						break;
					case "":
						//Search All
					default:
						form.elements["res_property_type"].value=strPropType
						form.elements["_propType"].value="RES"
						form.elements["property_type"].value="RES"
						form.elements["_pType"].value="1"											
				}	
			}
										
			if (strTarget=="list.asp"){
				return true;
			}else{
			    return false;
			}
		}
		
	function checkPropertySearchList(frm){
	    var sMsgZip = "Please enter a valid ZIP Code (5 digits only)."
	    var fldCityState = frm.elements["city_name"]
	    var fldArea = frm.elements["area"]
	    var fldZip = frm.elements["i:zip_code:e"]
	    var fldMLSNum = frm.elements["mls_property_id"]


	    var iLocsProvided = 0

	    if (fldMLSNum && fldMLSNum.value.length > 0 && !IsAllBlank(fldMLSNum.value)) {
	        // No need to check other fields.
	    }
	    else {
	        if (fldZip && fldZip.value.length > 0){
	            if (!fnCheckInteger(fldZip, sMsgZip)){
	                return false
	            }
                if (fldZip.value.length != 5 || IsAllBlank(fldZip.value)){
                    alert(sMsgZip)
                    return false
                }
                iLocsProvided++;
	        }
	        if (fldCityState && fldCityState.value.length > 0 && !IsAllBlank(fldCityState.value)){
	            iLocsProvided++;
	        }
	        if (fldArea && fldArea.value.length > 0 && !IsAllBlank(fldArea.value)){
	            iLocsProvided++;
	        }
    	    
	        if (iLocsProvided == 0){
	            alert("Please choose a City or enter a ZIP Code.")
	            return false
	        }
	    }

	}	
	function checkPropertySearch3(){
	    var frm = document.PropertySearch3
	    var sMsgZip = "Please enter a valid ZIP Code (5 digits only)."
	    var fldCityState = frm.elements["city_name"]
	    var fldArea = frm.elements["area"]
	    var fldZip = frm.elements["i:zip_code:e"]
	    var fldMLSNum = frm.elements["mls_property_id"]

	    var iLocsProvided = 0
      
	    if (fldMLSNum && fldMLSNum.value.length > 0 && !IsAllBlank(fldMLSNum.value)) {
	        // No need to check other fields.
	    }
	    else {
	        if (fldZip && fldZip.value.length > 0){
	            if (!fnCheckInteger(fldZip, sMsgZip)){
	                return false
	            }
                if (fldZip.value.length != 5 || IsAllBlank(fldZip.value)){
                    alert(sMsgZip)
                    return false
                }
                iLocsProvided++;
	        }
	        if (fldCityState && fldCityState.value.length > 0 && !IsAllBlank(fldCityState.value)){
	            iLocsProvided++;
	        }
	        if (fldArea && fldArea.value.length > 0 && !IsAllBlank(fldArea.value)){
	            iLocsProvided++;
	        }
    	    
	        if (iLocsProvided == 0){
	            alert("Please choose a City or enter a ZIP Code.")
	            return false
	        }
	    }
        BuildCriteriaMapSearchPS3(frm)
        
	    return true
    }
 
    function IsAllBlank(s){
        if (s) {
            for (var i=0; i<s.length; i++) {
                if (s.substring(i, i+1) != " ") {
                    return false
                }
            }
            return true
        }
        return false
    }

/*
    criteria=<Search><OrgId>casocal</OrgId><SearchType>1</SearchType><PropertyType>RES</PropertyType><City>Aliso Viejo,CA</City>
        <ZipCode>92656</ZipCode><MinPrice>800000</MinPrice><MaxPrice>900000</MaxPrice><MinBeds>3</MinBeds><MinBaths>2</MinBaths></Search>
*/	
	function BuildCriteriaMapSearchPS3(frm){
	    var fldCriteria = frm.elements["criteria"]
	    var fldOrgId = frm.elements["org_id"]
	    var fldCityState = frm.elements["city_name"]
	    //var fldArea = frm.elements["area"]
	    var fldZip = frm.elements["i:zip_code:e"]
	    var fldPriceMin = frm.elements["I:list_price:gte"]
	    var fldPriceMax = frm.elements["I:list_price:lte"]
	    var fldBeds = frm.elements["I:Bedrooms:gte"]
	    var fldBaths = frm.elements["I:Baths:gte"]
	    var fldMLSNumber = frm.elements["MLSID"]
	    var sCriteriaXML = ""
	    
	    sCriteriaXML += "<OrgId>" + fldOrgId.value + "</OrgId>"
	    if (fldMLSNumber && fldMLSNumber.value != ""){
	        sCriteriaXML += "<SearchType>" + "3" + "</SearchType>"
	        sCriteriaXML += "<MLSID>" + fldMLSNumber.value + "</MLSID>"
	    }
	    else {
	        sCriteriaXML += "<SearchType>" + "1" + "</SearchType>"
	        sCriteriaXML += "<PropertyType>" + "RES" + "</PropertyType>"
	        if (fldCityState.value != "")
	            sCriteriaXML += "<City>" + fldCityState.value + "</City>"
	        if (fldZip.value != "")
	            sCriteriaXML += "<ZipCode>" + fldZip.value + "</ZipCode>"
	        if (fldPriceMin.value != "")
	            sCriteriaXML += "<MinPrice>" + fldPriceMin.value + "</MinPrice>"
	        if (fldPriceMax.value != "")
	            sCriteriaXML += "<MaxPrice>" + fldPriceMax.value + "</MaxPrice>"
	        if (fldBeds.value != "" && fldBeds.value != "N/A")
	            sCriteriaXML += "<MinBeds>" + fldBeds.value + "</MinBeds>"
	        if (fldBaths.value != "" && fldBaths.value != "N/A")
	            sCriteriaXML += "<MinBaths>" + fldBaths.value + "</MinBaths>"
        }
        
	    fldCriteria.value = "<Search>" + sCriteriaXML + "</Search>"
	}
										
		function fnCheckInteger(input,msg) {
	
			var sStr = input.value;
			if (!sStr.length) return true;
			for ( var i = 0 ; i < sStr.length ; i++ ) {
				var ch = sStr.substring( i, i + 1);
				if (ch < "0" || ch > "9") {
					input.focus();
						if (msg!="")alert(msg);
						return false;
					}
				}
				return true;
			}

    // PropertySearch3 Slideshow
	function PS3Image(sFileName, iUserDefined){
		this.FileName = sFileName
		this.UserDefined = iUserDefined // 0 or 1
    }
		
	var arrPS3Images = new Array()
	var iPS3ImagesCurrIdx = 0
	var sPS3UserRelativeURL = ""
	var sPS3SysRelativeURL = ""
	
	var iPS3RotateMilliSec = 0
	var iPS3ScrollTimerId = 0

	function ScrollPS3Slideshow(){	// Timer clicked
		//ScrollTransitionBegin()
		ShowNextPS3Image()
		//ScrollTransitionEnd()
		iPS3ScrollTimerId = window.setTimeout("ScrollPS3Slideshow();", iPS3RotateMilliSec)
	}
	
	function InitScrollingPS3(iMilliSecInterval){
		iPS3RotateMilliSec = iMilliSecInterval
		iPS3ScrollTimerId = window.setTimeout("ScrollPS3Slideshow();", iPS3RotateMilliSec)
	}

    function ShowNextPS3Image(){
        var fldImg = GetFldPS("PropertySearch3Slideshow")
        
        iPS3ImagesCurrIdx++
        if (iPS3ImagesCurrIdx >= arrPS3Images.length) {
            iPS3ImagesCurrIdx = 0
        }
        //alert("Idx=" + iPS3ImagesCurrIdx + ", SysURL=[" + sPS3SysRelativeURL + "]")
        if (fldImg){
            var oPS3Image = arrPS3Images[iPS3ImagesCurrIdx]
            if (oPS3Image.UserDefined == 1)
                fldImg.src = sPS3UserRelativeURL + oPS3Image.FileName   // URL in PropertySearch.asp
            else
                fldImg.src = sPS3SysRelativeURL + oPS3Image.FileName
            //alert("fldImg.src = [" + fldImg.src + "]")
        }
        
    }
	
	function GetFldPS(sFldId){
	    if (document.getElementById){
	        return document.getElementById(sFldId)
	    }
		else if (document.all){
			return document.all(sFldId)
		}
		return null
	}

			