/*
 ** Copyright 2008 Visite Virtuelle Immo
 */


function defaultErrorHandle(resp)
{
  alert("Erreure ! : " + resp.status + " ( " + resp.statusText + ")");
}

function initSearchScreen()
{
  if(document.getElementById("h_keywords").value != "")
    {
      document.getElementById("bigForm_keywords").value = document.getElementById("h_keywords").value;
      document.getElementById("miniForm_keywords").value = document.getElementById("h_keywords").value;
    }
  if(document.getElementById("h_typeVente").value != "")
    {
      for(var i = 0; i < document.forms['miniForm'].miniForm_typeVente.length; i++)
	if(document.forms['miniForm'].miniForm_typeVente.options[i].value
	   == document.getElementById("h_typeVente").value)
	  {
	    document.forms['miniForm'].miniForm_typeVente.selectedIndex = i;
	  }
      for(var i = 0; i < document.forms['bigForm'].bigForm_typeVente.length; i++)
	if(document.forms['bigForm'].bigForm_typeVente.options[i].value
	   == document.getElementById("h_typeVente").value)
	  {
	    document.forms['bigForm'].bigForm_typeVente.selectedIndex = i;
	  }
    }
  if(document.getElementById("h_typeBien").value != "")
    {
      for(var i = 0; i < document.forms['bigForm'].bigForm_typeBien.length; i++)
	if(document.forms['bigForm'].bigForm_typeBien.options[i].value
	   == document.getElementById("h_typeBien").value)
	  {
	    document.forms['bigForm'].bigForm_typeBien.selectedIndex = i;
	  }
    }
  if(document.getElementById("h_minPrice").value != "")
    {
      document.getElementById("minPrice").value = document.getElementById("h_minPrice").value;
    }
  if(document.getElementById("h_maxPrice").value != "")
    {
      document.getElementById("maxPrice").value = document.getElementById("h_maxPrice").value;
    }
  if(document.getElementById("h_nbRooms").value != "")
    {
      var radioObj = document.forms['bigForm'].nbRooms;
      for(var i = 0; i < 5; i++)
	{
	  radioObj[i].checked = false;
	  if(radioObj[i].value == document.getElementById("h_nbRooms").value)
	    radioObj[i].checked = true;
	}
    }
  for(var i = 1; i < 4; i++)
    if(document.getElementById("h_g" + i).value != "")
      document.getElementById("g" + i).value = document.getElementById("h_g" + i).value;
  for(var i = 1; i < 10; i++)
    if(document.getElementById("h_e" + i).value != "")
      document.getElementById("e" + i).value = document.getElementById("h_e" + i).value;
  for(var i = 1; i < 17; i++)
    if(document.getElementById("h_c" + i).value != "")
      document.getElementById("c" + i).value = document.getElementById("h_c" + i).value;
}

function openGeo()
{
  if(document.getElementById("h_openGeo").value == "0")
    {
      closeCara();
      closeEnv();
      document.getElementById("mainContent_accessorySearchBar_content_geo").style.height = "150px";
      objOpen = document.getElementById("h_openGeo");
      objOpen.value = "1";
      getGeo_departements();
    }
  else
    {
      closeGeo();
    }
}


function closeGeo()
{
  if(document.getElementById("h_openGeo").value = "1")
    {
      document.getElementById("mainContent_accessorySearchBar_content_geo").innerHTML = "";
      document.getElementById("mainContent_accessorySearchBar_content_geo").style.height = "0px";
      document.getElementById("h_openGeo").value = "0";
    }
}

function getGeo_departements()
{
  var dep = "0";
  if(document.getElementById("g1").value != "")
    dep = document.getElementById("g1").value;
  {
    new Ajax.Request("/recherche/ajax_get_geo_departements/" + dep,
		     {asynchronous:true,
			 method:'post',
			 onSuccess:handle_getGeo_departements,
			 onFailure:defaultErrorHandle
			 });
  }
}

