/**
 * @author Talovertailu
 */

  var xmlHttp = new Array();
  var xmlKohta = [1];
  var map1 = null;
  var map2 = null;
  var map3 = null;
  var map4 = null;
  var map5 = null;
  var map6 = null;
  var geocoder = null;
 
	function PiilotaTesti(){
		$('#talomallitable2').find('tr').each(function (){
			$(this).toggle();
		});
	}
	
	/*
	$(document).ready(function() {
		$('#talomalli_palkki').find('.palkki_piilotettava').hide();
		$('#talomalli_palkki').hover(
			function() {
				$(this).find('.palkki_piilotettava').show();
			},
			function() {
				$(this).find('.palkki_piilotettava').hide();
			});
	});
	*/
 
  function LisaaVertailuun(str, reload, toimitussisalto, palkki)
  {
    //Tarkastetaan ettei vertailussa ole liikaa
    if(window.vertailussa >= 20)
    {
      return;
    }
    else
    {
      window.vertailussa++;
    }
    if(toimitussisalto == undefined)
    {
      toimitussisalto = 0; 
    }
  	var xmlNum = GetXmlHttpObject();
  	if (xmlHttp==null)
  	{
  		alert ("Browser does not support HTTP Request");
  	 	return;
  	}
  	var url= "lisaavertailuun.php";
  	url=url+"?vid="+str;
    url=url+"&toimitussisalto="+toimitussisalto;
  	url=url+"&sid="+Math.random();
  	xmlHttp[xmlNum].onreadystatechange = function () {
  		stateLisaavertailuun(reload, xmlNum, palkki);
  	};
  	xmlHttp[xmlNum].open("GET",url,true);
  	xmlHttp[xmlNum].send(null);
  	var MyButton = 'toiminto'+str;
    //Lisätäänkö funktioon palkki kohtaa vai ei
    if(palkki == true)
    {
      document.getElementById(MyButton).innerHTML = '<input id="Poista" type="button" value="Poista vertailusta" onclick="PoistaVertailusta(' + str + ', false, true)"/>';
    }
    else
    {
      document.getElementById(MyButton).innerHTML = '<input id="Poista" type="button" value="Poista vertailusta" onclick="PoistaVertailusta(' + str + ', false, false)"/>';
    }
  }

  function PoistaVertailusta(str, reload, palkki)
  { 
  	var xmlNum = GetXmlHttpObject();
  	if (xmlHttp[xmlNum] == null)
  	{
  		alert ("Browser does not support HTTP Request");
  	 	return;
  	}
    //Poistetaan vertailusta yksi
    if(window.vertailussa > 0)
    {
      window.vertailussa--;
    }
  	var url= "poistavartailusta.php";
  	url=url+"?vid="+str;
  	url=url+"&sid="+Math.random();
  	xmlHttp[xmlNum].onreadystatechange = function () {
  		statePoistaVertailusta(xmlNum, reload, palkki);
  	}; 
  	xmlHttp[xmlNum].open("GET",url,true);
  	xmlHttp[xmlNum].send(null);
    if(reload == false)
    {
      var MyButton = 'toiminto'+str;
      if(palkki == true)
      {
        document.getElementById(MyButton).innerHTML = '<input id="Lisaa" type="button" value="Lis&#228;&#228; vertailuun" onclick="LisaaVertailuun(' + str + ', false, 0, true)"/>';
      }
      else
      {
        document.getElementById(MyButton).innerHTML = '<input id="Lisaa" type="button" value="Lis&#228;&#228; vertailuun" onclick="LisaaVertailuun(' + str + ')"/>';
      }
    }
  }
  
  function TyhjennaVertailu()
  { 
  	var xmlNum = GetXmlHttpObject();
  	if (xmlHttp[xmlNum] == null)
  	{
  		alert ("Browser does not support HTTP Request");
  	 	return;
  	}
  	var url= "tyhjennavartailusta.php";
  	url=url+"?sid="+Math.random();
  	xmlHttp[xmlNum].onreadystatechange = function () {
  		stateTyhjennaVertailusta(xmlNum);
  	}; 
  	xmlHttp[xmlNum].open("GET",url,true); 
  	xmlHttp[xmlNum].send(null);
  }

  function stateLisaavertailuun(reload, xmlNum, palkki) 
  {  
  	if (xmlHttp[xmlNum].readyState == 4 || xmlHttp[xmlNum].readyState == "complete")
   	{ 
   		document.getElementById("vertailu").innerHTML = xmlHttp[xmlNum].responseText;
      if(reload != true && palkki == true)
      {
        document.getElementById("lisaa_vertailuun_ala").innerHTML = xmlHttp[xmlNum].responseText;
      }
  		//Ladataanko sivua uudestaan
  		if(reload == true)
  		{
  			window.location.reload();
  		}
  		xmlKohta[xmlNum] = 1;
 			xmlHttp[xmlNum] = null;
   	} 
  }

  function statePoistaVertailusta(xmlNum, reload, palkki) 
  {  
  	if (xmlHttp[xmlNum].readyState == 4 || xmlHttp[xmlNum].readyState == "complete")
   	{ 
   		document.getElementById("vertailu").innerHTML = xmlHttp[xmlNum].responseText;
      //Ladataanko sivua uudestaan
      if(reload != false)
      {
        window.location.reload();
      }
      else
      {
        if(palkki == true)
        {
          //Paivitetaan myos liikkuva alapalkki
          document.getElementById("lisaa_vertailuun_ala").innerHTML = xmlHttp[xmlNum].responseText;
        }
      }
      xmlKohta[xmlNum] = 1;
 			xmlHttp[xmlNum] = null;
   	} 
  }
  
  function stateTyhjennaVertailusta(xmlNum) 
  {  
  	if (xmlHttp[xmlNum].readyState == 4 || xmlHttp[xmlNum].readyState == "complete")
   	{
   		document.getElementById("vertailu").innerHTML = xmlHttp[xmlNum].responseText;
      xmlKohta[xmlNum] = 1;
 			xmlHttp[xmlNum] = null;
  		window.location.reload();
   	} 
  }

  /////////////////////////
  //PIKAVERTAILU///////////
  /////////////////////////
  function talovalmistajaValittu(valmistaja, kohta)
  {
  	//Ei tehda mitaan jos valmistajaa ei ole valittu
  	if(valmistaja == "eimitaan")
  	{
  		return false;
  	}	
  	var xmlNum = GetXmlHttpObject();
  	if (xmlHttp[xmlNum]==null)
  	{
  		alert ("Browser does not support HTTP Request");
  	 	return false;
  	}
  	//Leikataan kohdasta pois, niin ett� j�� vain numero(esim. talovalmistaja0, talovalmistaja1 ... -> 0, 1...)
  	kohta = kohta.slice(-1);
  	var url= "pikavertailu_ajax.php";
  	url=url+"?id="+kohta;
  	url=url+"&valmistaja="+valmistaja;
  	url=url+"&sid="+Math.random();
  	xmlHttp[xmlNum].onreadystatechange = function (){
  		stateTalovalmistajaValittu(valmistaja, kohta, xmlNum);
  	};
  
  	xmlHttp[xmlNum].open("GET",url,true);
  	xmlHttp[xmlNum].send(null);
  
  }

  function talomalliValittu(malli, i)
  {
  	if(malli == "eimitaan")
  	{
  		return false;
  	}
  	var xmlNum =GetXmlHttpObject();
  	if (xmlHttp==null)
  	{
  		alert ("Browser does not support HTTP Request");
  	 	return false;
  	}
  	//Leikataan i:sta pois, niin ett� j�� vain numero(esim. talomalli0, talomalli1 ... -> 0, 1...)
  	i = i.slice(-1);
  	
  	var url= "pikavertailu_ajax.php";
  	url=url+"?id="+i;
  	url=url+"&malli="+malli;
  	url=url+"&sid="+Math.random();
  	xmlHttp[xmlNum].onreadystatechange = function () {
  		stateTalomalliValittu(malli, i, xmlNum);
  	};
  	xmlHttp[xmlNum].open("GET",url,true);
  	xmlHttp[xmlNum].send(null);
  }



  function stateTalovalmistajaValittu(valmistaja, i, xmlNum)
  {
  	if (xmlHttp[xmlNum].readyState == 4 || xmlHttp[xmlNum].readyState == "complete")
  	{
  		
  		i = "talomalliPlace" + i;
  		document.getElementById(i).innerHTML = xmlHttp[xmlNum].responseText;
  		xmlKohta[xmlNum] = 1;
 			xmlHttp[xmlNum] = null;
  	}
  }


  function stateTalomalliValittu(malli, kohta, xmlNum)
  {
  	if(xmlHttp[xmlNum].readyState == 4 || xmlHttp[xmlNum].readyState == "complete")
  	{
  		kohta = "toimitussisaltoPlace" + kohta;
  		document.getElementById(kohta).innerHTML = xmlHttp[xmlNum].responseText;
      xmlKohta[xmlNum] = 1;
 			xmlHttp[xmlNum] = null;
  	}
  }


  function toimituslaajuusValittu(arvo, nimi, i, riveja, kohta)
  {
  	//Otetaan selville mista talomallista on kyse
  	var talomalli = "talomalli" + i;
  	talomalli = document.getElementById(talomalli).value;
  	var toimitussisalto = arvo;
  	
  	//Tarkastetaan ett� talomalli on todellakin valittu
  	if(talomalli != "eimitaan")
  	{
  		//Tarkistetaan onko tapauksessa talomallin lisays vai vaihto
  		if(riveja == 0)
  		{
  			LisaaVertailuun(talomalli, true, toimitussisalto);	//Pelkka lisays
  		}
  		else	//Vaihto
  		{
  			var xmlNum = GetXmlHttpObject();
  			if (xmlHttp[xmlNum] == null)
  			{
  				alert ("Browser does not support HTTP Request");
  				return false;
  			}
  			var url= "vaihdavertailtavaa.php";
  			url=url+"?toimitussisalto="+toimitussisalto;	//Mika toimitussisalto tallennetaa
  			url=url+"&talomalli="+talomalli;		//Mika talomalli tallennetaan
  			url=url+"&kohta="+kohta;			//Mika kohta korvataan uudella
  			url=url+"&sid="+Math.random();
  			xmlHttp[xmlNum].onreadystatechange = function () {
          stateVaihdaVertailua(xmlNum);
        };
  			xmlHttp[xmlNum].open("GET",url,true);
  			xmlHttp[xmlNum].send(null);
  			
  		}
  		//Ladataan sivu uudestaan
  	}	
  }

  function stateVaihdaVertailua(xmlNum) 
  {  
  	if (xmlHttp[xmlNum].readyState == 4 || xmlHttp[xmlNum].readyState == "complete")
   	{ 
   		//document.getElementById("talomalliPlace0").innerHTML = xmlHttp[xmlNum].responseText;
      xmlKohta[xmlNum] = 1;
 			xmlHttp[xmlNum] = null;
  		window.location.reload();
   	} 
  }
  ///////////////////////////
  //TALOVALMISTAJIEN LISTA///
  ///////////////////////////
  /*	eJarjestys - Minkä mukaan talovalmistajien lista on tällä hetkellä järjestetty
  *	nappi - Mitä järjestys linkkiä on painettu	
  */ 
  function talovalmistajaJarjesta(eJarjestys, nappi)
  {
  	xmlHttp=GetXmlHttpObject();
  	if (xmlHttp==null)
  	{
  		alert ("Browser does not support HTTP Request");
  	 	return;
  	}
  	//Päätetään uusi järjestys
  	var uusiJarjestys;
  	var asc = nappi + "asc";
  	var desc = nappi + "desc";
  	if(eJarjestys == asc)
  		{
  			uusiJarjestys = desc;
  		}
  		else
  		{
  			uusiJarjestys = asc;
  		}
  	var url= "talovalmistajat_ajax.php";
  	url=url+"?jarjesta="+uusiJarjestys;
  	url=url+"&sid="+Math.random();
  	xmlHttp.onreadystatechange = stateJarjestaTalovalmistajat;
  	xmlHttp.open("GET",url,true);
  	xmlHttp.send(null);
  }

  function JarjestaTalovalmistajat(Jarjestys)
  {
    window.location.href = 'index.php?page=talovalmistajat&jarj=' + Jarjestys;
  }

  function stateJarjestaTalovalmistajat() 
  {  
  	if (xmlHttp.readyState == 4 || xmlHttp.readyState == "complete")
   	{ 
   		document.getElementById("talovalmistajat_lista").innerHTML = xmlHttp.responseText;
   	} 
  }
  
  function arvotPotensseissa(kentta)
  {
    var pituus = document.getElementsByName(kentta).length;
    var i = 0;
    var arvo = 0;
    while(i < pituus)
    {
      if(document.getElementsByName(kentta)[i].checked)
      {
        arvo = arvo + Math.pow(2, (i + 1));
      }
      i++;
    }
    return arvo;
  }
  //////////////////////
  //TARKKA HAKU/////////
  //////////////////////
  //Tyyppi 0 = ajaxhaku
  //Tyyppi 1 = Tarkkahaku
  //Tyyppi 3 = Etusivun haku
  function suoritaHaku(tyyppi)
  {	
  	var xmlNum = GetXmlHttpObject();
  	if (xmlHttp[xmlNum] == null)
  	{
  		alert ("Browser does not support HTTP Request");
  	 	return;
  	}
    var hakutyyppi
    if(tyyppi == 0 || tyyppi == 1)
    {
      hakutyyppi = 1;
    }
    else
    {
      hakutyyppi = 3;
    }
    //Luetaan vain kyseiset tiedot jos ollaan tarkassa haussa
    if(tyyppi == 0 || tyyppi == 1)
    {
      //Katsotaan mitka kohdat maakunta listalta on valittu
      var maakunnat_temp = new Array();
      i = 0;
      j = 0;
      pituus = document.getElementById("maakunta").length;
      while(i < pituus)
      { 
        if(document.getElementById("maakunta").options[i].selected == true)
        {
        	maakunnat_temp[j] = document.getElementById("maakunta").options[i].value;
        	j++;
        }
        i++;
    	}
      var maakunnat = maakunnat_temp.join('~');
      
      //Katsotaan mitkä muoto kohdat on valittuna
      var muodot_temp = new Array();
      i = 0;
      j = 0;
      while(i <= 5)
      {
      	if(document.tarkkahaku.muoto[i].checked == true)
      	{
      		muodot_temp[j] = document.tarkkahaku.muoto[i].value;
      		j++;
      	}
      	i++;
      }
      var muodot = muodot_temp.join('~');
      
      //Haetaan rakennustavat
      var rakennustapa_temp = new Array();
      i = 0;
      j = 0;
      pituus = document.getElementById("rakennustapa").length;
      while(i < pituus)
      {
        if(document.getElementById("rakennustapa").options[i].selected == true)
        {
          rakennustapa_temp[j] = document.getElementById("rakennustapa").options[i].value;
          j++;
        }
        i++;
      }
      var rakennustapa = rakennustapa_temp.join('~');
      //Rakennusmateriaali
      var rakennusmateriaali_temp = new Array();
      i = 0;
      j = 0;
      pituus = document.getElementById("rakennusmateriaali").length;
      while(i < pituus)
      {
        if(document.getElementById("rakennusmateriaali").options[i].selected == true)
        {
          rakennusmateriaali_temp[j] = document.getElementById("rakennusmateriaali").options[i].value;
          j++;
        }
        i++;
      }
      var rakennusmateriaali = rakennusmateriaali_temp.join('~');
    }
    
    //Katsotaan mitka kohdat paikkakunta listalta on valittu
  	var paikkakunnat_temp = new Array();
  	i = 0;
  	j = 0;
  	pituus = document.getElementById("paikkakunta").length;
  	while(i < pituus)
  	{
  		if(document.getElementById("paikkakunta").options[i].selected == true)
  		{
  			paikkakunnat_temp[j] = document.getElementById("paikkakunta").options[i].value;
  			j++;
  		}
  		i++;
  	}
  	var paikkakunnat = paikkakunnat_temp.join('~');
    
  	//Katsotaan mitkä kohdat talovalmistaja listalta on valittu
  	var talovalmistajat_temp =  new Array();
  	var i = 0, j = 0;
  	var pituus = document.getElementById("valmistaja").length; //Kuinka monta listalta on valittu
  	while(i < pituus)
  	{
  		if(document.getElementById("valmistaja").options[i].selected == true) //onko kyseinen kohta valittu?
  		{
  			talovalmistajat_temp[j] = document.getElementById("valmistaja").options[i].value;	//jos on niin laitetaan kohdan arvo taulukkoon
  			j++;
  		}
  		i++;
  	}
  	//Liitetaan saadut arvot yhdeksi stringiksi(eroteltuna '~':lla) lahettamista varten
  	var talovalmistajat = talovalmistajat_temp.join('~');
  	
  	//Haetaan valitut Toimituslaajuudet
  	var toimituslaajuus_temp = new Array();
  	i = 0;
  	j = 0;
  	pituus = document.getElementById("toimituslaajuus").length;
  	while(i < pituus)
  	{
  		if(document.getElementById("toimituslaajuus").options[i].selected == true)
  		{
  			toimituslaajuus_temp[j] = document.getElementById("toimituslaajuus").options[i].value;
  			j++;
  		}
  		i++;
  	}
  	var toimituslaajuus = toimituslaajuus_temp.join('~');
  	

  
  	//Haetaan Hakusanan arvo
  	var hakusana = document.getElementById("hakusana").value;
    if(tyyppi == 0 || tyyppi  == 1)
    {
      //Haetaan kerrosten arvo
      var kerroksia = arvotPotensseissa("kerroksia");
    }
  	//Haetaan hinnan ala-arvo
  	var hintaala = document.getElementById("hintaala").value;
  	//Haetaan hinnan ylä-arvo
  	var hintayla = document.getElementById("hintayla").value;
  	//Haetaan huoneistoalan alaraja
  	var huoneistoalamin = document.getElementById("huoneistoalamin").value;
  	//Haetaan huoneistoalan ylaraja
  	var huoneistoalamax = document.getElementById("huoneistoalamax").value;
  	//Haetaan kerrostoalan alaraja
  	var kerrosalamin = document.getElementById("kerrosalamin").value;
  	//Haetaan kerrostoalan ylaraja
  	var kerrosalamax = document.getElementById("kerrosalamax").value;
  	//Haetaan Tilojen arvot
    var makuuhuone = arvotPotensseissa("Makuuhuone");
    if(tyyppi == 0 || tyyppi  == 1)
    {
      var olohuone = arvotPotensseissa("Olohuone");
      var takkahuone = arvotPotensseissa("Takkahuone");
      var vaatehuone = arvotPotensseissa("Vaatehuone");    
      var keittio = arvotPotensseissa("Keitti\u00f6"); //Unicode huom!
      var tupakeittio = arvotPotensseissa("Tupakeitti\u00f6");
      var ruokalutila = arvotPotensseissa("Ruokailutila");
      var kodinhoitohuone = arvotPotensseissa("Kodinhoitohuone");
      var pesuhuone = arvotPotensseissa("Pesuhuone");
      var sauna = arvotPotensseissa("Sauna");
      var wc = arvotPotensseissa("WC");
      var tuulikaappi = arvotPotensseissa("Tuulikaappi");
      var eteinen = arvotPotensseissa("Eteinen");
      var aula = arvotPotensseissa("Aula");
      var kuisti = arvotPotensseissa("Kuisti");
      var tekninentila = arvotPotensseissa("Tekninentila");
      var varasto = arvotPotensseissa("Varasto");
      var autotalli = arvotPotensseissa("Autotalli");
      var autokatos = arvotPotensseissa("Autokatos");
      var terassi = arvotPotensseissa("Terassi");
      var parveke = arvotPotensseissa("Parveke")
      var parvi = arvotPotensseissa("Parvi");
      var rinnetalo;
      if(document.getElementById("rinnetalo").checked){
        rinnetalo = 1;
      }
      else{
        rinnetalo = 0;
      }
      var kellari;
      if(document.getElementById("kellari").checked){
        kellari = 1;
      }
      else{
        kellari = 0;
      }
      var ylakertavaraus;
      if(document.getElementById("ylakertavaraus").checked){
        ylakertavaraus = 1;
      }
      else{
        ylakertavaraus = 0;
      }
    }
    //Paatetaan mika sivu ladataan
  	if(tyyppi == 0)
    {
      var url= "suorita_tarkkahaku.php";
    }
    if(tyyppi == 1 || tyyppi == 3)
    {
      var url= "tallenna_haku.php";
    }
    
  	url += "?talovalmistajat="+talovalmistajat;
  	url += "&hakusana="+hakusana;
    url += "&paikkakunnat="+paikkakunnat;
    url += "&toimituslaajuus="+toimituslaajuus;
  	url += "&hintaala="+hintaala;
  	url += "&hintayla="+hintayla;
  	url += "&huoneistoalamin="+huoneistoalamin;
  	url += "&huoneistoalamax="+huoneistoalamax;
  	url += "&kerrosalamin="+kerrosalamin;
  	url += "&kerrosalamax="+kerrosalamax;
    url += "&makuuhuone="+makuuhuone;
    url += "&hakutyyppi="+hakutyyppi;
    if(tyyppi == 0 || tyyppi == 1)
    {
      url += "&maakunnat="+maakunnat; 
      url += "&kerroksia="+kerroksia;
      url += "&rakennustapa="+rakennustapa;
      url += "&rakennusmateriaali="+rakennusmateriaali;
      url += "&muodot="+muodot;
      url += "&olohuone="+olohuone;
      url += "&takkahuone="+takkahuone;
      url += "&vaatehuone="+vaatehuone;
      url += "&keittio="+keittio;
      url += "&tupakeittio="+tupakeittio;
      url += "&ruokailutila="+ruokalutila;
      url += "&kodinhoitohuone="+kodinhoitohuone;
      url += "&pesuhuone="+pesuhuone;
      url += "&sauna="+sauna; 
      url += "&wc="+wc;
      url += "&tuulikaappi="+tuulikaappi;
      url += "&eteinen="+eteinen;
      url += "&aula="+aula;
      url += "&kuisti="+kuisti;
      url += "&tekninentila="+tekninentila;
      url += "&varasto="+varasto;
      url += "&autotalli="+autotalli;
      url += "&autokatos="+autokatos;
      url += "&terassi="+terassi;
      url += "&parveke="+parveke;
      url += "&parvi="+parvi;
      url += "&rinnetalo="+rinnetalo;
      url += "&kellari="+kellari;
      url += "&ylakertavaraus="+ylakertavaraus;
    }

  	
  	url=url+"&ajaxHaku=paalla"; //Ilmoitetaan suorita_tarkkahaku prosessille että kyseessa on ajax paivitys
  	url=url+"&sid="+Math.random();
    //Paatetaan mille toiminnolle tiedot lahetetaan
    if(tyyppi == 0)
    {
      xmlHttp[xmlNum].onreadystatechange = function () {
        statePaivitaHakujenMaara(xmlNum);
      };
    }
    else
    {
      xmlHttp[xmlNum].onreadystatechange = function () {
        stateTarkkaHaku(xmlNum, tyyppi);
      }; 
    }
  	xmlHttp[xmlNum].open("GET",url,true);
  	xmlHttp[xmlNum].send(null);
  }

  function statePaivitaHakujenMaara(xmlNum) 
  {  
  	if (xmlHttp[xmlNum].readyState == 4 || xmlHttp[xmlNum].readyState == "complete")
   	{ 
   		document.getElementById("tarkkahaku_tulos").innerHTML = xmlHttp[xmlNum].responseText;
      xmlKohta[xmlNum] = 1;
 			xmlHttp[xmlNum] = null;
   	} 
  }
  
  function stateTarkkaHaku(xmlNum, tyyppi)
  {
    if (xmlHttp[xmlNum].readyState == 4 || xmlHttp[xmlNum].readyState == "complete")
   	{
      xmlKohta[xmlNum] = 1;
 			xmlHttp[xmlNum] = null;
   		//Tietokantaan kirjoitus tehty, lataa talomallisto
      //document.getElementById("tarkkahaku_tulos2").innerHTML = xmlHttp[xmlNum].responseText;
      if(tyyppi == 1)
        window.location = "index.php?page=talomallisto&rajaus=tarkkahaku&jarjestys=hinta&suunta=asc";
      else
        window.location = "index.php?page=talomallisto&rajaus=etusivuhaku&jarjestys=hinta&suunta=asc";
   	} 
  }

  function tyhjennaTarkkaHaku()
  {
    var xmlNum = GetXmlHttpObject();
  	if (xmlHttp[xmlNum]==null)
  	{
  		alert ("Browser does not support HTTP Request");
  	 	return;
  	}
    var hakutyyppi = 1; //Poistetaan tarkkahaku
    var url= "tyhjenna_haku.php";
    url += "?hakutyyppi="+hakutyyppi;
    url=url+"&sid="+Math.random();
  	xmlHttp[xmlNum].onreadystatechange = function () {
        stateTyhjennaHaku(xmlNum);
    };
  	xmlHttp[xmlNum].open("GET",url,true);
  	xmlHttp[xmlNum].send(null);
  }
  
  function stateTyhjennaHaku(xmlNum) 
  {  
  	if (xmlHttp[xmlNum].readyState == 4 || xmlHttp[xmlNum].readyState == "complete")
   	{
      xmlKohta[xmlNum] = 1;
 			xmlHttp[xmlNum] = null;
      //document.getElementById("tarkkahaku_tulos2").innerHTML = xmlHttp[xmlNum].responseText; //debug
   		document.tarkkahaku.reset();
      //Lopuksi viela ajetaan maakunnan muutos
      maakuntaValittu(1);
   	} 
  }

  function maakuntaValittu(ajaxPaalla)
  {
    var ajaxsuoritus = true;
    var xmlNum = GetXmlHttpObject();
  	if (xmlHttp[xmlNum] == null)
  	{
  		alert ("Browser does not support HTTP Request");
  	 	return;
  	}
    //Haetaan mitkä maakunnat on valittu
    var maakunnat_temp = new Array();
    i = 0;
    j = 0;
    pituus = document.getElementById("maakunta").length;
    while(i < pituus)
    {
      if(document.getElementById("maakunta").options[i].selected == true)
      {
        maakunnat_temp[j] = document.getElementById("maakunta").options[i].value;
        j++;
      }
      i++;
    }
    var maakunnat = maakunnat_temp.join('~');
    var url = "paikkakunnat_ajax.php";
    url += "?maakunnat="+maakunnat;
    url += "&ajaxsuoritus="+ajaxsuoritus;
    url += "&ajaxPaalla="+ajaxPaalla;
    url += "&sid="+Math.random();
  	xmlHttp[xmlNum].onreadystatechange = function () {
        stateMaakuntaValittu(xmlNum);
    };
  	xmlHttp[xmlNum].open("GET",url,true);
  	xmlHttp[xmlNum].send(null);
  }
  
  function stateMaakuntaValittu(xmlNum) 
  {  
  	if (xmlHttp[xmlNum].readyState == 4 || xmlHttp[xmlNum].readyState == "complete")
   	{
      document.getElementById("paikkakunnat_place").innerHTML = xmlHttp[xmlNum].responseText;
      suoritaHaku(0);
      xmlKohta[xmlNum] = 1;
 			xmlHttp[xmlNum] = null;
   	} 
  }
  function onkoEnterPainettu(e)
  {
    var painettu;
    //Luetaan mita nappia on painettu
    if(window.event)
    {
      painettu = e.keyCode
    }
    else if(e.which) 
    {
      painettu = e.which
    }
    if(painettu == 13) //Jos enter painettu, suoritetaan haku.
    {
      suoritaHaku(1);
    }
  }
  
  function tyhjennaEtusivuHaku()
  {
    var xmlNum = GetXmlHttpObject();
  	if (xmlHttp[xmlNum]==null)
  	{
  		alert ("Browser does not support HTTP Request");
  	 	return;
  	}
    var hakutyyppi = 1; //Poistetaan tarkkahaku
    var url= "tyhjenna_haku.php";
    url += "?hakutyyppi="+hakutyyppi;
    url=url+"&sid="+Math.random();
  	xmlHttp[xmlNum].onreadystatechange = function () {
        stateTyhjennaEtusivuHaku(xmlNum);
    };
  	xmlHttp[xmlNum].open("GET",url,true);
  	xmlHttp[xmlNum].send(null);
  }
  function stateTyhjennaEtusivuHaku(xmlNum) 
  {  
  	if (xmlHttp[xmlNum].readyState == 4 || xmlHttp[xmlNum].readyState == "complete")
   	{
      xmlKohta[xmlNum] = 1;
 			xmlHttp[xmlNum] = null;
   		document.etusivuhaku.reset();
   	} 
  }
  function suoritaPikahaku()
  {
    var xmlNum = GetXmlHttpObject();
  	if (xmlHttp[xmlNum] == null)
  	{
  		alert ("Browser does not support HTTP Request");
  	 	return;
  	}
    var hakutyyppi = 2;
    var paikkakunta = document.getElementById("paikkakuntaselect").value;
    var talovalmistaja = document.getElementById("talovalmistajaselect").value;
    var toimituslaajuus = document.getElementById("toimituslaajuusselect").value;
    var huoneistoala = document.getElementById("huoneistoalaselect").value;
    var kerrosala = document.getElementById("kerrosalaselect").value;
    var huoneita = document.getElementById("huoneitaselect").value;
    var kerroksia = document.getElementById("kerroksiaselect").value;
    //Luetaan hintatiedot
    var hinta = document.getElementById("hintaselect").value;
    var hinnat = new Array();
    hinnat = hinta.split("-");
    var hintaala = hinnat[0];
    var hintayla = hinnat[1];
    
    //Luetaan huoneistoala tiedot
    var huoneistoala = document.getElementById("huoneistoalaselect").value;
    var huoneistoalat = new Array();
    huoneistoalat = huoneistoala.split("-");
    var huoneistoalamin = huoneistoalat[0];
    var huoneistoalamax = huoneistoalat[1];
    
    var kerrosala = document.getElementById("kerrosalaselect").value;
    var kerrosalat = new Array();
    kerrosalat = kerrosala.split("-");
    var kerrosalamin = kerrosalat[0];
    var kerrosalamax = kerrosalat[1];
    
    //Huom! nimet pitaa olla get_tarkkahaku.php mukaisia
    var url = "tallenna_haku.php";
    url += "?paikkakunnat="+paikkakunta;
    url += "&talovalmistajat="+talovalmistaja;
    url += "&toimituslaajuus="+toimituslaajuus;
    url += "&huoneistoalamin="+huoneistoalamin;
    url += "&huoneistoalamax="+huoneistoalamax;
    url += "&kerrosalamin="+kerrosalamin;
    url += "&kerrosalamax="+kerrosalamax;
    url += "&hintaala="+hintaala;
    url += "&hintayla="+hintayla;
    url += "&makuuhuone="+huoneita;
    url += "&kerroksia="+kerroksia
    url += "&hakutyyppi="+hakutyyppi;
    url += "&sid="+Math.random();
  	xmlHttp[xmlNum].onreadystatechange = function () {
        statesuoritaPikahaku(xmlNum);
    };
  	xmlHttp[xmlNum].open("GET",url,true);
  	xmlHttp[xmlNum].send(null);
  }
  
  function statesuoritaPikahaku(xmlNum)
  {
    if (xmlHttp[xmlNum].readyState == 4 || xmlHttp[xmlNum].readyState == "complete")
   	{
      xmlKohta[xmlNum] = 1;
 			xmlHttp[xmlNum] = null;
      window.location = "index.php?page=talomallisto&rajaus=pikahaku&jarjestys=hinta&suunta=asc";
   	} 
  }
  
  function startTarkkahakuPalkki()
  {
    setInterval("TarkkahakuPalkki()", 50); //Kuinka usein TarkkahakuPalkki suoritetaan
  }
  function TarkkahakuPalkki()
  {
    //Nayton koon selvittaminen
    var korkeus = 0, leveys = 0;
    if(typeof(window.innerWidth) == 'number')
    {
      //Ei IE selaimet
      leveys = window.innerWidth;
      korkeus = window.innerHeight;
    }
    else if(document.documentElement && (document.documentElement.clientWidth || document.documentElement.clientHeight))
    {
      //IE
      leveys = document.documentElement.clientWidth;
      korkeus = document.documentElement.clientHeight;
    }
    
    //Selvitetaan minka verran ruutua on scrollattu
    var scrollLeveys = 0, scrollKorkeus = 0;
    if(typeof(window.pageYOffset) == 'number')
    {
      //Netscape yhteensopiva
      scrollKorkeus = window.pageYOffset;
      scrollLeveys = window.pageXOffset;
    }
    else if(document.body && (document.body.scrollLeft || document.body.scrollTop))
    {
      //DOM yhteensopiva
      scrollKorkeus = document.body.scrollTop;
      scrollLeveys = document.body.scrollLeft;
    }
    else if(document.documentElement && (document.documentElement.scrollLeft || document.documentElement.scrollTop))
    {
      //IE6 yhteensopiva
      scrollKorkeus = document.documentElement.scrollTop;
      scrollLeveys = document.documentElement.scrollLeft;
    }
    
    //alert("Scrollattu X: " + scrollLeveys + " Scrollattu Y: " + scrollKorkeus + " ");
    //Paatetaan millatavalla hakupalkki naytetaan
    if(scrollKorkeus > 63)
    {
      //Muutetaan itse palkin paikkaa
      document.getElementById("tarkkahaku_palkki").style.position = "fixed";
      document.getElementById("tarkkahaku_palkki").style.top = "0px";
      document.getElementById("tarkkahaku_palkki").style.left = "170px";
      /*document.getElementById("tarkkahaku_palkki").style.backgroundColor = "#ff0000";*/
    }
    if(scrollKorkeus < 63)
    {
      document.getElementById("tarkkahaku_palkki").style.position = "absolute";
      document.getElementById("tarkkahaku_palkki").style.top = "33px";
      document.getElementById("tarkkahaku_palkki").style.left = "7px";
      /*document.getElementById("tarkkahaku_palkki").style.backgroundColor = "#00ff00";*/
    }
  }
  function startVertailuPalkki()
  {
    setInterval("VertailuPalkki()", 50);
  }
  function VertailuPalkki()
  {
    var scrollLeveys = 0, scrollKorkeus = 0;
    if(typeof(window.pageYOffset) == 'number')
    {
      //Netscape yhteensopiva
      scrollKorkeus = window.pageYOffset;
      scrollLeveys = window.pageXOffset;
    }
    else if(document.body && (document.body.scrollLeft || document.body.scrollTop))
    {
      //DOM yhteensopiva
      scrollKorkeus = document.body.scrollTop;
      scrollLeveys = document.body.scrollLeft;
    }
    else if(document.documentElement && (document.documentElement.scrollLeft || document.documentElement.scrollTop))
    {
      //IE6 yhteensopiva
      scrollKorkeus = document.documentElement.scrollTop;
      scrollLeveys = document.documentElement.scrollLeft;
    }
    
    //Selvitetaan liikkuvan palkin korkeus
    var korkeus = document.getElementById("vertailu_palkki").offsetHeight;
    //Selvitetaan alaosan nykyinen paikka, joudutaan kaymaan kaikki "vanhemmat" lapi
    var alaosa = document.getElementById("vertailu_alaosa");
    var alaosayla = 0, alaosavasen = 0;
    while(alaosa)
    {
      alaosavasen += alaosa.offsetLeft;
      alaosayla += alaosa.offsetTop;
      alaosa = alaosa.offsetParent;
    }
    //Muutetaan alaosan paikkaa, niin etta liikkuva palkille tulee tilaa
    document.getElementById("vertailu_alaosa").style.position = "relative";
    document.getElementById("vertailu_alaosa").style.top = korkeus + "px";
    
    //Palkki liikkuu scrollauksen mukana
    if(scrollKorkeus > alaosayla - korkeus)
    {
      //Muutetaan palkin paikkaa
      document.getElementById("vertailu_palkki").style.position = "fixed";
      document.getElementById("vertailu_palkki").style.top = "0px";
      //Otetaan huomioon sivuttausscrollaus
      document.getElementById("vertailu_palkki").style.left = alaosavasen - scrollLeveys + "px";
    }
    //Palkki ei liiku scrollauksen mukana
    if(scrollKorkeus <= alaosayla - korkeus)
    {
      document.getElementById("vertailu_palkki").style.position = "absolute";
      //Lasketaan paikka palkille
      yla = document.getElementById("vertailu_alaosa").offsetTop - korkeus;
      yla = yla + "px"
      document.getElementById("vertailu_palkki").style.top = yla;
      document.getElementById("vertailu_palkki").style.left = document.getElementById("vertailu_alaosa").style.left;
    }     
  }
  function jarjestaTalomallisto()
  {
    //Haetaan valintojen tiedot
    var rajaus = document.getElementById("rajausselect").value;
    var jarjestys = document.getElementById("jarjestysselect").value;
    var suunta;
    if(document.getElementById("jarjestasuuntanouseva").checked)
    {
      suunta = "asc";
    }
    if(document.getElementById("jarjestasuuntalaskeva").checked)
    {
      suunta = "desc";
    }
    window.location = "index.php?page=talomallisto&rajaus=" + rajaus + "&jarjestys=" + jarjestys + "&suunta=" + suunta;
  }
  
  function alustaVertailuTiedot(str)
  {
    //Tehdaan globaali muuttuja
    window.vertailussa = str;
  }
  
  function lahetaYhteydenotto()
  {
    
    var xmlNum = GetXmlHttpObject();
  	if (xmlHttp[xmlNum] == null)
  	{
  		alert ("Browser does not support HTTP Request");
  	 	return;
  	}
    var Yritys = document.getElementById("yritystext").value;
    var Talomalli = document.getElementById("talomallitext").value;
    var Nimi = document.getElementById("nimitext").value;
    var Osoite = document.getElementById("osoitetext").value;
    var Postinumero = document.getElementById("postinumerotext").value;
    var Postitoimipaikka = document.getElementById("postitoimipaikkatext").value;
    var Puhelin = document.getElementById("puhelintext").value;
    var Email = document.getElementById("emailtext").value;
    var Viesti = document.getElementById("viestitext").value;
	var Tontti = document.getElementById("tonttiselect").value;
    var TontinSijainti = document.getElementById("tonttitext").value;
	var Rakennusvuosi = document.getElementById("rakennusvuosiselect").value;
	//var Esite = document.getElementById("esiteselect").value;

	
    //Huom! nimet pitaa olla get_tarkkahaku.php mukaisia
    var url = "lahetayhteydenotto.php";
    url += "?tid=" + Talomalli;
    url += "&yid=" + Yritys;
    url += "&nimi=" + Nimi;
    url += "&osoite=" + Osoite;
    url += "&postinumero=" + Postinumero;
    url += "&postitoimipaikka=" + Postitoimipaikka;
    url += "&puhelin=" + Puhelin;
    url += "&email=" + Email;
    url += "&viesti=" + Viesti;
	url += "&tontti=" + Tontti;
	url += "&tontinsijainti=" + TontinSijainti;
	url += "&rakennusvuosi=" + Rakennusvuosi;
	//url += "&esite=" + Esite;
    url += "&sid="+Math.random();

	
  	xmlHttp[xmlNum].onreadystatechange = function () {
        stateLahetaYhteydenotto(xmlNum, Talomalli);
    };
  	xmlHttp[xmlNum].open("GET",url,true);
  	xmlHttp[xmlNum].send(null);
    //window.location.href='index.php?page=talomalli&&id=' + Talomalli;
  }
  
  function stateLahetaYhteydenotto(xmlNum, Talomalli)
  {
    if (xmlHttp[xmlNum].readyState == 4 || xmlHttp.readyState == "complete")
   	{
	  //document.getElementById("kuvaus").innerHTML = xmlHttp[xmlNum].responseText;
      xmlKohta[xmlNum] = 1;
 	  xmlHttp[xmlNum] = null;
   	} 
  }
  function startSiirryVertailuunPalkki()
  {
    setInterval("SiirryVertailuunPalkki()", 50);
  }
  function SiirryVertailuunPalkki()
  {
    var scrollLeveys = 0, scrollKorkeus = 0;
    if(typeof(window.pageYOffset) == 'number')
    {
      //Netscape yhteensopiva
      scrollKorkeus = window.pageYOffset;
      scrollLeveys = window.pageXOffset;
    }
    else if(document.body && (document.body.scrollLeft || document.body.scrollTop))
    {
      //DOM yhteensopiva
      scrollKorkeus = document.body.scrollTop;
      scrollLeveys = document.body.scrollLeft;
    }
    else if(document.documentElement && (document.documentElement.scrollLeft || document.documentElement.scrollTop))
    {
      //IE6 yhteensopiva
      scrollKorkeus = document.documentElement.scrollTop;
      scrollLeveys = document.documentElement.scrollLeft;
    }
    //Luetaan content2:sen paikka, jotta tiedetaan kuinka paljon pitaa siirtya vasemmalle
    var content2 = document.getElementById("content2");
    var content2yla = 0, content2vasen = 0;
    while(content2)
    {
      content2vasen += content2.offsetLeft;
      content2yla += content2.offsetTop;
      content2 = content2.offsetParent;
    }
    //Luetaan block4:sen paikka
    var block4 = document.getElementById("Block4");
    var block4yla = 0, block4vasen = 0;
    while(block4)
    {
      block4vasen += block4.offsetLeft;
      block4yla += block4.offsetTop;
      block4 = block4.offsetParent;
    }
    //Palkki "paikoillaan"
    if(scrollKorkeus < (block4yla + document.getElementById("Block4").offsetHeight))
    {
      document.getElementById("siirry_vertailuun_ala").style.position = "absolute";
      document.getElementById("siirry_vertailuun_ala").style.top = (block4yla + document.getElementById("Block4").offsetHeight - 28) + "px";
      document.getElementById("siirry_vertailuun_ala").style.left = (-1 * content2vasen) + "px";
    }
    else
    {
      document.getElementById("siirry_vertailuun_ala").style.position = "fixed";
      document.getElementById("siirry_vertailuun_ala").style.top = "0px";
      document.getElementById("siirry_vertailuun_ala").style.left = "0px";
    }
    
  }
  function startSelitteetPalkki()
  {
    setInterval("SelitteetPalkki()", 50);
  }
  function SelitteetPalkki()
  { 
    var scrollLeveys = 0, scrollKorkeus = 0;
    if(typeof(window.pageYOffset) == 'number')
    {
      //Netscape yhteensopiva
      scrollKorkeus = window.pageYOffset;
      scrollLeveys = window.pageXOffset;
    }
    else if(document.body && (document.body.scrollLeft || document.body.scrollTop))
    {
      //DOM yhteensopiva
      scrollKorkeus = document.body.scrollTop;
      scrollLeveys = document.body.scrollLeft;
    }
    else if(document.documentElement && (document.documentElement.scrollLeft || document.documentElement.scrollTop))
    {
      //IE6 yhteensopiva
      scrollKorkeus = document.documentElement.scrollTop;
      scrollLeveys = document.documentElement.scrollLeft;
    }
    //Luetaan block6:sen paikka, jotta tiedetaan kuinka paljon pitaa siirtya vasemmalle
    var block6 = document.getElementById("Block6");
    var block6yla = 0, block6vasen = 0;
    while(block6)
    {
      block6vasen += block6.offsetLeft;
      block6yla += block6.offsetTop;
      block6 = block6.offsetParent;
    }
    //Luetaan block4:sen paikka
    var block4 = document.getElementById("Block4");
    var block4yla = 0, block4vasen = 0;
    while(block4)
    {
      block4vasen += block4.offsetLeft;
      block4yla += block4.offsetTop;
      block4 = block4.offsetParent;
    }
    //Palkki paikoillaan
    if(scrollKorkeus < (block4yla + document.getElementById("Block4").offsetHeight))
    {
      document.getElementById("selitteet_palkki").style.position = "absolute";
      document.getElementById("selitteet_palkki").style.top = (block4yla + document.getElementById("Block4").offsetHeight - 28) + "px";
      document.getElementById("selitteet_palkki").style.left = (0 - block6vasen) + "px";
    }
    //Palkki "liikkeessä"
    else
    {
      document.getElementById("selitteet_palkki").style.position = "fixed";
      document.getElementById("selitteet_palkki").style.top = "0px";
      document.getElementById("selitteet_palkki").style.left = (0 - scrollLeveys) + "px";
    }
  }
  
  function SivumaaraMuuta(maara)
  {
    var xmlNum = GetXmlHttpObject();
  	if (xmlHttp[xmlNum]==null)
  	{
  		alert ("Browser does not support HTTP Request");
  	 	return;
  	}
    var url = "muuta_sivutusta.php";
    url += "?maara="+maara;
    url += "&sid="+Math.random();
    xmlHttp[xmlNum].onreadystatechange = function () {
        stateSivumaaraMuuta(xmlNum);
    };
  	xmlHttp[xmlNum].open("GET",url,true);
  	xmlHttp[xmlNum].send(null);
  }
  function stateSivumaaraMuuta(xmlNum) 
  {  
  	if (xmlHttp[xmlNum].readyState == 4 || xmlHttp[xmlNum].readyState == "complete")
   	{
      xmlKohta[xmlNum] = 1;
 			xmlHttp[xmlNum] = null;
      var uusosote = "";
      uusosote += window.location;
      uusosote = uusosote.split("&pageid")[0];
      window.location = uusosote;
   	} 
  }
  
	var tm_palkki_vaihto = false;
  function startTalomalliPalkki(){
    setInterval("TalomalliPalkki()", 50);
  }
  function TalomalliPalkki(){
    var scrollLeveys = 0, scrollKorkeus = 0;
    if(typeof(window.pageYOffset) == 'number'){
      //Netscape yhteensopiva
      scrollKorkeus = window.pageYOffset;
      scrollLeveys = window.pageXOffset;
    }else if(document.body && (document.body.scrollLeft || document.body.scrollTop)){
      //DOM yhteensopiva
      scrollKorkeus = document.body.scrollTop;
      scrollLeveys = document.body.scrollLeft;
    }else if(document.documentElement && (document.documentElement.scrollLeft || document.documentElement.scrollTop)){
      //IE6 yhteensopiva
      scrollKorkeus = document.documentElement.scrollTop;
      scrollLeveys = document.documentElement.scrollLeft;
    }
    
    //Selvitetaan liikkuvan palkin korkeus
    var korkeus = document.getElementById("talomalli_palkki").offsetHeight;
    //Selvitetaan alaosan nykyinen paikka, joudutaan kaymaan kaikki "vanhemmat" lapi
    var alaosa = document.getElementById("talomalli_alaosa");
    var alaosayla = 0, alaosavasen = 0;
    while(alaosa){
      alaosavasen += alaosa.offsetLeft;
      alaosayla += alaosa.offsetTop;
      alaosa = alaosa.offsetParent;
    }
    //Muutetaan alaosan paikkaa, niin etta liikkuva palkille tulee tilaa
    document.getElementById("talomalli_alaosa").style.position = "relative";
    document.getElementById("talomalli_alaosa").style.top = 91 + 130 + "px"; //korkeus -> 91
    
    //Palkki liikkuu scrollauksen mukana
    if(scrollKorkeus > alaosayla - 91){	//korkeus -> 91
			if(tm_palkki_vaihto == false){
				$('#talomalli_palkki').find('.palkki_piilotettava').hide();
				$('#talomalli_palkki').hover(
				function() {
					$(this).find('.palkki_piilotettava').show();
				},
				function() {
					$(this).find('.palkki_piilotettava').hide();
				});
				tm_palkki_vaihto = true;
			}else{
				;
			}
      //Muutetaan palkin paikkaa
      document.getElementById("talomalli_palkki").style.position = "fixed";
      document.getElementById("talomalli_palkki").style.top = "0px";
    }
    //Palkki ei liiku scrollauksen mukana
    if(scrollKorkeus <= alaosayla - 91){ //korkeus -> 91
			
			$('#talomalli_palkki').find('.palkki_piilotettava').show();
			$('#talomalli_palkki').unbind('mouseenter mouseleave');
			tm_palkki_vaihto = false;
			
			
      document.getElementById("talomalli_palkki").style.position = "absolute";
      //Lasketaan paikka palkille
      yla = document.getElementById("talomalli_alaosa").offsetTop - korkeus;
      yla = yla + "px"
      document.getElementById("talomalli_palkki").style.top = yla;
    }     
  }
  
  function MapInitialize()
  {
    if (document.getElementById("map_text1") != undefined)
    {
      MapInitialize1();
    }
    if (document.getElementById("map_text2") != undefined)
    {
      MapInitialize2();
    }
    if (document.getElementById("map_text3") != undefined)
    {
      MapInitialize3();
    }
    if (document.getElementById("map_text4") != undefined)
    {
      MapInitialize4();
    }
    if (document.getElementById("map_text5") != undefined)
    {
      MapInitialize5();
    }
    if (document.getElementById("map_text6") != undefined)
    {
      MapInitialize6();
    }
    if (document.getElementById("map_text7") != undefined)
    {
      MapInitialize7();
    }
    if (document.getElementById("map_text8") != undefined)
    {
      MapInitialize8();
    }
    if (document.getElementById("map_text9") != undefined)
    {
      MapInitialize9();
    }
    if (document.getElementById("map_text10") != undefined)
    {
      MapInitialize10();
    }
  }
  
  function MapInitialize1()
  {
    var i = 1;
    if (GBrowserIsCompatible())
    {
      var address = document.getElementById("map_text1").value;
      map1 = new GMap2(document.getElementById("map_canvas1"));
      geocoder = new GClientGeocoder();
      if (geocoder)
      {
        geocoder.getLatLng(address, function(point)
        {
          if (!point)
          {
            alert(address + " not found");
          }
          else
          {
            map1.setCenter(point, 13);
            var marker = new GMarker(point);
            map1.addOverlay(marker);
          }
        });
      }
    }
  }
  
  function MapInitialize2()
  {
    var i = 1;
    if (GBrowserIsCompatible())
    {
      var address = document.getElementById("map_text2").value;
      map2 = new GMap2(document.getElementById("map_canvas2"));
      geocoder = new GClientGeocoder();
      if (geocoder)
      {
        geocoder.getLatLng(address, function(point)
        {
          if (!point)
          {
            alert(address + " not found");
          }
          else
          {
            map2.setCenter(point, 13);
            var marker = new GMarker(point);
            map2.addOverlay(marker);
          }
        });
      }
    }
  }
  
  function MapInitialize3()
  {
    var i = 1;
    if (GBrowserIsCompatible())
    {
      var address = document.getElementById("map_text3").value;
      map3 = new GMap2(document.getElementById("map_canvas3"));
      geocoder = new GClientGeocoder();
      if (geocoder)
      {
        geocoder.getLatLng(address, function(point)
        {
          if (!point)
          {
            alert(address + " not found");
          }
          else
          {
            map3.setCenter(point, 13);
            var marker = new GMarker(point);
            map3.addOverlay(marker);
          }
        });
      }
    }
  }
  
  function MapInitialize4()
  {
    var i = 1;
    if (GBrowserIsCompatible())
    {
      var address = document.getElementById("map_text4").value;
      map4 = new GMap2(document.getElementById("map_canvas4"));
      geocoder = new GClientGeocoder();
      if (geocoder)
      {
        geocoder.getLatLng(address, function(point)
        {
          if (!point)
          {
            alert(address + " not found");
          }
          else
          {
            map4.setCenter(point, 13);
            var marker = new GMarker(point);
            map4.addOverlay(marker);
          }
        });
      }
    }
  }
  
  function MapInitialize5()
  {
    var i = 1;
    if (GBrowserIsCompatible())
    {
      var address = document.getElementById("map_text5").value;
      map5 = new GMap2(document.getElementById("map_canvas5"));
      geocoder = new GClientGeocoder();
      if (geocoder)
      {
        geocoder.getLatLng(address, function(point)
        {
          if (!point)
          {
            alert(address + " not found");
          }
          else
          {
            map5.setCenter(point, 13);
            var marker = new GMarker(point);
            map5.addOverlay(marker);
          }
        });
      }
    }
  }
  
  function MapInitialize6()
  {
    var i = 1;
    if (GBrowserIsCompatible())
    {
      var address = document.getElementById("map_text6").value;
      map6 = new GMap2(document.getElementById("map_canvas6"));
      geocoder = new GClientGeocoder();
      if (geocoder)
      {
        geocoder.getLatLng(address, function(point)
        {
          if (!point)
          {
            alert(address + " not found");
          }
          else
          {
            map6.setCenter(point, 13);
            var marker = new GMarker(point);
            map6.addOverlay(marker);
          }
        });
      }
    }
  }
  
  function MapInitialize7(){
    var i = 1;
    if (GBrowserIsCompatible()) {
      var address = document.getElementById("map_text7").value;
      map7 = new GMap2(document.getElementById("map_canvas7"));
      geocoder = new GClientGeocoder();
      if (geocoder) {
        geocoder.getLatLng(address, function(point){
          if (!point) {
            alert(address + " not found");
          }
          else {
            map7.setCenter(point, 13);
            var marker = new GMarker(point);
            map7.addOverlay(marker);
          }
        });
      }
    }
  }
    
  function MapInitialize8()
  {
    var i = 1;
    if (GBrowserIsCompatible())
    {
      var address = document.getElementById("map_text8").value;
      map8 = new GMap2(document.getElementById("map_canvas8"));
      geocoder = new GClientGeocoder();
      if (geocoder)
      {
        geocoder.getLatLng(address, function(point)
        {
          if (!point)
          {
            alert(address + " not found");
          }
          else
          {
            map8.setCenter(point, 13);
            var marker = new GMarker(point);
            map8.addOverlay(marker);
          }
        });
      }
    }
  }
    
  function MapInitialize9()
  {
    var i = 1;
    if (GBrowserIsCompatible())
    {
      var address = document.getElementById("map_text9").value;
      map9 = new GMap2(document.getElementById("map_canvas9"));
      geocoder = new GClientGeocoder();
      if (geocoder)
      {
        geocoder.getLatLng(address, function(point)
        {
          if (!point)
          {
            alert(address + " not found");
          }
          else
          {
            map9.setCenter(point, 13);
            var marker = new GMarker(point);
            map9.addOverlay(marker);
          }
        });
      }
    }
  }
    
  function MapInitialize10()
  {
    var i = 1;
    if (GBrowserIsCompatible())
    {
      var address = document.getElementById("map_text10").value;
      map10 = new GMap2(document.getElementById("map_canvas10"));
      geocoder = new GClientGeocoder();
      if (geocoder)
      {
        geocoder.getLatLng(address, function(point)
        {
          if (!point)
          {
            alert(address + " not found");
          }
          else
          {
            map10.setCenter(point, 13);
            var marker = new GMarker(point);
            map10.addOverlay(marker);
          }
        });
      }
    }
  }
  
  function haekuvaus(skid)
  {
  	var xmlNum = GetXmlHttpObject();
  	if (xmlHttp==null)
  	{
  		alert ("Browser does not support HTTP Request");
  	 	return;
  	}
    var url = "sanakirjahaekuvaus.php";
    url += "?skid="+skid;
    url += "&sid="+Math.random();
  	xmlHttp[xmlNum].onreadystatechange = function () {
        stateHaeKuvaus(xmlNum, skid);
    };
  	xmlHttp[xmlNum].open("GET",url,true);
  	xmlHttp[xmlNum].send(null);
  }
  
  function suljekuvaus(skid)
  {
  	var xmlNum = GetXmlHttpObject();
  	if (xmlHttp==null)
  	{
  		alert ("Browser does not support HTTP Request");
  	 	return;
  	}
    var url = "sanakirjahaekuvaus.php";
    url += "?skid=0";
    url += "&sid="+Math.random();
  	xmlHttp[xmlNum].onreadystatechange = function () {
        stateHaeKuvaus(xmlNum, skid);
    };
  	xmlHttp[xmlNum].open("GET",url,true);
  	xmlHttp[xmlNum].send(null);
  }
  
  function stateHaeKuvaus(xmlNum, skid)
  {  
  	if (xmlHttp[xmlNum].readyState == 4 || xmlHttp[xmlNum].readyState == "complete")
   	{
   		document.getElementById("kuvaus").innerHTML = xmlHttp[xmlNum].responseText;
   	} 
  }
  
  function haeyhteydenotto(tvid, tmid)
  {
  	var xmlNum = GetXmlHttpObject();
  	if (xmlHttp==null)
  	{
  		alert ("Browser does not support HTTP Request");
  	 	return;
  	}
    var url = "yhteydenotto.php";
    url += "?tvid="+tvid;
	url += "&tmid="+tmid;
    url += "&sid="+Math.random();
  	xmlHttp[xmlNum].onreadystatechange = function () {
        stateYhteydenotto(xmlNum, tmid);
    };
  	xmlHttp[xmlNum].open("GET",url,true);
  	xmlHttp[xmlNum].send(null);
  }
  
  function suljeyhteydenotto(tmid)
  {
  	var xmlNum = GetXmlHttpObject();
  	if (xmlHttp==null)
  	{
  		alert ("Browser does not support HTTP Request");
  	 	return;
  	}
    var url = "yhteydenotto.php";
    url += "?tvid=0&tmid=0";
    url += "&sid="+Math.random();
  	xmlHttp[xmlNum].onreadystatechange = function () {
        stateYhteydenotto(xmlNum, tmid);
    };
  	xmlHttp[xmlNum].open("GET",url,true);
  	xmlHttp[xmlNum].send(null);
  }
  
  function stateYhteydenotto(xmlNum, tmid)
  {  
    
  	if (xmlHttp[xmlNum].readyState == 4 || xmlHttp[xmlNum].readyState == "complete")
   	{
   		document.getElementById("kuvaus").innerHTML = xmlHttp[xmlNum].responseText;
   	} 
  }
  
  function kustannuslaskuri(sarake, skid)
  {
    var i = 1;
    var summa = 0; 
    var kentta1;
    var kentta2;  
    
    for(i=1; i <= 200; i++)
    {
      kentta1 = 'kustannus' + sarake + i;
      //alert('kentta1: ' + kentta1);
      if (document.getElementById(kentta1) != null)
      {
        if (document.getElementById(kentta1).value != '')
        {
          summa = summa - (-document.getElementById(kentta1).value);
        }
      }
    }
    //alert('summa: ' + summa);
    kentta2 = 'kustannussumma' + sarake;
    //alert('kentta2: ' + kentta2);
    document.getElementById(kentta2).value = summa;
  }
  

  function GetXmlHttpObject()
  {
    //Paatetaan mita kohtaa kaytetaan
    var xhrsend = xmlKohta.length;
    for (var i = 0;i < xmlHttp.length;i++)
    {
      //Etsitaan vapaita
      if (xmlKohta[i] == 1)
      {
        xmlKohta[i] = 0; //Kyseinen kohta kayttoon
        xhrsend = i;
        break;
      }
    }
  	xmlKohta[xhrsend] = 0; //Laitetaan kohta varatuksi
  	try
  	{
  		// Firefox, Opera 8.0+, Safari
  		xmlHttp[xhrsend] = new XMLHttpRequest(); 
  	}
  	catch (e)
  	{
  		//Internet Explorer
  		try
  		{
  			xmlHttp[xhrsend]=new ActiveXObject("Msxml2.XMLHTTP");
  	  }
  	 	catch (e)
  	  	{
  	  		xmlHttp[xhrsend]=new ActiveXObject("Microsoft.XMLHTTP");
  	  	}
  	}
  	return xhrsend; //Palautetaan mika kohta otettiin kayttoon
  }
  
 

