<!--
var strOutput;
var rstSearchTemp;
var rstSearchLast;
var strFeatJoinBuf;
var strSearchType		= "PROP";
var fakeXMLTimestamp	= "1981-01-01 00:00:00.000";
var theFields = new Array();

function RunReportCriteria()
{
	rstSearchTemp = getXMLDocObject(protocol + domain + "/XMLSearch/XML/search_temp.xml", fakeXMLTimestamp);
	rstSearchLast = getXMLDocObject(protocol + domain + "/XMLSearch/XML/search_last.xml", fakeXMLTimestamp); //always get this file from the client

	//alert('xml loaded');
	//alert('xml=' + rstSearchLast.xml);

	strOutput =+ '<table border=0 width=710 cellSpacing=0 cellpadding=0>' + '\n';

	strSearchName = "";
	intSearchID = "Last Search";
	intPropType = 1;

	var root, root2;
	var intCount = 0;
	
	//theSearchCriteria.innerHTML = "";
	var strHTML = "";

	intFeatGroupRef = 0; //used to provide a unique alias for nested subqueries
	strFeatJoinBuf = ""; //used to store any JOIN statements needed for the search
	var intMaxFeatGroupRef = 0; // track the highest reference number
	root = rstSearchLast.getElementsByTagName('z:row');
	if(root.length < 1) //check to see if there was a last search
		alert('Your last search was not found.');
	else
	{
		intProp_Type = getFieldValue(rstSearchLast, 'PROP_TYPE');
		intPropType = intProp_Type;
		for(var x=0;x<root.length;x++)
		{
			if(root.item(x).getAttributeNode('SEARCH_TYPE').text == strSearchType)
			{
				intPFIndex = root.item(x).getAttributeNode('SNIPPET').text.indexOf("pf", 0)
				if(intPFIndex > -1) //then we need to restore the join statement
				{	
				intFeatGroupRef = parseInt(root.item(x).getAttributeNode('SNIPPET').text.substring(intPFIndex + 2, root.item(x).getAttributeNode('SNIPPET').text.indexOf(".", intPFIndex + 2))); //get the reference number
				if(intFeatGroupRef > intMaxFeatGroupRef)
					intMaxFeatGroupRef = intFeatGroupRef;
				strFeatJoinBuf += " RIGHT JOIN propfeat pf" + intFeatGroupRef + " ON pf" + intFeatGroupRef + ".listing_id = detail_p" + intPropType + ".listing_id";
				}
			}
		}				
		intFeatGroupRef = intMaxFeatGroupRef;

		var strValue;
		var strLittleSQL = "";
		var strSavedinnerHTML;
		var strHTML = "";
	
		strSavedinnerHTML = theDisplayNotice.innerHTML;
		//	Criteria Display Window
		strHTML = "		<table border=0 width=710 cellSpacing=0 cellpadding=0>";
		strHTML += "			<tr class=r0 height=15>";
		strHTML += "				<td width=100% colspan=3 class=c><small><font size=1></font></td>";
		strHTML += "			</tr>";
		strHTML += "			<tr>";
		strHTML += "				<td width=30% class=lb>Criteria</td>";
		strHTML += "				<td width=60% class=lb>Value</td>";
		strHTML += "				<td width=10% class=rb>Count</td>";
		strHTML += "			</tr>";
		strHTML += "			<tr valign=top>";
		strHTML += "				<td class=lb><hr width=90% noshade size=1></td>";
		strHTML += "				<td class=lb><hr width=90% noshade size=1></td>";
		strHTML += "				<td class=rb><hr width=90% noshade size=1></td>";
		strHTML += "			</tr>";

		root = rstSearchLast.getElementsByTagName('z:row');
		theIndex = 0;
		//alert('size=' + root.length);
		//strLittleSQL = "select 1 from detail_p" +  + " where 1=1 ";
		for(var x=0;x<root.length;x++)
		{
			theDisplayNotice.innerHTML = strSavedinnerHTML + (root.length - x);
			theDisplayNotice.style.display = "block";
			//alert(theDisplayNotice.innerHTML);
			theFields[theIndex] = root.item(x).getAttributeNode('VIEW_NAME').text;
			strHTML += "	<tr>";
			strValue = root.item(x).getAttributeNode('STRING').text
			strValue = strValue.substring(0,strValue.indexOf("=")-1);
			strHTML += "		<td class=lb>" + strValue + ":</td>";
			//strHTML += "		<td class=lb>" + root.item(x).getAttributeNode('VIEW_NAME').text + ":</td>";
			strValue = root.item(x).getAttributeNode('STRING').text
			strValue = strValue.substring(strValue.indexOf("=")+2,strValue.length);
			strHTML += "		<td class=l>" + strValue + "</td>";
			strLittleSQL += root.item(x).getAttributeNode('SNIPPET').text;
			strHTML += "		<td class=r><" + "!--" + strLittleSQL + "--" + ">" + ShowCount(strLittleSQL) + "</td>";
			strHTML += "	</tr>";
			theIndex++;
			theDisplayCriteria.innerHTML = strHTML + "</table>";
			theDisplayCriteria.style.display = "none";
			theDisplayCriteria.style.display = "block";
		}
		strHTML += "		</table>";
	
		theDisplayNotice.innerHTML = "";
		theDisplayCriteria.innerHTML = strHTML;
	}

}

function ShowCount(SQLSNIPPET)
{
		var strPOSTURL = "XMLSearch/CriteriaCount.asp";
		var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
		xmlhttp.Open("POST", strPOSTURL, false);
		//alert("Sending tempXML.xml=" + rstSearchTemp.xml);    
		//truncateXMLDoc(rstSearchTemp);
		var temproot = rstSearchTemp.documentElement
		//alert("temproot.childNodes.length=" + temproot.childNodes.length);

		if(temproot.childNodes.length == 2)
		{
			var newNode = rstSearchTemp.createNode (1, "FORM_ELEMENTS", "")
			temproot.appendChild(newNode)
			newNode = rstSearchTemp.createNode(2, "PROP_TYPE", "")
			temproot.childNodes.item(2).attributes.setNamedItem (newNode)
			newNode = rstSearchTemp.createNode(2, "SNIPPET", "")
			temproot.childNodes.item(2).attributes.setNamedItem (newNode)
			newNode = rstSearchTemp.createNode(2, "AUTOCOUNT", "")
			temproot.childNodes.item(2).attributes.setNamedItem (newNode)
			newNode = rstSearchTemp.createNode(2, "RECORDCOUNT", "")
			temproot.childNodes.item(2).attributes.setNamedItem (newNode)
		}
		temproot.childNodes.item(2).setAttribute("PROP_TYPE", intPropType);
		temproot.childNodes.item(2).setAttribute("SNIPPET", SQLSNIPPET);
		temproot.childNodes.item(2).setAttribute("AUTOCOUNT", "true");
		temproot.childNodes.item(2).setAttribute("RECORDCOUNT", strFeatJoinBuf);

//alert("Sending tempXML.xml=" + rstSearchTemp.xml);    
  
	    xmlhttp.Send(rstSearchTemp.xml);
		xmlhttp = xmlhttp.responseXML

//alert("RETURNED xmlhttp.xml=" + xmlhttp.xml);	
//alert("Autocount=" + xmlhttp.documentElement.childNodes.item(2).getAttributeNode("RECORDCOUNT").text)
		return xmlhttp.documentElement.childNodes.item(2).getAttributeNode("RECORDCOUNT").text;

//alert("tempXML.xml=" + rstSearchTemp.xml);    
	
}

//-->

