

function NewPage() {
	if(!document.getElementsByTagName ) { return; }
	var anchors = document.getElementsByTagName( "A" );
	for( var loop = 0; loop < anchors.length; loop++ ) {
		var anchor = anchors[ loop ];
		if( anchor.className=='ext') {
			anchor.target = "_blank";
			//alert (anchor.href);
		}
	}
}



function loadurl(dest,act) {
	try {
		// Moz supports XMLHttpRequest. IE uses ActiveX.
		// browser detction is bad. object detection works for any browser
		xmlhttp1 = window.XMLHttpRequest?new XMLHttpRequest(): new ActiveXObject("Microsoft.XMLHTTP");
	}
	catch (e) {
		// browser does not support ajax. handle however you want
		alert("Security??????????????");
	}
	//alert(dest+" act= "+act);
	// open takes in the HTTP method and url.
	xmlhttp1.open("POST", dest, true);
	// the xmlhttp object triggers an event everytime the status changes
	// triggered() function handles the events
	xmlhttp1.onreadystatechange = triggered1;
	// send the request. if this is a POST request we would have
	// sent post variables: send("name=aleem&gender=male)
	// Moz is fine with just send(); but
	// IE expects a value here, hence we do send(null);
	xmlhttp1.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	//xmlhttp.setRequestHeader('Content-Type', 'multipart/form-data');
	xmlhttp1.send(act);
}
function loadurla(dest) {
	//alert (dest);
	try {
		// Moz supports XMLHttpRequest. IE uses ActiveX.
		// browser detction is bad. object detection works for any browser
		xmlhttp = window.XMLHttpRequest?new XMLHttpRequest(): new ActiveXObject("Microsoft.XMLHTTP");
	}
	catch (e) {
		// browser does not support ajax. handle however you want
		alert("Security??????????????");
	}
	// open takes in the HTTP method and url.
	xmlhttp.open("GET", dest);
	// the xmlhttp object triggers an event everytime the status changes
	// triggered() function handles the events
	xmlhttp.onreadystatechange = triggered;
	// send the request. if this is a POST request we would have
	// sent post variables: send("name=aleem&gender=male)
	// Moz is fine with just send(); but
	// IE expects a value here, hence we do send(null);
	xmlhttp.send(null);

}
function triggered() {
	//from the get call
	// if the readyState code is 4 (Completed)
	// and http status is 200 (OK) we go ahead and get the responseText
	// other readyState codes:
	// 0=Uninitialised 1=Loading 2=Loaded 3=Interactive
	var stampa=document.getElementById("stampa");
	if (stampa!=null) {
		stampa.style.visibility = (xmlhttp.readyState == 4)?"hidden":"";
	}
	var stampa=document.getElementById("stampa1");
	if (stampa!=null) {
		stampa.style.visibility = (xmlhttp.readyState == 4)?"hidden":"";
	}
	//alert(xmlhttp.responseText+' hello '+xmlhttp.readyState);
	if ((xmlhttp.readyState == 4) && (xmlhttp.status == 200)) {
		// xmlhttp.responseText object contains the response.
		// headers contain some variables passed back OutputDiv is where to put it, Stylees is the css sheet to use
		var OutputDiv = xmlhttp.getResponseHeader("OutputDiv");
		document.getElementById(OutputDiv).innerHTML = xmlhttp.responseText;
		//ShowResults(xmlhttp.getResponseHeader("Stylees"));

	} else {
		if (xmlhttp.readyState == 4) {
			//alert(xmlhttp.status);
			//alert(xmlhttp.responseText);
		}
	}
}
function triggered1() {
	//from the POST call
	// if the readyState code is 4 (Completed)
	// and http status is 200 (OK) we go ahead and get the responseText
	// other readyState codes:
	// 0=Uninitialised 1=Loading 2=Loaded 3=Interactive
	//don't do stampa for location call
	//var stampa=document.getElementById("stampa");
	//if (stampa!=null) {
	//	stampa.style.visibility = (xmlhttp1.readyState == 4)?"hidden":"";
	//}
	if ((xmlhttp1.readyState == 4) && (xmlhttp1.status == 200)) {
		// xmlhttp.responseText object contains the response.
		var OutputDiv = xmlhttp1.getResponseHeader("OutputDiv");
		document.getElementById(OutputDiv).innerHTML = xmlhttp1.responseText;
		if (window.cssHoverLocs) {
			cssHoverLocs();
		}
	}
}

/**
 *
 * @access public
 * @return void
 **/