function handle_getGeo_departements(resp)
{
  if(document.getElementById("h_openGeo").value == "0")
    exit;
  document.getElementById("mainContent_accessorySearchBar_content_geo").innerHTML = "<br>" + resp.responseText;
  getGeo_villes();
}

function changeGeo_departements(depListObj)
{
  document.getElementById("g1").value = depListObj.options[depListObj.selectedIndex].value;
  document.getElementById("g2").value = "";
  document.getElementById("g3").value = "";
  getGeo_departements();
}

function getGeo_villes()
{
  var dep = "0";
  if(document.getElementById("g1").value != "")
    dep = document.getElementById("g1").value;
  var city = "0";
  if(dep != "0" && document.getElementById("g2").value != "")
    city = document.getElementById("g2").value;
  new Ajax.Request("/recherche/ajax_get_geo_villes/" + dep + "/" + city,
		   {asynchronous:true,
		       method:'post',
		       onSuccess:handle_getGeo_villes,
		       onFailure:defaultErrorHandle
		       });
}

function handle_getGeo_villes(resp)
{
  if(document.getElementById("h_openGeo").value == "0")
    exit;
  document.getElementById("mainContent_accessorySearchBar_content_geo").innerHTML =
    document.getElementById("mainContent_accessorySearchBar_content_geo").innerHTML + resp.responseText;
  // if(document.getElementById("g2").value != ""
//      && document.getElementById("g2").value != "0")
//     showDistances();
}

function changeGeo_villes(depListObj)
{
  document.getElementById("g2").value = depListObj.options[depListObj.selectedIndex].value;
  document.getElementById("g3").value = "";
  getGeo_departements();
}

function showDistances()
{
  if(document.getElementById("g2").value != ""
     && document.getElementById("g2").value != "0")
    {
      var tmp = "<p><label for=\"geoDistance\">Rayon :</label>";
      if(document.getElementById("g3").value == "2")
	tmp += "<input type=\"radio\" id=\"geoDistance\" onchange=\"changeDistance(2);\" checked value=\"2\">2 km, ";
      else
	tmp += "<input type=\"radio\" id=\"geoDistance\" onchange=\"changeDistance(2);\" value=\"2\">2 km, ";
      if(document.getElementById("g3").value == "5")
	tmp += "<input type=\"radio\" id=\"geoDistance\" onchange=\"changeDistance(5);\" checked value=\"5\">5 km, ";
      else
	tmp += "<input type=\"radio\" id=\"geoDistance\"  onchange=\"changeDistance(5);\" value=\"5\">5 km, ";
       if(document.getElementById("g3").value == "10")
	tmp += "<input type=\"radio\" id=\"geoDistance\" onchange=\"changeDistance(10);\" checked value=\"10\">10 km, ";
      else
	tmp += "<input type=\"radio\" id=\"geoDistance\"  onchange=\"changeDistance(10);\" value=\"10\">10 km, ";
      if(document.getElementById("g3").value == "20")
	tmp += "<input type=\"radio\" id=\"geoDistance\" onchange=\"changeDistance(20);\" checked value=\"20\">20 km, ";
      else
	tmp += "<input type=\"radio\" id=\"geoDistance\"  onchange=\"changeDistance(20);\" value=\"20\">20 km, ";
      tmp += "</p>"

      document.getElementById("mainContent_accessorySearchBar_content_geo").innerHTML =
	document.getElementById("mainContent_accessorySearchBar_content_geo").innerHTML + tmp;
    }
}

function changeDistance(newDist)
{
  document.getElementById("g3").value = newDist;
  getGeo_departements();
}



function openCara()
{
  if(document.getElementById("h_openCara").value == "0")
    {
      closeEnv();
      closeGeo();
      document.getElementById("mainContent_accessorySearchBar_content_cara").style.height = "150px";
      objOpen = document.getElementById("h_openCara");
      objOpen.value = "1";
      getCara_content();
    }
  else
    closeCara();
}

