﻿document.write("<br/><div id='googleMap'></div>");
var smallGoogleMap = "attraction";
genKey();
var gKey;
var latLngStr;
var zoom;

function genKey()
{
	try{var foo = location.host;
    if (foo.indexOf("dclook.com") >= 0) {
        gKey = "ABQIAAAAbhSakKmVgYRFe8nhqFz3hxQxXZDpUXWhukXnZ93F2jdtMm9BDRQSKeWqKq28oRvJvB2NToqEJNUw_g";
    } else if (foo.indexOf("ppo.discoverhongkong.com") >= 0) {
        gKey = "ABQIAAAAE8pLvlAMOyvGYNDLTKR5shTelpimIQ-A1-E_WB4VtkikYLeMpBS-Pzddc_coXxMZXeeVedq7vshCAw";
    } else if (foo.indexOf("dcthink.com") >= 0) {
        gKey = "ABQIAAAAbhSakKmVgYRFe8nhqFz3hxQjQJPuYsF49VKeS-wq9oFiDnKiChTM_xRA9pELgJUQiBXlz-qB0k_wJg";
    } else if (foo.indexOf("www.discoverhongkong.com") >= 0) {
        gKey = "ABQIAAAAGDvirhmJlDenI-96t3tKRhSxX70ilN-NfXGTDclMjcNDiUZeEBRwl84Nf2f1tktSBFR814dfNaE0qw";
    } else if (foo.indexOf("hktant74.hktb.com") >= 0) {
        gKey = "ABQIAAAAbhSakKmVgYRFe8nhqFz3hxSn1VizQd4R4syKcBuoVaYtO81J8RSLrLK21BBvfZQv0XF0Ok9P05xS5w";
    } else if (foo.indexOf("www.beta.discoverhongkong.com") >= 0) {
        gKey = "ABQIAAAAE8pLvlAMOyvGYNDLTKR5shTjw6_JoTcOFL7ZN6C_nPjXOA0XthTfuPtK0Q93-IlCYHPu9t46e1CpKw";
    } else if(foo.indexOf("202.85.167.167")>=0){
		gKey = "ABQIAAAAD1wtieAlkzqr8fg2psKL4xTXXwvXhaEQKtdoFKBOkLLF1nc7AhQSjfc3cHCRM8ARU4IRKHF8fTJ59w";
	} else if(foo.indexOf("www.hktb.com")>=0){
		gKey = "ABQIAAAA0HoUOO5tiBhg6-RyhbAgBhQOwDAj7ysPAt5oMFivZSM0arHtIRTcAhZSsyddnIPfw0hfJmNBVtixig";
	} else if (foo.indexOf("webserv1.discoverhongkong.com") >= 0){
        gKey = "ABQIAAAAD1wtieAlkzqr8fg2psKL4xTmAENUw_BtMvXYZT-81M5tKaBSixRPY11mewBG0X9K28E4ievABccLsw";
	} else if (foo.indexOf("webserv2.discoverhongkong.com") >= 0){
        gKey = "ABQIAAAAD1wtieAlkzqr8fg2psKL4xQEk1ntXvbiGEDFQDq4JdyBCs6MuBTEnRzEDPJyXblKx-Nqri4-Nq7GPA";
	} else if (foo.indexOf("discoverhongkong.com") >= 0){
        gKey = "ABQIAAAAGDvirhmJlDenI-96t3tKRhSxX70ilN-NfXGTDclMjcNDiUZeEBRwl84Nf2f1tktSBFR814dfNaE0qw";
	}
	
	document.write("<script src='http://maps.google.com/maps?file=api&amp;v=2&amp;key=" + gKey + "' type='text/javascript'></script>");
	}catch(err){alert(err+"abc");}
}

//document.write('<script language="javascript" src="http://maps.google.com/maps?file=api&amp;v=2&amp;key=ABQIAAAAbhSakKmVgYRFe8nhqFz3hxSn1VizQd4R4syKcBuoVaYtO81J8RSLrLK21BBvfZQv0XF0Ok9P05xS5w"></script>');



function getParameter(name) {
   var url = window.location.href;
   var paramsStart = url.indexOf("?");
   if(paramsStart != -1){
      var paramString = url.substr(paramsStart + 1);
      var tokenStart = paramString.indexOf(name);
      if(tokenStart != -1){
         paramToEnd = paramString.substr(tokenStart + name.length + 1);
         var delimiterPos = paramToEnd.indexOf("&");
         if(delimiterPos == -1){
            return paramToEnd;
         }
         else {
            return paramToEnd.substr(0, delimiterPos);
         }
      }
   }
}



