function changeDiv(myDiv, myState, myLN){
  var theDiv=document.getElementById(myDiv);
  var theControls=document.getElementById('controls');
  var theOuter=document.getElementById('outerframe');
  var theList=document.getElementById('list');
  var thePic=document.getElementById('picture');
  var theNav=document.getElementById('navigation');
  var theMsg=document.getElementById('message');
  var theLeft=document.getElementById('left_floater');
  theDiv.style.visibility=myState;
  if(myState=="visible"){
      theControls.style.visibility="hidden";
      theNav.style.visibility="hidden";
      theMsg.style.visibility="hidden";
      theOuter.style.visibility="hidden";
      theList.style.visibility="hidden";
      thePic.style.visibility="hidden";
      theLeft.style.visibility="hidden";
      xajax_getDetails(myLN);
  }
  if(myState=="hidden"){
      //theControls.style.visibility="visible";
      theNav.style.visibility="visible";
      theMsg.style.visibility="visible";
      theOuter.style.visibility="visible";
      theList.style.visibility="visible";
      thePic.style.visibility="visible";
      theLeft.style.visibility="visible";
      theDiv.innerHTML="Loading details...";
      
  }
}

function ahah(url,target){
  // native XMLHttpRequest object
  document.getElementById(target).innerHTML = 'sending...';
  if (window.XMLHttpRequest) {
      req = new XMLHttpRequest();
      req.onreadystatechange = function() {ahahDone(target);};
      req.open("GET", url, true);
      req.send(null);
    // IE/Windows ActiveX version
    } else if (window.ActiveXObject) {
      req = new ActiveXObject("Microsoft.XMLHTTP");
      if (req) {
          req.onreadystatechange = function() {ahahDone(target);};
          req.open("GET", url, true);
          req.send();
      }
  } 
} 

function ahahDone(target) {
  // only if req is "loaded"
  if (req.readyState == 4) {
      // only if "OK"
      if (req.status == 200) {
          results = req.responseText;
          document.getElementById(target).innerHTML = results;
        } else {
          document.getElementById(target).innerHTML="ahah error:n" +
          req.statusText;
      }
  }
} 

//these came from the detail page template
function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}

function MM_findObj(n, d) { //v4.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && document.getElementById) x=document.getElementById(n); return x;
}

// I don't think this is used by anyone except wiegand for lil_form - can take it out
function MM_validateForm() { //v4.0
  var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
  for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
    if (val) { nm=val.name; if ((val=val.value)!="") {
      if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
        if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';
      } else if (test!='R') {
        if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
        if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
          min=test.substring(8,p); max=test.substring(p+1);
          if (val<min || max<val) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
    } } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }
  } if (errors) alert('The following error(s) occurred:\n'+errors);
  document.MM_returnValue = (errors == '');
}
//end detail page functions


function selectTab(new_tab){
	 document.getElementById('map_li').className="";
	 document.getElementById('prop_detail_li').className="";
	 document.getElementById('my_list_li').className="";
	 document.getElementById('help_li').className="";
	 
	 var theNewTab=new_tab+"_li";
	 document.getElementById(theNewTab).className="selected";
	 


}

function changeMainTab(selection){
	show_help('none');
	switch (selection){
		case "my_list":
		//var current_list=getCookie('currentList');
		xajax_goCart();
		setView('my_list');
		break;
		
		case "map":
		setView('results');
		update_map();
		break;
		
		case "prop_detail":
		setView('detail');
		break;
		
		case "help":
		show_help('help_intro');
		setView('help');
		break;
	}
	selectTab(selection);
	
}

//clear form field
function clickclear(thisfield, defaulttext) {
if (thisfield.value == defaulttext) {
thisfield.value = "";
}
}

function process_drop(selection, title, tar, new_title){
//alert (selection+title+tar+new_title);
	if (tar!="Process"){
		document.getElementById(tar).innerHTML=new_title+":<br>Loading...";
	}
	if (tar=="city_sel"){
		document.getElementById('area_sel').innerHTML="Area:";
	}
	
	if (tar=="Process"){
		xajax_talktoGoogle(selection);
		//xajax_getOneListing(selection, new_title);
	}else{
		var addCounty=selection+' County';
		xajax_makeDropdown(selection,tar,new_title);
		xajax_talktoGoogle(addCounty);
	}
}

//compute results from flash price slider
function compute_price_slider (type, price){
		if (price=="no min" || price =="no max"){price="";}
		if (type=="LP_to"){	document.getElementById("high").value=price;}
		if (type=="LP_from"){	document.getElementById("low").value=price;}
		update_map();
}

function refine_type(){
	var myPropStatus=document.getElementById('prop_status');
	myPropStatus.style.visibility="hidden";
	
	var myPropType=document.getElementById('prop_type');
	myState=myPropType.style.visibility;
	if (myState=="hidden" || myState==""){
		myPropType.style.visibility="visible";
	}else{
		myPropType.style.visibility="hidden";
	}
}