function getCara_content()
{
  new Ajax.Request("/recherche/ajax_get_cara/",
		   {asynchronous:true,
		       method:'post',
		       onSuccess:handle_get_cara,
		       onFailure:defaultErrorHandle
		       });
}

function handle_get_cara(resp)
{
  document.getElementById("mainContent_accessorySearchBar_content_cara").innerHTML = resp.responseText;
  restoreCara();
}


function closeCara()
{
  if(document.getElementById("h_openCara").value == "1")
    {
      saveCara();
      document.getElementById("mainContent_accessorySearchBar_content_cara").innerHTML = "";
      document.getElementById("mainContent_accessorySearchBar_content_cara").style.height = "0px";
      document.getElementById("h_openCara").value = "0";
    }
}

function saveCara()
{
  document.getElementById("c1").value = document.getElementById("caraTab_Exposition").value;
  document.getElementById("c2").value = document.getElementById("caraTab_Chauffage").value;
  document.getElementById("c3").value = document.getElementById("caraTab_Isolation").value;
  document.getElementById("c4").value = document.getElementById("caraTab_Sol").value;

  if(document.getElementById("caraTab_Cheminee").checked == true)
    document.getElementById("c5").value = "1";
  else
    document.getElementById("c5").value = "";

  if(document.getElementById("caraTab_Meuble").checked == true)
    document.getElementById("c6").value = "1";
  else
    document.getElementById("c6").value = "";

  if(document.getElementById("caraTab_Jardin").checked == true)
    document.getElementById("c7").value = "1";
  else
    document.getElementById("c7").value = "";

  if(document.getElementById("caraTab_Cave").checked == true)
    document.getElementById("c8").value = "1";
  else
    document.getElementById("c8").value = "";

  if(document.getElementById("caraTab_Grenier").checked == true)
    document.getElementById("c9").value = "1";
  else
    document.getElementById("c9").value = "";

  if(document.getElementById("caraTab_Balcon").checked == true)
    document.getElementById("c10").value = "1";
  else
    document.getElementById("c10").value = "";

  if(document.getElementById("caraTab_Piscine").checked == true)
    document.getElementById("c11").value = "1";
  else
    document.getElementById("c11").value = "";

  if(document.getElementById("caraTab_neuf").checked == true)
    document.getElementById("c12").value = "1";
  else
    document.getElementById("c12").value = "";

  if(document.getElementById("caraTab_Parking").checked == true)
    document.getElementById("c13").value = "1";
  else
    document.getElementById("c13").value = "";

  if(document.getElementById("caraTab_Garage").checked == true)
    document.getElementById("c14").value = "1";
  else
    document.getElementById("c14").value = "";

  if(document.getElementById("caraTab_Ascenceur").checked == true)
    document.getElementById("c15").value = "1";
  else
    document.getElementById("c15").value = "";

  if(document.getElementById("caraTab_Cuisine").checked == true)
    document.getElementById("c16").value = "1";
  else
    document.getElementById("c16").value = "";
}