/*
var qs = this.location.search;
	var QS = new Array;
	function parseQS(qstring) {
		if (qstring) {
			qstring = unescape(qstring.substr(1));
			pairs = qstring.split('&');
			for (a=0;a<pairs.length;a++) {
				bits = pairs[a].split('=');
				QS[bits[0]] = bits[1];
			}
		}
	}
	function QSvar(name) {
		if (QS[name]) {
			return(QS[name]);
		} else {
			return '';
		}
	}
	parseQS(top.location.search);

*/

/*

function exhibitMap(locationArray) {
	
	
	
      if (GBrowserIsCompatible()) {
        var map = new GMap2(document.getElementById("googleMap"));
        map.setCenter(new GLatLng(Number(locationArray[0]), Number(locationArray[1])), 11);
        map.addControl(new GSmallMapControl());
        map.addControl(new GMapTypeControl());

        // Create a base icon for all of our markers that specifies the
        // shadow, icon dimensions, etc.
        var baseIcon = new GIcon();
        //baseIcon.shadow = "http://www.google.com/mapfiles/shadow50.png";
        baseIcon.iconSize = new GSize(34, 33);
        baseIcon.iconAnchor = new GPoint(0, 34);

        // Creates a marker whose info window displays the letter corresponding
        // to the given index.
        function createMarker(point, index) {
          // Create a lettered icon for this point using our icon class
          var letter = String.fromCharCode("A".charCodeAt(0) + index);
          var letteredIcon = new GIcon(baseIcon);
          letteredIcon.image = "TB Google Map Icons/marker1.png";

          // Set up our GMarkerOptions object
          markerOptions = { icon:letteredIcon };
          var marker = new GMarker(point, markerOptions);


          return marker;
        }
        
       	 
		 var x=0;
		 var y=1;
		 for(var i=0;i<locationArray.lenght;i++){
		 	 
		 	
       
          var point1 = new GLatLng(Number(locationArray[x]), Number(locationArray[y]));
          map.addOverlay(createMarker(point1, 1));	
          x=x+2;
          y=x+1;    	
        }
     
      }
 
      
    }


*/

var _arrayLength;
	
function exhibitMap(locationArray){
	
	
_arrayLength=locationArray.length;

	if (GBrowserIsCompatible()) { 
		

      
      
      var nodeObj = document.getElementById('googleMap');
      
	  nodeObj.style.width = '250px';
	  nodeObj.style.height = '170px';
	  //alert('x:'+locationArray[0]);
	  //alert('y:'+locationArray[1]);
	  var map2 = new GMap2(nodeObj);
	  map2.addControl(new GSmallZoomControl());
      map2.setCenter(new GLatLng(Number(locationArray[0]),Number(locationArray[1])), 10);
      
	  var map = new GMap(nodeObj);
      map.addControl(new GSmallZoomControl());
      map.setCenter(new GLatLng(Number(locationArray[0]),Number(locationArray[1])), 10);
      
      var center = map.getCenterLatLng();
  	  latLngStr = center.y + ',' + center.x;
  	  
	  //var spin = map.getSpanLatLng();
	  //var spinXy = spin.y+','+spin.x;
      zoom = 11;
      //alert(zoom);
        //spin.replace("a"," ");
      
      function createMarker(point,gicon) {
        var marker = new GMarker(point,gicon);
               marker.myname = name;
               var opts = { maxWidth : 300 }; 
                   
              GEvent.addListener(map, "moveend", function() {
              	  var center = map.getCenterLatLng();
		  	  	  latLngStr = center.y + ',' + center.x;
				  
				  	 
				
              });
              
               GEvent.addListener(map, "zoom", function() {
              	  
				  
				  	  zoomPre = map.getZoomLevel();	
				  	  if(zoomPre<7) {
				  	  	  
				  	  	  zoom  = 11+(7-zoomPre);
				  	  	  
				  	  }else if(zoomPre>7){
				  	  	 
				  	  	  zoom  = 11-(zoomPre-7);
				  	  }
				  	
              });
              

              
          GEvent.addListener(marker, "click", function() {
          	  var url = "http://maps.google.com/maps?ll="+latLngStr+"&z="+zoom+"&key="+gKey+"&oi=map_misc&ct=api_logo";
         	window.open(url,'gmap')
        });   
        return marker;
      }
      //map.setCenter(new GLatLng(22.356740,114.152862), 9);	  
      //var point = new GLatLng(22.2705983044696,114.149582987219);
          var gicon = new GIcon();
          gicon.image = "/eng/images/map/icon_attractions.png";
          gicon.shadow = "";    
          gicon.iconSize = new GSize(34, 33);
          gicon.shadowSize = new GSize(0, 0);
          gicon.iconAnchor = new GPoint(1, 31);
          gicon.infoWindowAnchor = null;
          gicon.infoShadowAnchor = null;
         
		 var x=0;
		 var y=1;
		 
		 _arrayLength=parseFloat(_arrayLength)/2;
		
		 for(var i=0;i<parseFloat(_arrayLength);i++){
		 
          	var point1 = new GLatLng(parseFloat(locationArray[x]), parseFloat(locationArray[y]));
          	map.addOverlay(createMarker(point1, gicon));
          	x=x+2;
          	y=x+1; 
          		
        }

		  setTimeout('MakeCopyrightSmaller();', 2000); 
    }else {
      alert("Sorry, the Google Maps API is not compatible with this browser");
    }
}


