// JavaScript Document
// JScript File
var receiveReq = getXmlHttpRequestObject(); // Global http request object
var receiveReq1 = getXmlHttpRequestObject(); // Global http request object

//var MARKER=null;
var map = null;
var TBLNAME1="";
AREA1="";
var MARKERS = new Array();
var html = new Array();
///map load function

 function load() 
    {
      if (GBrowserIsCompatible())
       {
        map = new GMap2(document.getElementById("myMap"));
         map.addControl(new GLargeMapControl());
        map.setCenter(new GLatLng(37.97911,23.71446), 9);
        
        showManumants();
		
        }
    }

//Gets the browser specific XmlHttpRequest Object 

function getXmlHttpRequestObject() 
{
	 if (window.XMLHttpRequest) 
	 {
		return new XMLHttpRequest(); //Mozilla, Safari ...
	 }
	 else if (window.ActiveXObject) 
	 {	 
		return new ActiveXObject("Microsoft.XMLHTTP"); //IE
	 } 
	 else 
	 {
		//Display our error message
		alert("Your browser doesn't support the XmlHttpRequest object.");
	 }
}

////Show Hotels ****************************************************************************************


function createIcon1(src)
{
	var icon = new GIcon();
	icon.image = src;
	icon.shadow=null;
	icon.iconSize = new GSize(30, 27);
	icon.iconAnchor = new GPoint(6, 20);
	icon.infoWindowAnchor = new GPoint(10,5);	
	return icon;
}
/*////////////////////////////////////////////////////////////////////////	
	Creating Marker	*/
	
function createMarker(point,pid,des,pname,star,seedetails,area)
{
	var IMGsrc="";
	var SEEDetails="";
	
	if(area=="hotels")
	{
     IMGsrc='http://www.holiday-in-athens.com/photos/at/'+pid+'_main.jpg';
	 SEEDetails='http://www.holiday-in-athens.com/athens/'+seedetails+'.html';
	}
	// Halkidiki::hotels_hlk http://www.holiday-in-athens.com/photos/ha/11_main.jpg
	//http://www.holiday-in-athens.com/halkidiki/'+seedetails+'.html
	if(area=="hotels_hlk")
	{
     IMGsrc='http://www.holiday-in-athens.com/photos/ha/'+pid+'_main.jpg';
	 SEEDetails='http://www.holiday-in-athens.com/halkidiki/'+seedetails+'.html';
	}
	//hotels_isla">Greek Islands  http://www.holiday-in-athens.com/photos/islands/11_main.jpg
	//http://www.holiday-in-athens.com/greek-islands/agnantia-apartments-kefalonia-island.html
	if(area=="hotels_isla")
	{
     IMGsrc='http://www.holiday-in-athens.com/photos/islands/'+pid+'_main.jpg';
	 SEEDetails='http://www.holiday-in-athens.com/greek-islands/'+seedetails+'.html';
	}
	//hotels_thes"> Thessaloniki http://www.holiday-in-athens.com/photos/th/62_main.jpg
	//SEEDetails='http://www.holiday-in-athens.com/thessaloniki/tobacco-hotel-thessaloniki.html';
	if(area=="hotels_thes")
	{
     IMGsrc='http://www.holiday-in-athens.com/photos/th/'+pid+'_main.jpg';
	 SEEDetails='http://www.holiday-in-athens.com/thessaloniki/'+seedetails+'.html';
	}
	
	//hotels_othe">Other   http://www.holiday-in-athens.com/photos/other/85_main.jpg
	//
	if(area=="hotels_othe")
	{
     IMGsrc='http://www.holiday-in-athens.com/photos/other/'+pid+'_main.jpg';
	 SEEDetails='http://www.holiday-in-athens.com/other-greek-cities/'+seedetails+'.html';
	}
	
var str='<div class="imagebox"><div class="textPanel"><div class="topHeadHotel"><h1>'+pname+'</h1></div><div class="imageHotelBox"><img src="'+IMGsrc+'" alt="" /></div><div class="imageContent">'+star+'&nbsp Star&nbsp;'+des+'</div><div  class="moreinfo"><a href="'+SEEDetails+'" target="_blank">See Hotel Details</a> </div> </div></div>';
   
   icon=createIcon1("images/Hmarker.gif");
  var	marker = new GMarker(point, {icon:icon}); 
  // var marker = new GMarker(point);
    	
	GEvent.addListener(marker,"click",function(){marker.openInfoWindowHtml(str);
													
												  }); 	 
     return marker;        
}	
	
	
/*************** Creating table to show infowindow data	**************************/
/*function createMarker(point,pid,i,pname,star)
{
	
	
	
	var str = "";
	str = '<table class="marker" border="0" cellspacing="0" cellpadding="0">';	
	str += '<tr><td><b>NAME: </b></td><td>&nbsp;'+pname+'</td></tr>';
  	str += '<tr><td><b>ADDRESS: </b></td><td>&nbsp;'+pid+'</td></tr>';
  	//str += '<tr><td><b>PHONE: </b></td><td>&nbsp;</td></tr>';
    str += '<tr><td><b>Rank: </b></td><td>&nbsp;'+star+'</td></tr>';
   // str += '<tr><td><b>TYPE: </b></td><td>&nbsp;</td></tr>';
	str += '</table>';	
	//html[i] = str;
   
   icon=createIcon1("images/Hmarker.gif");
		var	marker = new GMarker(point, {icon:icon}); 
  // var marker = new GMarker(point);
    	
	GEvent.addListener(marker,"click",function(){ marker.openInfoWindowHtml(str);
													
												  }); 	 
     return marker;        
}*/