function restoreCara()
{
  document.getElementById("caraTab_Exposition").value = document.getElementById("c1").value;
  document.getElementById("caraTab_Chauffage").value = document.getElementById("c2").value;
  document.getElementById("caraTab_Isolation").value = document.getElementById("c3").value;
  document.getElementById("caraTab_Sol").value = document.getElementById("c4").value;

  if(document.getElementById("c5").value == "1")
    document.getElementById("caraTab_Cheminee").checked = true;
  else
    document.getElementById("caraTab_Cheminee").checked = false;

  if(document.getElementById("c6").value == "1")
    document.getElementById("caraTab_Meuble").checked = true;
  else
    document.getElementById("caraTab_Meuble").checked = false;

  if(document.getElementById("c7").value == "1")
    document.getElementById("caraTab_Jardin").checked = true;
  else
    document.getElementById("caraTab_Jardin").checked = false;

  if(document.getElementById("c8").value == "1")
    document.getElementById("caraTab_Cave").checked = true;
  else
    document.getElementById("caraTab_Cave").checked = false;

  if(document.getElementById("c9").value == "1")
    document.getElementById("caraTab_Grenier").checked = true;
  else
    document.getElementById("caraTab_Grenier").checked = false;

  if(document.getElementById("c10").value == "1")
    document.getElementById("caraTab_Balcon").checked = true;
  else
    document.getElementById("caraTab_Balcon").checked = false;

  if(document.getElementById("c11").value == "1")
    document.getElementById("caraTab_Piscine").checked = true;
  else
    document.getElementById("caraTab_Piscine").checked = false;

  if(document.getElementById("c12").value == "1")
    document.getElementById("caraTab_neuf").checked = true;
  else
    document.getElementById("caraTab_neuf").checked = false;

  if(document.getElementById("c13").value == "1")
    document.getElementById("caraTab_Parking").checked = true;
  else
    document.getElementById("caraTab_Parking").checked = false;

  if(document.getElementById("c14").value == "1")
    document.getElementById("caraTab_Garage").checked = true;
  else
    document.getElementById("caraTab_Garage").checked = false;

  if(document.getElementById("c15").value == "1")
    document.getElementById("caraTab_Ascenceur").checked = true;
  else
    document.getElementById("caraTab_Ascenceur").checked = false;

  if(document.getElementById("c16").value == "1")
    document.getElementById("caraTab_Cuisine").checked = true;
  else
    document.getElementById("caraTab_Cuisine").checked = false;

}

function openEnv()
{
  if(document.getElementById("h_openEnv").value == "0")
    {
      closeCara();
      closeGeo();
      document.getElementById("mainContent_accessorySearchBar_content_env").style.height = "150px";
      objOpen = document.getElementById("h_openEnv");
      objOpen.value = "1";
      getEnv_content();
    }
  else
    closeEnv();
}

function closeEnv()
{
  if(document.getElementById("h_openEnv").value == "1")
    {
      saveEnv();
      document.getElementById("mainContent_accessorySearchBar_content_env").innerHTML = "";
      document.getElementById("mainContent_accessorySearchBar_content_env").style.height = "0px";
      document.getElementById("h_openEnv").value = "0";
    }
}

function getEnv_content()
{
  new Ajax.Request("/recherche/ajax_get_env/",
		   {asynchronous:true,
		       method:'post',
		       onSuccess:handle_get_env,
		       onFailure:defaultErrorHandle
		       });
}

function handle_get_env(resp)
{
  document.getElementById("mainContent_accessorySearchBar_content_env").innerHTML = resp.responseText;
  restoreEnv();
}

function saveEnv()
{
  document.getElementById('e1').value = document.getElementById("envTab_Super").value;
  document.getElementById('e2').value = document.getElementById("envTab_Ecole").value;
  document.getElementById('e3').value = document.getElementById("envTab_Bus").value;
  document.getElementById('e4').value = document.getElementById("envTab_Boulangerie").value;
  document.getElementById('e5').value = document.getElementById("envTab_Creche").value;
  document.getElementById('e6').value = document.getElementById("envTab_Gare").value;
  document.getElementById('e7').value = document.getElementById("envTab_Pharmacie").value;
  document.getElementById('e8').value = document.getElementById("envTab_Secondaire").value;
  document.getElementById('e9').value = document.getElementById("envTab_Hopital").value;
}

function restoreEnv()
{
  document.getElementById("envTab_Super").value = document.getElementById('e1').value;
  document.getElementById("envTab_Ecole").value = document.getElementById('e2').value;
  document.getElementById("envTab_Bus").value = document.getElementById('e3').value;
  document.getElementById("envTab_Boulangerie").value = document.getElementById('e4').value;
  document.getElementById("envTab_Creche").value = document.getElementById('e5').value;
  document.getElementById("envTab_Gare").value = document.getElementById('e6').value;
  document.getElementById("envTab_Pharmacie").value = document.getElementById('e7').value;
  document.getElementById("envTab_Secondaire").value = document.getElementById('e8').value;
  document.getElementById("envTab_Hopital").value = document.getElementById('e9').value;
}