function filter(elem) {
	var get="?pp=20";
	var frm=elem.form;
	var act=frm.action;
	//create get string
	for(var i = 0; i < frm.elements.length; i++) {
		e=frm.elements[i];
		if (e.tagName.toLowerCase()=="input") {
			switch (e.type) {
				case "checkbox":
					if ((e.name != "ToAdd[]") && (e.name != "ToDel[]")) {
						if (e.checked) {
							get+='&'+e.name+'='+e.value;
						}
					}
					break;
				case "radio":
					if (e.checked) {
						get+='&'+e.name+'='+e.value;
					}
					break;
				case "text":
					get+='&'+e.name+'='+encodeURIComponent(e.value.replace(/\"/g,"'"));
					break;
				case "hidden":
					get+='&'+e.name+'='+e.value;
					break;
				default:
			}
		} else {
			if (e.tagName.toLowerCase()=="select") {
				for (var j=0; j<e.options.length; j++) {
					if (e.options[j].selected) {
						get+='&'+e.name+'='+e.options[j].value;
					}
				}
			}
			if (e.tagName.toLowerCase()=="textarea") {
				get+='&'+e.name+'='+encodeURIComponent(e.value);
			}
		}
	}
	//use GET
	loadurla(act+get);
	var f=document.getElementById('sendemailform');
	if (f!=null) {
		f.action=f.action.substring(0,f.action.indexOf('?'))+get;
	}
}
/**
 *
 * @access public
 * @return void
 **/
function filterarch(e){
	var get="";
	var get="";
	var frm=e.form;
	var act=frm.action;
	for(var i = 0; i < frm.elements.length; i++) {
		e=frm.elements[i];
		get+='&'+e.name+'='+e.value;
	}
	get='?'+get.substring(2);
	loadurla(act+get)
}
function filter1(elem) {
	var get="";
	var frm=elem.form;
	var act="/forms/engine.php"+"?moo=boo";

	//create post/get string
	for(var i = 0; i < frm.elements.length; i++) {
		e=frm.elements[i];
		if (e.tagName.toLowerCase()=="input") {
			get+='&'+e.name+'='+encodeURIComponent(e.value);
		} else {
			if (e.tagName.toLowerCase()=="select") {
				for (var j=0; j<e.options.length; j++) {
					if (e.options[j].selected) {
						get+='&'+e.name+'='+e.options[j].value.replace(/\+/g,"%2B").replace(/\&/g,"%38");
					}
				}
			}
			if (e.tagName.toLowerCase()=="textarea") {
				get+='&'+e.name+'='+e.value;
			}
		}
	}
	get1=get.replace(/\[/g,"%5B");
	get2=get1.replace(/\]/g,"%5D");
	// explicitly set focus because ie6 leaves it on the form when results display
	//document.getElementById('propsearch').focus();
	//blank the results in case only one property is returned
	//res=document.getElementById('Result');
	//res.innerHTML='&nbsp;';
	// use GET for the AJAX call
	//loadurla(act+get);
	if (document.getElementById('mappy')) {
		//alert('hi');
		loadurlamap("/forms/mapengine.php?moo=boo"+get);
	} else {
		loadurla(act+get);
	}
}
/**
 *
 * @access public
 * @return void
 **/
function filter2(propertyRef){
	var act="/forms/engine.php"+"?displaystyle=T&pr="+propertyRef;
	loadurla(act);
}
function filter3(propertyRef){
	var act="/forms/engine.php"+"?displaystyle=R&pr="+propertyRef;
	loadurla(act);
}
function filter_town(elem){
	var get="ti="+elem.value;
	var dest="test2.php";
	loadurl(dest,get)
	filter1(elem);
}
/**
 *
 * @access public
 * @return void
 **/
function filterpage(i){
	pg=document.getElementById('pg');
	pg.value=i;
	filter1(pg);
	pageTracker._trackEvent('Filter', 'Page', pg.value, eventCount++);
	//alert ('Page' + ' val=' + pg.value);
}
function filternew(e){
	pg=document.getElementById('pg');
	pg.value='1';
	filter1(e);

	pageTracker._trackEvent('Filter', e.name, e.value, eventCount++);
	//alert (e.name + ' val=' + e.value);
}
function filtersort(e){
	od=document.getElementById('od');
	od.value=e.value;
	filternew(od);
}
function transformXML(xmlURL, xslURL, divID)
{

  // declare the local variables
  var xmlDoc, xslDoc, docProcessor, docCache, DocRequest, docFragment;

  // try the following for IE Browsers
  try
  {

    // instantiate and load the xml document
    xmlDoc = new ActiveXObject("MSXML2.DOMDocument");
    xmlDoc.async = false;
    xmlDoc.load(xmlDocURL);

    // instantiate and load the xsl document
    xslDoc = new ActiveXObject("MSXML2.FreeThreadedDOMDocument");
    xslDoc.async = false;
    xslDoc.load(xslDocURL);

    // prepare the xsl document for transformation
    docCache = new ActiveXObject("MSXML2.XSLTemplate");
    docCache.stylesheet = xslDoc;

    // instantiate the document processor and submit the xml document
    docProcessor = docCache.createProcessor();
    docProcessor.input = xmlDoc;

    // process the documents into html and submit to the passed div
    docProcessor.transform();

    // divID.innerHTML = docProcessor.output;
    document.getElementById(divID).innerHTML = docProcessor.output;
  }

  // if IE try doesn't work then try for Mozilla Browsers
  // catch any errors from the above code
  catch(e)
  {

    // try the following
    try
    {

      // instantiate and load the xml document
      docRequest = new XMLHttpRequest();
      docRequest.open("GET", xmlDocURL, false);
      docRequest.send(null);
      xmlDoc = docRequest.responseXML;

      // instantiate and load the xsl document
      docRequest = new XMLHttpRequest();
      docRequest.open("GET", xslDocURL, false);
      docRequest.send(null);
      xslDoc = docRequest.responseXML;

      // instantiate the document processor and submit the xsl document
      docProcessor = new XSLTProcessor();
      docProcessor.importStylesheet(xslDoc);

      // clear the passed div if anything was in it
      document.getElementById(divID).innerHTML = "";

      // process the documents into html and submit to the passed div
      docFragment = docProcessor.transformToFragment(xmlDoc, document);
      document.getElementById(divID).appendChild(docFragment);
    }

    // catch any errors from the above code
    catch(e)
    {
      // do nothing
      alert(e);
    }
  }
}
/**
 *
 * @access public
 * @return void
 **/
var original_image = new Array();

function clickimage(src,img_id){
	//click event
	original_image[img_id]=src;
	//alert(src);
}
function showimage(pic,img_id){
	//alert ('hi');
	e=document.getElementById(img_id);
	if (!original_image[img_id]) {
		original_image[img_id]=e.src;
		//alert(e.src + ' ' + src);
	}
	e.src=pic.src;
	//alert(e.src + img_id);
}
function showoriginalimage(img_id){
	//alert('hi');
	if (original_image[img_id]) {
		document.getElementById(img_id).src=original_image[img_id];
	}
	//alert(src);
}


/**
 *
 * @access public
 * @return void
 **/
function filterform(){
	beds=document.getElementById('beds');
	filter1(beds);
}
function submitform(){
	beds=document.getElementById('beds');
	//alert(beds.form.displaystyle.value);
	beds.form.submit();
}
/**
 *
 * @access public
 * @return void
 **/
function submitSearch(){
	branch=document.getElementById('br1');
	branch.form.submit();
}
/**
 *
 * @access public
 * @return void
 **/
function submitNewsArchive(e){
	filter1(e);
}
/**
 *
 * @access public
 * @return void
 **/
function ShowResults(whichSheet){
	// go through the style sheets and only use one
	if(document.styleSheets){
		var c = document.styleSheets.length;
		for(var i=0;i<c;i++){
			if(i!=whichSheet){
				document.styleSheets[i].disabled=true;
			}else{
				document.styleSheets[i].disabled=false;
			}
		}
	}
	// turn off Mr Stampa in case it's been left on by a bad return from AJAX
	var stampa=document.getElementById("stampa");
	if (stampa!=null) {
		stampa.style.visibility = "hidden";
	}
	// change displaystyle to listing to avoid confusion
	var st=document.getElementById("displaystyle");
	st.value="Q";
}
function stopStampa(){
	var stampa=document.getElementById("stampa");
	if (stampa!=null) {
		stampa.style.visibility = "hidden";
	}
	var stampa=document.getElementById("stampa1");
	if (stampa!=null) {
		stampa.style.visibility = "hidden";
	}

}
function menuSelect(val){
	var sel=document.getElementById("br");
	var DnavA=document.getElementById("DnavA");
	if (DnavA!=null) {
		DnavA.style.display="none";
		setTimeout('resetMenuSelect()',5);
	}
	if (sel!=null) {
		sel.value=val;
		//sel.focus();
		//if stampa exists then filter the form now
		var stampa=document.getElementById("stampa");
		if (stampa!=null) {
			filternew(sel);
		}
	}
}

function menuSelecta(el){
	var nav=getDnav(el);
	if (nav!=null) {
		var sel_name=nav.getElementsByTagName("INPUT")[0];
		if (sel_name!=null) {
			sel_name.value = el.innerHTML;
			var stampa=document.getElementById("stampa");
			if (stampa!=null) {
				$loc_call=false;
				if (sel_name.name=='br_text') {
					var location=document.getElementById("DnavALocation");
					if (location!=null) {
						location.innerHTML='<li><input type="text" name="lo" value="" readonly="readonly" class="wide" /></li>';
						//do the call later
						$loc_call=true;
					}
				}
				filternew(sel_name); //if Mr Stampa exists start the form filter
				if ($loc_call) {
					loadurl('/forms/locationengine.php','br_text='+sel_name.value);
				}
			}
		}
		navULs=nav.getElementsByTagName("UL");
		navULs[0].style.visibility="hidden";
		var links=nav.getElementsByTagName("A");
		for (var j=0; j<links.length; j++) {
			links[j].className='';
		}
		el.className='menuactive';
		var nextLi=el.parentNode.parentNode.parentNode;
		if (nextLi.parentNode.id !=nav.id) {
			var nextLinks=nextLi.getElementsByTagName("A");
			nextLinks[0].className='menuactive';
			var next1=nextLi.parentNode.parentNode;
			if (next1.parentNode.id !=nav.id) {
				var nextLinks=next1.getElementsByTagName("A");
				nextLinks[0].className='menuactive';
			}
		}
		//nav.style.display="block";
		setTimeout('resetMenu("'+nav.id+'")',50);
	}
}
function menuSelectadmin(el){
	var nav=getDnav(el);
	if (nav!=null) {
		var sel_name=nav.getElementsByTagName("INPUT")[0];
		if (sel_name!=null) {
			sel_name.value = el.innerHTML;
			var stampa=document.getElementById("stampa");
			if (stampa!=null) {
				filter(sel_name); //if Mr Stampa exists start the form filter
			}
		}
		navULs=nav.getElementsByTagName("UL");
		navULs[0].style.visibility="hidden";
		var links=nav.getElementsByTagName("A");
		for (var j=0; j<links.length; j++) {
			links[j].className='';
		}
		el.className='menuactive';
		var nextLi=el.parentNode.parentNode.parentNode;
		if (nextLi.parentNode.id !=nav.id) {
			var nextLinks=nextLi.getElementsByTagName("A");
			nextLinks[0].className='menuactive';
			var next1=nextLi.parentNode.parentNode;
			if (next1.parentNode.id !=nav.id) {
				var nextLinks=next1.getElementsByTagName("A");
				nextLinks[0].className='menuactive';
			}
		}
		//nav.style.display="block";
		setTimeout('resetMenu("'+nav.id+'")',50);
	}
}
function setTextField(txt_id,sel_id){
	var txt_el=document.getElementById(txt_id);
	var sel_el=document.getElementById(sel_id);
	txt_el.value=sel_el.options[sel_el.selectedIndex].innerHTML;
}
function resetMenuSelect(){
	var sel=document.getElementById("br");
	var DnavA=document.getElementById("DnavA");
	if (DnavA!=null) {
		DnavA.style.display="block";
		sel.focus();
		selectkey=sel.value.replace(/CROY3/g,"");
		setmenuactive(selectkey);
	}
}
function resetMenu(nav_id){
	var nav=document.getElementById(nav_id);
	if (nav!=null) {
		navULs=nav.getElementsByTagName("UL");
		navULs[0].style.visibility="";
	}
}
function setmenuactive(val){
	var DnavA=document.getElementById("DnavA");
	links=DnavA.getElementsByTagName("a");
	for (var j=0; j<links.length; j++) {
		keystring=links[j].onclick;
		if (keystring.indexOf(val,28) > 0) {
			links[j].className='menuactive';
			//links[j].focus();
		} else {
			links[j].className='';
		}
	}
}
function filtermenunew(e){
	selectkey=e.value.replace(/CROY3/g,"");
	setmenuactive(selectkey);
	filternew(e);
}
/**
 *
 * @access public
 * @return void
 **/
function getDnav(e){
	var t=e.parentNode;
	if (!t.id>'') {
		t=getDnav(t);
	}
	return t;
}
function getULParent(e){
	var t=e.parentNode;
	if (t.tagName!='UL') {
		//alert(t.tagName);
		t=getULParent(t);
	}
	return t;
}
function getLiParent(e){
	var t=e.parentNode;
	if (t.tagName!='LI') {
		alert(t.tagName);
		t=getLiParent(t);
	}
	return t;
}
/**
 *
 * @access public
 * @return void
 **/
function clickSelect(e){
	if (e.className=="") {
		e.className="menuparenth";
	} else {
		e.className="";
	}
}
function unclickSelect(e){
	e.className="";
}
/**
 *
 * @access public
 * @return void
 **/
function clearCriteria(el){
	var elm=document.getElementById(el);
	frm=elm.form;
	for(var i = 0; i < frm.elements.length; i++) {
		e=frm.elements[i];
		if (e.type!='submit') {
			e.value="";
		}
	}
	elm.value="1";
	filternew(elm);
	return false;
}