/*****************************Remove Marker'S ********************************/


/*****************************get images on google map ********************************/
function showManumants()
{
	var url = "xmlforshowimage.php?sid="+Math.random();
	getRequest1(url, MenumantsImage);
}

function MenumantsImage()
{
var xmlDoc;
 //alert(1);
  if(receiveReq1.readyState == 4) 
  {	 
     xmlDoc = receiveReq1.responseXML;	
	// alert(xmlDoc);
	var data = xmlDoc.getElementsByTagName('table');
	//alert(data.length);
	if(data.length >0)
	{		
		putImagesOnMap(xmlDoc);
	}	
  }  
}

function putImagesOnMap(xmlDoc)
{
var point;
var overlay1;
	var A_title = xmlDoc.getElementsByTagName("title");
	var A_iname = xmlDoc.getElementsByTagName("imagename");
	var A_type= xmlDoc.getElementsByTagName("type");
	var A_height= xmlDoc.getElementsByTagName("height");
	var A_width= xmlDoc.getElementsByTagName("width");
	var A_lat = xmlDoc.getElementsByTagName("lat");
	var A_lng = xmlDoc.getElementsByTagName("lng");	
	
	for(i=0; i< A_title.length ; i++)
	{
		var B_title = String(A_title[i].firstChild.nodeValue);
		var B_type = String(A_type[i].firstChild.nodeValue);
		var B_iname = String(A_iname[i].firstChild.nodeValue);
		var B_height = String(A_height[i].firstChild.nodeValue);
		var B_width = String(A_width[i].firstChild.nodeValue);
		
		var B_lat = String(A_lat[i].firstChild.nodeValue);
		var B_lng = String(A_lng[i].firstChild.nodeValue);			
		
		point = new GLatLng(B_lat,B_lng);
		
		// 1 for district
		//alert(B_iname);
		if(B_type==1)
		{		
		overlay1 = new EInsert(new GLatLng(B_lat,B_lng), "uploadimg/"+B_iname, new GSize(B_width, B_height),16);		
		}
		else
		{		
		overlay1 = new EInsert(new GLatLng(B_lat,B_lng), "uploadimg/"+B_iname, new GSize(B_width,B_height),15);
		}
		map.addOverlay(overlay1);
		//alert(overlay1+"btitle"+B_title);
//	var marker=new GMarker(point);		
//		var marker = createMarker(point,i,i,B_title,B_star);
//		map.addOverlay(marker);
	}
// map.setCenter(point, 11);
}



/****************************************************************************************************************
**********************************************Show Hotels info window**********************************************************
*******************************************************************************************************************/
function showHotels()
{
	
         keyw = document.getElementById("txtsearchcity").value;
         TBLNAME1=document.getElementById("ddlarea").value;
		  if(keyw=="")
          {
            alert("Enter a Hotel name.");
			return false;
          }	
		  
		  /*document.getElementById("chbAll").checked=true;  
              document.getElementById("chb5star").checked=false;   
              document.getElementById("chb4star").checked=false;      
             document.getElementById("chb3star").checked=false;      
             document.getElementById("chb2star").checked=false; */
	//var url = "xmlsearch.php?keyword=athens&sid="+Math.random();
	var url="xmlsearch.php?keyword="+keyw+"&tblname="+TBLNAME+"&type=2";
	getRequest(url, hotelsMarker);
}

function hotelsMarker()
{
var xmlDoc;
// tblname=document.getElementById("ddlarea").value;
	//1
	if(TBLNAME1=="hotels")
	{
		AREA1="athens";
	}
	//2
	if(TBLNAME1=="hotels_hlk")
	{
		AREA1="";
	}
	//3
	if(TBLNAME1=="hotels_isla")
	{
		AREA1="";
	}
	//4
	if(TBLNAME1=="hotels_thes")
	{
		AREA1="";
	}
	//5
	if(TBLNAME1=="hotels_othe")
	{
		AREA1="";
	}
	
  if(receiveReq.readyState == 4) 
  {	 
     xmlDoc = receiveReq.responseXML;	
	var data = xmlDoc.getElementsByTagName('item');	
	if(data.length >0)
	{		
		showHotelMarker(xmlDoc);
	}
	else
	alert("Hotels not found.");
  }  
}