function getParameters() {
   var params = new Array();
   var url = window.location.href;
   var paramsStart = url.indexOf("?");
   var hasMoreParams = true;
   if(paramsStart != -1){
     var paramString = url.substr(paramsStart + 1);
     var params = paramString.split("&");
     for(var i = 0 ; i < params.length ; i++) {
       var pairArray = params[i].split("=");
       if(pairArray.length == 2){
         params[pairArray[0]] = pairArray[1];
       }
     }
     return params;
   }
   return null;
}
	

 var http_request = false;
  
function genGoogleMapMenuObject(url) {
	try{
    url="/eng/xml/map/attractions.xml";
   
	if (document.getElementById)
	{
		var x = (window.ActiveXObject) ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest(); 

	}
	if (x)
	{
	 	x.onreadystatechange = function()
		{
			if (x.readyState == 4 && x.status == 200)
			{
				var root = x.responseXML.getElementsByTagName('markers').item(0);
				var section = root.getElementsByTagName('marker');
				var requestPath= window.location.href;
				//alert(requestPath);
			
				var xPoint=0;
				var yPoint=1;
				var list=new Array();
				
				for (var i=0; i< section.length; i++)
					{
					 ;		
						var webSite=section.item(i).getAttribute("website");
						if(requestPath.indexOf(webSite)>-1){
							
						
					        
							var name=section.item(i).getAttribute("name");
							//x position 		
							list[xPoint]=section.item(i).getAttribute("lat");							
 
							//y position 
							list[yPoint]=section.item(i).getAttribute("lng");
											
						
							 xPoint=xPoint+2;
							 yPoint=xPoint+1;
							 //break; 
						}
					}
					
					if(list.length>0&&list.length<3){
					  exhibitMap(list);					  
					}
					
			} 
		}
		x.open("GET", url, true);
		x.send(null);
		}
	 }catch(err){alert(err);}		
}




function MakeCopyrightSmaller()
	{
	  for(var i = 0; i < document.getElementById("googleMap").childNodes.length; ++i){
		if(document.getElementById("googleMap").childNodes[i].innerHTML.indexOf(String.fromCharCode(169))!== -1){
	      document.getElementById("googleMap").childNodes[i].style.fontSize = '6px';
	      document.getElementById("googleMap").childNodes[i].style.letterSpacing = '0px';
	      break;
	    }
	  }
	}
	
	setTimeout('MakeCopyrightSmaller();', 2000);
	setTimeout('MakeCopyrightSmaller();', 4000);
/*
function addScript()
{

  var url="http://maps.google.com/maps?file=api&amp;v=2&amp;key=ABQIAAAAbhSakKmVgYRFe8nhqFz3hxQjQJPuYsF49VKeS-wq9oFiDnKiChTM_xRA9pELgJUQiBXlz-qB0k_wJg";
  
  var obj=new JSONscriptRequest(url);   
  obj.buildScriptTag(); // Build the script tag      
  obj.addScriptTag(); // Execute (add) the script tag

}//end addScript
*/