function refine_status(){
	var myPropType=document.getElementById('prop_type');
	myPropType.style.visibility="hidden";
	
	var myPropStatus=document.getElementById('prop_status');
	myState=myPropStatus.style.visibility;
	if (myState=="hidden" || myState==""){
		myPropStatus.style.visibility="visible";
	}else{
		myPropStatus.style.visibility="hidden";
	}
}

function process_quick_focus(){
	var myInput=document.getElementById('quick_input').value;
	var mlsnum=document.getElementById('mlsnum');
	myInput=myInput.replace(/^\s*/, "").replace(/\s*$/, "");
	if (isNaN (myInput) || parseFloat(myInput)!=myInput) {
	  xajax_talktoGoogle(myInput);
	  mlsnum.value='';
	} else {
		//mls number inputted
		uncheckAll(document.prop_boxes.prop_box);
		uncheck('all');
		document.getElementById("high").value='';
		document.getElementById("low").value='';
		document.getElementById("minmax").innerHTML=document.getElementById("minmax").innerHTML;
		mlsnum.value=myInput;
		document.getElementById("restrict_warning").innerHTML='This map is only showing MLS #: <b>'+mlsnum.value+'</b>';
		document.getElementById("dontwarnlink").style.display='none';
		var myList=document.getElementById("display_list");
		myList.style.display="block";
		//var lat = 47.709762;
		//var lon = -123.596191;
		xajax_getOneLatLon(mlsnum.value);
		//map.setCenter(new GLatLng(lat,lon), 8);	
	}
}

function checkListLink(LN){
	var current_list=getList();
	if(current_list.search(LN)!=-1){
		var myListLink=document.getElementById('list_link');
		myListLink.innerHTML="<a href=\"javascript:changeMainTab('my_list');\">Go to MY FAVORITES</a>";
	}
	
}
function getList(){
	var theList=document.getElementById("listHolder").value;
	return theList;
}

function setList(currentList){
	var theList=document.getElementById("listHolder");
	theList.value=currentList;
	//alert (theList);
}




function getCookie(Name){ 
//alert ('get'+Name);
var re=new RegExp(Name+"=[^;]+", "i"); //construct RE to search for target name/value pair
if (document.cookie.match(re)){ //if cookie found
	//alert (document.cookie.match(re)[0].split("=")[1]);
	return document.cookie.match(re)[0].split("=")[1]; //return its value
}else{
	//alert ('no cookie');
	return "";
}
}

function setCookie(name, value){
	var the_date = new Date("December 31, 2023");
	var the_cookie_date = the_date.toGMTString();
	var the_cookie = name+"=" + escape(value);
	the_cookie = the_cookie + ";expires=" + the_cookie_date+";";
	//var the_cookie = the_cookie + " path=/;";
	//var the_cookie = the_cookie + "domain=lakere.com;";
	document.cookie = the_cookie;
	//alert (the_cookie);
	//alert (document.cookie);
}


function addtoList(LN){
	xajax_addItem(LN);
	changeMainTab('my_list');
	
}

function hideListBox(){
	var thebox1=document.getElementById("st_box_1");
	thebox1.checked=true;
	document.poh_boxes.mylist_box.checked=false;
}

function removeLN (LN){
	xajax_delItem(LN);
}

function print_list(){
	var current_list_url="6mapPrintList.php";
	window.open(current_list_url,'','scrollbars=yes,resizable=yes,width=700,height=700');
	var myBranding=document.getElementById("branding").innerHTML;
	setCookie('branding_print', myBranding);
	//var myList=document.getElementById('thelist').innerHTML=myBranding;
}


function helpers(sel){
	var myHelpers=document.getElementById("helpers");
	var myHelpersState=myHelpers.style.display;
	
	var myHelpDiv=document.getElementById(sel);
	myState=myHelpDiv.style.display;
	
	if (myState=="none" || myState=="" || myHelpersState=="none"){
		myHelpDiv.style.display="block";
	}else{
		myHelpDiv.style.display="none";

	}
	if (myHelpersState=="none" || myHelpersState==""){
		myHelpers.style.display="block";
	}
}

function show_help(sel){
	document.getElementById("help_intro").style.visibility="hidden";
	document.getElementById("basics").style.visibility="hidden";
	document.getElementById("focusing").style.visibility="hidden";
	document.getElementById("refining").style.visibility="hidden";
	document.getElementById("saving").style.visibility="hidden";
	if (sel!="none"){
		document.getElementById(sel).style.visibility="visible";
	}
}

function move_floater(){
	var myLeftFloater=document.getElementById('left_floater');
	if (myLeftFloater.style.left=="10px"){
		myLeftFloater.style.left="210px";
	}else{
		myLeftFloater.style.left="10px";
	}
	
}