function showHotelMarker(xmlDoc)
{	
	var A_hid = xmlDoc.getElementsByTagName("id");
	var A_title = xmlDoc.getElementsByTagName("title");
	var A_star = xmlDoc.getElementsByTagName("star");
	var A_des = xmlDoc.getElementsByTagName("description");
	var A_detailspage = xmlDoc.getElementsByTagName("detailspage");
	
	var A_lat = xmlDoc.getElementsByTagName("lat");
	var A_lng = xmlDoc.getElementsByTagName("lng");	
	var point;
	
	for(i=0; (i< A_title.length && i < 100); i++)
	{
		var B_hid = String(A_hid[i].firstChild.nodeValue);
		var B_title = String(A_title[i].firstChild.nodeValue);
		var B_star = String(A_star[i].firstChild.nodeValue);
		var B_des = String(A_des[i].firstChild.nodeValue);
		var B_detailspage = String(A_detailspage[i].firstChild.nodeValue);
		var B_lat = String(A_lat[i].firstChild.nodeValue);
		var B_lng = String(A_lng[i].firstChild.nodeValue);	
		
		point = new GLatLng(B_lat,B_lng);		
	
	var IMGsrc="";
	var SEEDetails="";
	area=	TBLNAME1;
	seedetails=B_detailspage;
	pid=B_hid;
	//athens http://www.holiday-in-athens.com/photos/at/22_main.jpg
	if(area=="hotels")
	{
     IMGsrc='http://www.holiday-in-athens.com/photos/at/'+pid+'_main.jpg';
	 SEEDetails='http://www.holiday-in-athens.com/athens/'+seedetails+'.html';
	}
	// Halkidiki::hotels_hlk http://www.holiday-in-athens.com/photos/ha/11_main.jpg
	//http://www.holiday-in-athens.com/halkidiki/'+seedetails+'.html
	if(area=="hotels_hlk")
	{
     IMGsrc='http://www.holiday-in-athens.com/photos/ha/'+pid+'_main.jpg';
	 SEEDetails='http://www.holiday-in-athens.com/halkidiki/'+seedetails+'.html';
	}
	//hotels_isla">Greek Islands  http://www.holiday-in-athens.com/photos/islands/11_main.jpg
	//http://www.holiday-in-athens.com/greek-islands/agnantia-apartments-kefalonia-island.html
	if(area=="hotels_isla")
	{
     IMGsrc='http://www.holiday-in-athens.com/photos/islands/'+pid+'_main.jpg';
	 SEEDetails='http://www.holiday-in-athens.com/greek-islands/'+seedetails+'.html';
	}
	//hotels_thes"> Thessaloniki http://www.holiday-in-athens.com/photos/th/62_main.jpg
	//SEEDetails='http://www.holiday-in-athens.com/thessaloniki/tobacco-hotel-thessaloniki.html';
	if(area=="hotels_thes")
	{
     IMGsrc='http://www.holiday-in-athens.com/photos/th/'+pid+'_main.jpg';
	 SEEDetails='http://www.holiday-in-athens.com/thessaloniki/'+seedetails+'.html';
	}
	
	//hotels_othe">Other   http://www.holiday-in-athens.com/photos/other/85_main.jpg
	//
	if(area=="hotels_othe")
	{
     IMGsrc='http://www.holiday-in-athens.com/photos/other/'+pid+'_main.jpg';
	 SEEDetails='http://www.holiday-in-athens.com/other-greek-cities/'+seedetails+'.html';
	}
	
	var str='<div class="imagebox"><div class="textPanel"><div class="topHeadHotel"><h1>'+B_title+'</h1></div><div class="imageHotelBox"><img src="'+IMGsrc+'" alt="" /></div><div class="imageContent">'+B_star+'&nbsp Star&nbsp;'+B_des+'</div><div  class="moreinfo"><a href="'+SEEDetails+'" target="_blank">See Hotel Details</a> </div> </div></div>';
   
	
	
	
	
 /* var str='<div class="imagebox"><div class="textPanel"><div class="topHeadHotel"><h1>'+B_title+'</h1></div><div class="imageHotelBox"><img src="http://www.holiday-in-athens.com/photos/ha/11_main.jpg" alt="" /></div><div class="imageContent">'+B_star+'&nbsp Star&nbsp;'+B_des+'</div><div class="moreinfo"><a href="http://www.holiday-in-athens.com/athens/'+B_detailspage+'.html" target="_blank">See Hotel Details</a></div></div></div>';			
		*/
		map.openInfoWindowHtml(point, str );	
	}
   
  
}


//************************get request "*******************************************************************
function getRequest(url, fun)
{ 
	 if (receiveReq.readyState == 4 || receiveReq.readyState == 0) 
	 {		   
	   receiveReq.open("GET", url, true);
	   receiveReq.onreadystatechange = fun; 
	   receiveReq.send(null);	
	 }   
}



function getRequest1(url, fun)
{ 
	 if (receiveReq1.readyState == 4 || receiveReq1.readyState == 0) 
	 {		   
	   receiveReq1.open("GET", url, true);
	   receiveReq1.onreadystatechange = fun; 
	   receiveReq1.send(null);	
	 }   
}


/*********************************************************************************************************************************
////////////////// HTML JS 
****************************************************************************************************************/