function show_legend(){
	var myLegend=document.getElementById('legend');
	var myLegendButton=document.getElementById('legend_button');
	myLegend.style.visibility="visible";
	myLegendButton.innerHTML='<a href="javascript:hide_legend()">Hide Map Legend</a>';
}

function hide_legend(){
	var myLegend=document.getElementById('legend');
	var myLegendButton=document.getElementById('legend_button');
	myLegend.style.visibility="hidden";
	myLegendButton.innerHTML='<a href="javascript:show_legend()">Show Map Legend</a>';
}

function send_list_email(){
	var myToEmail=document.getElementById('to_email').value;
	//var myFromEmail=document.getElementById('from_email').value;

	
	//if (myToEmail=="" || myFromEmail==""){
	if (myToEmail==""){
		alert ('Email field cannot be blank.');
	}else{
		var send_remarks = 0;
		for( i = 0; i < document.listEmail_form.email_remarks.length; i++ ){	
			if( document.listEmail_form.email_remarks[i].checked == true )
				send_remarks = document.listEmail_form.email_remarks[i].value;
			}
		//var current_list=getCookie('currentList');
		xajax_send_email(myToEmail, send_remarks);
		var myListEmail=document.getElementById('listEmail');
		myListEmail.innerHTML="Generating Email...";
	}
}
function show_email_form(){
	var myListEmail=document.getElementById('listEmail');
	myListEmail.style.display="block";
}

function hide_email_form(){
	var myListEmail=document.getElementById('listEmail');
	myListEmail.style.display="none";
}

function resetclose_email_form(){
	var myListEmail=document.getElementById('listEmail');
	myListEmail.style.display="none";
	changeMainTab('my_list');
//	var myNewForm1='<form name="listEmail_form" class="smalltext">send email to: <input name="to_email" type="text" class="plaintext" id="to_email" style="width:150px;"><br /><br />your email:&nbsp;&nbsp;&nbsp; &nbsp;<input name="from_email" type="text" class="plaintext" id="from_email" style="width:150px;"><br><br></form>';
//	var myNewForm2='<input name="email_remarks" type="radio" value="0" checked>Email shorter list with property details only <br><em>(address, price, beds/baths, sq ft, mls #) </em><br><input name="email_remarks" type="radio" value="1">Email longer list with property details and remarks.<br><br>';
//	var myNewForm3='<input type="button" value="Send Email" onclick="send_list_email()" class="gobtn">&nbsp;&nbsp;<input type="button" value="Cancel" onclick="hide_email_form()" class="gobtn"><br></form>';
//	myListEmail.innerHTML=myNewForm1+myNewForm2+myNewForm3;
}

//function mapOneListing(lat, lon){
	//map.setCenter(new GLatLng(lat,lon), 16);	
//}

function mapList(lat, lon){
	document.getElementById("restrict_warning").innerHTML='<b>This Map is only displaying your FAVORITE properties.</b>';
	document.getElementById("dontwarnlink").style.display='inline';
	var mlsnum=document.getElementById('mlsnum');
	mlsnum.value='';
	
	document.poh_boxes.mylist_box.checked=true;
	uncheck('all');
	map.setCenter(new GLatLng(lat,lon), 12);
	update_map();
}
				   
function closeListWarn(){
	var myList=document.getElementById("display_list");
	myList.style.visibility="hidden";
}

function dontwarn(){
	var myList=document.getElementById("display_list");
	myList.style.display="none";
}

function resetListView(){
	var mlsnum=document.getElementById('mlsnum');
	mlsnum.value='';
	var thebox1=document.getElementById("st_box_1");
     thebox1.checked=true;
	document.poh_boxes.mylist_box.checked=false;
	update_map();
}

  function sendLogin(){
    var user= document.getElementById('user').value;
    var pw= document.getElementById('pw').value;
	var stored=document.getElementById('listHolder').value;
    //alert(user + pw);
    xajax_validate(user,pw,stored);
  }
  function sendRegister(){
    var user= document.getElementById('ruser').value;
    var pw= document.getElementById('rpw').value;
	var email= document.getElementById('remail').value;
	var stored=document.getElementById('listHolder').value;
    //alert(user + pw);
    xajax_register(user,pw,email,stored);
  }
  function addToCart(){
    var LN= document.getElementById('LN').value;
    xajax_addItem(LN); 
  }
  
function toggleForm(sel){
	var registerForm=document.getElementById("registerForm");
	var loginForm=document.getElementById("loginForm");
	
	registerForm.style.display="none";
	loginForm.style.display="none";
	
	var newForm=document.getElementById(sel);
	newForm.style.display="block";
}

function closeBox(sel){
	var myBox=document.getElementById(sel);
	myBox.style.visibility="hidden";
}